/* =====================================================================
   EDUGROWTH DESIGN SYSTEM — CSS Grid + Global Styles
   ===================================================================== */

/* ─── Google Fonts (backup — also loaded via wp_enqueue) ── */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

/* ─── Design Tokens ──────────────────────────────────────── */
:root {
	--eg-bg: #F7F9FC;
	--eg-text: #0B1F3A;
	--eg-accent: #D4A017;
	--eg-accent-dark: #B48006;
	--eg-accent-light: #FEF3C7;
	--eg-border: #334155;
	--eg-border-light: #E5E7EB;
	--eg-white: #FFFFFF;
	--eg-navy: #0B1F3A;
	--eg-navy-light: #1B3254;
	--eg-navy-medium: #132746;
	--eg-gray-50: #F8FAFC;
	--eg-gray-100: #F1F5F9;
	--eg-gray-200: #E2E8F0;
	--eg-gray-300: #CBD5E1;
	--eg-gray-400: #94A3B8;
	--eg-gray-500: #64748B;
	--eg-gray-600: #475569;
	--eg-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	--eg-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	--eg-transition-fast: all 0.15s ease;
}

/* ─── Global Reset & Base ────────────────────────────────── */
html,
body {
	overflow-x: hidden !important;
}

body {
	font-family: var(--eg-font) !important;
	color: var(--eg-text);
	background-color: var(--eg-white);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0;
	padding: 0;
}

/* Enforce 0 border-radius inside content area only */
.elementor *,
.elementor *::before,
.elementor *::after,
.edugrowth-header *,
.edugrowth-footer * {
	border-radius: 0 !important;
}

/* Remove ALL box-shadows */
.elementor-widget,
.elementor-element,
.elementor-button,
.elementor-element .elementor-widget-container {
	box-shadow: none !important;
}

/* ─── Typography ─────────────────────────────────────────── */
h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title {
	font-family: var(--eg-font) !important;
	line-height: 1.15;
	letter-spacing: -0.02em;
}

p,
li,
span,
a,
div {
	font-family: var(--eg-font) !important;
}

/* ─── Elementor Overrides ────────────────────────────────── */
.elementor-page .elementor {
	font-family: var(--eg-font) !important;
}

.elementor-button {
	font-family: var(--eg-font) !important;
	border-radius: 0 !important;
	transition: var(--eg-transition) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

.elementor-button:hover {
	transform: translateY(-1px);
	opacity: 0.92;
}

/* =====================================================================
   BENTO GRID SYSTEM
   Elementor boxed containers wrap children in .e-con-inner.
   We ONLY apply the 12-col grid to the INNER wrapper (or directly
   to the element when it's a full-width container with no wrapper).
   ===================================================================== */

/* For boxed containers — grid goes on .e-con-inner */
.edugrowth-bento-grid>.e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(12, 1fr) !important;
	gap: 0 !important;
}

/* For full-width containers (no .e-con-inner) — grid goes directly */
.edugrowth-bento-grid:not(.e-con-boxed) {
	display: grid !important;
	grid-template-columns: repeat(12, 1fr) !important;
	gap: 0 !important;
}

.eg-col-3 {
	grid-column: span 3 !important;
}

.eg-col-4 {
	grid-column: span 4 !important;
}

.eg-col-5 {
	grid-column: span 5 !important;
}

.eg-col-6 {
	grid-column: span 6 !important;
}

.eg-col-7 {
	grid-column: span 7 !important;
}

.eg-col-8 {
	grid-column: span 8 !important;
}

.eg-col-9 {
	grid-column: span 9 !important;
}

.eg-col-12 {
	grid-column: span 12 !important;
}

/* Enforce column grid items to fill their grid cell widths (preventing Elementor inline width overrides) */
.eg-col-3,
.eg-col-4,
.eg-col-5,
.eg-col-6,
.eg-col-7,
.eg-col-8,
.eg-col-9,
.eg-col-12 {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* Stitch borders for bento grid children */
.edugrowth-bento-grid>.elementor-element,
.edugrowth-bento-grid>.e-con-inner>.elementor-element {
	border: 1px solid var(--eg-border-light) !important;
}

/* ─── Responsive Grid ────────────────────────────────────── */
@media (max-width: 1024px) {
	.eg-col-3 {
		grid-column: span 6 !important;
	}

	.eg-col-4 {
		grid-column: span 6 !important;
	}

	.eg-col-5 {
		grid-column: span 12 !important;
	}

	.eg-col-7 {
		grid-column: span 12 !important;
	}
}

@media (max-width: 767px) {

	.edugrowth-bento-grid:not(.e-con-boxed),
	.edugrowth-bento-grid>.e-con-inner {
		grid-template-columns: 1fr !important;
	}

	.eg-col-3,
	.eg-col-4,
	.eg-col-5,
	.eg-col-6,
	.eg-col-7,
	.eg-col-8,
	.eg-col-9,
	.eg-col-12 {
		grid-column: span 1 !important;
	}
}

/* =====================================================================
   HEADER
   ===================================================================== */
.edugrowth-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	background: rgba(11, 19, 43, 0.95);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	transition: var(--eg-transition);
}

.edugrowth-header.scrolled {
	background: rgba(11, 19, 43, 0.98);
	border-bottom-color: rgba(255, 255, 255, 0.12);
}

.edugrowth-header-inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 40px;
	height: 72px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/* Logo */
.edugrowth-logo a {
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 2px;
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -0.03em;
}

.edugrowth-logo-text {
	color: var(--eg-white);
}

.edugrowth-logo-accent {
	color: var(--eg-accent);
}

.edugrowth-logo img,
.edugrowth-logo .edugrowth-logo-img {
	max-height: 60px !important;
	width: auto !important;
	object-fit: contain !important;
	display: block !important;
	border-radius: 8px !important;
}

/* Navigation */
.edugrowth-nav .edugrowth-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 8px;
}

.edugrowth-nav .edugrowth-nav-list li {
	margin: 0;
	padding: 0;
	position: relative;
}

.edugrowth-nav .edugrowth-nav-list li a {
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	padding: 8px 18px;
	transition: var(--eg-transition);
	position: relative;
	display: block;
}

.edugrowth-nav .edugrowth-nav-list li a:hover,
.edugrowth-nav .edugrowth-nav-list li.current-menu-item a,
.edugrowth-nav .edugrowth-nav-list li.current_page_item a {
	color: var(--eg-white);
}

.edugrowth-nav .edugrowth-nav-list li a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 18px;
	right: 18px;
	height: 2px;
	background: var(--eg-accent);
	transform: scaleX(0);
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	transform-origin: center;
}

.edugrowth-nav .edugrowth-nav-list li a:hover::after,
.edugrowth-nav .edugrowth-nav-list li.current-menu-item a::after,
.edugrowth-nav .edugrowth-nav-list li.current_page_item a::after {
	transform: scaleX(1);
}

/* Header CTA */
.edugrowth-header-cta {
	display: inline-flex;
	align-items: center;
	padding: 10px 28px;
	background: var(--eg-accent);
	color: var(--eg-white) !important;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.01em;
	transition: var(--eg-transition);
	border: 1px solid var(--eg-accent);
}

.edugrowth-header-cta:hover {
	background: var(--eg-accent-dark);
	border-color: var(--eg-accent-dark);
	transform: translateY(-1px);
	color: var(--eg-white) !important;
}

.edugrowth-mobile-menu-cta {
	display: none;
}

/* Hamburger */
.edugrowth-hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 32px;
	height: 32px;
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	z-index: 10001;
}

.edugrowth-hamburger span {
	display: block;
	width: 100%;
	height: 2px;
	background: var(--eg-white);
	transition: var(--eg-transition);
	transform-origin: center;
}

.edugrowth-hamburger.active span:nth-child(1) {
	transform: rotate(45deg) translate(5px, 5px);
}

.edugrowth-hamburger.active span:nth-child(2) {
	opacity: 0;
}

.edugrowth-hamburger.active span:nth-child(3) {
	transform: rotate(-45deg) translate(5px, -5px);
}

/* WP Admin bar adjustment */
.admin-bar .edugrowth-header {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .edugrowth-header {
		top: 46px;
	}
}

/* ─── Mobile Header ──────────────────────────────────────── */
@media (max-width: 991px) {
	.edugrowth-header-inner {
		padding: 0 20px;
	}

	.edugrowth-hamburger {
		display: flex;
	}

	.edugrowth-nav {
		position: fixed;
		top: 0;
		right: -100%;
		width: 300px;
		height: 100vh;
		background: var(--eg-navy);
		border-left: 1px solid rgba(255, 255, 255, 0.08);
		padding: 90px 30px 30px;
		transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
		z-index: 10000;
		overflow-y: auto;
	}

	.edugrowth-nav.active {
		right: 0;
	}

	.edugrowth-nav .edugrowth-nav-list {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.edugrowth-nav .edugrowth-nav-list li a {
		padding: 14px 0;
		font-size: 17px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	}

	.edugrowth-nav .edugrowth-nav-list li a::after {
		display: none;
	}

	.edugrowth-header-cta {
		display: none !important;
	}

	.edugrowth-mobile-menu-cta {
		display: block !important;
		margin-top: 30px !important;
		background: var(--eg-accent) !important;
		color: var(--eg-white) !important;
		text-align: center !important;
		padding: 12px 24px !important;
		font-weight: 700 !important;
		text-decoration: none !important;
		border-radius: 6px !important;
		font-family: 'Inter', sans-serif !important;
		transition: background 0.3s ease !important;
	}

	.edugrowth-mobile-menu-cta:hover {
		background: var(--eg-accent-dark) !important;
	}

	/* Mobile overlay */
	.edugrowth-nav-overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.5);
		opacity: 0;
		visibility: hidden;
		transition: var(--eg-transition);
		z-index: 9998;
	}

	.edugrowth-nav-overlay.active {
		opacity: 1;
		visibility: visible;
	}
}

/* ─── Body padding for fixed header ──────────────────────── */
body {
	padding-top: 72px;
}

.admin-bar body,
body.admin-bar {
	padding-top: 72px;
}

/* =====================================================================
   FOOTER
   ===================================================================== */
.edugrowth-footer {
	background: var(--eg-navy);
	color: rgba(255, 255, 255, 0.7);
	padding: 0;
	margin: 0;
	font-family: var(--eg-font);
}

.edugrowth-footer-main {
	max-width: 1280px;
	margin: 0 auto;
	padding: 80px 40px 60px;
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 50px;
}

.edugrowth-footer-col h4 {
	color: var(--eg-white);
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin: 0 0 24px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--eg-accent);
	display: inline-block;
}

.edugrowth-footer-col p {
	font-size: 15px;
	line-height: 1.7;
	margin: 0 0 16px;
	color: rgba(255, 255, 255, 0.6);
}

.edugrowth-footer-col ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.edugrowth-footer-col ul li {
	margin: 0 0 12px;
	padding: 0;
}

.edugrowth-footer-col ul li a {
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
	font-size: 15px;
	transition: var(--eg-transition);
	display: inline-block;
}

.edugrowth-footer-col ul li a:hover {
	color: var(--eg-accent);
	transform: translateX(4px);
}

.edugrowth-footer-col .footer-contact-item {
	display: flex;
	gap: 10px;
	margin-bottom: 14px;
	font-size: 14px;
	line-height: 1.5;
}

.edugrowth-footer-col .footer-contact-item .contact-icon {
	color: var(--eg-accent);
	font-size: 14px;
	min-width: 18px;
	margin-top: 3px;
}

.edugrowth-footer-logo {
	margin-bottom: 20px;
}

.edugrowth-footer-logo a {
	font-size: 28px;
	font-weight: 800;
	text-decoration: none;
	letter-spacing: -0.03em;
}

.edugrowth-footer-logo img,
.edugrowth-footer-logo .edugrowth-logo-img {
	max-height: 60px !important;
	width: auto !important;
	object-fit: contain !important;
	display: block !important;
	border-radius: 8px !important;
}

/* Footer bottom bar */
.edugrowth-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	max-width: 1280px;
	margin: 0 auto;
	padding: 24px 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.edugrowth-footer-bottom p {
	margin: 0;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.4);
}

.edugrowth-footer-bottom-links {
	display: flex;
	gap: 24px;
}

.edugrowth-footer-bottom-links a {
	color: rgba(255, 255, 255, 0.4);
	text-decoration: none;
	font-size: 14px;
	transition: var(--eg-transition);
}

.edugrowth-footer-bottom-links a:hover {
	color: var(--eg-accent);
}

/* ─── Mobile Footer ──────────────────────────────────────── */
@media (max-width: 991px) {
	.edugrowth-footer-main {
		grid-template-columns: 1fr 1fr;
		padding: 60px 24px 40px;
		gap: 40px;
	}
}

@media (max-width: 600px) {
	.edugrowth-footer-main {
		grid-template-columns: 1fr;
		padding: 48px 20px 32px;
		gap: 36px;
	}

	.edugrowth-footer-bottom {
		flex-direction: column;
		gap: 16px;
		text-align: center;
		padding: 20px;
	}
}

/* =====================================================================
   SECTION-SPECIFIC STYLES
   ===================================================================== */

/* ─── Hero Section ───────────────────────────────────────── */
.edugrowth-hero-section {
	position: relative;
	overflow: hidden;
	min-height: calc(100vh - 72px) !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	z-index: 1;
}

/* Force dark overlay on the entire section background image */
.edugrowth-hero-section::before {
	content: '' !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	background-color: rgba(11, 19, 43, 0.8) !important;
	/* Brand navy overlay (80% opacity) */
	z-index: 0 !important;
	pointer-events: none !important;
}

/* Ensure content, column grids, and elements sit above the overlay */
.edugrowth-hero-section>.e-con-inner,
.edugrowth-hero-section>.edugrowth-hero-grid,
.edugrowth-hero-grid>.e-con-inner,
.edugrowth-hero-grid>.elementor-element {
	position: relative !important;
	z-index: 2 !important;
}

.edugrowth-hero-section.e-con {
	min-height: calc(100vh - 72px) !important;
}

/* Responsive adjustments for laptop screens to reduce vertical space and ensure perfect vertical centering */
@media (max-width: 1400px) {
	.elementor .edugrowth-hero-section {
		padding-top: 50px !important;
		padding-bottom: 50px !important;
	}
}

@media (max-height: 800px) {
	.elementor .edugrowth-hero-section {
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}
}

.admin-bar .edugrowth-hero-section,
.admin-bar .edugrowth-hero-section.e-con {
	min-height: calc(100vh - 72px - 32px) !important;
}

/* Move decorative glows to the grid container, rendering on top of the overlay but below text */
.edugrowth-hero-grid::before {
	content: '' !important;
	position: absolute !important;
	top: -50% !important;
	right: -20% !important;
	width: 600px !important;
	height: 600px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.12) 0%, transparent 70%) !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.edugrowth-hero-grid::after {
	content: '' !important;
	position: absolute !important;
	bottom: -30% !important;
	left: -10% !important;
	width: 400px !important;
	height: 400px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.06) 0%, transparent 70%) !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* ─── Hero Grid (no borders, vertically centered) ──── */
.edugrowth-hero-grid.edugrowth-bento-grid>.elementor-element,
.edugrowth-hero-grid.edugrowth-bento-grid>.e-con-inner>.elementor-element {
	border: none !important;
	align-self: center;
}

.edugrowth-hero-grid.edugrowth-bento-grid,
.edugrowth-hero-grid.edugrowth-bento-grid>.e-con-inner {
	align-items: center;
	gap: 0 !important;
}

@media (max-width: 767px) {

	.edugrowth-hero-grid.edugrowth-bento-grid,
	.edugrowth-hero-grid.edugrowth-bento-grid>.e-con-inner {
		gap: 40px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.edugrowth-hero-text {
		text-align: center !important;
		align-items: center !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.edugrowth-hero-text .elementor-heading-title,
	.edugrowth-hero-text p {
		text-align: center !important;
	}

	.edugrowth-hero-text h1.elementor-heading-title {
		font-size: 32px !important;
		line-height: 1.25 !important;
	}

	.edugrowth-hero-text h6.elementor-heading-title {
		font-size: 11px !important;
		letter-spacing: 2px !important;
	}

	.edugrowth-hero-text p {
		font-size: 15px !important;
		line-height: 1.6 !important;
	}

	.edugrowth-hero-buttons,
	.edugrowth-hero-buttons>.e-con-inner {
		justify-content: center !important;
		align-items: center !important;
	}
}


/* ─── Bento Service Cards (light theme) ─────────────────── */
.edugrowth-bento-card {
	background: var(--eg-white) !important;
	transition: background-color 0.3s ease !important;
	position: relative;
}

.edugrowth-bento-card:hover {
	background-color: var(--eg-gray-50) !important;
}

/* Make all bento-card icons the same accent color */
.edugrowth-bento-card>.e-con-inner>.elementor-element:first-child .elementor-heading-title,
.edugrowth-bento-card>.elementor-element:first-child .elementor-heading-title {
	color: var(--eg-accent) !important;
}

/* ─── Bento CTA Card ────────────────────────────────────── */
.edugrowth-bento-cta {
	transition: var(--eg-transition) !important;
	cursor: pointer;
	position: relative;
	overflow: hidden;
}

.edugrowth-bento-cta:hover {
	background-color: var(--eg-accent-dark) !important;
	transform: translateY(-4px);
	box-shadow: 0 12px 32px rgba(212, 160, 23, 0.25) !important;
}

.edugrowth-bento-cta .elementor-heading-title {
	transition: transform 0.3s ease;
}

.edugrowth-bento-cta:hover .elementor-heading-title {
	transform: translateX(6px);
}

/* ─── Service Cards ──────────────────────────────────────── */
.edugrowth-service-card {
	transition: var(--eg-transition) !important;
	position: relative;
}

.edugrowth-service-card::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: var(--eg-accent);
	transform: scaleX(0);
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	transform-origin: left;
}

.edugrowth-service-card:hover {
	background-color: var(--eg-gray-50) !important;
}

.edugrowth-service-card:hover::before {
	transform: scaleX(1);
}

/* ─── Why Section Stats ─────────────────────────────────── */
.edugrowth-why-section {
	position: relative;
	overflow: hidden;
}

.edugrowth-why-section::before {
	content: '';
	position: absolute;
	top: -40%;
	left: -10%;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.08) 0%, transparent 70%);
	pointer-events: none;
}

/* Remove bento grid borders inside the why stats */
.edugrowth-why-stats-grid>.elementor-element,
.edugrowth-why-stats-grid>.e-con-inner>.elementor-element {
	border: none !important;
	border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.edugrowth-why-stats-grid>.elementor-element:last-child,
.edugrowth-why-stats-grid>.e-con-inner>.elementor-element:last-child {
	border-right: none !important;
}

.edugrowth-why-stat .elementor-heading-title {
	transition: color 0.3s ease;
}

.edugrowth-why-stat:hover .elementor-heading-title {
	text-shadow: 0 0 20px rgba(212, 160, 23, 0.3);
}

/* ─── CTA Section ────────────────────────────────────────── */
.edugrowth-cta-section {
	position: relative;
	overflow: hidden;
}

.edugrowth-cta-section::before {
	content: '';
	position: absolute;
	top: -50%;
	right: -10%;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 70%);
	pointer-events: none;
}

/* ─── Testimonial (carousel handles its own styles) ───── */

/* =====================================================================
   SCROLL-REVEAL ANIMATIONS
   Elements with .eg-reveal start hidden and animate in when
   Intersection Observer adds .eg-revealed.
   ===================================================================== */

