/**
 * Custom Stylesheet for Al-Waha / Saudi Home Services
 * Contains custom typography, color themes, hero sections, and component refinements.
 */

@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700;800;900&family=Tajawal:wght@300;400;500;700;800;900&display=swap');

/* ==========================================================================
   1. Theme Variables (Emerald Palette from lovable / elnogoum-cleaning)
   ========================================================================== */
:root {
	--radius: .875rem;
	--primary-deep: oklch(31% .07 198);
	--primary: oklch(47% .09 195);
	--primary-glow: oklch(68% .11 190);
	--primary-deep-fallback: #003a3d;
	--primary-fallback: #006a6a;
	--primary-glow-fallback: #25aea7;
	--theme-color-dark: #003a3d;
	--theme-color-dark: oklch(31% .07 198);
	--theme-color-light: #25aea7;
	--theme-color-light: oklch(68% .11 190);
	--theme-gradient: linear-gradient(135deg, #003a3d 0%, #006a6a 55%, #25aea7 100%);
	--theme-gradient: linear-gradient(135deg, oklch(31% .07 198), oklch(47% .09 195) 55%, oklch(68% .11 190));
	--theme-gradient-h: linear-gradient(90deg, #003a3d 0%, #006a6a 55%, #25aea7 100%);
	--theme-gradient-h: linear-gradient(90deg, oklch(31% .07 198), oklch(47% .09 195) 55%, oklch(68% .11 190));
	--gold: oklch(79% .13 82);
	--gold-fallback: #e4b24d;
	--accent-light: oklch(93% .035 190);
	--accent-light-fallback: #cef0ed;
	--secondary-light: oklch(95.5% .017 190);
	--secondary-light-fallback: #e4f4f3;
	--foreground: oklch(22% .03 210);
	--foreground-fallback: #071e22;
}

/* ==========================================================================
   2. Global Typography: Cairo & Tajawal
   ========================================================================== */
html, body, button, input, select, textarea,
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
p, a, span:not([class*="fa"]):not([class*="ion"]):not([class*="flaticon"]):not([class*="glyphicon"]),
li, label, strong, b, em, th, td, div, form {
	font-family: "Cairo", "Tajawal", ui-sans-serif, system-ui, sans-serif !important;
}

/* Preserve icon font families */
.fa, [class^="fa-"], [class*=" fa-"] {
	font-family: 'FontAwesome' !important;
}
[class^="flaticon-"], [class*=" flaticon-"] {
	font-family: "Flaticon" !important;
}
[class^="ion-"], [class*=" ion-"], .ionicons {
	font-family: "Ionicons" !important;
}
.glyphicon, [class^="glyphicon-"], [class*=" glyphicon-"] {
	font-family: 'Glyphicons Halflings' !important;
}

/* ==========================================================================
   3. Top Section Service Cards (.top_section__block)
   ========================================================================== */
.top_section__block {
	position: relative;
	z-index: 10;
	margin-top: -55px;
	margin-bottom: 20px;
}

.single_top__block {
	background: #003a3d;
	background: linear-gradient(145deg, #003a3d 0%, #005a5a 50%, #0c7c75 100%);
	background: linear-gradient(145deg, oklch(31% .07 198) 0%, oklch(47% .09 195) 55%, oklch(68% .11 190) 100%);
	color: #ffffff;
	border-radius: 20px;
	padding: 30px 22px 28px 22px;
	position: relative;
	text-align: center;
	box-shadow: 0 14px 35px -8px rgba(0, 40, 42, 0.28), 0 4px 12px rgba(0, 0, 0, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.2);
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	min-height: 250px;
}

.single_top__block:hover {
	transform: translateY(-8px);
	box-shadow: 0 22px 48px -10px rgba(0, 40, 42, 0.42), 0 8px 20px rgba(0, 0, 0, 0.12);
	border-color: rgba(255, 255, 255, 0.35);
}

.single_top__block:before {
	display: none !important;
}

.single_top__block .icon-box__block {
	position: static !important;
	width: 72px;
	height: 72px;
	margin: 0 auto 20px auto;
	background: rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
	transition: all 0.35s ease;
	flex-shrink: 0;
}

.single_top__block:hover .icon-box__block {
	transform: scale(1.1) rotate(4deg);
	background: rgba(255, 255, 255, 0.25);
	border-color: rgba(255, 255, 255, 0.5);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.top_section__block .icon-box__block i {
	display: inline-block;
	font-size: 38px;
	line-height: 1;
	color: #ffffff !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.single_text__block {
	position: relative;
	width: 100%;
}

.single_top__block h2 {
	color: #ffffff !important;
	font-size: 21px !important;
	font-weight: 800 !important;
	line-height: 1.45 !important;
	margin: 0 0 12px 0 !important;
	letter-spacing: -0.2px;
	text-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.single_top__block p {
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 15px;
	line-height: 1.75;
	margin: 0;
	padding: 0;
	font-weight: 400;
}

@media (min-width: 992px) and (max-width: 1199px) {
	.single_top__block {
		padding: 24px 16px;
		min-height: 270px;
	}
	.single_top__block h2 {
		font-size: 19px !important;
	}
	.single_top__block p {
		font-size: 14px;
	}
}

@media (max-width: 991px) {
	.top_section__block {
		margin-top: 25px;
	}
	.single_top__block {
		max-width: 480px;
		margin: 0 auto 24px;
		min-height: auto;
		padding: 26px 20px;
	}
}

@media (max-width: 767px) {
	.top_section__block .single_top__block {
		margin-top: 12px;
		margin-bottom: 16px;
		padding: 24px 18px;
	}
	.single_top__block h2 {
		font-size: 19px !important;
	}
	.single_top__block p {
		font-size: 14px;
		line-height: 1.65;
	}
}

/* ==========================================================================
   4. Why Choose Us Section Cards (.plaing_wrap__block)
   ========================================================================== */
.single_plan__block {
	position: relative;
	z-index: 1;
	overflow: hidden;
	background-color: #002d30;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(0, 30, 32, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.12);
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	display: flex;
	min-height: 220px;
}

.single_plan__block:hover {
	transform: translateY(-6px);
	box-shadow: 0 18px 45px rgba(0, 30, 32, 0.24);
	border-color: rgba(255, 255, 255, 0.25);
}

.single_plan__block:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	width: 40%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 1;
	opacity: 1;
	transition: transform 0.5s ease;
}

.single_plan__block:hover:after {
	transform: scale(1.08);
}

.block_bg1:after {
	background-image: url(../assets/images/finance-bg1.jpg);
}

.block_bg2:after {
	background-image: url(../assets/images/finance-bg2.jpg);
}

.block_bg3:after {
	background-image: url(../assets/images/finance-bg3.jpg);
}

.block_bg4:after {
	background-image: url(../assets/images/finance-bg4.jpg);
}

.block_bg5:after {
	background-image: url(../assets/images/finance-bg2.jpg);
}

.block_bg6:after {
	background-image: url(../assets/images/finance-bg3.jpg);
}

.plan-content-box {
	background: #003a3d;
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 55%, #25aea7 100%);
	background: linear-gradient(135deg, oklch(31% .07 198), oklch(47% .09 195) 55%, oklch(68% .11 190));
	color: #ffffff;
	padding: 28px 26px;
	width: 60%;
	margin-right: 0;
	margin-left: auto;
	position: relative;
	z-index: 2;
	text-align: right;
	display: flex;
	flex-direction: column;
	justify-content: center;
	transition: background 0.3s ease;
}

.plan-content-box:after {
	position: absolute;
	top: 0;
	right: 0;
	width: 0;
	height: 100%;
	background: rgba(255, 255, 255, 0.08);
	content: '';
	z-index: 1;
	pointer-events: none;
	transition: all 0.35s ease-in-out;
}

.single_plan__block:hover .plan-content-box:after {
	width: 100%;
}

.plan-content-box h3 {
	margin-top: 0;
	margin-bottom: 26px;
	position: relative;
	z-index: 2;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	text-align: right;
}

.plan-content-box h3::after {
	background: #25aea7;
	background: oklch(68% .11 190);
	bottom: -12px;
	content: "";
	height: 3px;
	right: 0;
	position: absolute;
	width: 42px;
	border-radius: 2px;
	transition: width 0.3s ease;
}

.single_plan__block:hover .plan-content-box h3::after {
	width: 60px;
}

.plan-content-box p {
	position: relative;
	z-index: 2;
	font-size: 15px !important;
	line-height: 26px !important;
	color: rgba(255, 255, 255, 0.92) !important;
	margin-bottom: 0;
}

@media (min-width: 992px) and (max-width: 1199px) {
	.plan-content-box {
		width: 65%;
		padding: 22px 18px;
	}
	.single_plan__block:after {
		width: 35%;
	}
	.plan-content-box h3 {
		font-size: 18px !important;
	}
	.plan-content-box p {
		font-size: 14px !important;
	}
}

@media (max-width: 991px) and (min-width: 768px) {
	.plan-content-box {
		width: 62%;
		padding: 24px 20px;
	}
	.single_plan__block:after {
		width: 38%;
	}
}

@media (max-width: 767px) {
	.single_plan__block {
		display: flex;
		flex-direction: column;
		min-height: auto;
	}

	.single_plan__block:after {
		position: relative !important;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		bottom: auto !important;
		width: 100% !important;
		height: 180px !important;
		order: -1;
	}

	.plan-content-box {
		width: 100% !important;
		padding: 24px 20px !important;
		min-height: auto;
	}
}

/* ==========================================================================
   5. Hero Section for Posts & Categories (.post-hero-wrapper & .category-hero-wrapper)
   ========================================================================== */
.post-hero-wrapper,
.category-hero-wrapper {
	padding: 25px 0 15px 0;
}

.post-hero-card,
.category-hero-card {
	background: #003a3d;
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 55%, #25aea7 100%);
	background: linear-gradient(135deg, oklch(31% .07 198), oklch(47% .09 195) 55%, oklch(68% .11 190));
	border-radius: 20px;
	padding: 45px 30px;
	text-align: center;
	color: #ffffff;
	box-shadow: 0 12px 35px rgba(0, 72, 75, 0.25);
	position: relative;
	overflow: hidden;
}

.post-hero-card::before,
.category-hero-card::before {
	content: '';
	position: absolute;
	top: -50px;
	right: -50px;
	width: 200px;
	height: 200px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 70%);
	border-radius: 50%;
	pointer-events: none;
}

.post-hero-card h1,
.category-hero-card h1 {
	color: #ffffff !important;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 16px 0;
	text-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.category-hero-sub {
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 16px;
	font-weight: 500;
	max-width: 650px;
	margin: 0 auto 24px auto;
	line-height: 1.7;
}

@media (min-width: 768px) {
	.post-hero-card,
	.category-hero-card {
		padding: 50px 45px;
	}

	.post-hero-card h1,
	.category-hero-card h1 {
		font-size: 32px;
	}

	.category-hero-sub {
		font-size: 17.5px;
	}
}

.post-hero-actions {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	flex-wrap: wrap;
}

.hero-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 12px 28px;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
	min-width: 170px;
}

.hero-btn:hover,
.hero-btn:focus {
	text-decoration: none;
	transform: translateY(-3px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
}

.hero-btn-call {
	background: #ffffff;
	color: #003a3d;
	color: oklch(31% .07 198);
}

.hero-btn-call:hover {
	background: #f4f8f9;
	color: #003638;
}

.hero-btn-call i,
.hero-btn-call svg {
	color: #003a3d;
	color: oklch(31% .07 198);
	font-size: 19px;
}

.hero-btn-whatsapp {
	background: #25D366;
	color: #ffffff;
}

.hero-btn-whatsapp:hover {
	background: #1ebc59;
	color: #ffffff;
}

.hero-btn-whatsapp i,
.hero-btn-whatsapp svg {
	color: #ffffff;
	font-size: 21px;
}

/* ==========================================================================
   6. Palette Overrides (Dark Titles, Gradient Backgrounds, Accents)
   ========================================================================== */

/* Titles in Dark Emerald */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.section_title__block h1,
.section_title__block h2,
.about-section__block h2,
.plaing_wrap__block h2,
.latest__block h2,
.latest__block-title,
.latest__block-title a,
.page-title h1,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.tab-notice h2 {
	color: #003a3d;
	color: oklch(31% .07 198);
}

/* Headings on dark or gradient backgrounds remain white */
.single_top__block h2,
.single_text__block h2,
.post-hero-card h1,
.top_footer_info__block h4,
.main_footer__block h4,
.footer_box__block h4,
.plan-content-box h3,
.dark-bg h1,
.dark-bg h2,
.dark-bg h3,
.gradient-bg h1,
.gradient-bg h2,
.gradient-bg h3,
.single_plan__block h3 {
	color: #ffffff !important;
}

/* Gradients on key background elements */
.post-hero-card,
.navgation__block,
.main-menu__block,
.top_footer_info__block,
.plan-content-box,
.about-section__block:before,
.btn.xplus-btn,
.pagination-nav ul li.active a,
.pagination-nav ul li:hover a,
.accordion-box-2 .accordion.open .accordion-title,
.abt-block__bg,
.mv-block__vision-bg,
.tab-title ul li a.active,
.tab-title ul li a:hover,
.blog-date,
.project-info,
.dark-bg,
.hover-bg:hover,
.btn-default,
.bar,
.ribbon.blue {
	background: linear-gradient(135deg, oklch(31% 0.07 198), oklch(47% 0.09 195) 55%, oklch(68% 0.11 190)) !important;
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 55%, #25aea7 100%) !important;
}

/* Horizontal decorative lines */
.b-line,
.section_title__block.text-center h1::after {
	background: #003a3d !important;
	background: linear-gradient(90deg, #003a3d 0%, #006a6a 55%, #25aea7 100%) !important;
	background: linear-gradient(90deg, oklch(31% .07 198), oklch(47% .09 195) 55%, oklch(68% .11 190)) !important;
}

/* Accents, Links, and Borders */
.top-info__block li i,
.social-link__block a i.fa,
.more_btn__block,
.sidebar-widget ul li a,
.contact .icon-circle,
.pagination-nav ul li a,
.abt__link-arrow,
.main-color {
	color: #25aea7;
	color: oklch(68% .11 190);
}


a:hover,
a:focus,
.latest__block-title:hover a,
.footer_box__block li a:hover,
.abt-box__content-link:hover,
.abt__link:hover {
	color: #25aea7;
	color: oklch(68% .11 190);
}

.btn-text,
.sidebar-widget:before,
.widget-tag li a,
.pricing-2 .pricing_table.active {
	border-color: #25aea7;
	border-color: oklch(68% .11 190);
}

.main_footer__block::before {
	background: color(display-p3 0.0039 0.2235 0.2354);
}

/* ==========================================================================
   7. Mobile Navigation Refinements
   ========================================================================== */
@media (max-width: 767px) {
	.navgation__block {
		position: relative;
		z-index: 9999;
	}

	.main-menu__block {
		position: relative !important;
		height: 52px !important;
		padding: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
	}

	.navbar-header {
		width: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		padding: 0 15px !important;
		height: 52px !important;
	}

	.navbar-toggle {
		position: static !important;
		float: none !important;
		margin: 0 !important;
		display: inline-flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		align-items: center !important;
		padding: 8px 10px !important;
		background: rgba(255, 255, 255, 0.15) !important;
		border: 1px solid rgba(255, 255, 255, 0.4) !important;
		border-radius: 6px !important;
		cursor: pointer !important;
		z-index: 1000 !important;
	}

	.navbar-toggle:hover,
	.navbar-toggle:focus {
		background: rgba(255, 255, 255, 0.25) !important;
		outline: none !important;
	}

	.navbar-toggle .icon-bar {
		background: #ffffff !important;
		width: 22px !important;
		height: 2px !important;
		display: block !important;
		border-radius: 2px !important;
	}

	.navbar-toggle .icon-bar + .icon-bar {
		margin-top: 5px !important;
	}

	.main-menu__block .navbar-collapse {
		display: none !important;
		position: absolute !important;
		top: 52px !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-height: 80vh !important;
		overflow-y: auto !important;
		background: #003a3d !important;
		background: linear-gradient(135deg, oklch(31% 0.07 198), oklch(47% 0.09 195) 55%, oklch(68% 0.11 190)) !important;
		box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4) !important;
		border-radius: 0 0 14px 14px !important;
		border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
		padding: 10px 0 !important;
		z-index: 99999 !important;
	}

	.main-menu__block .navbar-collapse.in {
		display: block !important;
	}

	.main-menu__block ul.navbar-nav {
		margin: 0 !important;
		padding: 0 !important;
		float: none !important;
		width: 100% !important;
		list-style: none !important;
	}

	.main-menu__block ul.navbar-nav > li {
		float: none !important;
		display: block !important;
		width: 100% !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
	}

	.main-menu__block ul.navbar-nav > li:last-child {
		border-bottom: none !important;
	}

	.main-menu__block ul.navbar-nav > li > a {
		padding: 14px 22px !important;
		display: block !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		color: #ffffff !important;
		text-align: right !important;
		transition: background 0.2s ease !important;
		text-decoration: none !important;
	}

	.main-menu__block ul.navbar-nav > li > a:hover,
	.main-menu__block ul.navbar-nav > li > a:focus {
		background: rgba(255, 255, 255, 0.15) !important;
		color: #ffffff !important;
	}
}

/* ==========================================================================
   10. Modern Luxury Stats Counter Section (.counter-section__block)
   ========================================================================== */
.counter-section__block {
	position: relative !important;
	padding: 85px 0 !important;
	background-color: #002b2e !important;
	background-image: 
		radial-gradient(circle at 50% 20%, rgba(45, 212, 191, 0.15) 0%, transparent 65%),
		linear-gradient(135deg, rgba(0, 38, 41, 0.94) 0%, rgba(0, 58, 61, 0.9) 50%, rgba(0, 31, 33, 0.96) 100%),
		url("../assets/images/footer__bg-block.jpg") !important;
	background-position: center center !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
	background-attachment: fixed !important;
	overflow: hidden;
}

/* Remove old murky pseudo-element overlay */
.counter-section__img:before {
	display: none !important;
}

/* Row alignment */
.counter-section__row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
}

.counter-section__col {
	margin-bottom: 24px;
	display: flex;
}

/* Luxury Glassmorphic Counter Card */
.counter-card {
	position: relative;
	width: 100%;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border: 1px solid rgba(255, 255, 255, 0.13);
	border-radius: 20px;
	padding: 34px 20px 28px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-shadow: 0 14px 35px rgba(0, 18, 20, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.12);
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	overflow: hidden;
}

/* Glowing top highlight on card */
.counter-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, transparent, #2dd4bf, transparent);
	opacity: 0;
	transition: opacity 0.35s ease;
}

.counter-card:hover {
	transform: translateY(-8px);
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(45, 212, 191, 0.45);
	box-shadow: 0 22px 48px rgba(0, 18, 20, 0.45), 0 0 30px rgba(45, 212, 191, 0.18);
}

.counter-card:hover::before {
	opacity: 1;
}

/* Icon Badge */
.counter-icon-box {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: linear-gradient(135deg, rgba(45, 212, 191, 0.18), rgba(0, 168, 150, 0.06));
	border: 1.5px solid rgba(45, 212, 191, 0.32);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
	color: #2dd4bf;
	font-size: 32px;
	line-height: 1;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
	transition: all 0.35s ease;
}

.counter-card:hover .counter-icon-box {
	transform: scale(1.1) rotate(6deg);
	background: linear-gradient(135deg, #2dd4bf, #0d9488);
	color: #ffffff;
	border-color: #5eead4;
	box-shadow: 0 10px 24px rgba(45, 212, 191, 0.4);
}

/* Value & Suffix */
.counter-val-wrap {
	display: flex;
	align-items: baseline;
	justify-content: center;
	direction: ltr;
	margin-bottom: 8px;
	line-height: 1;
}

.counter-val-wrap .counter {
	font-family: 'Cairo', sans-serif !important;
	font-size: 50px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	line-height: 1 !important;
	padding: 0 !important;
	margin: 0 !important;
	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
	letter-spacing: -0.5px;
}

/* Disable old main.css vertical divider line */
.counter-section__block .counter:after {
	display: none !important;
}

.counter-val-wrap .counter-suffix {
	font-family: 'Cairo', sans-serif !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	color: #2dd4bf !important;
	line-height: 1 !important;
	margin-left: 3px;
	text-shadow: 0 2px 10px rgba(45, 212, 191, 0.4);
}

/* Counter Label */
.counter-label {
	font-family: 'Cairo', 'Tajawal', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: rgba(255, 255, 255, 0.9) !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.4 !important;
	text-align: center !important;
	text-transform: none !important;
}

/* Mobile & Tablet Responsiveness */
@media (max-width: 991px) {
	.counter-section__block {
		background-attachment: scroll !important;
		padding: 60px 0 40px !important;
	}
	.counter-card {
		padding: 26px 14px 22px;
	}
	.counter-icon-box {
		width: 54px;
		height: 54px;
		font-size: 26px;
		margin-bottom: 14px;
	}
	.counter-val-wrap .counter {
		font-size: 40px !important;
	}
	.counter-val-wrap .counter-suffix {
		font-size: 24px !important;
	}
	.counter-label {
		font-size: 14px !important;
	}
}

.img-scale {margin-top:15px;margin-bottom:15px;}
@media (max-width: 767px) {
    
    
	.counter-section__block {
		padding: 45px 0 25px !important;
	}
	/* 2x2 grid layout on mobile */
	.counter-section__col {
		padding-left: 6px !important;
		padding-right: 6px !important;
		margin-bottom: 14px !important;
	}
	.counter-card {
		padding: 18px 8px 16px !important;
		border-radius: 16px !important;
		min-height: 160px;
	}
	.counter-icon-box {
		width: 44px;
		height: 44px;
		font-size: 22px;
		margin-bottom: 10px;
		border-width: 1px;
	}
	.counter-val-wrap {
		margin-bottom: 6px;
	}
	.counter-val-wrap .counter {
		font-size: 30px !important;
	}
	.counter-val-wrap .counter-suffix {
		font-size: 18px !important;
	}
	.counter-label {
		font-size: 13px !important;
		line-height: 1.35 !important;
	}
}

@media (max-width: 360px) {
	.counter-card {
		padding: 14px 4px 12px !important;
		min-height: 145px;
	}
	.counter-icon-box {
		width: 38px;
		height: 38px;
		font-size: 19px;
		margin-bottom: 8px;
	}
	.counter-val-wrap .counter {
		font-size: 26px !important;
	}
	.counter-val-wrap .counter-suffix {
		font-size: 16px !important;
	}
	.counter-label {
		font-size: 11.5px !important;
	}
}

/* ==========================================================================
   11. Top Footer Info Bar (.top_footer_info__block)
   ========================================================================== */
.top_footer_info__block {
	background: #002326 !important;
	background: linear-gradient(135deg, #002629 0%, #003e42 50%, #002022 100%) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	padding: 28px 0 !important;
	position: relative;
	z-index: 2;
}

.col-footer-info {
	margin-bottom: 0;
}

/* Individual Info Block Card */
.single_info__block {
	display: flex !important;
	align-items: center !important;
	text-decoration: none !important;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	padding: 16px 20px;
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
	min-height: 84px;
	position: relative;
	overflow: hidden;
}

.single_info__block::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: linear-gradient(90deg, transparent, #2dd4bf, transparent);
	opacity: 0;
	transition: opacity 0.3s ease;
}

/* Interactive link cards */
.info_link__block {
	cursor: pointer;
}

.single_info__block:hover {
	transform: translateY(-4px);
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(45, 212, 191, 0.4);
	box-shadow: 0 12px 28px rgba(0, 18, 20, 0.3), 0 0 20px rgba(45, 212, 191, 0.12);
}

.single_info__block:hover::before {
	opacity: 1;
}

/* Icon Container */
.info_icon__box {
	width: 52px;
	height: 52px;
	min-width: 52px;
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(45, 212, 191, 0.18), rgba(0, 168, 150, 0.06));
	border: 1px solid rgba(45, 212, 191, 0.3);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #2dd4bf;
	font-size: 24px;
	margin-left: 16px;
	margin-right: 0;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
	transition: all 0.3s ease;
}

.single_info__block:hover .info_icon__box {
	transform: scale(1.1) rotate(5deg);
	background: linear-gradient(135deg, #2dd4bf, #0d9488);
	color: #ffffff;
	border-color: #5eead4;
	box-shadow: 0 6px 18px rgba(45, 212, 191, 0.35);
}

/* Info Text Box */
.info_text__box {
	flex: 1;
	text-align: right;
	direction: rtl;
}

.info_text__box h4 {
	font-family: 'Cairo', sans-serif !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 3px 0 !important;
	line-height: 1.3 !important;
}

.info_text__box .phone-number {
	direction: ltr;
	display: inline-block;
	font-weight: 800;
	letter-spacing: 0.5px;
}

.info_text__box .info_sub {
	display: block !important;
	font-family: 'Cairo', 'Tajawal', sans-serif !important;
	font-size: 13px !important;
	color: rgba(255, 255, 255, 0.78) !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
}

/* Tablet & Mobile Responsiveness */
@media (max-width: 991px) {
	.top_footer_info__block {
		padding: 24px 0 !important;
	}
	.single_info__block {
		padding: 14px 16px;
		min-height: 78px;
	}
	.info_icon__box {
		width: 46px;
		height: 46px;
		min-width: 46px;
		font-size: 20px;
		margin-left: 12px;
	}
	.info_text__box h4 {
		font-size: 15px !important;
	}
	.info_text__box .info_sub {
		font-size: 12px !important;
	}
}

@media (max-width: 767px) {
	.top_footer_info__block {
		padding: 18px 0 10px !important;
	}
	.col-footer-info {
		margin-bottom: 12px;
	}
	.single_info__block {
		padding: 14px 16px;
		border-radius: 14px;
		min-height: auto;
	}
	.info_icon__box {
		width: 44px;
		height: 44px;
		min-width: 44px;
		font-size: 20px;
		border-radius: 12px;
		margin-left: 14px;
	}
	.info_text__box h4 {
		font-size: 15.5px !important;
	}
	.info_text__box .info_sub {
		font-size: 12.5px !important;
	}
}

/* ==========================================================================
   10. Article Dual Sections (Right & Left Columns)
   ========================================================================== */
.article-dual-sections {
	margin: 40px 0 30px 0;
	clear: both;
	direction: rtl !important;
	text-align: right !important;
}

.article-dual-sections .row {
	margin-left: -12px;
	margin-right: -12px;
}

.article-dual-sections .col-md-6 {
	padding-left: 12px;
	padding-right: 12px;
	margin-bottom: 24px;
}

.dual-box {
	background: #ffffff;
	border-radius: 16px;
	border: 1px solid #e8edf2;
	box-shadow: 0 8px 24px rgba(0, 58, 61, 0.06);
	overflow: hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	position: relative;
	direction: rtl !important;
	text-align: right !important;
}

.dual-box:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 36px rgba(0, 58, 61, 0.12);
	border-color: rgba(0, 102, 107, 0.3);
}

.dual-box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #004d50, #008f95);
	opacity: 0.9;
}

.dual-box.left-box::before {
	background: linear-gradient(90deg, #008f95, #14b8a6);
}

.dual-box-title {
	margin: 0;
	padding: 18px 22px;
	font-size: 19px !important;
	font-weight: 700 !important;
	color: #0b3c3e !important;
	background: #f8fafc;
	border-bottom: 1px solid #edf2f7;
	display: flex;
	align-items: center;
	justify-content: flex-start !important;
	gap: 12px;
	direction: rtl !important;
	text-align: right !important;
}

.dual-box-title i {
	font-size: 20px;
	color: #007a80;
	flex-shrink: 0;
	margin-left: 4px;
}

.dual-box.left-box .dual-box-title i {
	color: #0d9488;
}

.dual-box-body {
	padding: 22px 24px;
	color: #4a5568;
	font-size: 15.5px;
	line-height: 1.85;
	flex-grow: 1;
	direction: rtl !important;
	text-align: right !important;
}

.dual-box-body p:last-child {
	margin-bottom: 0;
}

.dual-box-body ul, 
.dual-box-body ol {
	padding-right: 20px;
	padding-left: 0;
	margin-bottom: 15px;
}

.dual-box-body li {
	margin-bottom: 8px;
	position: relative;
}

.dual-box-body img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
	margin: 12px 0;
}

@media (max-width: 767px) {
	.article-dual-sections {
		margin: 25px 0 15px 0;
	}
	.dual-box-title {
		font-size: 17px !important;
		padding: 15px 18px;
	}
	.dual-box-body {
		padding: 18px;
		font-size: 14.5px;
	}
}

/* ==========================================================================
   11. Modern Breadcrumbs Styling for Inner Pages
   ========================================================================== */
.breadcrumbs {
	background: #f8fafc !important;
	border-top: 1px solid #edf2f7 !important;
	border-bottom: 1px solid #e2e8f0 !important;
	padding: 14px 0 !important;
	margin-bottom: 25px;
	direction: rtl !important;
	text-align: right !important;
	clear: both;
}

.breadcrumbs .moduletable {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 10px;
	font-size: 14.5px;
	line-height: 1.6;
	color: #64748b;
	direction: rtl !important;
	text-align: right !important;
}

.breadcrumbs a.pathway,
.breadcrumbs a {
	color: #00666b !important;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	transition: all 0.2s ease;
	padding: 4px 10px;
	border-radius: 6px;
	background: rgba(0, 102, 107, 0.05);
	border: 1px solid rgba(0, 102, 107, 0.1);
}

.breadcrumbs a.pathway:hover,
.breadcrumbs a:hover {
	color: #ffffff !important;
	background: #00666b !important;
	border-color: #00666b !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(0, 102, 107, 0.2);
}

.breadcrumbs a i.fa-home {
	font-size: 15px;
	margin-left: 3px;
}

.breadcrumbs .breadcrumb-separator {
	color: #94a3b8 !important;
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	margin: 0 2px;
	opacity: 0.8;
}

.breadcrumbs .active-crumb {
	color: #1e293b !important;
	font-weight: 700;
	padding: 4px 8px;
	max-width: 100%;
	display: inline-block;
}

@media (max-width: 767px) {
	.breadcrumbs {
		padding: 10px 0 !important;
		margin-bottom: 18px;
	}
	.breadcrumbs .moduletable {
		font-size: 13px;
		gap: 6px;
	}
	.breadcrumbs a.pathway,
	.breadcrumbs a {
		padding: 3px 8px;
		font-size: 13px;
	}
	.breadcrumbs .breadcrumb-separator {
		font-size: 12px;
	}
}

/* ==========================================================================
   12. Universal Elegant Tables in Articles & Content
   ========================================================================== */
.entry-content table,
.post-content table,
.article-dual-sections table,
.blog-single table,
table.content-table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	margin: 28px 0 !important;
	background: #ffffff;
	border-radius: 12px !important;
	overflow: hidden !important;
	border: 1px solid #d9e2ec !important;
	box-shadow: 0 4px 20px rgba(0, 58, 61, 0.06);
	direction: rtl !important;
	text-align: right !important;
}

/* Table Head: Site brand color with white text */
.entry-content table thead,
.post-content table thead,
.article-dual-sections table thead,
.blog-single table thead {
	background: #004d50 !important;
	background: linear-gradient(135deg, #003a3d, #00666b) !important;
}

.entry-content table thead th,
.entry-content table thead td,
.post-content table thead th,
.post-content table thead td,
.article-dual-sections table thead th,
.article-dual-sections table thead td,
.blog-single table thead th,
.blog-single table thead td,
.entry-content table > tbody > tr:first-child > th,
.post-content table > tbody > tr:first-child > th {
	background: #004d50 !important;
	background: linear-gradient(135deg, #003a3d, #00666b) !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	padding: 14px 18px !important;
	text-align: center !important;
	vertical-align: middle !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	letter-spacing: normal;
	white-space: nowrap;
}

/* Table Body: Light grey cells with light grey border */
.entry-content table tbody td,
.entry-content table tbody th,
.post-content table tbody td,
.post-content table tbody th,
.article-dual-sections table tbody td,
.article-dual-sections table tbody th,
.blog-single table tbody td,
.blog-single table tbody th {
	background-color: #f8f9fa !important;
	border: 1px solid #e2e8f0 !important;
	color: #334155 !important;
	font-size: 14.5px !important;
	line-height: 1.65 !important;
	padding: 12px 18px !important;
	text-align: center !important;
	vertical-align: middle !important;
	transition: background-color 0.2s ease;
}

/* Interactive hover on rows */
.entry-content table tbody tr:hover td,
.post-content table tbody tr:hover td,
.article-dual-sections table tbody tr:hover td,
.blog-single table tbody tr:hover td {
	background-color: #edf2f7 !important;
}

/* Responsive Table scroll on small screens */
@media (max-width: 767px) {
	.entry-content table,
	.post-content table,
	.article-dual-sections table,
	.blog-single table {
		display: block !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		white-space: nowrap !important;
		margin: 18px 0 !important;
	}
	.entry-content table thead th,
	.entry-content table tbody td {
		padding: 10px 14px !important;
		font-size: 13.5px !important;
	}
}

/* ==========================================================================
   13. Modern Floating Contact Buttons (Call & WhatsApp)
   ========================================================================== */
.contact-fixed {
	position: fixed !important;
	left: 28px !important;
	bottom: 28px !important;
	z-index: 99999 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.contact-btn {
	width: 58px;
	height: 58px;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	color: #ffffff !important;
	text-decoration: none !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
	transition: all 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	outline: none !important;
	cursor: pointer;
}

.contact-btn:hover,
.contact-btn:focus {
	transform: scale(1.12) translateY(-3px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
	color: #ffffff !important;
}

/* Phone Button */
.contact-btn.phone-btn {
	background: linear-gradient(135deg, #004d50 0%, #008085 100%) !important;
	animation: phone-ripple 2.5s infinite;
}

.contact-btn.phone-btn:hover {
	background: linear-gradient(135deg, #003a3d 0%, #00969c 100%) !important;
}

/* WhatsApp Button */
.contact-btn.whatsapp-btn {
	background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important;
	animation: wa-ripple 2.5s infinite 1.25s;
}

.contact-btn.whatsapp-btn:hover {
	background: linear-gradient(135deg, #2ae06d 0%, #0e7065 100%) !important;
}

/* Vector SVG inside buttons */
.contact-svg {
	display: block;
	transition: transform 0.3s ease;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15));
}

.contact-btn:hover .contact-svg {
	transform: scale(1.08);
}

/* Elegant tooltips on hover */
.contact-tooltip {
	position: absolute;
	right: calc(100% + 14px);
	top: 50%;
	transform: translateY(-50%) translateX(-8px);
	background: rgba(15, 23, 42, 0.92);
	color: #ffffff !important;
	padding: 6px 14px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
	backdrop-filter: blur(6px);
}

.contact-tooltip::after {
	content: '';
	position: absolute;
	left: 100%;
	top: 50%;
	transform: translateY(-50%);
	border-width: 5px;
	border-style: solid;
	border-color: transparent transparent transparent rgba(15, 23, 42, 0.92);
}

.contact-btn:hover .contact-tooltip {
	opacity: 1;
	transform: translateY(-50%) translateX(0);
}

/* Gentle pulse ripple animations */
@keyframes phone-ripple {
	0% {
		box-shadow: 0 0 0 0 rgba(0, 128, 133, 0.6), 0 8px 24px rgba(0, 0, 0, 0.22);
	}
	70% {
		box-shadow: 0 0 0 16px rgba(0, 128, 133, 0), 0 8px 24px rgba(0, 0, 0, 0.22);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(0, 128, 133, 0), 0 8px 24px rgba(0, 0, 0, 0.22);
	}
}

@keyframes wa-ripple {
	0% {
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6), 0 8px 24px rgba(0, 0, 0, 0.22);
	}
	70% {
		box-shadow: 0 0 0 16px rgba(37, 211, 102, 0), 0 8px 24px rgba(0, 0, 0, 0.22);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0), 0 8px 24px rgba(0, 0, 0, 0.22);
	}
}

/* Mobile responsive sizing */
@media (max-width: 767px) {
	.contact-fixed {
		left: 18px !important;
		bottom: 20px !important;
		gap: 12px !important;
	}
	.contact-btn {
		width: 50px;
		height: 50px;
	}
	.contact-svg {
		width: 23px;
		height: 23px;
	}
	.contact-tooltip {
		display: none !important;
	}
}

/* ==========================================================================
   14. Premium Headings inside .entry-content (Post Content & Descriptions)
   ========================================================================== */

/* Universal Heading Resets & Shared Aesthetics */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	direction: rtl !important;
	text-align: right !important;
	font-family: 'Cairo', 'Tajawal', sans-serif !important;
	font-weight: 700 !important;
	color: #003a3d !important;
	line-height: 1.55 !important;
	margin-top: 36px !important;
	margin-bottom: 18px !important;
	position: relative !important;
	clear: both !important;
}

/* Force inner spans (often generated by TinyMCE editor) to inherit heading styles */
.entry-content h1 span,
.entry-content h2 span,
.entry-content h3 span,
.entry-content h4 span,
.entry-content h5 span,
.entry-content h6 span {
	color: inherit !important;
	font-weight: inherit !important;
	font-size: inherit !important;
	font-family: inherit !important;
	background: transparent !important;
}

/* H1 - Article Major Heading */
.entry-content h1 {
	font-size: 26px !important;
	font-weight: 800 !important;
	color: #003a3d !important;
	padding-right: 22px !important;
	padding-bottom: 12px !important;
	border-bottom: 2px solid #e2e8f0 !important;
}

.entry-content h1::before {
	content: '';
	position: absolute;
	right: 0;
	top: 4px;
	bottom: 14px;
	width: 6px;
	background: linear-gradient(180deg, #003a3d, #008f95);
	border-radius: 4px;
}

/* H2 - Main Section Headers (The primary divider with gradient tint & accent bar) */
.entry-content h2 {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #003a3d !important;
	padding: 13px 20px 13px 16px !important;
	background: linear-gradient(270deg, rgba(0, 58, 61, 0.08) 0%, rgba(0, 143, 149, 0.02) 100%) !important;
	border-right: 5px solid #00666b !important;
	border-radius: 0 10px 10px 0 !important;
	box-shadow: 0 2px 10px rgba(0, 58, 61, 0.03);
	display: block !important;
	transition: all 0.3s ease;
}

.entry-content h2:hover {
	border-right-color: #008f95 !important;
	background: linear-gradient(270deg, rgba(0, 58, 61, 0.12) 0%, rgba(0, 143, 149, 0.05) 100%) !important;
	transform: translateX(-3px);
}

/* H3 - Sub-section Headings */
.entry-content h3 {
	font-size: 19.5px !important;
	font-weight: 700 !important;
	color: #004d50 !important;
	padding-right: 18px !important;
	padding-bottom: 8px !important;
	border-bottom: 1px dashed #cbd5e1 !important;
}

.entry-content h3::before {
	content: '';
	position: absolute;
	right: 0;
	top: 6px;
	width: 7px;
	height: 18px;
	background: linear-gradient(180deg, #008f95, #14b8a6);
	border-radius: 3px;
}

/* Ensure dual-box card header is not affected by entry-content h3 rules */
.dual-box-title {
	border-bottom: 1px solid #edf2f7 !important;
	border-right: none !important;
	margin: 0 !important;
	padding: 18px 22px !important;
	background: #f8fafc !important;
}
.dual-box-title::before {
	display: none !important;
}

/* H4 - Feature / Point Headings */
.entry-content h4 {
	font-size: 17.5px !important;
	font-weight: 700 !important;
	color: #0b3c3e !important;
	padding-right: 18px !important;
}

.entry-content h4::before {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background: #008f95;
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgba(0, 143, 149, 0.2);
}

/* H5 & H6 - Minor Headings */
.entry-content h5 {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #1e293b !important;
	padding-right: 14px !important;
	border-right: 3px solid #008f95 !important;
}

.entry-content h6 {
	font-size: 14.5px !important;
	font-weight: 700 !important;
	color: #475569 !important;
	padding-right: 12px !important;
	border-right: 2px solid #94a3b8 !important;
}

/* Mobile Responsiveness for Content Headings */
@media (max-width: 767px) {
	.entry-content h1 {
		font-size: 21px !important;
		padding-right: 16px !important;
		margin-top: 26px !important;
	}
	.entry-content h2 {
		font-size: 18px !important;
		padding: 10px 14px 10px 12px !important;
		border-right-width: 4px !important;
		margin-top: 24px !important;
		margin-bottom: 14px !important;
	}
	.entry-content h3 {
		font-size: 17px !important;
		padding-right: 14px !important;
		margin-top: 20px !important;
	}
	.entry-content h3::before {
		width: 5px;
		height: 16px;
		top: 5px;
	}
	.entry-content h4 {
		font-size: 15.5px !important;
		padding-right: 15px !important;
	}
}

/* ==========================================================================
   15. Distinguish Copyright Bar from Footer Content
   ========================================================================== */
.copyriight_block {
	margin-top: 48px !important;
	margin-bottom: 10px !important;
	padding: 18px 24px !important;
	background: rgba(0, 20, 24, 0.45) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 14px !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
	position: relative !important;
	z-index: 2 !important;
	clear: both !important;
}

.copyriight_block p {
	margin: 0 !important;
	color: #ffffff !important;
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-align: center !important;
	line-height: 1.7 !important;
	letter-spacing: 0.3px !important;
}

@media (max-width: 767px) {
	.copyriight_block {
		margin-top: 32px !important;
		margin-bottom: 5px !important;
		padding: 15px 16px !important;
		border-radius: 10px !important;
	}
	.copyriight_block p {
		font-size: 13.5px !important;
	}
}

/* ==========================================================================
   16. Article FAQ Section (سؤال وجواب)
   ========================================================================== */
.article-faq-section {
	margin: 45px 0 35px 0;
	padding: 30px;
	background: #ffffff;
	border: 1px solid rgba(0, 58, 61, 0.12);
	border-radius: 20px;
	box-shadow: 0 10px 35px rgba(0, 58, 61, 0.05);
	position: relative;
	overflow: hidden;
}

.article-faq-section::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	background: linear-gradient(90deg, #003a3d 0%, #006a6a 55%, #25aea7 100%);
}

.faq-section-header {
	text-align: center;
	margin-bottom: 28px;
}

.faq-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 16px;
	background: rgba(0, 143, 149, 0.1);
	color: #00666b;
	color: oklch(47% .09 195);
	border-radius: 50px;
	font-size: 13.5px;
	font-weight: 700;
	margin-bottom: 10px;
}

.faq-badge i {
	font-size: 14px;
}

.faq-section-title {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #003a3d !important;
	color: oklch(31% .07 198) !important;
	margin: 0 0 8px 0 !important;
}

.faq-section-subtitle {
	font-size: 14.5px;
	color: #667085;
	margin: 0;
}

.faq-accordion {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.faq-item {
	background: #fbfdfd;
	border: 1.5px solid rgba(0, 58, 61, 0.1);
	border-radius: 14px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item:hover {
	border-color: rgba(0, 102, 107, 0.3);
	box-shadow: 0 6px 20px rgba(0, 58, 61, 0.06);
}

.faq-item.active {
	background: #ffffff;
	border-color: #00666b;
	border-color: oklch(47% .09 195);
	box-shadow: 0 8px 25px rgba(0, 58, 61, 0.1);
}

.faq-question-btn {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	background: transparent;
	border: none;
	outline: none !important;
	cursor: pointer;
	text-align: right;
	direction: rtl;
	gap: 15px;
	transition: background-color 0.2s ease;
}

.faq-item.active .faq-question-btn {
	background: rgba(0, 102, 107, 0.04);
}

.faq-q-icon {
	width: 32px;
	height: 32px;
	min-width: 32px;
	border-radius: 50%;
	background: rgba(0, 102, 107, 0.1);
	color: #00666b;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 700;
	transition: all 0.3s ease;
}

.faq-item.active .faq-q-icon {
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 100%);
	color: #ffffff;
}

.faq-q-text {
	flex: 1;
	font-size: 16.5px;
	font-weight: 700;
	color: #1a2a30;
	line-height: 1.5;
}

.faq-item.active .faq-q-text {
	color: #003a3d;
	color: oklch(31% .07 198);
}

.faq-toggle-icon {
	width: 28px;
	height: 28px;
	min-width: 28px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #667085;
	font-size: 13px;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s ease;
}

.faq-item.active .faq-toggle-icon {
	transform: rotate(180deg);
	color: #00666b;
}

.faq-answer-collapse {
	border-top: 1px solid rgba(0, 58, 61, 0.08);
}

.faq-answer-body {
	padding: 18px 22px 20px 22px;
	font-size: 15px;
	line-height: 1.8;
	color: #374151;
	background: #ffffff;
}

.faq-answer-body p:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.article-faq-section {
		padding: 20px 15px;
		margin: 30px 0 25px 0;
		border-radius: 14px;
	}
	.faq-section-title {
		font-size: 19px !important;
	}
	.faq-question-btn {
		padding: 13px 14px;
		gap: 10px;
	}
	.faq-q-text {
		font-size: 14.5px;
	}
	.faq-q-icon {
		width: 26px;
		height: 26px;
		min-width: 26px;
		font-size: 12px;
	}
	.faq-answer-body {
		padding: 14px 15px;
		font-size: 14px;
	}
}

/* ==========================================================================
   17. Enhanced Tag-Post Design (الكلمات الدلالية)
   ========================================================================== */
.tag-post {
	margin: 35px 0 25px 0 !important;
	text-align: right !important;
	direction: rtl !important;
	background: linear-gradient(135deg, #f8fbfb 0%, #f0f7f7 100%) !important;
	border: 1px solid rgba(0, 102, 107, 0.16) !important;
	border-radius: 18px !important;
	box-shadow: 0 6px 20px rgba(0, 58, 61, 0.04) !important;
	padding: 24px 26px !important;
	position: relative !important;
	overflow: hidden !important;
}

.tag-post-header {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 16px !important;
	padding-bottom: 12px !important;
	border-bottom: 1px dashed rgba(0, 102, 107, 0.18) !important;
}

.tag-icon-wrap {
	width: 36px;
	height: 36px;
	min-width: 36px;
	border-radius: 10px;
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 100%);
	color: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	box-shadow: 0 4px 10px rgba(0, 58, 61, 0.2);
}

.tag-title {
	margin: 0 !important;
	font-size: 19px !important;
	font-weight: 800 !important;
	color: #003a3d !important;
	color: oklch(31% .07 198) !important;
	text-align: right !important;
}

.tag-chips-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.tag-chip,
.tag-post .btn-dafault {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	padding: 8px 18px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #003a3d !important;
	background: #ffffff !important;
	border: 1.5px solid rgba(0, 58, 61, 0.16) !important;
	border-radius: 50px !important;
	margin: 0 !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
	transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
	cursor: default;
	user-select: none;
}

.tag-chip i {
	color: #008f95;
	font-size: 12px;
	transition: color 0.25s ease;
}

.tag-chip:hover,
.tag-post .btn-dafault:hover {
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 55%, #25aea7 100%) !important;
	background: linear-gradient(135deg, oklch(31% .07 198), oklch(47% .09 195) 55%, oklch(68% .11 190)) !important;
	color: #ffffff !important;
	border-color: transparent !important;
	transform: translateY(-3px) scale(1.02) !important;
	box-shadow: 0 6px 18px rgba(0, 58, 61, 0.22) !important;
}

.tag-chip:hover i {
	color: #ffffff !important;
}

@media (max-width: 767px) {
	.tag-post {
		padding: 18px 16px !important;
		margin: 25px 0 15px 0 !important;
		border-radius: 14px !important;
	}
	.tag-title {
		font-size: 17px !important;
	}
	.tag-icon-wrap {
		width: 30px;
		height: 30px;
		min-width: 30px;
		font-size: 13px;
	}
	.tag-chip,
	.tag-post .btn-dafault {
		padding: 6px 14px !important;
		font-size: 13.5px !important;
	}
}


/* ==========================================================================
   Contact Page Styles (.contactPage)
   ========================================================================== */
.contactPage {
	background-color: #f7fafc;
	font-family: 'Cairo', 'Tajawal', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #2d3748;
}

.contact-hero-section {
	background: linear-gradient(135deg, #002326 0%, #003a3d 50%, #005a5e 100%);
	padding: 55px 0 45px;
	position: relative;
	color: #ffffff;
	text-align: center;
	overflow: hidden;
}

.contact-hero-section::before {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 180, 0, 0.08) 0%, rgba(255, 255, 255, 0) 65%);
	pointer-events: none;
}

.contact-hero-content {
	position: relative;
	z-index: 2;
	max-width: 820px;
	margin: 0 auto;
}

.contact-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(10px);
	padding: 6px 18px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: 600;
	color: #ffca42;
	margin-bottom: 16px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.contact-hero-title {
	font-size: 34px;
	font-weight: 800;
	margin-bottom: 12px;
	line-height: 1.35;
	color: #ffffff;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.contact-hero-subtitle {
	font-size: 16px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.88);
	margin-bottom: 20px;
	font-weight: 400;
}

.contact-breadcrumb {
	display: inline-flex;
	align-items: center;
	list-style: none;
	padding: 6px 18px;
	margin: 0;
	background: rgba(0, 0, 0, 0.25);
	border-radius: 50px;
	font-size: 13.5px;
}

.contact-breadcrumb li {
	display: inline-flex;
	align-items: center;
	color: rgba(255, 255, 255, 0.7);
}

.contact-breadcrumb li + li::before {
	content: "/";
	padding: 0 10px;
	color: rgba(255, 255, 255, 0.4);
}

.contact-breadcrumb li a {
	color: #ffca42;
	text-decoration: none;
	transition: color 0.2s ease;
}

.contact-breadcrumb li a:hover {
	color: #ffffff;
}

.contact-breadcrumb li.active {
	color: #ffffff;
	font-weight: 600;
}

/* Main Section */
.contact-main-section {
	padding: 45px 0 65px;
}

.mb-30 {
	margin-bottom: 30px;
}

.mb-40 {
	margin-bottom: 40px;
}

.ltr-text, .ltr-input {
	direction: ltr !important;
	text-align: right;
}

/* Contact Info Cards Grid */
.contact-info-card {
	background: #ffffff;
	border-radius: 18px;
	padding: 30px 24px;
	border: 1px solid #e9edf2;
	box-shadow: 0 10px 25px rgba(0, 43, 46, 0.05);
	text-align: center;
	position: relative;
	transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.contact-info-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 18px 38px rgba(0, 43, 46, 0.12);
	border-color: rgba(0, 90, 94, 0.3);
}

.card-icon-wrap {
	position: relative;
	width: 72px;
	height: 72px;
	margin: 0 auto 18px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.card-icon {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	color: #ffffff;
	position: relative;
	z-index: 2;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
	transition: transform 0.3s ease;
}

.contact-info-card:hover .card-icon {
	transform: scale(1.08) rotate(-4deg);
}

.card-phone .card-icon {
	background: linear-gradient(135deg, #003a3d 0%, #008f95 100%);
}

.card-whatsapp .card-icon {
	background: linear-gradient(135deg, #128C7E 0%, #25D366 100%);
}

.card-email .card-icon {
	background: linear-gradient(135deg, #0284c7 0%, #38bdf8 100%);
}

.card-pulse {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: 50%;
	animation: pulseRing 2.2s infinite cubic-bezier(0.45, 0, 0.2, 1);
	z-index: 1;
}

.card-phone .card-pulse {
	border: 2px solid rgba(0, 143, 149, 0.5);
}

.card-whatsapp .card-pulse {
	border: 2px solid rgba(37, 211, 102, 0.5);
}

@keyframes pulseRing {
	0% {
		transform: scale(0.9);
		opacity: 0.8;
	}
	70% {
		transform: scale(1.35);
		opacity: 0;
	}
	100% {
		transform: scale(1.4);
		opacity: 0;
	}
}

.card-tag {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	padding: 3px 12px;
	border-radius: 30px;
	margin-bottom: 10px;
	letter-spacing: 0.3px;
}

.card-phone .card-tag {
	background: rgba(0, 90, 94, 0.08);
	color: #005a5e;
}

.card-whatsapp .card-tag {
	background: rgba(37, 211, 102, 0.12);
	color: #128C7E;
}

.card-email .card-tag {
	background: rgba(2, 132, 199, 0.1);
	color: #0284c7;
}

.card-title {
	font-size: 19px;
	font-weight: 700;
	color: #1a202c;
	margin: 0 0 8px;
}

.card-desc {
	font-size: 13.5px;
	color: #718096;
	margin-bottom: 16px;
	line-height: 1.5;
	min-height: 40px;
}

.card-value {
	margin-bottom: 18px;
	font-size: 18px;
	font-weight: 700;
}

.contact-number-link {
	color: #003a3d;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: 'Tajawal', sans-serif;
	transition: color 0.2s ease;
}

.contact-number-link:hover {
	color: #008f95;
	text-decoration: none;
}

.contact-email-link {
	color: #0284c7;
	text-decoration: none;
	font-size: 15px;
	word-break: break-all;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.contact-email-link:hover {
	color: #0369a1;
	text-decoration: underline;
}

.btn-contact-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 11px 20px;
	border-radius: 12px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.25s ease;
	border: none;
	cursor: pointer;
}

.btn-call-now {
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 100%);
	color: #ffffff !important;
	box-shadow: 0 4px 14px rgba(0, 58, 61, 0.25);
}

.btn-call-now:hover {
	background: linear-gradient(135deg, #002326 0%, #004d52 100%);
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(0, 58, 61, 0.35);
}

.btn-wa-now {
	background: linear-gradient(135deg, #128C7E 0%, #25D366 100%);
	color: #ffffff !important;
	box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3);
}

.btn-wa-now:hover {
	background: linear-gradient(135deg, #075E54 0%, #128C7E 100%);
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(37, 211, 102, 0.4);
}

.btn-email-now {
	background: #f1f5f9;
	color: #0284c7 !important;
	border: 1.5px solid #cbd5e1;
}

.btn-email-now:hover {
	background: #0284c7;
	color: #ffffff !important;
	border-color: #0284c7;
	transform: translateY(-2px);
}

/* Contact Form Box */
.contact-form-box {
	background: #ffffff;
	border-radius: 20px;
	padding: 36px 32px;
	border: 1px solid #e9edf2;
	box-shadow: 0 10px 30px rgba(0, 43, 46, 0.06);
}

.form-header {
	margin-bottom: 24px;
	padding-bottom: 18px;
	border-bottom: 1px solid #edf2f7;
}

.form-badge {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	color: #008f95;
	background: rgba(0, 143, 149, 0.08);
	padding: 4px 12px;
	border-radius: 20px;
	margin-bottom: 8px;
}

.form-title {
	font-size: 24px;
	font-weight: 800;
	color: #1a202c;
	margin: 0 0 6px;
}

.form-subtitle {
	font-size: 14.5px;
	color: #718096;
	margin: 0;
	line-height: 1.6;
}

.alert-contact {
	border-radius: 12px;
	padding: 16px 20px;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 24px;
	font-size: 14.5px;
}

.alert-contact .alert-icon {
	font-size: 22px;
	line-height: 1;
	margin-top: 2px;
}

.alert-contact p {
	margin: 4px 0 0;
}

.custom-form-group {
	margin-bottom: 20px;
}

.custom-form-group label {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: #334155;
	margin-bottom: 8px;
}

.required-star {
	color: #e53e3e;
}

.optional-label {
	font-size: 12px;
	color: #94a3b8;
	font-weight: 400;
}

.input-wrap {
	position: relative;
	display: flex;
	align-items: center;
}

.input-wrap .input-icon {
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	font-size: 16px;
	pointer-events: none;
	transition: color 0.2s ease;
	z-index: 2;
}

.input-wrap.textarea-wrap .input-icon {
	top: 20px;
	transform: none;
}

.custom-input {
	width: 100%;
	height: 48px;
	padding: 10px 44px 10px 16px !important;
	border: 1.5px solid #cbd5e1 !important;
	border-radius: 12px !important;
	background: #f8fafc !important;
	font-size: 14.5px !important;
	color: #1e293b !important;
	transition: all 0.25s ease !important;
	box-shadow: none !important;
}

.custom-input:focus {
	background: #ffffff !important;
	border-color: #008f95 !important;
	box-shadow: 0 0 0 4px rgba(0, 143, 149, 0.12) !important;
	outline: none !important;
}

.custom-input:focus + .input-icon,
.input-wrap:focus-within .input-icon {
	color: #008f95 !important;
}

.custom-select {
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") !important;
	background-repeat: no-repeat !important;
	background-position: left 14px center !important;
	background-size: 16px !important;
}

.custom-textarea {
	height: auto !important;
	min-height: 120px;
	resize: vertical;
	padding-top: 14px !important;
}

.form-actions-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
}

.btn-submit-contact {
	flex: 1 1 240px;
	background: linear-gradient(135deg, #003a3d 0%, #006a6a 100%);
	color: #ffffff;
	border: none;
	padding: 14px 28px;
	border-radius: 12px;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	box-shadow: 0 4px 16px rgba(0, 58, 61, 0.25);
	transition: all 0.28s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.btn-submit-contact:hover {
	background: linear-gradient(135deg, #002326 0%, #004d52 100%);
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(0, 58, 61, 0.35);
}

.btn-whatsapp-direct {
	flex: 1 1 240px;
	background: #25D366;
	color: #ffffff;
	border: none;
	padding: 14px 24px;
	border-radius: 12px;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
	box-shadow: 0 4px 16px rgba(37, 211, 102, 0.28);
	transition: all 0.28s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.btn-whatsapp-direct:hover {
	background: #1eb956;
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(37, 211, 102, 0.38);
}

/* Contact Side Box */
.contact-side-box {
	background: #ffffff;
	border-radius: 20px;
	padding: 32px 28px;
	border: 1px solid #e9edf2;
	box-shadow: 0 10px 30px rgba(0, 43, 46, 0.06);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.side-header {
	margin-bottom: 22px;
	padding-bottom: 14px;
	border-bottom: 1px solid #edf2f7;
}

.side-title {
	font-size: 20px;
	font-weight: 800;
	color: #1a202c;
	margin: 0 0 6px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.side-title i {
	color: #008f95;
}

.side-desc {
	font-size: 13.5px;
	color: #718096;
	margin: 0;
	line-height: 1.6;
}

.side-info-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 24px;
}

.side-info-item {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 12px 14px;
	background: #f8fafc;
	border-radius: 12px;
	border: 1px solid #edf2f7;
	transition: background 0.2s ease;
}

.side-info-item:hover {
	background: #f1f5f9;
}

.side-info-item .item-icon {
	width: 38px;
	height: 38px;
	min-width: 38px;
	background: linear-gradient(135deg, #003a3d 0%, #008f95 100%);
	color: #ffffff;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
}

.side-info-item .item-content {
	display: flex;
	flex-direction: column;
}

.side-info-item .item-label {
	font-size: 12px;
	color: #94a3b8;
	font-weight: 600;
	margin-bottom: 2px;
}

.side-info-item .item-value {
	font-size: 14px;
	color: #1e293b;
	font-weight: 700;
}

/* Social links grid */
.side-social-wrap {
	margin-bottom: 22px;
	padding-top: 14px;
	border-top: 1px solid #edf2f7;
}

.social-title {
	font-size: 14px;
	font-weight: 700;
	color: #334155;
	margin-bottom: 12px;
}

.social-links-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.social-btn {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff !important;
	font-size: 16px;
	text-decoration: none;
	transition: all 0.25s ease;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.social-btn:hover {
	transform: translateY(-3px) scale(1.05);
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

.social-fb { background: #1877f2; }
.social-tw { background: #111827; }
.social-ig { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.social-yt { background: #ff0000; }
.social-pin { background: #e60023; }

/* Side CTA Card */
.side-cta-card {
	background: linear-gradient(135deg, #002326 0%, #004d52 100%);
	border-radius: 14px;
	padding: 18px 20px;
	color: #ffffff;
	margin-top: 10px;
}

.cta-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 8px;
}

.cta-icon {
	width: 44px;
	height: 44px;
	background: rgba(255, 255, 255, 0.15);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	color: #ffca42;
	margin-bottom: 2px;
}

.cta-text h5 {
	font-size: 15px;
	font-weight: 700;
	margin: 0 0 4px;
	color: #ffffff;
}

.cta-text p {
	font-size: 12.5px;
	color: rgba(255, 255, 255, 0.8);
	margin: 0 0 10px;
}

.btn-cta-call {
	background: #ffb400;
	color: #002b2e !important;
	font-weight: 800;
	font-size: 15px;
	padding: 8px 24px;
	border-radius: 50px;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: all 0.25s ease;
	box-shadow: 0 4px 12px rgba(255, 180, 0, 0.35);
}

.btn-cta-call:hover {
	background: #ffca42;
	transform: scale(1.04);
}

/* Map Section */
.contact-map-wrapper {
	background: #ffffff;
	border-radius: 20px;
	padding: 24px;
	border: 1px solid #e9edf2;
	box-shadow: 0 10px 30px rgba(0, 43, 46, 0.06);
	margin-top: 10px;
}

.map-header {
	margin-bottom: 18px;
}

.map-title {
	font-size: 20px;
	font-weight: 800;
	color: #1a202c;
	margin: 0 0 4px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.map-title i {
	color: #008f95;
}

.map-subtitle {
	font-size: 13.5px;
	color: #718096;
	margin: 0;
}

.map-frame-container {
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid #e2e8f0;
	line-height: 0;
}

/* Responsive adjustments */
@media (max-width: 991px) {
	.contact-hero-title {
		font-size: 28px;
	}
	.contact-form-box, .contact-side-box {
		padding: 26px 20px;
	}
}

@media (max-width: 767px) {
	.contact-hero-section {
		padding: 38px 0 32px;
	}
	.contact-hero-title {
		font-size: 24px;
	}
	.contact-hero-subtitle {
		font-size: 14px;
	}
	.contact-info-card {
		padding: 24px 18px;
	}
	.form-actions-wrap {
		flex-direction: column;
	}
	.btn-submit-contact, .btn-whatsapp-direct {
		width: 100%;
	}
}


/* ==========================================================================
   Custom Page Styles (.customPageWrapper)
   ========================================================================== */
.customPageWrapper {
	background-color: #f7fafc;
	font-family: 'Cairo', 'Tajawal', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #2d3748;
}

.custom-page-hero {
	background: linear-gradient(135deg, #002326 0%, #003a3d 50%, #005a5e 100%);
	padding: 50px 0 42px;
	position: relative;
	color: #ffffff;
	text-align: center;
	overflow: hidden;
}

.custom-page-hero::before {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 180, 0, 0.08) 0%, rgba(255, 255, 255, 0) 65%);
	pointer-events: none;
}

.custom-page-hero-content {
	position: relative;
	z-index: 2;
	max-width: 820px;
	margin: 0 auto;
}

.page-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(10px);
	padding: 5px 16px;
	border-radius: 50px;
	font-size: 13.5px;
	font-weight: 600;
	color: #ffca42;
	margin-bottom: 14px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.custom-page-title {
	font-size: 32px;
	font-weight: 800;
	margin-bottom: 14px;
	line-height: 1.35;
	color: #ffffff;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.custom-page-body-section {
	padding: 45px 0 65px;
}

.custom-page-article-card {
	background: #ffffff;
	border-radius: 20px;
	padding: 36px 32px;
	border: 1px solid #e9edf2;
	box-shadow: 0 10px 30px rgba(0, 43, 46, 0.05);
}

.page-featured-image-box {
	border-radius: 16px;
	overflow: hidden;
	margin-bottom: 30px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
	border: 1px solid #edf2f7;
}

.page-featured-img {
	width: 100%;
	max-height: 440px;
	object-fit: cover;
	display: block;
}

/* Page Rendered Typography */
.page-rendered-content {
	font-size: 16px;
	line-height: 1.9;
	color: #334155;
	word-wrap: break-word;
}

.page-rendered-content h1,
.page-rendered-content h2,
.page-rendered-content h3,
.page-rendered-content h4,
.page-rendered-content h5,
.page-rendered-content h6 {
	color: #003a3d;
	font-weight: 800;
	margin-top: 30px;
	margin-bottom: 16px;
	line-height: 1.45;
}

.page-rendered-content h2 {
	font-size: 24px;
	border-right: 4px solid #008f95;
	padding-right: 12px;
}

.page-rendered-content h3 {
	font-size: 20px;
}

.page-rendered-content p {
	margin-bottom: 20px;
	color: #475569;
}

.page-rendered-content ul,
.page-rendered-content ol {
	padding-right: 24px;
	margin-bottom: 22px;
}

.page-rendered-content li {
	margin-bottom: 8px;
	line-height: 1.8;
}

.page-rendered-content img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
	margin: 16px 0;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}

.page-rendered-content blockquote {
	border-right: 4px solid #008f95;
	background: #f8fafc;
	padding: 16px 20px;
	margin: 24px 0;
	border-radius: 8px;
	font-style: italic;
	color: #334155;
}

.page-rendered-content table {
	width: 100%;
	margin-bottom: 24px;
	border-collapse: collapse;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	overflow: hidden;
}

.page-rendered-content table th,
.page-rendered-content table td {
	padding: 12px 16px;
	border: 1px solid #e2e8f0;
	text-align: right;
}

.page-rendered-content table th {
	background: #f1f5f9;
	color: #003a3d;
	font-weight: 700;
}

/* Share Bar */
.page-share-bar {
	margin-top: 35px;
	padding-top: 22px;
	border-top: 1px solid #edf2f7;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 14px;
}

.share-title {
	font-size: 14.5px;
	font-weight: 700;
	color: #334155;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.share-buttons-list {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.share-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 16px;
	border-radius: 50px;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.25s ease;
	color: #ffffff !important;
}

.share-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	text-decoration: none;
}

.share-wa { background: #25D366; }
.share-tw { background: #111827; }
.share-fb { background: #1877f2; }

/* Sidebar Widgets */
.custom-page-sidebar {
	position: sticky;
	top: 90px;
}

.sidebar-widget {
	background: #ffffff;
	border-radius: 18px;
	padding: 26px 22px;
	border: 1px solid #e9edf2;
	box-shadow: 0 10px 25px rgba(0, 43, 46, 0.05);
	margin-bottom: 26px;
}

.widget-title {
	font-size: 18px;
	font-weight: 800;
	color: #1a202c;
	margin: 0 0 16px;
	padding-bottom: 12px;
	border-bottom: 1.5px solid #edf2f7;
	display: flex;
	align-items: center;
	gap: 8px;
}

.widget-title i {
	color: #008f95;
}

/* Contact Widget */
.widget-contact-card {
	background: linear-gradient(135deg, #002326 0%, #003a3d 100%);
	color: #ffffff;
	border: none;
	text-align: center;
}

.widget-contact-header .icon-pulse-wrap {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	color: #ffca42;
	margin: 0 auto 12px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

.widget-contact-header h4 {
	font-size: 19px;
	font-weight: 800;
	margin: 0 0 6px;
	color: #ffffff;
}

.widget-contact-header p {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.8);
	margin-bottom: 16px;
}

.phone-display-box {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 12px;
	padding: 8px 14px;
	margin-bottom: 14px;
	backdrop-filter: blur(5px);
}

.phone-num-val {
	font-size: 18px;
	font-weight: 800;
	color: #ffca42;
	font-family: 'Tajawal', sans-serif;
}

.btn-sidebar-call {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 11px 18px;
	background: #ffb400;
	color: #002b2e !important;
	border-radius: 12px;
	font-weight: 800;
	font-size: 15px;
	text-decoration: none;
	margin-bottom: 10px;
	transition: all 0.25s ease;
	box-shadow: 0 4px 12px rgba(255, 180, 0, 0.3);
}

.btn-sidebar-call:hover {
	background: #ffca42;
	transform: translateY(-2px);
	text-decoration: none;
}

.btn-sidebar-wa {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 11px 18px;
	background: #25D366;
	color: #ffffff !important;
	border-radius: 12px;
	font-weight: 700;
	font-size: 14.5px;
	text-decoration: none;
	transition: all 0.25s ease;
	box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);
}

.btn-sidebar-wa:hover {
	background: #1eb956;
	transform: translateY(-2px);
	text-decoration: none;
}

/* Category Widget */
.widget-cat-links {
	list-style: none;
	padding: 0;
	margin: 0;
}

.widget-cat-links li {
	margin-bottom: 8px;
}

.widget-cat-links li:last-child {
	margin-bottom: 0;
}

.widget-cat-links a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 9px 14px;
	background: #f8fafc;
	border-radius: 10px;
	color: #334155;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.22s ease;
	border: 1px solid #edf2f7;
}

.widget-cat-links a:hover {
	background: #003a3d;
	color: #ffffff;
	border-color: #003a3d;
	transform: translateX(-4px);
}

.widget-cat-links a:hover i {
	color: #ffca42;
}

.widget-cat-links a i {
	color: #94a3b8;
	transition: color 0.2s ease;
}

/* Recent Posts Widget */
.recent-posts-list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.recent-post-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid #edf2f7;
}

.recent-post-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.recent-post-item .post-thumb {
	width: 65px;
	height: 60px;
	min-width: 65px;
	border-radius: 8px;
	overflow: hidden;
}

.recent-post-item .post-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.recent-post-item:hover .post-thumb img {
	transform: scale(1.08);
}

.recent-post-item .post-info h5 {
	font-size: 13.5px;
	font-weight: 700;
	margin: 0 0 4px;
	line-height: 1.45;
}

.recent-post-item .post-info h5 a {
	color: #1e293b;
	text-decoration: none;
	transition: color 0.2s ease;
}

.recent-post-item .post-info h5 a:hover {
	color: #008f95;
}

.recent-post-item .post-date {
	font-size: 11.5px;
	color: #94a3b8;
}

@media (max-width: 991px) {
	.custom-page-title {
		font-size: 26px;
	}
	.custom-page-article-card {
		padding: 24px 20px;
	}
	.custom-page-sidebar {
		margin-top: 30px;
		position: static;
	}
}