/* Hidden state — waiting to enter viewport */
.eg-reveal {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity, transform;
}

/* Revealed state — smoothly appears */
.eg-reveal.eg-revealed {
	opacity: 1;
	transform: translateY(0);
}

/* Staggered delays for children */
.eg-reveal.eg-delay-1 {
	transition-delay: 0.1s;
}

.eg-reveal.eg-delay-2 {
	transition-delay: 0.2s;
}

.eg-reveal.eg-delay-3 {
	transition-delay: 0.3s;
}

.eg-reveal.eg-delay-4 {
	transition-delay: 0.4s;
}

/* Slide-from-left variant */
.eg-reveal-left {
	opacity: 0;
	transform: translateX(-30px);
	transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity, transform;
}

.eg-reveal-left.eg-revealed {
	opacity: 1;
	transform: translateX(0);
}

/* Slide-from-right variant */
.eg-reveal-right {
	opacity: 0;
	transform: translateX(30px);
	transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity, transform;
}

.eg-reveal-right.eg-revealed {
	opacity: 1;
	transform: translateX(0);
}

/* Scale-up variant */
.eg-reveal-scale {
	opacity: 0;
	transform: scale(0.92);
	transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity, transform;
}

.eg-reveal-scale.eg-revealed {
	opacity: 1;
	transform: scale(1);
}

/* Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {

	.eg-reveal,
	.eg-reveal-left,
	.eg-reveal-right,
	.eg-reveal-scale {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}

/* Force reveal all elements when inside the Elementor Editor */
.elementor-editor-active .eg-reveal,
.elementor-editor-active .eg-reveal-left,
.elementor-editor-active .eg-reveal-right,
.elementor-editor-active .eg-reveal-scale {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
	visibility: visible !important;
}

/* =====================================================================
   SCROLLBAR (Premium feel)
   ===================================================================== */
::-webkit-scrollbar {
	width: 8px;
}

::-webkit-scrollbar-track {
	background: var(--eg-gray-100);
}

::-webkit-scrollbar-thumb {
	background: var(--eg-gray-400);
}

::-webkit-scrollbar-thumb:hover {
	background: var(--eg-gray-500);
}

/* =====================================================================
   SKELETON PAGE HEADER
   ===================================================================== */
.edugrowth-page-header {
	min-height: 240px;
	display: flex !important;
	align-items: center;
	justify-content: center;
}

/* =====================================================================
   SELECTION COLOR
   ===================================================================== */
::selection {
	background: rgba(212, 160, 23, 0.2);
	color: var(--eg-text);
}

/* =====================================================================
   FORM RESET & STYLING (Contact Form 7 integration)
   ===================================================================== */
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form textarea {
	width: 100% !important;
	padding: 14px 18px !important;
	border: 1px solid var(--eg-border-light) !important;
	background-color: var(--eg-gray-50) !important;
	border-radius: 0 !important;
	font-family: var(--eg-font) !important;
	font-size: 15px !important;
	color: var(--eg-text) !important;
	transition: var(--eg-transition-fast) !important;
	box-shadow: none !important;
}

.wpcf7 form input[type="text"]:focus,
.wpcf7 form input[type="email"]:focus,
.wpcf7 form input[type="tel"]:focus,
.wpcf7 form textarea:focus {
	border-color: var(--eg-accent) !important;
	background-color: var(--eg-white) !important;
	outline: none !important;
}

.wpcf7 form input[type="submit"] {
	background-color: var(--eg-accent) !important;
	color: var(--eg-white) !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 16px 36px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: var(--eg-transition) !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
}

.wpcf7 form input[type="submit"]:hover {
	background-color: var(--eg-accent-dark) !important;
	transform: translateY(-1px) !important;
}

/* =====================================================================
   TIMELINE STYLING (About Page Timeline)
   ===================================================================== */
.edugrowth-timeline {
	position: relative;
	width: 100%;
	padding: 40px 0;
}

.edugrowth-timeline::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	width: 2px;
	background: var(--eg-border-light);
	transform: translateX(-50%);
}

.edugrowth-timeline-item {
	position: relative;
	width: 50%;
	padding: 20px 40px;
	box-sizing: border-box;
}

.edugrowth-timeline-item:nth-child(odd) {
	left: 0;
	text-align: right;
}

.edugrowth-timeline-item:nth-child(even) {
	left: 50%;
	text-align: left;
}

.edugrowth-timeline-badge {
	position: absolute;
	top: 26px;
	width: 16px;
	height: 16px;
	background: var(--eg-white);
	border: 3px solid var(--eg-accent);
	z-index: 10;
}

.edugrowth-timeline-item:nth-child(odd) .edugrowth-timeline-badge {
	right: -8px;
}

.edugrowth-timeline-item:nth-child(even) .edugrowth-timeline-badge {
	left: -8px;
}

.edugrowth-timeline-card {
	background: var(--eg-white);
	padding: 24px;
	border: 1px solid var(--eg-border-light);
	transition: var(--eg-transition);
}

.edugrowth-timeline-card:hover {
	border-color: var(--eg-accent);
	background: var(--eg-gray-50);
}

.edugrowth-timeline-year {
	font-size: 20px;
	font-weight: 800;
	color: var(--eg-accent);
	margin-bottom: 8px;
}

@media (max-width: 767px) {
	.edugrowth-timeline::before {
		left: 20px;
	}

	.edugrowth-timeline-item {
		width: 100%;
		left: 0 !important;
		padding-left: 40px;
		text-align: left !important;
	}

	.edugrowth-timeline-badge {
		left: 12px !important;
	}
}

/* =====================================================================
   TEAM & VALUES HOVER EFFECT
   ===================================================================== */
.edugrowth-team-card {
	background: var(--eg-white);
	border: 1px solid var(--eg-border-light);
	transition: var(--eg-transition);
	padding: 30px;
}

.edugrowth-team-card:hover {
	border-color: var(--eg-accent);
	background: var(--eg-gray-50);
}

.edugrowth-team-avatar {
	width: 80px;
	height: 80px;
	background: var(--eg-gray-100);
	border: 1px solid var(--eg-border-light);
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	color: var(--eg-gray-500);
}

.edugrowth-team-card:hover .edugrowth-team-avatar {
	border-color: var(--eg-accent);
	color: var(--eg-accent);
}

.edugrowth-value-card {
	background: var(--eg-white);
	border: 1px solid var(--eg-border-light);
	transition: var(--eg-transition);
	padding: 32px;
}

.edugrowth-value-card:hover {
	background: var(--eg-gray-50);
	border-color: var(--eg-accent);
}

/* =====================================================================
   HEADER NAV DROPDOWN SUBMENU
   ===================================================================== */
.edugrowth-nav .edugrowth-nav-list li .sub-menu {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%) translateY(10px);
	opacity: 0;
	visibility: hidden;
	background: var(--eg-navy);
	border: 1px solid var(--eg-border);
	border-top: 2px solid var(--eg-accent);
	min-width: 260px;
	list-style: none;
	padding: 12px 0;
	margin: 0;
	z-index: 10002;
	transition: var(--eg-transition);
}

.edugrowth-nav .edugrowth-nav-list li:hover .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

.edugrowth-nav .edugrowth-nav-list li .sub-menu li {
	width: 100%;
	margin: 0;
	padding: 0;
}

.edugrowth-nav .edugrowth-nav-list li .sub-menu li a {
	display: block;
	padding: 10px 24px;
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	transition: var(--eg-transition-fast);
}

.edugrowth-nav .edugrowth-nav-list li .sub-menu li a::after {
	display: none !important;
}

.edugrowth-nav .edugrowth-nav-list li .sub-menu li a:hover {
	color: var(--eg-accent) !important;
	background: rgba(255, 255, 255, 0.04);
	padding-left: 28px;
}

/* Mobile Dropdown Menu Adjustments */
@media (max-width: 991px) {
	.edugrowth-nav .edugrowth-nav-list li.menu-item-has-children .sub-menu {
		position: static !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		background: rgba(0, 0, 0, 0.15) !important;
		border: none !important;
		padding: 4px 0 !important;
		min-width: 100% !important;
		margin-top: 8px !important;
	}

	.edugrowth-nav .edugrowth-nav-list li.menu-item-has-children .sub-menu li a {
		padding: 10px 24px !important;
		font-size: 14px !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
	}

	.edugrowth-nav .edugrowth-nav-list li.menu-item-has-children .sub-menu li a:hover {
		padding-left: 24px !important;
	}
}

/* =====================================================================
   CONTACT FORM 7 DESIGN SYSTEM OVERRIDES
   ===================================================================== */
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form input[type="url"],
.wpcf7 form select,
.wpcf7 form textarea {
	width: 100%;
	padding: 14px 18px;
	border: 1px solid var(--eg-border-light);
	background-color: var(--eg-gray-50);
	border-radius: 0 !important;
	font-family: var(--eg-font);
	font-size: 15px;
	color: var(--eg-text);
	transition: var(--eg-transition-fast);
	margin-bottom: 16px;
}

.wpcf7 form input[type="text"]:focus,
.wpcf7 form input[type="email"]:focus,
.wpcf7 form input[type="tel"]:focus,
.wpcf7 form select:focus,
.wpcf7 form textarea:focus {
	border-color: var(--eg-accent);
	background-color: var(--eg-white);
	outline: none;
}

.wpcf7 form input[type="submit"] {
	background-color: var(--eg-accent);
	color: var(--eg-white);
	border: none;
	border-radius: 0 !important;
	padding: 16px 36px;
	width: 100%;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: var(--eg-transition);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.wpcf7 form input[type="submit"]:hover {
	background-color: var(--eg-accent-dark);
}

/* =====================================================================
   CONTACT FORM 7 DESIGN SYSTEM OVERRIDES (MODERN & PREMIUM)
   ===================================================================== */
.wpcf7 form label {
	display: block !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.8px !important;
	color: var(--eg-gray-500) !important;
	margin-bottom: 12px !important;
}

/* Hide the raw line breaks inserted by default CF7 templates */
.wpcf7 form label br {
	display: none !important;
}

/* Wrap the inputs neatly under the labels */
.wpcf7 form span.wpcf7-form-control-wrap {
	display: block !important;
	margin-top: 6px !important;
}

.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form input[type="url"],
.wpcf7 form select,
.wpcf7 form textarea {
	width: 100% !important;
	padding: 12px 16px !important;
	border: 1px solid var(--eg-border-light) !important;
	background-color: var(--eg-gray-50) !important;
	border-radius: 0 !important;
	font-family: var(--eg-font) !important;
	font-size: 14px !important;
	color: var(--eg-text) !important;
	transition: var(--eg-transition-fast) !important;
	margin-bottom: 0 !important;
}

.wpcf7 form input[type="text"]:focus,
.wpcf7 form input[type="email"]:focus,
.wpcf7 form input[type="tel"]:focus,
.wpcf7 form select:focus,
.wpcf7 form textarea:focus {
	border-color: var(--eg-accent) !important;
	background-color: var(--eg-white) !important;
	outline: none !important;
}

.wpcf7 form input[type="submit"] {
	background-color: var(--eg-accent) !important;
	color: var(--eg-white) !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 16px 36px !important;
	width: 100% !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	transition: var(--eg-transition) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}

.wpcf7 form input[type="submit"]:hover {
	background-color: var(--eg-accent-dark) !important;
}

/* =====================================================================
   COMPACT HERO FORM STYLING (MODERN ROUNDED LOOK WITH ICONS & ORANGE BUTTON)
   ===================================================================== */
/* Enforce card container border radius and soft drop shadow (overriding global resets) */
.elementor .edugrowth-hero-form {
	border-radius: 20px !important;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15) !important;
	border: none !important;
	background-color: var(--eg-gray-100) !important;
	padding: 32px 28px !important;
}

.edugrowth-hero-form .elementor-heading-title {
	font-size: 18px !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	line-height: 1.3 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}

/* Hide the label texts to replicate the placeholder-only clean layout */
.edugrowth-hero-form .wpcf7 form label {
	font-size: 0 !important;
	margin-bottom: 0 !important;
	line-height: 0 !important;
	color: transparent !important;
}

/* Format control wrappers inside the form */
.edugrowth-hero-form .wpcf7 form span.wpcf7-form-control-wrap {
	display: block !important;
	margin-top: 0 !important;
	margin-bottom: 12px !important;
}

/* Force pill-shaped border-radius and white backgrounds on fields */
.elementor .edugrowth-hero-form input[type="text"],
.elementor .edugrowth-hero-form input[type="email"],
.elementor .edugrowth-hero-form input[type="tel"],
.elementor .edugrowth-hero-form select,
.elementor .edugrowth-hero-form textarea {
	border-radius: 30px !important;
	background-color: var(--eg-white) !important;
	border: 1px solid rgba(11, 19, 43, 0.1) !important;
	padding: 10px 16px 10px 42px !important;
	/* Spaced left for SVG icons */
	font-size: 13px !important;
	margin-bottom: 0 !important;
	background-repeat: no-repeat !important;
	background-size: 16px 16px !important;
	background-position: 16px center !important;
}

/* Left SVG Icon injections */
.elementor .edugrowth-hero-form input[type="text"],
.elementor .edugrowth-hero-form select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z'/%3E%3C/svg%3E") !important;
}

.elementor .edugrowth-hero-form input[type="email"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z'/%3E%3C/svg%3E") !important;
}

.elementor .edugrowth-hero-form input[type="tel"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3 5a2 2 0 012-2h3.28a1 1 0 01.94.725l.548 2.2a1 1 0 01-.321.988l-1.305.98a10.582 10.582 0 004.872 4.872l.98-1.305a1 1 0 01.988-.321l2.2.548a1 1 0 01.725.94V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z'/%3E%3C/svg%3E") !important;
}

.elementor .edugrowth-hero-form textarea {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253'/%3E%3C/svg%3E") !important;
	background-position: 16px 12px !important;
	height: 48px !important;
	min-height: 48px !important;
	border-radius: 18px !important;
	/* Less rounded for textarea usability */
}

/* Theme-green pill-shaped submit button styling */
.elementor .edugrowth-hero-form input[type="submit"] {
	border-radius: 30px !important;
	background-color: var(--eg-accent) !important;
	/* Theme green accent color */
	color: var(--eg-white) !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	padding: 12px 24px !important;
	transition: var(--eg-transition) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	box-shadow: 0 4px 12px rgba(212, 160, 23, 0.2) !important;
	/* Soft green glow */
	margin-top: 8px !important;
}

.elementor .edugrowth-hero-form input[type="submit"]:hover {
	background-color: var(--eg-accent-dark) !important;
	/* Theme green hover color */
	box-shadow: 0 6px 16px rgba(212, 160, 23, 0.35) !important;
}

.edugrowth-hero-form .elementor-spacer {
	display: none !important;
}

/* =====================================================================
   NEP BANNER SECTION STYLING
   ===================================================================== */
.edugrowth-nep-section {
	border-bottom: 1px solid var(--eg-border-light) !important;
}

.edugrowth-nep-grid.edugrowth-bento-grid>.e-con-inner {
	align-items: center !important;
}

/* Hide grid borders for this section since it is a continuous banner */
.edugrowth-nep-grid.edugrowth-bento-grid>.elementor-element,
.edugrowth-nep-grid.edugrowth-bento-grid>.e-con-inner>.elementor-element {
	border: none !important;
}

.edugrowth-nep-text .elementor-heading-title {
	margin: 0 !important;
	font-family: var(--eg-font) !important;
}

.edugrowth-nep-button-col {
	display: flex !important;
	justify-content: center !important;
	align-items: flex-end !important;
}

/* Make CTA download button a pill shape */
.elementor .edugrowth-nep-button-col .elementor-button {
	border-radius: 30px !important;
	background-color: var(--eg-accent) !important;
	color: var(--eg-white) !important;
	box-shadow: 0 4px 12px rgba(212, 160, 23, 0.2) !important;
	transition: var(--eg-transition) !important;
}

.elementor .edugrowth-nep-button-col .elementor-button:hover {
	background-color: var(--eg-accent-dark) !important;
	box-shadow: 0 6px 16px rgba(212, 160, 23, 0.35) !important;
	transform: translateY(-1px) !important;
}

@media (max-width: 767px) {
	.edugrowth-nep-button-col {
		align-items: flex-start !important;
		margin-top: 16px !important;
	}
}

/* =====================================================================
   SECTION 2 — SCROLL-LINKED TIMELINE STYLING
   ===================================================================== */

/* Container & Rows spacing */
.edugrowth-scroll-services-section {
	overflow: hidden;
	position: relative;
	background-color: #f0fdf9 !important;
	background-image:
		radial-gradient(ellipse 60% 50% at 100% 0%, rgba(212, 160, 23, 0.18) 0%, rgba(212, 160, 23, 0) 70%),
		radial-gradient(ellipse 60% 50% at 0% 100%, rgba(212, 160, 23, 0.18) 0%, rgba(212, 160, 23, 0) 70%) !important;
}

/* Top-right large organic blob */
.edugrowth-scroll-services-section::before {
	content: "" !important;
	position: absolute !important;
	top: -60px !important;
	right: -80px !important;
	width: 380px !important;
	height: 320px !important;
	background: radial-gradient(ellipse at 60% 40%, rgba(212, 160, 23, 0.2) 0%, rgba(212, 160, 23, 0.08) 45%, transparent 75%) !important;
	border-radius: 50% 60% 70% 40% / 50% 40% 60% 50% !important;
	pointer-events: none !important;
	z-index: 0 !important;
	transform: rotate(-15deg) !important;
}

/* Bottom-left large organic blob */
.edugrowth-scroll-services-section::after {
	content: "" !important;
	position: absolute !important;
	bottom: -60px !important;
	left: -80px !important;
	width: 380px !important;
	height: 320px !important;
	background: radial-gradient(ellipse at 40% 60%, rgba(212, 160, 23, 0.2) 0%, rgba(212, 160, 23, 0.08) 45%, transparent 75%) !important;
	border-radius: 60% 50% 40% 70% / 40% 60% 50% 60% !important;
	pointer-events: none !important;
	z-index: 0 !important;
	transform: rotate(10deg) !important;
}

/* Solutions for Every Learning Need — force navy bg over Elementor inline style */
.edugrowth-solutions-needs-section,
.edugrowth-solutions-needs-section>.e-con-inner,
.edugrowth-solutions-needs-section.e-con {
	background-color: #0B132B !important;
}

/* Suppress Bento Grid borders & backgrounds for the timeline */
.edugrowth-timeline-row.edugrowth-bento-grid>.elementor-element,
.edugrowth-timeline-row.edugrowth-bento-grid>.e-con-inner>.elementor-element,
.edugrowth-timeline-connection-row.edugrowth-bento-grid>.elementor-element,
.edugrowth-timeline-connection-row.edugrowth-bento-grid>.e-con-inner>.elementor-element,
.edugrowth-timeline-ending-row.edugrowth-bento-grid>.elementor-element,
.edugrowth-timeline-ending-row.edugrowth-bento-grid>.e-con-inner>.elementor-element,
.edugrowth-timeline-cta-row.edugrowth-bento-grid>.elementor-element,
.edugrowth-timeline-cta-row.edugrowth-bento-grid>.e-con-inner>.elementor-element {
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Suppress connection row flow heights and reset margins to prevent card overlaps */
.edugrowth-timeline-connection-row,
.edugrowth-timeline-ending-row {
	margin: 0 !important;
	padding: 0 !important;
	position: relative !important;
	z-index: 5 !important;
	min-height: 0 !important;
	height: 0 !important;
}

/* Custom premium card design (Transparent card wrapper, side-by-side flex row layout) */
.edugrowth-scroll-card {
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
	z-index: 10;
}

/* Left side Column containing the 110x110 icon box */
.eg-timeline-left-col,
.eg-timeline-left-col>*,
.eg-timeline-left-col .elementor-widget,
.eg-timeline-left-col .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
	flex: 0 0 110px !important;
	width: 110px !important;
	max-width: 110px !important;
}

/* White box container for the icon */
.eg-timeline-icon-box {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: linear-gradient(145deg, #ffffff 0%, #f7fffe 100%) !important;
	border-radius: 28px !important;
	width: 110px !important;
	height: 110px !important;
	border: 1.5px solid rgba(212, 160, 23, 0.12) !important;
	box-shadow:
		0 4px 6px rgba(212, 160, 23, 0.06),
		0 12px 30px rgba(212, 160, 23, 0.1),
		0 24px 48px rgba(11, 19, 43, 0.06) !important;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
		box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1),
		border-color 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
	will-change: transform, box-shadow, border-color;
	position: relative !important;
	z-index: 2 !important;
}

.edugrowth-scroll-card:hover .eg-timeline-icon-box {
	transform: translateY(-5px) scale(1.03) !important;
	box-shadow:
		0 6px 10px rgba(212, 160, 23, 0.1),
		0 18px 40px rgba(212, 160, 23, 0.18),
		0 30px 60px rgba(11, 19, 43, 0.08) !important;
	border-color: rgba(212, 160, 23, 0.3) !important;
}

/* Timeline Custom Icon Styling */
.eg-timeline-icon-box svg {
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.edugrowth-scroll-card:hover .eg-timeline-icon-box svg {
	transform: scale(1.1) rotate(4deg);
}

/* Right side content column alignment */
.eg-timeline-content-col {
	flex: 1 1 auto !important;
	text-align: left !important;
	align-items: flex-start !important;
}

.eg-timeline-content-col h3,
.eg-timeline-content-col p {
	text-align: left !important;
}

/* Step Badge Pill */
.eg-timeline-step-badge {
	display: inline-block !important;
	background-color: #EBFBEE !important;
	/* Muted light green fill */
	color: #D4A017 !important;
	/* Theme green text */
	border-radius: 20px !important;
	padding: 4px 12px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
}

/* Heading hover effect */
.eg-timeline-content-col h3 {
	margin: 0 !important;
	transition: color 0.3s ease !important;
}

.edugrowth-scroll-card:hover .eg-timeline-content-col h3 {
	color: #D4A017 !important;
}

/* Green horizontal underline rule */
.eg-timeline-hr {
	width: 50px !important;
	height: 3px !important;
	background-color: #D4A017 !important;
	margin-top: 16px !important;
	margin-left: 0 !important;
	margin-right: auto !important;
	border-radius: 2px !important;
	transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.edugrowth-scroll-card:hover .eg-timeline-hr {
	width: 80px !important;
}

.edugrowth-timeline-connection-row>.e-con-inner,
.edugrowth-timeline-ending-row>.e-con-inner {
	position: relative !important;
}

.edugrowth-timeline-connection-row .elementor-widget,
.edugrowth-timeline-connection-row .elementor-widget-container,
.edugrowth-timeline-ending-row .elementor-widget,
.edugrowth-timeline-ending-row .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}

/* Card row gap rule */
.edugrowth-timeline-row {
	margin-bottom: 80px !important;
}

/* S-Curve SVG Vector connections wrapper (positions are dynamically set by JS) */
.eg-scroll-connection-wrapper {
	position: absolute !important;
	height: 220px;
	z-index: 5;
	top: -134px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.eg-scroll-connection-wrapper.eg-conn-l-to-r,
.eg-scroll-connection-wrapper.eg-conn-r-to-l {
	left: 38px;
	width: calc(5 / 12 * 100% + 20px);
}

.eg-scroll-connection-wrapper.eg-conn-r-to-c {
	left: calc(5 / 12 * 100% + 38px);
	width: calc(1 / 12 * 100% - 28px);
}

.eg-scroll-connection-wrapper.eg-scroll-ending {
	height: 220px;
}

/* SVG graphics element */
.eg-scroll-svg {
	width: 100%;
	height: 100%;
	display: block;
}

/* Background guide dashed line */
.eg-track-bg {
	stroke-dasharray: 6 6;
	stroke-linecap: round;
}

/* Filled drawing solid line */
.eg-track-fill {
	stroke-linecap: round;
	will-change: stroke-dashoffset;
}

/* Staggered CTA button placement */
.edugrowth-timeline-cta-row {
	z-index: 10;
	margin-top: 24px;
}

.edugrowth-timeline-cta-row .elementor-button {
	border-radius: 30px !important;
	box-shadow: 0 10px 25px rgba(212, 160, 23, 0.25) !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
		box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1),
		background-color 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.edugrowth-timeline-cta-row .elementor-button:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 15px 30px rgba(212, 160, 23, 0.35) !important;
}

/* =====================================================================
   RESPONSIVE LAYOUT & MOBILE FALLBACK
   ===================================================================== */
@media (max-width: 1024px) {

	/* Tablet overrides: ensure columns behave inside bento grids */
	.edugrowth-timeline-row.edugrowth-bento-grid>.e-con-inner>.eg-col-7 {
		grid-column: span 12 !important;
	}

	.edugrowth-scroll-space {
		display: none !important;
	}

	.eg-scroll-connection-wrapper {
		height: 120px;
		margin: 10px 0;
	}

	/* Draw a simplified straight timeline on tablet/mobile views using SVG stretching */
	.eg-scroll-svg {
		max-width: 100%;
	}
}

@media (max-width: 767px) {

	/* Mobile view: show S-Curves which will align vertically */
	.eg-scroll-connection-wrapper {
		display: block !important;
	}

	.edugrowth-scroll-space {
		display: none !important;
	}

	.edugrowth-timeline-row.edugrowth-bento-grid>.e-con-inner>.edugrowth-scroll-card {
		grid-column: span 12 !important;
		margin-bottom: 24px !important;
	}

	.edugrowth-scroll-card {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
		gap: 16px !important;
		padding: 0 !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.edugrowth-scroll-card>.elementor-widget-spacer {
		display: none !important;
	}

	.eg-timeline-left-col,
	.eg-timeline-left-col>*,
	.eg-timeline-left-col .elementor-widget,
	.eg-timeline-left-col .elementor-widget-container {
		flex: 0 0 72px !important;
		width: 72px !important;
		max-width: 72px !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.eg-timeline-icon-box {
		width: 72px !important;
		height: 72px !important;
		border-radius: 18px !important;
	}

	.eg-timeline-icon-box svg {
		width: 32px !important;
		height: 32px !important;
	}

	.edugrowth-timeline-row {
		padding: 0 20px !important;
	}

	.edugrowth-timeline-ending-row {
		display: none !important;
	}

	.edugrowth-timeline-cta-row {
		margin-top: 0 !important;
		padding: 0 20px !important;
	}
}

/* =====================================================================
   SECTION 2.1 — SOLUTIONS FOR EVERY LEARNING NEED STYLING
   ===================================================================== */

.edugrowth-solutions-needs-section {
	background-color: #000000 !important;
	overflow: hidden;
}

/* Clear default grid borders and background inside solutions section */
.edugrowth-solutions-grid.edugrowth-bento-grid>.elementor-element,
.edugrowth-solutions-grid.edugrowth-bento-grid>.e-con-inner>.elementor-element {
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Card Styling */
.eg-solutions-card {
	background-color: #111827 !important;
	/* Premium dark grey */
	border-radius: 12px !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
		border-color 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
	will-change: transform, border-color;
	display: flex !important;
	flex-direction: column !important;
}

.eg-solutions-card:hover {
	transform: translateY(-6px) !important;
	border-color: var(--eg-accent) !important;
	/* Green highlight on hover */
}

/* Image settings */
.eg-solutions-card-img {
	width: 100% !important;
	overflow: hidden !important;
}

.eg-solutions-card-img img {
	width: 100% !important;
	height: 220px !important;
	object-fit: cover !important;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
	will-change: transform;
	display: block !important;
}

.eg-solutions-card:hover .eg-solutions-card-img img {
	transform: scale(1.06) !important;
}

/* Know More text link button styling */
.eg-solutions-card-content .elementor-button {
	color: #3B82F6 !important;
	/* Standard blue link */
	background-color: transparent !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	border: none !important;
	transition: color 0.3s ease !important;
}

.eg-solutions-card-content .elementor-button:hover {
	color: var(--eg-white) !important;
	background-color: transparent !important;
}

/* Responsive Overrides */
@media (max-width: 1024px) {
	.edugrowth-solutions-grid.edugrowth-bento-grid>.e-con-inner>.eg-solutions-card {
		grid-column: span 12 !important;
		margin-bottom: 30px !important;
	}

	.eg-solutions-card-img img {
		height: 280px !important;
	}
}

@media (max-width: 767px) {
	.edugrowth-solutions-grid.edugrowth-bento-grid>.e-con-inner>.eg-solutions-card {
		margin-bottom: 24px !important;
	}

	.eg-solutions-card-img img {
		height: 200px !important;
	}

	.edugrowth-solutions-header h2 {
		font-size: 32px !important;
	}
}


/* =====================================================================
   MIGRATED LAYOUT COMPONENT STYLES (To prevent Elementor stripping)
   ===================================================================== */

/* ─── NEP Section ────────────────────────────────────────── */
.eg-nep-banner {
	display: flex;
	align-items: center;
	gap: 40px;
	padding: 28px 48px;
	background: #ffffff;
	border-radius: 0;
	position: relative;
	overflow: hidden;
	max-width: 100%;
	margin: 0;
	box-shadow: none;
	border: none;
}

.eg-nep-banner::before {
	content: "";
	position: absolute;
	bottom: -40px;
	left: -30px;
	width: 180px;
	height: 180px;
	background: radial-gradient(ellipse, rgba(212, 160, 23, 0.15) 0%, transparent 70%);
	border-radius: 50%;
	pointer-events: none;
}

.eg-nep-logo {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}

.eg-nep-img {
	height: 44px;
	max-height: 44px;
	max-width: 160px;
	width: auto;
	display: block;
	object-fit: contain;
}

.eg-nep-text {
	font-size: 17px;
	font-weight: 700;
	color: #0B132B;
	line-height: 1.4;
	margin: 0;
	flex: 1;
	font-family: "Inter", -apple-system, sans-serif;
}

.eg-nep-cta {
	display: inline-block;
	flex-shrink: 0;
	background: #D4A017;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	padding: 13px 28px;
	border-radius: 50px;
	font-family: "Inter", -apple-system, sans-serif;
	transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
	box-shadow: 0 4px 14px rgba(212, 160, 23, 0.3);
	white-space: nowrap;
}

.eg-nep-cta:hover {
	background: #B48006;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(212, 160, 23, 0.4);
}

@media (max-width: 767px) {
	.eg-nep-banner {
		flex-direction: column;
		gap: 20px;
		padding: 28px 24px;
		text-align: center;
	}

	.eg-nep-logo {
		justify-content: center;
	}

	.eg-nep-cta {
		width: 100%;
		text-align: center;
	}
}

/* ─── Pillars Section ────────────────────────────────────── */
.eg-pillars-section {
	max-width: 1140px;
	margin: 0 auto;
	font-family: "Inter", -apple-system, sans-serif;
}

.eg-pillars-header {
	text-align: center;
	max-width: 720px;
	margin: 0 auto 56px;
}

.eg-pillars-title {
	font-size: 42px;
	font-weight: 800;
	color: #0B132B;
	margin: 0 0 16px;
	line-height: 1.15;
	letter-spacing: -0.5px;
}

.eg-pillars-subtitle {
	font-size: 17px;
	line-height: 1.7;
	color: #64748B;
	margin: 0;
}

.eg-pillars-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.eg-pillar-card {
	border-radius: 24px;
	padding: 36px 32px 28px;
	display: flex;
	flex-direction: column;
	min-height: 280px;
	position: relative;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease;
}

.eg-pillar-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 48px rgba(11, 19, 43, 0.1);
}

.eg-pillar-teal {
	background: #CCFBF1;
}

.eg-pillar-emerald {
	background: #FEF3C7;
}

.eg-pillar-green {
	background: #DCFCE7;
}

.eg-pillar-name {
	font-size: 22px;
	font-weight: 800;
	color: #0B132B;
	margin: 0 0 14px;
}

.eg-pillar-desc {
	font-size: 15px;
	line-height: 1.7;
	color: #334155;
	margin: 0;
	flex: 1;
}

.eg-pillar-icon {
	align-self: flex-end;
	margin-top: 24px;
	opacity: 0.55;
}

.eg-pillar-teal .eg-pillar-icon {
	color: #0F766E;
}

.eg-pillar-emerald .eg-pillar-icon {
	color: #047857;
}

.eg-pillar-green .eg-pillar-icon {
	color: #15803D;
}

@media (max-width: 900px) {
	.eg-pillars-grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.eg-pillars-title {
		font-size: 32px;
	}
}

/* ─── Testimonials Section ───────────────────────────────── */
.eg-testimonial-carousel {
	max-width: 900px;
	margin: 0 auto;
	font-family: "Inter", -apple-system, sans-serif
}

.eg-tc-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 32px
}

.eg-tc-label {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #D4A017;
	display: block;
	margin-bottom: 8px
}

.eg-tc-title {
	font-size: 36px;
	font-weight: 800;
	color: #0B132B;
	margin: 0;
	line-height: 1.2
}

.eg-tc-nav {
	display: flex;
	gap: 12px
}

.eg-tc-arrow {
	width: 48px;
	height: 48px;
	border: 1px solid #CBD5E1;
	background: #fff;
	color: #0B132B;
	font-size: 20px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .3s ease
}

.eg-tc-arrow:hover {
	border-color: #D4A017;
	color: #D4A017;
	background: #F0FDF4
}

.eg-tc-progress {
	width: 100%;
	height: 3px;
	background: #E2E8F0;
	margin-bottom: 48px;
	position: relative;
	overflow: hidden
}

.eg-tc-progress-bar {
	height: 100%;
	background: #0B132B;
	width: 33.33%;
	transition: width .5s ease, transform .5s ease;
	position: absolute;
	left: 0;
	top: 0
}

.eg-tc-track {
	position: relative;
	overflow: hidden;
	min-height: 280px
}

.eg-tc-slide {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	opacity: 0;
	transform: translateX(60px);
	transition: opacity .5s ease, transform .5s ease;
	pointer-events: none
}

.eg-tc-slide.eg-tc-active {
	position: relative;
	opacity: 1;
	transform: translateX(0);
	pointer-events: auto
}

.eg-tc-stars {
	font-size: 18px;
	color: #D4A017;
	letter-spacing: 4px;
	margin-bottom: 24px
}

.eg-tc-quote {
	font-size: 22px;
	font-weight: 400;
	line-height: 1.7;
	color: #0B132B;
	margin: 0 0 36px;
	font-style: italic
}

.eg-tc-author {
	display: flex;
	align-items: center;
	gap: 16px
}

.eg-tc-avatar {
	width: 48px;
	height: 48px;
	background: #0B132B;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 700;
	flex-shrink: 0
}

.eg-tc-name {
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: #0B132B
}

.eg-tc-role {
	display: block;
	font-size: 14px;
	color: #64748B;
	margin-top: 2px
}

@media(max-width:767px) {
	.eg-tc-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px
	}

	.eg-tc-title {
		font-size: 28px
	}

	.eg-tc-quote {
		font-size: 18px
	}
}

/* ─── FAQ Section ────────────────────────────────────────── */
.eg-faq {
	max-width: 1140px;
	margin: 0 auto;
	font-family: "Inter", -apple-system, sans-serif
}

.eg-faq-grid {
	display: grid;
	grid-template-columns: 1fr 1.5fr;
	gap: 80px;
	align-items: start
}

.eg-faq-label {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #D4A017;
	display: block;
	margin-bottom: 12px
}

.eg-faq-title {
	font-size: 36px;
	font-weight: 800;
	color: #0B132B;
	margin: 0 0 16px;
	line-height: 1.2
}

.eg-faq-desc {
	font-size: 16px;
	line-height: 1.7;
	color: #64748B;
	margin: 0
}

.eg-faq-link {
	color: #D4A017;
	text-decoration: none;
	font-weight: 600;
	transition: color .3s ease
}

.eg-faq-link:hover {
	color: #B48006
}

.eg-faq-item {
	border-bottom: 1px solid #E2E8F0
}

.eg-faq-item:first-child {
	border-top: 1px solid #E2E8F0
}

.eg-faq-q {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 16px;
	background: none;
	border: none;
	cursor: pointer;
	font-size: 16px;
	font-weight: 600;
	color: #0B132B;
	text-align: left;
	font-family: inherit;
	gap: 16px;
	transition: color .3s ease, background .3s ease;
	white-space: normal;
}

.eg-faq-q span:first-child {
	flex: 1;
}

.eg-faq-q:hover {
	color: #fff;
	background: #D4A017;
	padding: 20px 16px
}

.eg-faq-q:hover .eg-faq-icon {
	color: #fff
}

.eg-faq-icon {
	font-size: 24px;
	font-weight: 300;
	color: #94A3B8;
	transition: transform .3s ease, color .3s ease;
	flex-shrink: 0;
	width: 24px;
	text-align: center
}

.eg-faq-item.eg-faq-open .eg-faq-icon {
	transform: rotate(45deg);
	color: #D4A017
}

.eg-faq-a {
	max-height: 0;
	overflow: hidden;
	transition: max-height .4s cubic-bezier(0.4, 0, 0.2, 1), padding .4s ease
}

.eg-faq-a p {
	margin: 0;
	font-size: 15px;
	line-height: 1.7;
	color: #64748B
}

.eg-faq-item.eg-faq-open .eg-faq-a {
	max-height: 200px;
	padding-bottom: 20px
}

@media(max-width:767px) {
	.eg-faq {
		padding: 0 20px !important;
		box-sizing: border-box !important;
		width: 100% !important;
	}

	.eg-faq-grid {
		grid-template-columns: 1fr;
		gap: 40px
	}

	.eg-faq-title {
		font-size: 28px
	}

	.eg-faq-q {
		padding: 16px 12px;
	}
}

/* =====================================================================
   ABOUT PAGE — MISSION & OBJECTIVES SECTION
   ===================================================================== */
.eg-about-mission-section {
	position: relative !important;
	background-color: #F8FAFC !important;
	overflow: hidden !important;
}

/* Remove default bento grid borders for this section */
.eg-about-mission-section .edugrowth-bento-grid>.e-con-inner>.elementor-element,
.eg-about-mission-section .edugrowth-bento-grid>.elementor-element {
	border: none !important;
}


/* Background gradient spot in top-left */
.eg-about-mission-section::before {
	content: '' !important;
	position: absolute !important;
	top: -80px !important;
	left: -80px !important;
	width: 350px !important;
	height: 350px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.1) 0%, transparent 70%) !important;
	border-radius: 50% !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Dotted background pattern */
.eg-about-mission-decor-dots {
	position: absolute !important;
	bottom: 40px !important;
	left: 40px !important;
	width: 100px !important;
	height: 100px !important;
	background-image: radial-gradient(rgba(212, 160, 23, 0.15) 1.5px, transparent 1.5px) !important;
	background-size: 14px 14px !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Circular curves background pattern at bottom-left */
.eg-about-mission-decor-curve {
	position: absolute !important;
	bottom: -60px !important;
	left: 120px !important;
	width: 320px !important;
	height: 240px !important;
	border: 1px solid rgba(212, 160, 23, 0.08) !important;
	border-radius: 50% !important;
	transform: rotate(-15deg) !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.eg-about-mission-decor-curve::after {
	content: '' !important;
	position: absolute !important;
	top: 15px !important;
	left: 15px !important;
	right: 15px !important;
	bottom: 15px !important;
	border: 1px solid rgba(212, 160, 23, 0.04) !important;
	border-radius: 50% !important;
}

/* Title and Subtitle Underlines in Left Column */
.eg-about-mission-left .elementor-widget-heading:nth-of-type(1) .elementor-heading-title {
	position: relative !important;
	display: inline-block !important;
	color: #D4A017 !important;
	padding-bottom: 8px !important;
}

.eg-about-mission-left .elementor-widget-heading:nth-of-type(1) .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	bottom: 0 !important;
	width: 35px !important;
	height: 2px !important;
	background-color: #D4A017 !important;
}

.eg-about-mission-left .elementor-widget-heading:nth-of-type(2) .elementor-heading-title {
	position: relative !important;
	padding-bottom: 20px !important;
	color: #0B132B !important;
}

.eg-about-mission-left .elementor-widget-heading:nth-of-type(2) .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	bottom: 0 !important;
	width: 60px !important;
	height: 3px !important;
	background-color: #D4A017 !important;
}

.eg-mission-desc {
	font-size: 15.5px !important;
	line-height: 1.75 !important;
	color: #475569 !important;
	margin: 0 !important;
}

/* Objectives Heading Underline in Right Column */
.eg-about-mission-right .elementor-widget-heading .elementor-heading-title {
	position: relative !important;
	padding-bottom: 12px !important;
	color: #0B132B !important;
}

.eg-about-mission-right .elementor-widget-heading .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	bottom: 0 !important;
	width: 50px !important;
	height: 3px !important;
	background-color: #D4A017 !important;
}

/* Cards Wrapper */
.eg-objectives-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	width: 100% !important;
}

/* Individual Objective Card */
.eg-objective-card {
	display: flex !important;
	align-items: center !important;
	background: #ffffff !important;
	border: none !important;
	border-radius: 16px !important;
	/* Forces rounded corners past global resets */
	padding: 24px 28px !important;
	box-shadow: 0 10px 30px rgba(11, 19, 43, 0.02) !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.eg-objective-card:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 12px 36px rgba(11, 19, 43, 0.05) !important;
}

/* Left part (Icon Circle + Title) */
.eg-objective-left {
	display: flex !important;
	align-items: center !important;
	gap: 20px !important;
	width: 200px !important;
	flex-shrink: 0 !important;
}

.eg-objective-icon-wrapper {
	width: 48px !important;
	height: 48px !important;
	border-radius: 50% !important;
	/* Force circle past global resets */
	background-color: #F0FDF4 !important;
	border: 1px solid rgba(212, 160, 23, 0.05) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #D4A017 !important;
	flex-shrink: 0 !important;
}

.eg-objective-icon {
	width: 22px !important;
	height: 22px !important;
	display: block !important;
}

.eg-objective-title {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #0B132B !important;
	line-height: 1.3 !important;
	margin: 0 !important;
}

/* Vertical Line Divider */
.eg-objective-divider {
	width: 1px !important;
	height: 40px !important;
	background-color: #E2E8F0 !important;
	margin: 0 32px !important;
	flex-shrink: 0 !important;
}

/* Right Description text */
.eg-objective-desc {
	font-size: 14.5px !important;
	line-height: 1.6 !important;
	color: #64748B !important;
	margin: 0 !important;
	flex-grow: 1 !important;
}

/* Responsive Styles */
@media (max-width: 991px) {
	.eg-about-mission-left {
		padding-right: 0 !important;
		margin-bottom: 40px !important;
	}

	.eg-about-mission-right {
		padding-left: 0 !important;
	}
}

@media (max-width: 768px) {
	.eg-objective-card {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 16px !important;
		padding: 24px !important;
	}

	.eg-objective-left {
		width: 100% !important;
	}

	.eg-objective-divider {
		display: none !important;
	}

	.eg-objective-desc {
		width: 100% !important;
	}
}

/* =====================================================================
   ABOUT PAGE — MILESTONES TIMELINE SECTION
   ===================================================================== */
.eg-about-timeline-section {
	position: relative !important;
	background-color: #FFFFFF !important;
	overflow: hidden !important;
}

/* Background gradient lights */
.eg-about-timeline-decor-radial-left {
	position: absolute !important;
	bottom: -150px !important;
	left: -150px !important;
	width: 500px !important;
	height: 500px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.06) 0%, transparent 70%) !important;
	border-radius: 50% !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.eg-about-timeline-decor-radial-right {
	position: absolute !important;
	top: -150px !important;
	right: -150px !important;
	width: 500px !important;
	height: 500px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.06) 0%, transparent 70%) !important;
	border-radius: 50% !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Dots background patterns */
.eg-about-timeline-decor-dots-left {
	position: absolute !important;
	top: 100px !important;
	left: 40px !important;
	width: 100px !important;
	height: 100px !important;
	background-image: radial-gradient(rgba(212, 160, 23, 0.12) 1.5px, transparent 1.5px) !important;
	background-size: 14px 14px !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.eg-about-timeline-decor-dots-right {
	position: absolute !important;
	bottom: 100px !important;
	right: 40px !important;
	width: 100px !important;
	height: 100px !important;
	background-image: radial-gradient(rgba(212, 160, 23, 0.12) 1.5px, transparent 1.5px) !important;
	background-size: 14px 14px !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Centered Journey Subtitle Underline */
.eg-about-timeline-section .elementor-widget-heading:nth-of-type(1) .elementor-heading-title {
	position: relative !important;
	display: inline-block !important;
	color: #D4A017 !important;
	padding-bottom: 8px !important;
}

.eg-about-timeline-section .elementor-widget-heading:nth-of-type(1) .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	bottom: 0 !important;
	width: 35px !important;
	height: 2px !important;
	background-color: #D4A017 !important;
}

.eg-about-timeline-subtitle {
	font-size: 16px !important;
	line-height: 1.7 !important;
	color: #64748B !important;
	text-align: center !important;
	max-width: 600px !important;
	margin: 0 auto !important;
}

/* Timeline Wrapper */
.eg-about-timeline {
	position: relative !important;
	width: 100% !important;
	max-width: 1000px !important;
	margin: 0 auto !important;
	padding: 40px 0 !important;
}

/* Central vertical spine */
.eg-about-timeline-spine {
	position: absolute !important;
	left: 50% !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 2px !important;
	background-color: #E2E8F0 !important;
	transform: translateX(-50%) !important;
	z-index: 1 !important;
}

/* Alternating Timeline Items */
.eg-about-timeline-item {
	position: relative !important;
	width: 50% !important;
	padding: 24px 0 !important;
	display: flex !important;
	align-items: center !important;
	box-sizing: border-box !important;
}

.eg-timeline-left {
	padding-right: 60px !important;
	margin-left: 0 !important;
	justify-content: flex-end !important;
}

.eg-timeline-right {
	padding-left: 60px !important;
	margin-left: auto !important;
	justify-content: flex-start !important;
}

/* Timeline Card */
.eg-about-timeline-card {
	display: flex !important;
	gap: 20px !important;
	background: #ffffff !important;
	border: 1px solid rgba(241, 245, 249, 0.8) !important;
	border-radius: 16px !important;
	/* Force rounded corners */
	padding: 24px 28px !important;
	box-shadow: 0 10px 30px rgba(11, 19, 43, 0.03) !important;
	width: 100% !important;
	max-width: 440px !important;
	box-sizing: border-box !important;
	align-items: center !important;
	z-index: 2 !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.eg-about-timeline-card:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 12px 36px rgba(11, 19, 43, 0.06) !important;
}

/* Icon Wrapper */
.eg-about-timeline-icon-wrapper {
	width: 60px !important;
	height: 60px !important;
	border-radius: 50% !important;
	/* Force circle */
	background-color: #FFFBEB !important;
	border: 1px solid rgba(212, 160, 23, 0.05) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #D4A017 !important;
	flex-shrink: 0 !important;
}

.eg-about-timeline-icon-wrapper svg {
	width: 28px !important;
	height: 28px !important;
	display: block !important;
}

/* Content block */
.eg-about-timeline-content {
	flex-grow: 1 !important;
}

/* Badge (Year pill) */
.eg-about-timeline-badge {
	display: inline-block !important;
	padding: 4px 12px !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	color: #D4A017 !important;
	background-color: #FFFBEB !important;
	border-radius: 6px !important;
	margin-bottom: 8px !important;
	font-family: var(--eg-font) !important;
}

/* Card titles and text */
.eg-about-timeline-card-title {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #0B132B !important;
	margin: 0 0 6px 0 !important;
}

.eg-about-timeline-card-desc {
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: #64748B !important;
	margin: 0 !important;
}

/* Dotted connector to center spine */
.eg-about-timeline-connector {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 60px !important;
	height: 1px !important;
	border-bottom: 2px dotted #D4A017 !important;
	z-index: 1 !important;
}

.eg-timeline-left .eg-about-timeline-connector {
	right: 0 !important;
}

.eg-timeline-right .eg-about-timeline-connector {
	left: 0 !important;
}

/* Bullet nodes on timeline spine */
.eg-about-timeline-node {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 14px !important;
	height: 14px !important;
	border-radius: 50% !important;
	background-color: #FFFFFF !important;
	border: 4px solid #D4A017 !important;
	z-index: 2 !important;
}

.eg-timeline-left .eg-about-timeline-node {
	right: -8px !important;
}

.eg-timeline-right .eg-about-timeline-node {
	left: -8px !important;
}

/* Responsive timeline rules */
@media (max-width: 768px) {
	.eg-about-timeline-spine {
		left: 20px !important;
		transform: none !important;
	}

	.eg-about-timeline-item {
		width: 100% !important;
		padding: 16px 0 !important;
	}

	.eg-timeline-left {
		padding-left: 50px !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		justify-content: flex-start !important;
	}

	.eg-timeline-right {
		padding-left: 50px !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		justify-content: flex-start !important;
	}

	.eg-about-timeline-card {
		max-width: 100% !important;
	}

	.eg-about-timeline-connector {
		left: 20px !important;
		width: 30px !important;
	}

	.eg-timeline-left .eg-about-timeline-connector {
		right: auto !important;
		left: 20px !important;
	}

	.eg-about-timeline-node {
		left: 14px !important;
	}

	.eg-timeline-left .eg-about-timeline-node {
		right: auto !important;
		left: 14px !important;
	}
}

/* =====================================================================
   ABOUT PAGE — TEAM & LEADERSHIP SECTION
   ===================================================================== */
.eg-about-team-section {
	position: relative !important;
	background-color: #F8FAFC !important;
	overflow: hidden !important;
}

/* Background gradient lights */
.eg-about-team-decor-radial-left {
	position: absolute !important;
	bottom: -150px !important;
	left: -150px !important;
	width: 500px !important;
	height: 500px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.06) 0%, transparent 70%) !important;
	border-radius: 50% !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.eg-about-team-decor-radial-right {
	position: absolute !important;
	top: -150px !important;
	right: -150px !important;
	width: 500px !important;
	height: 500px !important;
	background: radial-gradient(circle, rgba(212, 160, 23, 0.06) 0%, transparent 70%) !important;
	border-radius: 50% !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Dots background patterns */
.eg-about-team-decor-dots-left {
	position: absolute !important;
	top: 100px !important;
	left: 40px !important;
	width: 100px !important;
	height: 100px !important;
	background-image: radial-gradient(rgba(212, 160, 23, 0.12) 1.5px, transparent 1.5px) !important;
	background-size: 14px 14px !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.eg-about-team-decor-dots-right {
	position: absolute !important;
	bottom: 100px !important;
	right: 40px !important;
	width: 100px !important;
	height: 100px !important;
	background-image: radial-gradient(rgba(212, 160, 23, 0.12) 1.5px, transparent 1.5px) !important;
	background-size: 14px 14px !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Centered Team Subtitle Underline */
.eg-about-team-section .elementor-widget-heading:nth-of-type(1) .elementor-heading-title {
	position: relative !important;
	display: inline-block !important;
	color: #D4A017 !important;
	padding-bottom: 8px !important;
}

.eg-about-team-section .elementor-widget-heading:nth-of-type(1) .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	bottom: 0 !important;
	width: 35px !important;
	height: 2px !important;
	background-color: #D4A017 !important;
}

.eg-about-team-subtitle {
	font-size: 16px !important;
	line-height: 1.7 !important;
	color: #64748B !important;
	text-align: center !important;
	max-width: 600px !important;
	margin: 0 auto !important;
}

/* Remove default bento grid borders for team section */
.eg-about-team-section .edugrowth-bento-grid>.e-con-inner>.elementor-element,
.eg-about-team-section .edugrowth-bento-grid>.elementor-element {
	border: none !important;
}

/* Team Card styling */
.eg-about-team-section .eg-team-card.elementor-element {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	background: #ffffff !important;
	border: none !important;
	border-bottom: 4px solid #D4A017 !important;
	/* Premium bottom green border line */
	border-radius: 16px !important;
	/* Force rounded corners */
	padding: 40px 32px !important;
	box-shadow: 0 10px 30px rgba(11, 19, 43, 0.02) !important;
	box-sizing: border-box !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.eg-about-team-section .eg-team-card.elementor-element:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 15px 40px rgba(11, 19, 43, 0.05) !important;
}

/* Avatar overlap badge wrapper */
.eg-team-avatar-wrapper {
	position: relative !important;
	width: 110px !important;
	height: 110px !important;
	margin-bottom: 24px !important;
}

.eg-team-avatar-inner {
	width: 100% !important;
	height: 100% !important;
	border-radius: 50% !important;
	/* Force circle */
	overflow: hidden !important;
	background: #F1F5F9 !important;
	border: 3px solid #FFFFFF !important;
	box-shadow: 0 4px 12px rgba(11, 19, 43, 0.05) !important;
}

.eg-team-avatar-inner img {
	width: 100% !important;
	height: 100% !important;
	display: block !important;
	object-fit: cover !important;
}

.eg-team-avatar-badge {
	position: absolute !important;
	bottom: 0 !important;
	right: 0 !important;
	width: 36px !important;
	height: 36px !important;
	border-radius: 50% !important;
	/* Force circle */
	background: #ffffff !important;
	border: 1px solid rgba(212, 160, 23, 0.08) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #D4A017 !important;
	box-shadow: 0 4px 10px rgba(11, 19, 43, 0.05) !important;
	z-index: 2 !important;
}

.eg-team-avatar-badge svg {
	width: 16px !important;
	height: 16px !important;
	display: block !important;
}

/* Card inside titles overrides (tag targeted for stability) */
.eg-team-card h4.elementor-heading-title {
	margin: 0 0 4px 0 !important;
	color: #0B132B !important;
	font-weight: 800 !important;
	font-size: 22px !important;
	line-height: 1.25 !important;
}

.eg-team-card h6.elementor-heading-title {
	margin: 0 !important;
	color: #D4A017 !important;
	font-weight: 700 !important;
	font-size: 14.5px !important;
	line-height: 1.3 !important;
}

/* Horizontal card divider line */
.eg-team-card-divider {
	width: 100% !important;
	height: 1px !important;
	background-color: #E2E8F0 !important;
}

/* Description bio text */
.eg-team-card-desc {
	font-size: 14.5px !important;
	line-height: 1.65 !important;
	color: #64748B !important;
	margin: 0 !important;
}

/* Grid Gap adjustments for team section */
.eg-about-team-section .edugrowth-bento-grid>.e-con-inner {
	gap: 24px !important;
}

.eg-about-team-section .edugrowth-bento-grid:not(.e-con-boxed) {
	gap: 24px !important;
}

@media (max-width: 768px) {
	.eg-team-card {
		padding: 32px 24px !important;
		width: 100% !important;
	}
}

/* =====================================================================
   CONTACT PAGE — SPLIT SECTION, CHANNELS & FORM
   ===================================================================== */
.edugrowth-contact-split {
	background-color: #F8FAFC !important;
	position: relative !important;
}

/* Background decorations */
.edugrowth-contact-split::before {
	content: '' !important;
	position: absolute !important;
	top: 100px !important;
	left: 40px !important;
	width: 100px !important;
	height: 100px !important;
	background-image: radial-gradient(rgba(212, 160, 23, 0.12) 1.5px, transparent 1.5px) !important;
	background-size: 14px 14px !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

/* Remove default borders in bento grid for contact split */
.edugrowth-contact-split .edugrowth-bento-grid>.e-con-inner>.elementor-element,
.edugrowth-contact-split .edugrowth-bento-grid>.elementor-element {
	border: none !important;
}

/* Section Tag Underline */
.eg-contact-section-tag .elementor-heading-title {
	position: relative !important;
	display: inline-block !important;
	padding-bottom: 8px !important;
}

.eg-contact-section-tag .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	bottom: 0 !important;
	width: 35px !important;
	height: 2px !important;
	background-color: #D4A017 !important;
}

.eg-contact-section-desc {
	font-size: 15px !important;
	line-height: 1.65 !important;
	color: #64748B !important;
	margin: 0 !important;
}

/* Global Value Card (reusable block) */
.edugrowth-value-card.elementor-element {
	background: #ffffff !important;
	border: 1px solid rgba(241, 245, 249, 0.8) !important;
	border-radius: 16px !important;
	/* Force rounded corners */
	padding: 40px !important;
	box-shadow: 0 10px 30px rgba(11, 19, 43, 0.02) !important;
	box-sizing: border-box !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.edugrowth-value-card.elementor-element:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 15px 40px rgba(11, 19, 43, 0.05) !important;
}

/* Prevent the right column card from stretching to match left column height, removing bottom extra space */
.edugrowth-contact-split .edugrowth-value-card.elementor-element {
	align-self: flex-start !important;
	height: fit-content !important;
}

/* Contact Channel Cards */
.eg-contact-channel-card.elementor-element {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	background: #ffffff !important;
	border: 1px solid rgba(241, 245, 249, 0.8) !important;
	border-radius: 16px !important;
	/* Force rounded corners */
	padding: 20px 24px !important;
	box-shadow: 0 4px 20px rgba(11, 19, 43, 0.015) !important;
	box-sizing: border-box !important;
	width: 100% !important;
	margin-bottom: 12px !important;
	/* Controlled gap */
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.eg-contact-channel-card.elementor-element:last-child {
	margin-bottom: 0 !important;
}

.eg-contact-channel-card.elementor-element:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 10px 30px rgba(11, 19, 43, 0.04) !important;
}

/* Rounded square Icon wrapper */
.eg-contact-channel-icon-box.elementor-element {
	width: 52px !important;
	height: 52px !important;
	border-radius: 12px !important;
	/* Force rounded corners */
	background-color: #FFFBEB !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #D4A017 !important;
	/* Same color for all icons */
	flex-shrink: 0 !important;
	margin-right: 18px !important;
}

.eg-contact-channel-icon-box svg {
	width: 24px !important;
	height: 24px !important;
	display: block !important;
}

/* Content block */
.eg-contact-channel-content.elementor-element {
	flex-grow: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
}

.eg-contact-channel-content h4.elementor-heading-title {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #0B132B !important;
	margin: 0 0 4px 0 !important;
}

.eg-contact-channel-content .elementor-text-editor {
	font-size: 14.5px !important;
	color: #64748B !important;
	margin: 0 !important;
}

/* Green right arrow link indicator */
.eg-contact-channel-arrow.elementor-element {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #D4A017 !important;
	margin-left: auto !important;
	flex-shrink: 0 !important;
	width: 24px !important;
	height: 24px !important;
	transition: transform 0.3s ease !important;
}

.eg-contact-channel-card:hover .eg-contact-channel-arrow {
	transform: translateX(4px) !important;
}

.eg-contact-channel-arrow svg {
	width: 20px !important;
	height: 20px !important;
	display: block !important;
}

/* --- Contact Form Styling (Contact Form 7) --- */
.edugrowth-value-card .wpcf7-form {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 20px 24px !important;
}

.edugrowth-value-card .wpcf7-form p {
	margin: 0 !important;
	grid-column: span 1 !important;
}

/* Force Textarea and Submit containers to span full width */
.edugrowth-value-card .wpcf7-form p:has(textarea),
.edugrowth-value-card .wpcf7-form p:has(.wpcf7-submit) {
	grid-column: span 2 !important;
}

/* Input Fields & Labels Styling */
.wpcf7-form label {
	display: block !important;
	color: #0B132B !important;
	font-weight: 700 !important;
	font-size: 13.5px !important;
	margin-bottom: 8px !important;
	font-family: var(--eg-font) !important;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
	width: 100% !important;
	box-sizing: border-box !important;
	background-color: #F8FAFC !important;
	border: 1px solid #E2E8F0 !important;
	border-radius: 8px !important;
	/* Override border-radius 0 reset */
	padding: 14px 16px !important;
	font-size: 14.5px !important;
	color: #0B132B !important;
	font-family: var(--eg-font) !important;
	transition: border-color 0.2s ease, background-color 0.2s ease !important;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form textarea:focus {
	outline: none !important;
	border-color: #D4A017 !important;
	background-color: #ffffff !important;
	box-shadow: 0 0 0 3px rgba(212, 160, 23, 0.08) !important;
}

.wpcf7-form textarea {
	height: 130px !important;
	resize: vertical !important;
}

/* Submit Button Styling with SVG paper plane background */
.wpcf7-form .wpcf7-submit {
	width: 100% !important;
	background-color: #D4A017 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 8px !important;
	/* Override border-radius 0 reset */
	padding: 16px 24px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	transition: background-color 0.2s ease, transform 0.2s ease !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-family: var(--eg-font) !important;

	/* Embedded paper plane icon */
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M6 12L3.269 3.126A59.768 59.768 0 0121.485 12 59.77 59.77 0 013.27 20.876L5.999 12zm0 0h7.5'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: calc(50% - 78px) center !important;
	background-size: 18px 18px !important;
	padding-left: 42px !important;
}

.wpcf7-form .wpcf7-submit:hover {
	background-color: #B48006 !important;
	transform: translateY(-1px) !important;
}

/* Responsive fixes for Contact split columns */
@media (max-width: 1024px) {
	.eg-contact-channels-col.elementor-element {
		padding-right: 0 !important;
		margin-bottom: 40px !important;
	}
}

@media (max-width: 768px) {
	.eg-contact-channel-card.elementor-element {
		padding: 16px 20px !important;
	}

	.edugrowth-value-card.elementor-element {
		padding: 24px !important;
	}

	.edugrowth-value-card .wpcf7-form {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.edugrowth-value-card .wpcf7-form p {
		grid-column: span 1 !important;
	}

	.edugrowth-value-card .wpcf7-form p:has(textarea),
	.edugrowth-value-card .wpcf7-form p:has(.wpcf7-submit) {
		grid-column: span 1 !important;
	}

	.wpcf7-form .wpcf7-submit {
		background-position: calc(50% - 68px) center !important;
	}
}

/* Header row positioning and typography fixes */
.eg-contact-header-row {
	position: relative !important;
	z-index: 2 !important;
}

.eg-contact-grid-row {
	position: relative !important;
	z-index: 2 !important;
}

/* Increase gap between cards in Pre-Contact FAQs section */
.edugrowth-contact-faq .edugrowth-bento-grid>.e-con-inner {
	gap: 24px !important;
}

.edugrowth-contact-faq .edugrowth-bento-grid:not(.e-con-boxed) {
	gap: 24px !important;
}

/* Remove bento grid borders specifically for this section to prevent border conflicts when cards are separated */
.edugrowth-contact-faq .edugrowth-bento-grid>.e-con-inner>.elementor-element,
.edugrowth-contact-faq .edugrowth-bento-grid>.elementor-element {
	border: none !important;
}

/* Increase gap between cards in About Core Values section */
.edugrowth-about-values .edugrowth-bento-grid>.e-con-inner {
	gap: 24px !important;
}

.edugrowth-about-values .edugrowth-bento-grid:not(.e-con-boxed) {
	gap: 24px !important;
}

/* Remove bento grid borders specifically for this section to prevent border conflicts when cards are separated */
.edugrowth-about-values .edugrowth-bento-grid>.e-con-inner>.elementor-element,
.edugrowth-about-values .edugrowth-bento-grid>.elementor-element {
	border: none !important;
}

/* ─── Services Catalog Bento Grid Redesign ─── */
.edugrowth-services-catalog {
	position: relative !important;
	background: radial-gradient(circle at 50% 50%, rgba(12, 207, 142, 0.116) 0%, rgba(255, 255, 255, 0) 70%), #FFFFFF !important;
}

.eg-services-catalog-header {
	position: relative !important;
	z-index: 2 !important;
}

.eg-services-section-tag .elementor-heading-title {
	position: relative !important;
	display: inline-block !important;
	padding-bottom: 8px !important;
}

.eg-services-section-tag .elementor-heading-title::after {
	content: '' !important;
	position: absolute !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	bottom: 0 !important;
	width: 24px !important;
	height: 2px !important;
	background-color: #D4A017 !important;
}

.eg-services-bento-grid>.e-con-inner {
	gap: 24px !important;
}

.eg-services-bento-grid:not(.e-con-boxed) {
	gap: 24px !important;
}

.eg-services-bento-grid>.e-con-inner>.elementor-element,
.eg-services-bento-grid>.elementor-element {
	border: none !important;
}

/* Specific Card Styling overrides for Services */
.eg-services-card.elementor-element {
	position: relative !important;
	overflow: hidden !important;
}

.eg-services-card-icon-box.elementor-element {
	width: 52px !important;
	height: 52px !important;
	border-radius: 12px !important;
	background-color: #FFFBEB !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #D4A017 !important;
	flex-shrink: 0 !important;
}

.eg-services-card-icon-box svg,
.eg-services-card-icon-box .elementor-widget-container svg {
	width: 24px !important;
	height: 24px !important;
	display: block !important;
	color: #D4A017 !important;
	stroke: #D4A017 !important;
}

/* Explore solutions link layout button */
.eg-services-card .elementor-button {
	color: #D4A017 !important;
	background-color: transparent !important;
	padding: 0 !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	transition: transform 0.3s ease !important;
}

.eg-services-card .elementor-button:hover {
	color: #B48006 !important;
	transform: translateX(4px) !important;
}

/* Decorative background elements inside cards */
.eg-services-card::after {
	content: '' !important;
	position: absolute !important;
	bottom: 0 !important;
	right: 0 !important;
	width: 120px !important;
	height: 120px !important;
	background-repeat: no-repeat !important;
	background-position: bottom right !important;
	pointer-events: none !important;
	z-index: 1 !important;
}

.eg-services-card:nth-child(odd)::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Ccircle cx='120' cy='120' r='100' fill='none' stroke='%23D4A017' stroke-opacity='0.08' stroke-width='2'/%3E%3Ccircle cx='120' cy='120' r='85' fill='none' stroke='%23D4A017' stroke-opacity='0.08' stroke-width='2'/%3E%3Ccircle cx='120' cy='120' r='70' fill='none' stroke='%23D4A017' stroke-opacity='0.08' stroke-width='2'/%3E%3Ccircle cx='120' cy='120' r='55' fill='none' stroke='%23D4A017' stroke-opacity='0.08' stroke-width='2'/%3E%3Ccircle cx='120' cy='120' r='40' fill='none' stroke='%23D4A017' stroke-opacity='0.08' stroke-width='2'/%3E%3C/svg%3E") !important;
}

.eg-services-card:nth-child(even)::after {
	width: 72px !important;
	height: 72px !important;
	bottom: 20px !important;
	right: 20px !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cdefs%3E%3Cpattern id='dots' width='12' height='12' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='3' cy='3' r='2' fill='%23D4A017' fill-opacity='0.08'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='72' height='72' fill='url(%23dots)'/%3E%3C/svg%3E") !important;
}

/* Increase gap between cards in Services Delivery Framework section */
.eg-services-framework-grid>.e-con-inner {
	gap: 24px !important;
}

.eg-services-framework-grid:not(.e-con-boxed) {
	gap: 24px !important;
}

/* Remove bento grid borders specifically for this section to prevent border conflicts when cards are separated */
.eg-services-framework-grid>.e-con-inner>.elementor-element,
.eg-services-framework-grid>.elementor-element {
	border: none !important;
}

/* ─── Services Page Section 4: Workflows Switcher Redesign ─── */
.edugrowth-services-workflows {
	position: relative !important;
	overflow: hidden !important;
	background-color: #ffffff !important;
}

/* Tab Pill Navigation (Scrollable in single-row) */
.eg-tabs-nav {
	display: flex !important;
	flex-wrap: nowrap !important;
	overflow-x: auto !important;
	scroll-behavior: smooth !important;
	scrollbar-width: none !important;
	-webkit-overflow-scrolling: touch !important;
	gap: 12px !important;
	margin: 0 auto !important;
	width: 100% !important;
	padding-bottom: 4px !important;
}

.eg-tabs-nav::-webkit-scrollbar {
	display: none !important;
}

.eg-tab-pill {
	flex-shrink: 0 !important;
	background-color: #F1F5F9 !important;
	color: #475569 !important;
	border: 1px solid #E2E8F0 !important;
	border-radius: 30px !important;
	padding: 10px 22px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
	font-family: var(--eg-font) !important;
	outline: none !important;
}

.eg-tab-pill:hover {
	background-color: #E2E8F0 !important;
	color: #0B132B !important;
}

.eg-tab-pill.active {
	background-color: #D4A017 !important;
	color: #FFFFFF !important;
	border-color: #D4A017 !important;
	box-shadow: 0 4px 14px rgba(212, 160, 23, 0.2) !important;
}

/* Color-coded active pill backgrounds matching the cards */
.eg-tab-pill[data-tab="curriculum"].active {
	background-color: #FEF3C7 !important;
	/* soft amber */
	color: #B45309 !important;
	border-color: #FDE68A !important;
	box-shadow: 0 4px 14px rgba(245, 158, 11, 0.15) !important;
}

.eg-tab-pill[data-tab="assessments"].active {
	background-color: #FFE4E6 !important;
	/* soft rose */
	color: #BE123C !important;
	border-color: #FECDD3 !important;
	box-shadow: 0 4px 14px rgba(244, 63, 94, 0.15) !important;
}

.eg-tab-pill[data-tab="portfolios"].active {
	background-color: #FEF3C7 !important;
	/* soft green/mint */
	color: #047857 !important;
	border-color: #FDE68A !important;
	box-shadow: 0 4px 14px rgba(212, 160, 23, 0.15) !important;
}

.eg-tab-pill[data-tab="progress"].active {
	background-color: #E0F2FE !important;
	/* soft blue */
	color: #0369A1 !important;
	border-color: #BAE6FD !important;
	box-shadow: 0 4px 14px rgba(14, 165, 233, 0.15) !important;
}

.eg-tab-pill[data-tab="accreditation"].active {
	background-color: #F3E8FF !important;
	/* soft purple/lavender */
	color: #6D28D9 !important;
	border-color: #E9D5FF !important;
	box-shadow: 0 4px 14px rgba(139, 92, 246, 0.15) !important;
}

/* ── Workflow Carousel — Raw HTML structure (no Elementor wrappers) ── */

/* Shortcode widget must span full width */
.edugrowth-services-workflows>.e-con-inner>.elementor-element:last-child,
.edugrowth-services-workflows>.elementor-element:last-child {
	width: 100% !important;
	flex: 0 0 100% !important;
}

.edugrowth-services-workflows .elementor-shortcode {
	width: 100% !important;
}

/* Tab Nav — centred, scrollable single row */
.edugrowth-services-workflows .eg-tabs-nav {
	max-width: 1200px !important;
	margin: 0 auto 32px !important;
	padding: 0 40px !important;
	display: flex !important;
	flex-wrap: nowrap !important;
	overflow-x: auto !important;
	scrollbar-width: none !important;
	gap: 12px !important;
	box-sizing: border-box !important;
}

.edugrowth-services-workflows .eg-tabs-nav::-webkit-scrollbar {
	display: none !important;
}

/* Horizontal scroll container */
.eg-carousel-wrapper {
	overflow-x: auto !important;
	scrollbar-width: none !important;
	-webkit-overflow-scrolling: touch !important;
	scroll-behavior: smooth !important;
	scroll-snap-type: x mandatory !important;
	padding: 4px 5% 28px !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

.eg-carousel-wrapper::-webkit-scrollbar {
	display: none !important;
}

/* Flex track holds all cards side-by-side */
.eg-carousel-track {
	display: flex !important;
	flex-direction: row !important;
	gap: 20px !important;
}

/* Individual card */
.eg-carousel-card {
	flex-shrink: 0 !important;
	width: 86% !important;
	max-width: 1100px !important;
	scroll-snap-align: center !important;
	border-radius: 24px !important;
	padding: 50px 56px !important;
	display: grid !important;
	grid-template-columns: 5fr 7fr !important;
	gap: 48px !important;
	align-items: center !important;
	border: 1px solid rgba(241, 245, 249, 0.8) !important;
	box-shadow: 0 4px 24px rgba(11, 19, 43, 0.04) !important;
	box-sizing: border-box !important;
	transition: box-shadow 0.3s ease !important;
}

/* Color-coded pastel card backgrounds */
.eg-carousel-card.eg-tab-curriculum {
	background-color: #FFFBEB !important;
}

.eg-carousel-card.eg-tab-assessments {
	background-color: #FFF1F2 !important;
}

.eg-carousel-card.eg-tab-portfolios {
	background-color: #F0FDF4 !important;
}

.eg-carousel-card.eg-tab-progress {
	background-color: #F0F9FF !important;
}

.eg-carousel-card.eg-tab-accreditation {
	background-color: #F5F3FF !important;
}

/* Left column — text content */
.eg-carousel-left {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
}

.eg-carousel-title {
	font-size: 28px !important;
	font-weight: 800 !important;
	color: #0B132B !important;
	line-height: 1.25 !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
}

.eg-carousel-desc {
	color: #64748B !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
	margin: 0 0 4px !important;
}

.eg-carousel-btn {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: transparent !important;
	color: #0B132B !important;
	border: 1.5px solid #0B132B !important;
	border-radius: 8px !important;
	padding: 12px 26px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	width: fit-content !important;
	transition: all 0.25s ease !important;
	margin-top: 10px !important;
	cursor: pointer !important;
}

.eg-carousel-btn:hover {
	background: #0B132B !important;
	color: #FFFFFF !important;
	box-shadow: 0 4px 12px rgba(11, 19, 43, 0.15) !important;
}

/* Right column — image */
.eg-carousel-right {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.eg-workflow-image {
	width: 100% !important;
	height: auto !important;
	max-height: 360px !important;
	object-fit: cover !important;
	border-radius: 14px !important;
	box-shadow: 0 16px 40px rgba(11, 19, 43, 0.08) !important;
	transition: transform 0.3s ease !important;
}

.eg-workflow-image:hover {
	transform: translateY(-3px) !important;
}

/* Controls wrapper — centred boxed layout */
.eg-controls-wrapper {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 40px !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

/* Left Content Column */
.eg-workflow-content.elementor-element {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	padding-right: 40px !important;
	border: none !important;
}

/* Premium workflow buttons styling */
.eg-workflow-content .elementor-button {
	background-color: transparent !important;
	color: #0B132B !important;
	border: 1px solid #0B132B !important;
	border-radius: 8px !important;
	padding: 12px 28px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-align: center !important;
	display: inline-block !important;
	width: fit-content !important;
	transition: all 0.25s ease !important;
}

.eg-workflow-content .elementor-button:hover {
	background-color: #0B132B !important;
	color: #FFFFFF !important;
	border-color: #0B132B !important;
	box-shadow: 0 4px 12px rgba(11, 19, 43, 0.15) !important;
}

.eg-workflow-bullets {
	list-style: none !important;
	padding: 0 !important;
	margin: 20px 0 !important;
}

.eg-workflow-bullets li {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 12px !important;
	color: #475569 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
}

.eg-workflow-bullets .bullet-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 20px !important;
	height: 20px !important;
	border-radius: 50% !important;
	background-color: rgba(212, 160, 23, 0.08) !important;
	color: #D4A017 !important;
	font-weight: 700 !important;
	font-size: 11px !important;
	flex-shrink: 0 !important;
}

/* Right Image Mockup Column */
.eg-workflow-mock-col.elementor-element {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: none !important;
}

.eg-workflow-mock-col img,
.eg-workflow-mock-col .elementor-image img {
	width: 100% !important;
	height: auto !important;
	max-height: 350px !important;
	object-fit: cover !important;
	border-radius: 12px !important;
	box-shadow: 0 15px 35px rgba(11, 19, 43, 0.06) !important;
	transition: transform 0.3s ease !important;
}

.eg-workflow-mock-col img:hover,
.eg-workflow-mock-col .elementor-image img:hover {
	transform: translateY(-2px) !important;
}

/* Slider Controls (Progress Track & Navigation Arrows) */
.eg-slider-controls {
	display: flex !important;
	width: 100% !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-top: 10px !important;
}

.eg-slider-progress-track {
	width: 180px !important;
	height: 3px !important;
	background-color: #E2E8F0 !important;
	position: relative !important;
	border-radius: 3px !important;
	overflow: hidden !important;
}

.eg-slider-progress-fill {
	height: 100% !important;
	width: 20% !important;
	/* 1 of 5 slides active (20% width) */
	background-color: #0B132B !important;
	/* Primary Navy */
	position: absolute !important;
	left: 0 !important;
	border-radius: 3px !important;
	transition: left 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.eg-slider-arrows {
	display: flex !important;
	gap: 12px !important;
}

.eg-slider-arrow {
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	border: 1px solid #E2E8F0 !important;
	background-color: #FFFFFF !important;
	color: #0B132B !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	outline: none !important;
	padding: 0 !important;
}

.eg-slider-arrow svg {
	width: 20px !important;
	height: 20px !important;
	display: block !important;
	color: #0B132B !important;
}

.eg-slider-arrow:hover {
	background-color: #0B132B !important;
	color: #FFFFFF !important;
	border-color: #0B132B !important;
	transform: translateY(-1px) !important;
}

.eg-slider-arrow:hover svg {
	color: #FFFFFF !important;
}

/* Responsive fixes for Workflow Carousel */
@media (max-width: 1024px) {
	.eg-carousel-card {
		grid-template-columns: 1fr !important;
		padding: 36px 32px !important;
		width: 90% !important;
	}

	.eg-carousel-right {
		display: none !important;
	}

	.eg-carousel-left {
		align-items: center !important;
		text-align: center !important;
	}

	.eg-workflow-bullets {
		display: inline-block !important;
		text-align: left !important;
	}
}

@media (max-width: 768px) {
	.eg-tab-pill {
		font-size: 13.5px !important;
		padding: 8px 18px !important;
	}
}

/* ─── Services Page Section 1.1: Platform Overview Slider ─── */
.eg-platform-slider-container {
	background: radial-gradient(ellipse 80% 60% at 50% 40%, rgba(6, 182, 212, 0.18) 0%, rgba(56, 189, 248, 0.09) 45%, rgba(255, 255, 255, 0) 75%), #FAFCFF !important;
	padding: 80px 0 60px !important;
	position: relative !important;
	overflow: hidden !important;
	width: 100% !important;
}

/* Remove Elementor default padding on the platform overview container */
.eg-platform-overview-section,
.eg-platform-overview-section>.e-con-inner {
	padding: 0 !important;
}

.eg-platform-header {
	text-align: center !important;
	margin-bottom: 60px !important;
	padding: 0 20px !important;
}

.eg-platform-title {
	font-family: 'Outfit', 'Inter', sans-serif !important;
	font-size: 42px !important;
	font-weight: 800 !important;
	color: #0B132B !important;
	margin: 0 0 16px 0 !important;
	letter-spacing: -0.5px !important;
	line-height: 1.2 !important;
}

.eg-platform-subtitle {
	font-family: 'Inter', sans-serif !important;
	font-size: 16px !important;
	color: #64748B !important;
	max-width: 800px !important;
	margin: 0 auto !important;
	line-height: 1.6 !important;
}

.eg-platform-slider-wrapper-outer {
	position: relative !important;
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 0 56px !important;
}

.eg-platform-slider-wrapper {
	overflow-x: auto !important;
	scroll-snap-type: x mandatory !important;
	scrollbar-width: none !important;
	/* Firefox */
	display: flex !important;
	scroll-behavior: smooth !important;
	padding: 12px 4px 20px !important;
}

.eg-platform-slider-wrapper::-webkit-scrollbar {
	display: none !important;
	/* Chrome, Safari, Opera */
}

.eg-platform-slider-track {
	display: flex !important;
	gap: 24px !important;
}

.eg-platform-card {
	scroll-snap-align: start !important;
	flex: 0 0 260px !important;
	background: #EFF8FF !important;
	border-radius: 20px !important;
	padding: 28px 24px !important;
	box-shadow: 0 2px 10px rgba(6, 182, 212, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04) !important;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
	border: 1px solid rgba(186, 230, 253, 0.6) !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	text-align: left !important;
}

.eg-platform-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 12px 28px rgba(6, 182, 212, 0.14), 0 4px 10px rgba(0, 0, 0, 0.05) !important;
	border-color: rgba(6, 182, 212, 0.45) !important;
	background: #E0F2FE !important;
}

.eg-platform-card-icon-box {
	width: 52px !important;
	height: 52px !important;
	border-radius: 14px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 18px !important;
}

.eg-platform-card-icon-box.bg-purple-light {
	background: linear-gradient(135deg, #a78bfa, #7c3aed) !important;
	box-shadow: 0 4px 10px rgba(124, 58, 237, 0.25) !important;
}

.eg-platform-card-icon-box.bg-yellow-light {
	background: linear-gradient(135deg, #fcd34d, #d97706) !important;
	box-shadow: 0 4px 10px rgba(217, 119, 6, 0.25) !important;
}

.eg-platform-card-icon-box.bg-blue-light {
	background: linear-gradient(135deg, #60a5fa, #2563eb) !important;
	box-shadow: 0 4px 10px rgba(37, 99, 235, 0.25) !important;
}

.eg-platform-card-icon-box.bg-pink-light {
	background: linear-gradient(135deg, #f472b6, #db2777) !important;
	box-shadow: 0 4px 10px rgba(219, 39, 119, 0.25) !important;
}

.eg-platform-card-icon-box.bg-green-light {
	background: linear-gradient(135deg, #F4A300, #B48006) !important;
	box-shadow: 0 4px 10px rgba(5, 150, 105, 0.25) !important;
}

.eg-platform-card-icon-box.bg-cyan-light {
	background: linear-gradient(135deg, #22d3ee, #0891b2) !important;
	box-shadow: 0 4px 10px rgba(8, 145, 178, 0.25) !important;
}

.eg-platform-icon {
	width: 28px !important;
	height: 28px !important;
	fill: #FFFFFF !important;
}

.eg-platform-card-title {
	font-family: 'Outfit', 'Inter', sans-serif !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #0B132B !important;
	margin: 0 0 10px 0 !important;
	line-height: 1.3 !important;
}

.eg-platform-card-desc {
	font-family: 'Inter', sans-serif !important;
	font-size: 13.5px !important;
	color: #475569 !important;
	line-height: 1.55 !important;
	margin: 0 !important;
}

.eg-platform-arrow {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 48px !important;
	height: 48px !important;
	border-radius: 50% !important;
	background: #FFFFFF !important;
	border: 1px solid #E2E8F0 !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 10 !important;
	transition: all 0.2s ease !important;
	padding: 0 !important;
	outline: none !important;
}

.eg-platform-arrow:hover {
	background: #F8FAFC !important;
	border-color: #CBD5E1 !important;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08) !important;
}

.eg-platform-arrow svg {
	width: 24px !important;
	height: 24px !important;
	fill: #64748B !important;
	transition: fill 0.2s ease !important;
}

.eg-platform-arrow:hover svg {
	fill: #0B132B !important;
}

.eg-platform-arrow-prev {
	left: 0 !important;
}

.eg-platform-arrow-next {
	right: 0 !important;
}

/* Responsive adjustments for Platform Slider */
@media (max-width: 1024px) {
	.eg-platform-slider-wrapper-outer {
		padding: 0 40px !important;
	}

	.eg-platform-title {
		font-size: 36px !important;
	}
}

@media (max-width: 768px) {
	.eg-platform-slider-wrapper-outer {
		padding: 0 16px !important;
	}

	.eg-platform-arrow {
		display: none !important;
		/* Rely on swipe on mobile */
	}

	.eg-platform-card {
		flex: 0 0 240px !important;
		padding: 24px 20px !important;
	}

	.eg-platform-title {
		font-size: 30px !important;
	}

	.eg-platform-slider-container {
		padding: 60px 0 !important;
	}

	.eg-platform-header {
		margin-bottom: 40px !important;
	}
}


/* =====================================================================
   PROJECTS PAGE
   ===================================================================== */

/* ─── Hero ─────────────────────────────────────────────────────────── */
.edugrowth-projects-hero {
	padding: 0 !important;
	background: #ffffff !important;
}

.edugrowth-projects-hero>.e-con-inner,
.edugrowth-projects-hero.e-con>.e-con-inner {
	padding: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
}

.eg-projects-hero-inner {
	display: grid;
	grid-template-columns: calc(max(0px, 50vw - 700px) + 805px) 1fr;
	align-items: stretch;
	width: 100%;
	max-width: 100%;
	margin: 0;
	gap: 0;
	padding: 0 0 0 calc(max(0px, 50vw - 700px) + 60px);
	box-sizing: border-box;
	position: relative;
}

/* Left column */
.eg-projects-hero-left {
	padding: 80px 60px 80px 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.eg-projects-tag {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #D4A017;
	margin-bottom: 18px;
}

.eg-projects-title {
	font-family: 'Inter', sans-serif;
	font-size: 48px;
	font-weight: 800;
	color: #0B132B;
	line-height: 1.15;
	margin: 0 0 20px;
	letter-spacing: -1px;
}

.eg-projects-subtitle {
	font-size: 15.5px;
	line-height: 1.7;
	color: #64748B;
	margin: 0 0 36px;
	max-width: 540px;
}

/* Stats row */
.eg-projects-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

.eg-projects-stat {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}

.eg-projects-stat-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	background: #FFFBEB;
	border-radius: 8px;
	color: #D4A017;
	margin-bottom: 6px;
}

.eg-projects-stat-icon svg {
	width: 22px;
	height: 22px;
}

.eg-projects-stat-num {
	font-size: 24px;
	font-weight: 800;
	color: #0B132B;
	line-height: 1;
}

.eg-projects-stat-label {
	font-size: 12px;
	color: #64748B;
	font-weight: 500;
	line-height: 1.3;
}

/* Right column — image with clip path */
.eg-projects-hero-right {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: stretch;
}

.eg-projects-hero-img {
	width: 100%;
	height: 100%;
	min-height: 520px;
	object-fit: cover;
	display: block;
	clip-path: url(#eg-hero-curve);
}

.eg-hero-curve-stroke {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 2;
}

.eg-hero-curve-stroke path {
	filter: drop-shadow(0 0 8px rgba(212, 160, 23, 0.45));
}

/* Dot Pattern matrices */
.eg-dots-pattern {
	position: absolute;
	pointer-events: none;
}

.eg-dots-top {
	top: 48px;
	left: 54%;
	z-index: 1;
}

.eg-dots-bottom {
	bottom: 30px;
	right: 30px;
	z-index: 3;
	opacity: 0.9;
}

/* ─── Projects Section Wrapper ──────────────────────────────────────── */
.edugrowth-projects-grid-section {
	background: #ffffff !important;
	padding: 0 !important;
}

.edugrowth-projects-grid-section>.e-con-inner {
	padding: 0 !important;
}

.eg-projects-section {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 60px 60px;
	box-sizing: border-box;
}

/* ─── Filter Bar ────────────────────────────────────────────────────── */
.eg-projects-filter-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: none;
	padding: 24px 0;
	margin-bottom: 40px;
	flex-wrap: wrap;
	gap: 12px;
}

.eg-projects-filter-pills {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
}

.eg-projects-filter-pills::-webkit-scrollbar {
	display: none;
}

.eg-proj-pill {
	flex-shrink: 0;
	background: transparent;
	color: #64748B;
	border: none;
	padding: 8px 16px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	font-family: 'Inter', sans-serif;
	transition: all 0.25s ease;
	outline: none;
	border-radius: 8px;
}

.eg-proj-pill:hover {
	color: #D4A017;
}

.eg-proj-pill.active {
	background: #D4A017;
	color: #ffffff;
	box-shadow: 0 4px 14px rgba(212, 160, 23, 0.25);
}

/* Sort dropdown */
.eg-projects-sort {
	position: relative;
	display: flex;
	align-items: center;
}

.eg-proj-sort-select {
	appearance: none;
	-webkit-appearance: none;
	background: #ffffff;
	border: 1px solid #E2E8F0;
	border-radius: 6px;
	padding: 8px 36px 8px 14px;
	font-size: 14px;
	font-weight: 500;
	color: #0B132B;
	font-family: 'Inter', sans-serif;
	cursor: pointer;
	outline: none;
	transition: border-color 0.2s ease;
}

.eg-proj-sort-select:focus {
	border-color: #D4A017;
}

.eg-proj-sort-arrow {
	position: absolute;
	right: 10px;
	width: 16px;
	height: 16px;
	color: #64748B;
	pointer-events: none;
}

/* ─── Cards Grid ────────────────────────────────────────────────────── */
.eg-projects-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

/* Elementor container compatibility: grid on .e-con-inner */
.eg-projects-grid.e-con>.e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 30px !important;
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 0 60px 60px !important;
	box-sizing: border-box !important;
}

.eg-proj-card {
	background: #ffffff;
	border: none !important;
	border-radius: 16px !important;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.03);
}

/* Elementor container overrides for project cards */
.eg-proj-card.e-con {
	padding: 0 !important;
	border: none !important;
	border-radius: 16px !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.03) !important;
	overflow: hidden !important;
	gap: 0 !important;
}

.eg-proj-card.e-con>.e-con-inner {
	padding: 0 !important;
	gap: 0 !important;
}

/* Image wrapper inside Elementor container */
.eg-proj-card-img-wrap.e-con {
	padding: 0 !important;
	border: none !important;
	gap: 0 !important;
	position: relative !important;
	overflow: hidden !important;
	border-radius: 16px 16px 0 0 !important;
}

.eg-proj-card-img-wrap.e-con>.e-con-inner {
	padding: 0 !important;
	gap: 0 !important;
}

/* Card body inside Elementor container */
.eg-proj-card-body.e-con {
	border: none !important;
}

.eg-proj-card-body.e-con>.e-con-inner {
	gap: 0 !important;
}

/* Elementor image widget inside card - ensure proper sizing */
.eg-proj-card-img-wrap .elementor-widget-image {
	width: 100% !important;
}

.eg-proj-card-img-wrap .elementor-widget-image .elementor-widget-container {
	width: 100% !important;
}

.eg-proj-card-img-wrap .elementor-widget-image img {
	width: 100% !important;
	height: 220px !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform 0.4s ease !important;
	border-radius: 16px 16px 0 0 !important;
}

.eg-proj-card:hover .eg-proj-card-img-wrap .elementor-widget-image img {
	transform: scale(1.03) !important;
}

.eg-proj-card:hover {
	box-shadow: 0 20px 40px rgba(11, 19, 43, 0.08);
	transform: translateY(-6px);
}

/* Card image area */
.eg-proj-card-img-wrap {
	position: relative;
	overflow: hidden;
	border-radius: 16px 16px 0 0;
}

.eg-proj-card-img {
	width: 100% !important;
	height: 220px !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform 0.4s ease;
	border-radius: 16px 16px 0 0;
}

.eg-proj-card:hover .eg-proj-card-img {
	transform: scale(1.03);
}

/* Category badge */
.eg-proj-badge {
	position: absolute;
	bottom: 16px;
	left: 16px;
	font-size: 11.5px;
	font-weight: 700;
	padding: 5px 14px;
	border-radius: 20px;
	letter-spacing: 0.2px;
	text-transform: none;
	color: #ffffff !important;
}

.eg-proj-badge-technology {
	background: #D4A017;
}

.eg-proj-badge-infrastructure {
	background: #047857;
}

.eg-proj-badge-events {
	background: #B48006;
}

.eg-proj-badge-campus {
	background: #065F46;
}

/* Card body */
.eg-proj-card-body {
	padding: 24px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.eg-proj-card-title {
	font-size: 18.5px;
	font-weight: 700;
	color: #0B132B;
	margin: 0 0 10px !important;
	line-height: 1.35 !important;
	min-height: 52px !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
}

.eg-proj-card-location {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13.5px;
	color: #64748B;
	font-weight: 500;
	margin: 0 0 16px !important;
	min-height: 40px !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
}

.eg-proj-card-location svg {
	width: 15px;
	height: 15px;
	color: #94A3B8;
	flex-shrink: 0;
	display: inline-block !important;
	vertical-align: middle !important;
}

.eg-proj-card-desc {
	font-size: 14px;
	line-height: 1.6 !important;
	color: #64748B;
	margin: 0 !important;
	flex: 1;
	min-height: 72px !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
}

.eg-proj-card-link {
	display: none !important;
}

/* ─── CTA Bar ───────────────────────────────────────────────────────── */
.edugrowth-projects-cta {
	background: #ffffff !important;
	padding: 0 !important;
}

.edugrowth-projects-cta>.e-con-inner {
	padding: 0 !important;
}

.eg-projects-cta-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 60px 20px;
	box-sizing: border-box;
}

.eg-projects-cta-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 24px 36px;
	box-sizing: border-box;
	background: #F0FDF4;
	border: 1px solid #FEF3C7;
	border-radius: 12px;
}

.eg-projects-cta-left {
	display: flex;
	align-items: center;
	gap: 18px;
}

.eg-projects-cta-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background: #FEF3C7;
	border-radius: 10px;
	color: #D4A017;
	flex-shrink: 0;
}

.eg-projects-cta-icon svg {
	width: 24px;
	height: 24px;
}

.eg-projects-cta-text {
	display: flex;
	flex-direction: column;
}

.eg-projects-cta-text strong {
	font-size: 18px;
	font-weight: 800;
	color: #0B132B;
	display: block;
	margin-bottom: 3px;
}

.eg-projects-cta-text span {
	font-size: 14px;
	color: #64748B;
}

.eg-projects-cta-btn {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #D4A017;
	color: #ffffff;
	font-size: 14.5px;
	font-weight: 700;
	text-decoration: none;
	padding: 13px 26px;
	border-radius: 6px;
	font-family: 'Inter', sans-serif;
	transition: all 0.25s ease;
	box-shadow: 0 4px 14px rgba(212, 160, 23, 0.2);
}

.eg-projects-cta-btn:hover {
	background: #B48006;
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(212, 160, 23, 0.3);
}

/* ─── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 1280px) {
	.eg-projects-grid {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 24px !important;
	}
}

@media (max-width: 1024px) {
	.eg-projects-hero-inner {
		grid-template-columns: 1fr;
		padding: 56px 40px 48px;
		gap: 32px;
	}

	.eg-projects-hero-left {
		padding: 0 0 20px 0;
	}

	.eg-projects-hero-img {
		height: 360px;
		min-height: auto;
		clip-path: none;
		border-radius: 12px;
	}

	.eg-hero-curve-stroke,
	.eg-dots-top,
	.eg-dots-bottom {
		display: none;
	}

	.eg-projects-section {
		padding: 0 40px 56px;
	}

	.eg-projects-cta-container {
		padding: 0 40px 20px;
	}

	.eg-projects-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		padding: 0 40px 56px !important;
	}
}

@media (max-width: 767px) {
	.eg-projects-hero-inner {
		padding: 40px 20px 36px;
	}

	.eg-projects-title {
		font-size: 36px;
	}

	.eg-projects-stats {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.eg-projects-section {
		padding: 0 20px 48px;
	}

	.eg-projects-filter-bar {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.eg-projects-filter-pills {
		width: 100%;
		padding-bottom: 8px;
	}

	.eg-projects-grid {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
		padding: 0 20px 48px !important;
	}

	.eg-projects-cta-container {
		padding: 0 20px 20px;
	}

	.eg-projects-cta-bar {
		flex-direction: column;
		align-items: flex-start;
		padding: 20px;
		gap: 20px;
	}

	.eg-projects-cta-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ─── Elementor Container Overrides for Projects Grid ─────────────── */
@media (max-width: 1280px) {
	.eg-projects-grid.e-con>.e-con-inner {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 24px !important;
	}
}

@media (max-width: 1024px) {
	.eg-projects-grid.e-con>.e-con-inner {
		grid-template-columns: repeat(2, 1fr) !important;
		padding: 0 40px 56px !important;
	}
}

@media (max-width: 767px) {
	.eg-projects-grid.e-con>.e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
		padding: 0 20px 48px !important;
	}
}

/* Filter bar inside Elementor text widget */
.edugrowth-projects-grid-section>.e-con-inner>.elementor-widget-text-editor:first-child {
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 0 60px !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

@media (max-width: 1024px) {
	.edugrowth-projects-grid-section>.e-con-inner>.elementor-widget-text-editor:first-child {
		padding: 0 40px !important;
	}
}

@media (max-width: 767px) {
	.edugrowth-projects-grid-section>.e-con-inner>.elementor-widget-text-editor:first-child {
		padding: 0 20px !important;
	}
}

/* =====================================================================
   GALLERY PAGE
   ===================================================================== */

.edugrowth-gallery-header {
	background: #ffffff !important;
	padding: 60px 0 0 0 !important;
}

.eg-gallery-header-section {
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 0 60px !important;
	box-sizing: border-box !important;
}

.eg-gallery-header-inner {
	display: flex !important;
	align-items: flex-end !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	border-bottom: 1px solid #E2E8F0 !important;
	padding-bottom: 28px !important;
}

.eg-gallery-title-area {
	flex: 1 1 400px !important;
}

.eg-gallery-title-container {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin-bottom: 8px !important;
}

.eg-gallery-accent-bar {
	width: 4px !important;
	height: 38px !important;
	background-color: #D4A017 !important;
	border-radius: 4px !important;
}

.eg-gallery-title {
	font-family: 'Outfit', 'Inter', sans-serif !important;
	font-size: 38px !important;
	font-weight: 800 !important;
	color: #0B132B !important;
	margin: 0 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.5px !important;
}

.eg-gallery-subtitle {
	font-family: 'Inter', sans-serif !important;
	font-size: 15px !important;
	color: #64748B !important;
	margin: 0 !important;
	line-height: 1.5 !important;
	max-width: 500px !important;
}

/* Filter Pills */
.eg-gallery-filter-pills {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}

.eg-gal-pill {
	background: #ffffff !important;
	color: #64748B !important;
	border: 1px solid #E2E8F0 !important;
	padding: 10px 20px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	font-family: 'Inter', sans-serif !important;
	transition: all 0.25s ease !important;
	outline: none !important;
	border-radius: 8px !important;
	display: inline-block !important;
}

.eg-gal-pill:hover {
	color: #D4A017 !important;
	border-color: #D4A017 !important;
	background: #F0FDF4 !important;
}

.eg-gal-pill.active {
	background: #D4A017 !important;
	color: #ffffff !important;
	border-color: #D4A017 !important;
}

/* Grid Section */
.edugrowth-gallery-grid-section {
	background: #ffffff !important;
	padding: 0 !important;
}

.eg-gallery-section {
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 40px 60px 60px !important;
	box-sizing: border-box !important;
}

.eg-gallery-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 24px !important;
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 40px 60px 60px !important;
	box-sizing: border-box !important;
}

/* Elementor container compatibility for gallery grid */
.eg-gallery-grid.e-con>.e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 24px !important;
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 40px 60px 60px !important;
	box-sizing: border-box !important;
}

.eg-gal-card {
	background: #ffffff !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	box-shadow: 0 4px 20px rgba(11, 19, 43, 0.02) !important;
	transition: opacity 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
	aspect-ratio: 4/3 !important;
	position: relative !important;
}

/* Elementor container overrides for gallery cards */
.eg-gal-card.e-con {
	padding: 0 !important;
	border: none !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	gap: 0 !important;
	aspect-ratio: 4/3 !important;
}

.eg-gal-card.e-con>.e-con-inner {
	padding: 0 !important;
	gap: 0 !important;
}

.eg-gal-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 12px 30px rgba(11, 19, 43, 0.08) !important;
}

.eg-gal-img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	border-radius: 16px !important;
	transition: transform 0.4s ease !important;
}

/* Elementor image widget inside gallery card */
.eg-gal-card .elementor-widget-image {
	width: 100% !important;
	height: 100% !important;
}

.eg-gal-card .elementor-widget-image .elementor-widget-container {
	width: 100% !important;
	height: 100% !important;
}

.eg-gal-card .elementor-widget-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	border-radius: 16px !important;
	transition: transform 0.4s ease !important;
}

.eg-gal-card:hover .eg-gal-img,
.eg-gal-card:hover .elementor-widget-image img {
	transform: scale(1.03) !important;
}

/* Bottom CTA Section */
.edugrowth-gallery-cta {
	background: #ffffff !important;
	padding: 0 !important;
}

.eg-gallery-cta-container {
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 0 60px 40px !important;
	box-sizing: border-box !important;
}

.eg-gallery-cta-bar {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	padding: 30px 40px !important;
	box-sizing: border-box !important;
	background: #F8FAFC !important;
	border: 1px solid #E2E8F0 !important;
	border-radius: 16px !important;
}

.eg-gallery-cta-left {
	display: flex !important;
	align-items: center !important;
	gap: 20px !important;
}

.eg-gallery-cta-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 52px !important;
	height: 52px !important;
	background: #ffffff !important;
	border: 1px solid #E2E8F0 !important;
	border-radius: 50% !important;
	color: #D4A017 !important;
	flex-shrink: 0 !important;
}

.eg-gallery-cta-icon svg {
	width: 24px !important;
	height: 24px !important;
}

.eg-gallery-cta-text {
	display: flex !important;
	flex-direction: column !important;
	text-align: left !important;
}

.eg-gallery-cta-text strong {
	font-family: 'Outfit', 'Inter', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #0B132B !important;
	display: block !important;
	margin-bottom: 4px !important;
}

.eg-gallery-cta-text span {
	font-family: 'Inter', sans-serif !important;
	font-size: 14.5px !important;
	color: #64748B !important;
}

.eg-gallery-cta-btn {
	flex-shrink: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: #D4A017 !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	padding: 14px 28px !important;
	border-radius: 8px !important;
	font-family: 'Inter', sans-serif !important;
	transition: all 0.25s ease !important;
}

.eg-gallery-cta-btn:hover {
	background: #B48006 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 12px rgba(212, 160, 23, 0.15) !important;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
	.eg-gallery-grid {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 20px !important;
	}

	.eg-gallery-grid.e-con>.e-con-inner {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 20px !important;
	}
}

@media (max-width: 1024px) {
	.eg-gallery-header-section {
		padding: 0 40px !important;
	}

	.eg-gallery-section {
		padding: 30px 40px 40px !important;
	}

	.eg-gallery-cta-container {
		padding: 0 40px 30px !important;
	}

	.eg-gallery-header-inner {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 20px !important;
	}

	.eg-gallery-title-area {
		flex: none !important;
	}

	.eg-gallery-filter-pills {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		gap: 8px !important;
		padding-bottom: 8px !important;
		margin-bottom: 12px !important;
		scrollbar-width: none !important;
		width: calc(100% + 80px) !important;
		margin-left: -40px !important;
		padding-left: 40px !important;
		padding-right: 40px !important;
		box-sizing: border-box !important;
	}

	.eg-gallery-filter-pills::-webkit-scrollbar {
		display: none !important;
	}

	.eg-gal-pill {
		white-space: nowrap !important;
		padding: 8px 16px !important;
		font-size: 13px !important;
		flex-shrink: 0 !important;
	}

	.eg-gallery-grid {
		padding: 0 !important;
	}
}

@media (max-width: 767px) {
	.eg-gallery-header-section {
		padding: 0 20px !important;
	}

	.eg-gallery-filter-pills {
		width: calc(100% + 40px) !important;
		margin-left: -20px !important;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.eg-gallery-section {
		padding: 24px 20px 36px !important;
	}

	.eg-gallery-cta-container {
		padding: 0 20px 24px !important;
	}

	.eg-gallery-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px !important;
		padding: 0 !important;
	}

	.eg-gallery-grid.e-con>.e-con-inner {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px !important;
		padding: 24px 20px 36px !important;
	}

	.eg-gallery-cta-bar {
		flex-direction: column !important;
		align-items: flex-start !important;
		padding: 24px !important;
		gap: 20px !important;
	}

	.eg-gallery-cta-btn {
		width: 100% !important;
		justify-content: center !important;
	}
}

@media (max-width: 480px) {
	.eg-gallery-grid {
		grid-template-columns: 1fr !important;
	}

	.eg-gallery-grid.e-con>.e-con-inner {
		grid-template-columns: 1fr !important;
	}
}

/* Gallery section responsive overrides for Elementor containers */
@media (max-width: 1024px) {
	.eg-gallery-grid.e-con>.e-con-inner {
		padding: 30px 40px 40px !important;
	}
}

/* =====================================================================
   CONTACT PAGE — GOOGLE MAP & FLOATING WHATSAPP
   ===================================================================== */

/* Floating WhatsApp Button */
.eg-whatsapp-float {
	position: fixed !important;
	bottom: 30px !important;
	right: 30px !important;
	background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important;
	color: #ffffff !important;
	border-radius: 50px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 16px !important;
	box-shadow: 0 8px 24px rgba(37, 211, 102, 0.3) !important;
	z-index: 99999 !important;
	text-decoration: none !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	overflow: hidden !important;
	max-width: 60px !important;
	height: 60px !important;
	box-sizing: border-box !important;
}

.eg-whatsapp-icon {
	width: 28px !important;
	height: 28px !important;
	flex-shrink: 0 !important;
}

.eg-whatsapp-float span {
	font-family: 'Inter', sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
	opacity: 0 !important;
	max-width: 0 !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	margin-left: 0 !important;
}

.eg-whatsapp-float:hover {
	max-width: 200px !important;
	padding: 16px 24px !important;
	border-radius: 30px !important;
	transform: translateY(-3px) !important;
	box-shadow: 0 12px 30px rgba(37, 211, 102, 0.45) !important;
}

.eg-whatsapp-float:hover span {
	opacity: 1 !important;
	max-width: 140px !important;
	margin-left: 10px !important;
}

/* Pulsing effect */
.eg-whatsapp-float::before {
	content: "" !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	border-radius: 50px !important;
	background: inherit !important;
	z-index: -1 !important;
	opacity: 0.3 !important;
	animation: wa-pulse 2s infinite !important;
}

@keyframes wa-pulse {
	0% {
		transform: scale(1) !important;
		opacity: 0.5 !important;
	}

	100% {
		transform: scale(1.4) !important;
		opacity: 0 !important;
	}
}

/* Contact Page Map */
.eg-contact-map-container {
	width: 100% !important;
	height: 450px !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	border: 1px solid #E2E8F0 !important;
	box-shadow: 0 10px 30px rgba(11, 19, 43, 0.03) !important;
	margin: 0 auto !important;
}

.eg-contact-map-iframe {
	width: 100% !important;
	height: 100% !important;
	border: none !important;
}

@media (max-width: 767px) {
	.eg-contact-map-container {
		height: 300px !important;
	}

	.eg-whatsapp-float {
		bottom: 20px !important;
		right: 20px !important;
	}
}

/* =====================================================================
   HOME PAGE — UPDATED SECTIONS (2026)
   ===================================================================== */

/* Grid with gaps and standalone cards */
.elementor .eg-cards-grid-gap>.e-con-inner {
	gap: 28px !important;
}

.elementor .eg-cards-grid-gap>.e-con-inner>.elementor-element {
	border: none !important;
}

/* Card Container Base Override */
.elementor .eg-core-service-card,
.elementor .eg-feature-card,
.elementor .eg-industry-card {
	border-radius: 16px !important;
	background: var(--eg-white) !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
	position: relative !important;
	overflow: hidden !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Feature cards in why choose us section (on dark navy background) */
.elementor .edugrowth-why-choose-section .eg-feature-card {
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	box-shadow: none !important;
}

/* Hover effects */
.elementor .eg-core-service-card:hover,
.elementor .eg-industry-card:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 15px 35px rgba(11, 19, 43, 0.08) !important;
	background: var(--eg-white) !important;
}

.elementor .edugrowth-why-choose-section .eg-feature-card:hover {
	transform: translateY(-5px) !important;
	border-color: rgba(212, 160, 23, 0.4) !important;
	background: rgba(255, 255, 255, 0.07) !important;
}

/* Vertical Left Accent Bar */
.elementor .eg-core-service-card::before,
.elementor .eg-feature-card::before,
.elementor .eg-industry-card::before {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	width: 4px !important;
	background-color: var(--eg-accent) !important;
	border-radius: 0 4px 4px 0 !important;
	transition: height 0.3s ease, top 0.3s ease !important;
}

/* Specific vertical line positions to align with the icons */
.elementor .eg-core-service-card::before {
	top: 36px !important;
	/* matches card top padding */
	height: 56px !important;
	/* matches icon height */
}

.elementor .eg-feature-card::before {
	top: 36px !important;
	height: 48px !important;
}

.elementor .eg-industry-card::before {
	top: 40px !important;
	height: 72px !important;
}

/* Circular Icon Containers */
.elementor .eg-core-svc-icon {
	border-radius: 50% !important;
	background: rgba(212, 160, 23, 0.06) !important;
	border: 1px solid rgba(212, 160, 23, 0.12) !important;
	width: 56px !important;
	height: 56px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
}

.elementor .eg-core-svc-icon svg {
	width: 28px !important;
	height: 28px !important;
}

.elementor .eg-feature-check {
	border-radius: 50% !important;
	background: rgba(212, 160, 23, 0.08) !important;
	border: 1px solid rgba(212, 160, 23, 0.18) !important;
	width: 48px !important;
	height: 48px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.elementor .eg-industry-icon {
	border-radius: 50% !important;
	background: rgba(212, 160, 23, 0.06) !important;
	border: 1px solid rgba(212, 160, 23, 0.12) !important;
	width: 72px !important;
	height: 72px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	/* left aligned */
}

.elementor .eg-industry-icon svg {
	width: 36px !important;
	height: 36px !important;
	stroke: var(--eg-accent) !important;
}

/* Override text color inside dark bg feature cards */
.elementor .edugrowth-why-choose-section .eg-feature-card .elementor-heading-title {
	color: var(--eg-white) !important;
}

.elementor .edugrowth-why-choose-section .eg-feature-card .elementor-text-editor p {
	color: rgba(255, 255, 255, 0.6) !important;
}

/* ─── Process Step Badge ─────────────────────────────────── */
.eg-process-step-badge {
	display: inline-block;
	background: rgba(212, 160, 23, 0.1);
	color: var(--eg-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding: 4px 14px;
	border: 1px solid rgba(212, 160, 23, 0.2);
	font-family: var(--eg-font);
}

/* Divider Lines */
.eg-card-divider {
	width: 24px !important;
	height: 2px !important;
	background-color: var(--eg-accent) !important;
	margin-top: 4px !important;
	margin-bottom: 18px !important;
}

/* ─── Home Contact Section ───────────────────────────────── */
.elementor .eg-home-contact-form-card,
.elementor .eg-home-contact-info-card {
	border-radius: 20px !important;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05) !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	background-color: var(--eg-white) !important;
	position: relative !important;
}

/* Vertical Left Accent Bar on Contact Cards */
.elementor .eg-home-contact-form-card::before,
.elementor .eg-home-contact-info-card::before {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	top: 40px !important;
	/* matches card top padding */
	width: 4px !important;
	height: 44px !important;
	/* matches circular title icon height */
	background-color: var(--eg-accent) !important;
	border-radius: 0 4px 4px 0 !important;
}

/* Contact Title Icon */
.eg-contact-form-title-wrap {
	display: flex !important;
	align-items: center !important;
}

.eg-contact-title-icon {
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 50% !important;
	background: rgba(212, 160, 23, 0.08) !important;
	border: 1px solid rgba(212, 160, 23, 0.15) !important;
}

.eg-contact-title-icon svg {
	stroke: var(--eg-accent) !important;
}

/* Contact Form Styling inside Card */
.elementor .eg-home-contact-form-card .wpcf7 form label {
	display: block !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.8px !important;
	color: var(--eg-gray-500) !important;
	margin-bottom: 8px !important;
}

.elementor .eg-home-contact-form-card .wpcf7 form label br {
	display: none !important;
}

.elementor .eg-home-contact-form-card .wpcf7 form span.wpcf7-form-control-wrap {
	display: block !important;
	margin-top: 6px !important;
	margin-bottom: 16px !important;
}

.elementor .eg-home-contact-form-card input[type="text"],
.elementor .eg-home-contact-form-card input[type="email"],
.elementor .eg-home-contact-form-card input[type="tel"],
.elementor .eg-home-contact-form-card select,
.elementor .eg-home-contact-form-card textarea {
	border-radius: 8px !important;
	background-color: var(--eg-gray-50) !important;
	border: 1px solid rgba(11, 19, 43, 0.1) !important;
	padding: 14px 18px !important;
	font-size: 14px !important;
	margin-bottom: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
	transition: var(--eg-transition-fast) !important;
}

.elementor .eg-home-contact-form-card input[type="text"]:focus,
.elementor .eg-home-contact-form-card input[type="email"]:focus,
.elementor .eg-home-contact-form-card input[type="tel"]:focus,
.elementor .eg-home-contact-form-card select:focus,
.elementor .eg-home-contact-form-card textarea:focus {
	border-color: var(--eg-accent) !important;
	background-color: var(--eg-white) !important;
	outline: none !important;
}

.elementor .eg-home-contact-form-card textarea {
	height: 120px !important;
	min-height: 120px !important;
}

/* Submit Button with Airplane Icon */
.elementor .eg-home-contact-form-card input[type="submit"] {
	border-radius: 8px !important;
	background-color: var(--eg-accent) !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='22' y1='2' x2='11' y2='13'/%3E%3Cpolygon points='22 2 15 22 11 13 2 9 22 2'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-size: 16px 16px !important;
	background-position: calc(50% - 46px) center !important;
	color: var(--eg-white) !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	padding: 16px 36px 16px 56px !important;
	transition: var(--eg-transition) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	box-shadow: 0 4px 12px rgba(212, 160, 23, 0.2) !important;
	width: 100% !important;
	border: none !important;
	cursor: pointer !important;
	margin-top: 10px !important;
}

.elementor .eg-home-contact-form-card input[type="submit"]:hover {
	background-color: var(--eg-accent-dark) !important;
	box-shadow: 0 6px 16px rgba(212, 160, 23, 0.35) !important;
}

/* Contact Info Details & Dividers */
.eg-home-contact-details {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.eg-home-contact-item {
	display: flex;
	align-items: center;
	gap: 16px;
	border-bottom: 1px solid rgba(11, 19, 43, 0.06);
	padding-bottom: 20px;
}

.eg-home-contact-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.eg-home-contact-icon {
	width: 44px;
	height: 44px;
	min-width: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(212, 160, 23, 0.08);
	border: 1px solid rgba(212, 160, 23, 0.15);
}

.eg-home-contact-icon svg {
	stroke: var(--eg-accent) !important;
}

.eg-home-contact-label {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	color: var(--eg-gray-500);
	margin: 0 0 4px;
	font-family: var(--eg-font);
}

.eg-home-contact-value {
	font-size: 15px;
	font-weight: 600;
	color: var(--eg-navy);
	text-decoration: none;
	line-height: 1.5;
	margin: 0;
	font-family: var(--eg-font);
	display: block;
}

a.eg-home-contact-value:hover {
	color: var(--eg-accent);
}

/* Contact Map with Overlay Button */
.eg-home-contact-map {
	margin-top: 8px;
	overflow: hidden;
	border-radius: 12px !important;
	border: 1px solid rgba(11, 19, 43, 0.08) !important;
	position: relative !important;
}

.eg-home-contact-map iframe {
	display: block;
	border: none !important;
}

.eg-map-overlay-btn {
	position: absolute !important;
	top: 16px !important;
	left: 16px !important;
	background: var(--eg-white) !important;
	color: var(--eg-navy) !important;
	padding: 8px 16px !important;
	border-radius: 6px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	transition: var(--eg-transition-fast) !important;
	font-family: var(--eg-font) !important;
}

.eg-map-overlay-btn:hover {
	background: var(--eg-gray-50) !important;
	transform: translateY(-1px) !important;
}

.eg-map-overlay-btn svg {
	stroke: var(--eg-accent) !important;
}

/* WhatsApp full-width button */
.eg-home-whatsapp-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	background: #D4A017 !important;
	/* Theme Green Accent */
	border-radius: 12px !important;
	color: var(--eg-white) !important;
	padding: 16px 24px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	transition: var(--eg-transition) !important;
	margin-top: 8px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	font-family: var(--eg-font) !important;
}

.eg-home-whatsapp-btn:hover {
	background: #B48006 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 20px rgba(212, 160, 23, 0.25) !important;
}

.eg-wa-btn-left {
	display: inline-flex !important;
	align-items: center !important;
	gap: 12px !important;
}

.eg-wa-btn-arrow {
	transition: transform 0.3s ease !important;
}

.eg-home-whatsapp-btn:hover .eg-wa-btn-arrow {
	transform: translateX(4px) !important;
}

/* ─── Highlights Row at Bottom ───────────────────────────── */
.eg-contact-highlight-item {
	background: transparent !important;
	border: none !important;
}

.eg-contact-hl-icon {
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 50% !important;
	background: rgba(212, 160, 23, 0.08) !important;
	border: 1px solid rgba(212, 160, 23, 0.15) !important;
}

.eg-contact-hl-icon svg {
	stroke: var(--eg-accent) !important;
}

/* ─── Responsive: Home Updated Sections ──────────────────── */
@media (max-width: 767px) {
	.eg-home-contact-info-card {
		margin-top: 30px !important;
	}

	.eg-contact-highlights-grid>.e-con-inner {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
	}

	.eg-contact-highlight-item {
		width: 100% !important;
	}
}

/* =====================================================================
   ABOUT PAGE — UPDATED SECTIONS (2026)
   ===================================================================== */

/* ─── Who We Are Section ─────────────────────────────────── */
.eg-about-intro-desc {
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: var(--eg-gray-600) !important;
	margin: 0;
	font-family: var(--eg-font) !important;
}

.elementor .eg-about-intro-metric-card {
	border-radius: 16px !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
}

.eg-intro-details-wrapper {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.eg-intro-metric-item {
	display: flex;
	flex-direction: column;
}

.eg-intro-metric-title {
	font-size: 32px !important;
	font-weight: 800 !important;
	color: var(--eg-accent) !important;
	margin: 0 0 4px !important;
	line-height: 1.1 !important;
	font-family: var(--eg-font) !important;
}

.eg-intro-metric-label {
	font-size: 13px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	color: var(--eg-gray-500) !important;
	margin: 0 !important;
	font-family: var(--eg-font) !important;
}

.eg-intro-metric-divider {
	height: 1px;
	background: rgba(11, 19, 43, 0.08);
}

/* ─── Vision & Mission Cards ────────────────────────────── */
.elementor .eg-about-vision-card,
.elementor .eg-about-mission-card {
	border-radius: 16px !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
	position: relative !important;
	overflow: hidden !important;
}

.elementor .eg-about-vision-card::before,
.elementor .eg-about-mission-card::before {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	top: 40px !important;
	width: 4px !important;
	height: 44px !important;
	background-color: var(--eg-accent) !important;
	border-radius: 0 4px 4px 0 !important;
}

/* ─── Founder's Message Section ──────────────────────────── */
.elementor .eg-founder-profile-card {
	border-radius: 16px !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
	text-align: center !important;
}

.eg-founder-avatar-wrapper {
	width: 130px;
	height: 130px;
	margin: 0 auto 24px;
	border-radius: 50% !important;
	overflow: hidden !important;
	border: 4px solid rgba(212, 160, 23, 0.12) !important;
	background: rgba(212, 160, 23, 0.05);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--eg-accent);
}

.eg-founder-avatar-wrapper svg {
	width: 64px;
	height: 64px;
}

.elementor .eg-founder-avatar-image-container {
	text-align: center !important;
}

.elementor .eg-founder-avatar-image-container img {
	width: 130px !important;
	height: 130px !important;
	object-fit: cover !important;
	border-radius: 50% !important;
	border: 4px solid rgba(212, 160, 23, 0.12) !important;
	margin: 0 auto 24px !important;
	display: block !important;
}

.eg-founder-msg-p {
	margin: 0;
	font-family: var(--eg-font) !important;
}

/* ─── Objectives Cards ───────────────────────────────────── */
.elementor .eg-about-objective-card {
	border-radius: 16px !important;
	background: var(--eg-white) !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
	position: relative !important;
	overflow: hidden !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor .eg-about-objective-card:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 15px 35px rgba(11, 19, 43, 0.08) !important;
}

.elementor .eg-about-objective-card::before {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	top: 36px !important;
	width: 4px !important;
	height: 48px !important;
	background-color: var(--eg-accent) !important;
	border-radius: 0 4px 4px 0 !important;
}

/* ─── Industries We Serve Cards ──────────────────────────── */
.elementor .eg-about-industry-serve-card {
	border-radius: 16px !important;
	background: var(--eg-white) !important;
	border: 1px solid rgba(11, 19, 43, 0.06) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
	position: relative !important;
	overflow: hidden !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor .eg-about-industry-serve-card:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 15px 35px rgba(11, 19, 43, 0.08) !important;
}

.elementor .eg-about-industry-serve-card::before {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	top: 36px !important;
	width: 4px !important;
	height: 56px !important;
	background-color: var(--eg-accent) !important;
	border-radius: 0 4px 4px 0 !important;
}

.eg-industry-serve-icon {
	border-radius: 50% !important;
	background: rgba(212, 160, 23, 0.06) !important;
	border: 1px solid rgba(212, 160, 23, 0.12) !important;
	width: 56px !important;
	height: 56px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
}

.eg-industry-serve-icon svg {
	width: 28px !important;
	height: 28px !important;
}

/* ─── Responsive: About Updated Sections ─────────────────── */
@media (max-width: 991px) {
	.eg-founder-message-col {
		padding-left: 0 !important;
		margin-top: 30px !important;
	}
}

/* ─── Remove Bento Borders Option ────────────────────────── */
.elementor .eg-no-borders>.e-con-inner>.elementor-element,
.elementor .eg-no-borders>.elementor-element {
	border: none !important;
}

/* ─── Subheading Width Restrictor ────────────────────────── */
.elementor .eg-header-subheading,
.elementor .eg-header-subheading .elementor-widget-container {
	max-width: 720px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* ─── Digital & Media Solutions Cards ────────────────────── */
.elementor .eg-digital-card {
	border-radius: 16px !important;
	background: var(--eg-white) !important;
	border: 1px solid rgba(11, 19, 43, 0.08) !important;
	box-shadow: 0 8px 30px rgba(11, 19, 43, 0.04) !important;
	position: relative !important;
	overflow: hidden !important;
	/* Clippings match border-radius */
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	padding: 0 !important;
	/* No card padding - headers span full width */
	display: flex !important;
	flex-direction: column !important;
}

.elementor .eg-digital-card:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 15px 35px rgba(11, 19, 43, 0.08) !important;
}

/* Card Header Background Image Design */
.elementor .eg-digital-card-header {
	display: flex !important;
	flex-direction: row !important;
	justify-content: flex-start !important;
	align-items: flex-end !important;
	/* aligned to the bottom of the mockup image area */
	background: var(--eg-white) !important;
	padding: 24px !important;
	border-bottom: 1px solid rgba(212, 160, 23, 0.08) !important;
	position: relative !important;
	overflow: hidden !important;
	height: 160px !important;
	/* Strict fixed height to ensure header does not grow when list grows */
}

.elementor .eg-digital-card-header-left {
	width: 100% !important;
	flex: 0 0 100% !important;
	display: flex !important;
	flex-direction: column !important;
	position: relative !important;
	z-index: 3 !important;
	/* sit above the overlay and background image */
}

/* Header Right Mockup Background Image Wrappers */
.elementor .eg-digital-card-header-right,
.elementor .eg-digital-card-header-right .elementor-widget-image,
.elementor .eg-digital-card-header-right .elementor-widget-container,
.elementor .eg-digital-card-header-right .elementor-image {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	/* prevent mockup image from overflowing outside the header boundary */
}

/* Background image overlay to ensure readability */
.elementor .eg-digital-card-header-right::after {
	content: '' !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	background: rgba(11, 19, 43, 0.48) !important;
	/* Slightly dark brand navy overlay */
	z-index: 2 !important;
}

/* Header Left Title & Divider */
.elementor .eg-digital-card-header-left .elementor-heading-title {
	margin: 0 !important;
	font-size: 22px !important;
	/* Bold header title */
	font-weight: 800 !important;
	line-height: 1.3 !important;
	color: var(--eg-white) !important;
	/* White text for contrast */
}

.elementor .eg-digital-card-header-left .elementor-widget-divider {
	margin-top: 6px !important;
	margin-bottom: 0 !important;
}

/* Circular Icon Box */
.elementor .eg-digital-card-icon-box {
	width: 52px !important;
	height: 52px !important;
	border-radius: 50% !important;
	background: #FEF3C7 !important;
	/* solid light green background to pop on dark overlay */
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.elementor .eg-digital-card-icon-box svg {
	width: 24px !important;
	height: 24px !important;
	stroke: var(--eg-accent-dark) !important;
	/* dark green icon for high contrast */
	fill: none !important;
}

/* Header Right Mockup Background Image */
.elementor .eg-digital-card-header-right img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	/* act as background-size: cover */
	border-radius: 0 !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
}

/* Card Body (White BG list) */
.elementor .eg-digital-card-body {
	padding: 24px !important;
	background: var(--eg-white) !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
}

.elementor .eg-digital-card-body .elementor-icon-list-items {
	margin: 0 !important;
}

/* Align and style checkmark lists to have green filled circle and white checkmark */
.elementor .eg-digital-card .elementor-icon-list-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background-color: var(--eg-accent) !important;
	border-radius: 50% !important;
	width: 18px !important;
	height: 18px !important;
	padding: 0 !important;
	margin-right: 8px !important;
}

.elementor .eg-digital-card .elementor-icon-list-icon svg {
	width: 10px !important;
	height: 10px !important;
	color: var(--eg-white) !important;
	stroke: var(--eg-white) !important;
	stroke-width: 1px !important;
	fill: var(--eg-white) !important;
}

.elementor .eg-digital-card .elementor-icon-list-icon i {
	font-size: 10px !important;
	color: var(--eg-white) !important;
}

/* Increase font size of services text */
.elementor .eg-digital-card .elementor-icon-list-text {
	font-size: 16px !important;
	font-weight: 500 !important;
	color: #64748B !important;
}

/* Flex Grid layouts for centering bottom row & enforcing identical dimensions */
@media (min-width: 1025px) {

	.elementor .eg-services-bento-grid>.e-con-inner,
	.edugrowth-bento-grid.eg-services-bento-grid>.e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		gap: 30px !important;
	}

	.elementor .eg-services-bento-grid .eg-digital-card,
	.eg-services-bento-grid .eg-digital-card,
	.elementor .eg-services-bento-grid .eg-why-choose-card,
	.eg-services-bento-grid .eg-why-choose-card {
		width: 300px !important;
		flex: 0 0 300px !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 1024px) and (min-width: 768px) {

	.elementor .eg-services-bento-grid>.e-con-inner,
	.edugrowth-bento-grid.eg-services-bento-grid>.e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		gap: 24px !important;
	}

	.elementor .eg-services-bento-grid .eg-digital-card,
	.eg-services-bento-grid .eg-digital-card,
	.elementor .eg-services-bento-grid .eg-why-choose-card,
	.eg-services-bento-grid .eg-why-choose-card {
		width: 300px !important;
		flex: 0 0 300px !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 767px) {

	.elementor .eg-services-bento-grid>.e-con-inner,
	.edugrowth-bento-grid.eg-services-bento-grid>.e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		gap: 20px !important;
	}

	.elementor .eg-services-bento-grid .eg-digital-card,
	.eg-services-bento-grid .eg-digital-card,
	.elementor .eg-services-bento-grid .eg-why-choose-card,
	.eg-services-bento-grid .eg-why-choose-card {
		width: 100% !important;
		max-width: 300px !important;
		flex: 0 0 auto !important;
		box-sizing: border-box !important;
	}
}

/* =====================================================================
   GLOBAL BOTTOM SECTIONS (WHY CHOOSE & INQUIRY FORM)
   ===================================================================== */

/* Why Choose Section & Card Backgrounds with hand-drawn SVG loop arrow */
.elementor .edugrowth-why-choose {
	background-color: var(--eg-white) !important;
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23D4A017' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.08'%3E%3Cpath d='M50,20 C35,20 30,35 30,45 C30,55 40,65 42,70 L58,70 C60,65 70,55 70,45 C70,35 65,20 50,20 Z'/%3E%3Cpath d='M42,70 L58,70 M44,74 L56,74 M46,78 L54,78 M48,82 L52,82'/%3E%3Cpath d='M45,48 C48,45 52,45 55,48'/%3E%3Cpath d='M50,10 L50,15 M20,45 L25,45 M80,45 L75,45 M28,25 L33,29 M72,25 L67,29'/%3E%3C/svg%3E"),
		/* Bulb */
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23EF4444' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.08'%3E%3Cpath d='M50,80 C40,75 25,75 15,80 L15,30 C25,25 40,25 50,30 C60,25 75,25 85,30 L85,80 C75,75 60,75 50,80 Z'/%3E%3Cpath d='M50,30 L50,80'/%3E%3Cpath d='M22,40 C30,37 40,37 45,39 M22,50 C30,47 40,47 45,49 M22,60 C30,57 40,57 45,59'/%3E%3Cpath d='M78,40 C70,37 60,37 55,39 M78,50 C70,47 60,47 55,49 M78,60 C70,57 60,57 55,59'/%3E%3C/svg%3E"),
		/* Open Book */
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23F59E0B' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.08'%3E%3Cpath d='M30,20 L75,20 C78,20 80,22 80,25 L80,75 C80,78 78,80 75,80 L30,80 C27,80 25,78 25,75 L25,25 C25,22 27,20 30,20 Z'/%3E%3Cpath d='M32,20 L32,80'/%3E%3Cpath d='M45,35 L65,35 M45,45 L65,45 M45,55 L60,55'/%3E%3C/svg%3E"),
		/* Closed Book */
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none' stroke='%23D4A017' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.08'%3E%3Cpath d='M25,10 L25,40 M10,25 L40,25'/%3E%3Cpath d='M20,20 L30,30 M30,20 L20,30' stroke-width='0.8'/%3E%3C/svg%3E") !important;
	/* Sparkle */
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat !important;
	background-position:
		left 3% top 15%,
		/* Bulb */
		left 2% bottom 10%,
		/* Open Book */
		right 3% top 20%,
		/* Closed Book */
		right 4% bottom 15% !important;
	/* Sparkle */
	background-size: 110px 110px, 110px 110px, 110px 110px, 50px 50px !important;
	position: relative !important;
}

.elementor .edugrowth-inquiry-section {
	background-color: var(--eg-navy) !important;
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23ffffff' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.04'%3E%3Cpath d='M50,20 C35,20 30,35 30,45 C30,55 40,65 42,70 L58,70 C60,65 70,55 70,45 C70,35 65,20 50,20 Z'/%3E%3Cpath d='M42,70 L58,70 M44,74 L56,74 M46,78 L54,78 M48,82 L52,82'/%3E%3Cpath d='M45,48 C48,45 52,45 55,48'/%3E%3Cpath d='M50,10 L50,15 M20,45 L25,45 M80,45 L75,45 M28,25 L33,29 M72,25 L67,29'/%3E%3C/svg%3E"),
		/* Bulb */
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23ffffff' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.04'%3E%3Cpath d='M50,80 C40,75 25,75 15,80 L15,30 C25,25 40,25 50,30 C60,25 75,25 85,30 L85,80 C75,75 60,75 50,80 Z'/%3E%3Cpath d='M50,30 L50,80'/%3E%3Cpath d='M22,40 C30,37 40,37 45,39 M22,50 C30,47 40,47 45,49 M22,60 C30,57 40,57 45,59'/%3E%3Cpath d='M78,40 C70,37 60,37 55,39 M78,50 C70,47 60,47 55,49 M78,60 C70,57 60,57 55,59'/%3E%3C/svg%3E"),
		/* Open Book */
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23ffffff' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.04'%3E%3Cpath d='M30,20 L75,20 C78,20 80,22 80,25 L80,75 C80,78 78,80 75,80 L30,80 C27,80 25,78 25,75 L25,25 C25,22 27,20 30,20 Z'/%3E%3Cpath d='M32,20 L32,80'/%3E%3Cpath d='M45,35 L65,35 M45,45 L65,45 M45,55 L60,55'/%3E%3C/svg%3E"),
		/* Closed Book */
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none' stroke='%23ffffff' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round' stroke-opacity='0.04'%3E%3Cpath d='M25,10 L25,40 M10,25 L40,25'/%3E%3Cpath d='M20,20 L30,30 M30,20 L20,30' stroke-width='0.8'/%3E%3C/svg%3E") !important;
	/* Sparkle */
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat !important;
	background-position:
		left 3% top 15%,
		/* Bulb */
		left 2% bottom 10%,
		/* Open Book */
		right 3% top 20%,
		/* Closed Book */
		right 4% bottom 15% !important;
	/* Sparkle */
	background-size: 110px 110px, 110px 110px, 110px 110px, 50px 50px !important;
	position: relative !important;
}

@media (max-width: 767px) {

	.elementor .edugrowth-why-choose,
	.elementor .edugrowth-inquiry-section {
		background-image: none !important;
	}
}

.elementor .eg-why-choose-card {
	background: var(--eg-white) !important;
	border: 1px solid rgba(212, 160, 23, 0.12) !important;
	border-radius: 12px !important;
	padding: 32px 24px !important;
	box-shadow: 0 8px 30px rgba(212, 160, 23, 0.04) !important;
	transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease !important;
}

.elementor .eg-why-choose-card:hover {
	border-color: rgba(212, 160, 23, 0.3) !important;
	box-shadow: 0 15px 30px rgba(212, 160, 23, 0.12) !important;
	transform: translateY(-5px) !important;
}

/* Inquiry Form Styling */
.eg-inquiry-form {
	display: flex !important;
	flex-direction: column !important;
	gap: 18px !important;
	width: 100% !important;
}

.eg-form-row {
	display: flex !important;
	gap: 18px !important;
	width: 100% !important;
}

.eg-form-row .eg-form-group {
	flex: 1 !important;
}

.eg-form-group {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

.eg-form-group label {
	font-family: 'Inter', sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--eg-navy) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}

.eg-form-group input[type="text"],
.eg-form-group input[type="email"],
.eg-form-group input[type="tel"],
.eg-form-group select,
.eg-form-group textarea {
	width: 100% !important;
	padding: 12px 16px !important;
	border: 1px solid var(--eg-border-light) !important;
	border-radius: 6px !important;
	background-color: var(--eg-white) !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 14px !important;
	color: var(--eg-navy) !important;
	outline: none !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
}

.eg-form-group input:focus,
.eg-form-group select:focus,
.eg-form-group textarea:focus {
	border-color: var(--eg-accent) !important;
	box-shadow: 0 0 0 3px rgba(212, 160, 23, 0.15) !important;
}

.eg-form-group textarea {
	resize: none !important;
}

.elementor .eg-inquiry-form-card {
	background: var(--eg-white) !important;
	border: 1px solid var(--eg-border-light) !important;
	box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.05) !important;
	border-radius: 12px !important;
	padding: 36px !important;
	box-sizing: border-box !important;
}

.eg-form-submit {
	margin-top: 8px !important;
}

.eg-form-submit .eg-btn-primary {
	width: 100% !important;
	padding: 14px 20px !important;
	border: none !important;
	border-radius: 6px !important;
	background-color: var(--eg-accent) !important;
	color: var(--eg-white) !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	transition: background-color 0.2s, transform 0.1s !important;
	text-align: center !important;
}

.eg-form-submit .eg-btn-primary:hover {
	background-color: var(--eg-accent-dark) !important;
	transform: translateY(-1px) !important;
}

.eg-form-submit .eg-btn-primary:active {
	transform: translateY(0) !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.eg-form-row {
		flex-direction: column !important;
		gap: 18px !important;
	}

	.elementor .eg-inquiry-form-card {
		padding: 24px !important;
	}
}