/* Namazj Elementor Widgets CSS - Premium Enhancement */

:root {
	--namazj-primary: #0A2472;
	--namazj-secondary: #2992D7;
	--namazj-accent: #7ab3c9;
	--namazj-text-dark: #1a1a1a;
	--namazj-text-light: #667085;
	--namazj-bg-light: #f8fbfd;
	--namazj-white: #ffffff;
	--namazj-font: 'Inter', system-ui, -apple-system, sans-serif;
}

.namazj-hero-medical {
	font-family: var(--namazj-font);
	background: linear-gradient(135deg, var(--namazj-bg-light) 0%, #ffffff 100%);
	padding: 100px 20px;
	position: relative;
	overflow: visible;
	z-index: 99;
}

.namazj-hero-container {
	display: flex;
	flex-wrap: wrap;
	max-width: 1280px;
	margin: 0 auto;
	align-items: center;
	gap: 60px;
}

/* Content Area */
.namazj-hero-content-area {
	flex: 1 1 550px;
	z-index: 2;
}

.namazj-hero-title {
	font-size: clamp(3rem, 5vw, 4.5rem);
	font-weight: 800;
	color: var(--namazj-text-dark);
	line-height: 1.1;
	margin-bottom: 24px;
	letter-spacing: -0.02em;
}

.namazj-hero-desc {
	font-size: 1.125rem;
	color: var(--namazj-text-light);
	margin-bottom: 48px;
	line-height: 1.7;
	max-width: 90%;
}

.namazj-hero-btn {
	display: inline-flex;
	align-items: center;
	background: linear-gradient(135deg, #7ab3c9 0%, var(--namazj-secondary) 100%);
	color: var(--namazj-white);
	padding: 16px 36px;
	border-radius: 50px;
	text-decoration: none;
	font-weight: 600;
	font-size: 1.05rem;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 12px 24px rgba(41, 146, 215, 0.25);
}

.namazj-hero-btn:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(41, 146, 215, 0.35);
	color: var(--namazj-white);
}

.namazj-hero-btn-icon {
	background-color: var(--namazj-white);
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	margin-left: 16px;
	transition: transform 0.3s ease;
}

.namazj-hero-btn:hover .namazj-hero-btn-icon {
	transform: translateX(4px);
}

/* Stats Card */
.namazj-hero-stats-card {
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.5);
	border-radius: 24px;
	padding: 35px 45px;
	margin-top: 70px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.04);
	display: inline-block;
}

.namazj-hero-stats-grid {
	display: flex;
	gap: 50px;
	align-items: center;
}

.namazj-stat-item {
	text-align: center;
	position: relative;
}

.namazj-stat-item:not(:last-child)::after {
	content: '';
	position: absolute;
	right: -25px;
	top: 15%;
	height: 70%;
	width: 1px;
	background-color: rgba(0,0,0,0.08);
}

.namazj-stat-number {
	font-size: 2.25rem;
	font-weight: 800;
	color: var(--namazj-primary);
	margin: 0 0 8px 0;
	letter-spacing: -0.02em;
}

.namazj-stat-label {
	font-size: 0.85rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--namazj-text-light);
	margin: 0;
}

/* Image Area */
.namazj-hero-image-area {
	flex: 1 1 500px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 600px;
}

/* The Blob Enhancement */
.namazj-hero-bg-blob {
	position: absolute;
	width: 110%;
	height: 110%;
	background: linear-gradient(135deg, rgba(133, 180, 201, 0.4) 0%, rgba(133, 180, 201, 0.8) 100%);
	border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%;
	z-index: 1;
	animation: morphBlob 15s ease-in-out infinite alternate;
}

@keyframes morphBlob {
	0% { border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; transform: rotate(0deg) scale(1); }
	50% { border-radius: 60% 40% 30% 70% / 50% 60% 40% 50%; transform: rotate(5deg) scale(1.05); }
	100% { border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; transform: rotate(-5deg) scale(0.95); }
}

.namazj-doctor-img {
	position: relative;
	z-index: 2;
	max-width: 100%;
	height: auto;
}

.namazj-animated-logo {
	width: 75%;
	max-width: 480px;
	z-index: 4;
	filter: drop-shadow(0 30px 40px rgba(10, 36, 114, 0.15));
}

/* Floating Elements */
.namazj-floating-doctors {
	position: absolute;
	top: 8%;
	right: -5%;
	background: var(--namazj-white);
	padding: 12px 24px;
	border-radius: 50px;
	box-shadow: 0 15px 35px rgba(0,0,0,0.08);
	font-weight: 600;
	font-size: 0.95rem;
	color: var(--namazj-text-dark);
	display: flex;
	align-items: center;
	gap: 12px;
	z-index: 5;
	animation: floatElement 4s ease-in-out infinite;
}

.namazj-dot {
	width: 10px;
	height: 10px;
	background-color: #22c55e;
	border-radius: 50%;
	display: inline-block;
	box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.2);
	animation: pulseDot 2s infinite;
}

@keyframes pulseDot {
	0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.4); }
	70% { box-shadow: 0 0 0 10px rgba(34, 197, 94, 0); }
	100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

.namazj-floating-search {
	position: absolute;
	bottom: 15%;
	left: -15%;
	background: var(--namazj-white);
	padding: 20px 25px;
	border-radius: 20px;
	box-shadow: 0 20px 40px rgba(0,0,0,0.08);
	display: flex;
	align-items: center;
	gap: 18px;
	z-index: 5;
	animation: floatElement 5s ease-in-out infinite 1s;
}

@keyframes floatElement {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-10px); }
}

.namazj-fs-icon {
	background: linear-gradient(135deg, var(--namazj-primary) 0%, #1a4b9e 100%);
	width: 50px;
	height: 50px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 8px 16px rgba(10, 36, 114, 0.2);
}

.namazj-fs-text strong {
	display: block;
	font-size: 1.15rem;
	color: var(--namazj-text-dark);
	margin-bottom: 4px;
}

.namazj-fs-text span {
	font-size: 0.85rem;
	color: var(--namazj-text-light);
}

/* Bottom Search Form */
.namazj-hero-bottom-search {
	max-width: 1280px;
	margin: 80px auto 0;
	background: linear-gradient(135deg, var(--namazj-accent) 0%, var(--namazj-secondary) 100%);
	padding: 24px;
	border-radius: 20px;
	position: relative;
	z-index: 6;
	box-shadow: 0 20px 40px rgba(41, 146, 215, 0.15);
}

.namazj-hb-form {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	background: transparent;
}

.namazj-hb-field {
	position: relative;
}
.namazj-hb-field-select {
	flex: 0 0 300px;
}
.namazj-hb-field-input {
	flex: 1;
}

/* Hero AJAX Live Search Dropdown */
.namazj-hero-ajax-results {
	position: absolute;
	top: calc(100% + 15px);
	left: 0;
	width: 100%;
	background: var(--namazj-white);
	border-radius: 16px;
	box-shadow: 0 20px 40px rgba(0,0,0,0.1);
	z-index: 1000;
	overflow: hidden;
	display: none;
}
.namazj-hero-ajax-results.is-loading,
.namazj-hero-ajax-results:not(:empty) {
	display: block;
}
.namazj-hero-ajax-results ul {
	list-style: none;
	padding: 10px;
	margin: 0;
	max-height: 350px;
	overflow-y: auto;
}
.namazj-hero-ajax-results ul::-webkit-scrollbar { width: 6px; }
.namazj-hero-ajax-results ul::-webkit-scrollbar-track { background: transparent; }
.namazj-hero-ajax-results ul::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.1); border-radius: 4px; }

.namazj-hero-ajax-results li {
	margin-bottom: 5px;
}
.namazj-hero-ajax-results a {
	display: flex;
	align-items: center;
	padding: 10px 15px;
	text-decoration: none;
	color: var(--namazj-text-dark);
	border-radius: 10px;
	transition: background 0.3s;
}
.namazj-hero-ajax-results a:hover {
	background: #f8fafc;
	color: var(--namazj-primary);
}
.namazj-hero-ajax-results img,
.namazj-hero-ajax-results .namazj-no-img {
	width: 45px;
	height: 45px;
	border-radius: 8px;
	object-fit: cover;
	margin-right: 15px;
	background: #f1f5f9;
	flex-shrink: 0;
}
.namazj-hero-ajax-results span {
	font-weight: 600;
	font-size: 1.05rem;
}
.namazj-hero-ajax-results .namazj-search-loader {
	border-color: #f1f5f9;
	border-left-color: var(--namazj-primary);
	width: 30px;
	height: 30px;
	margin: 20px auto;
}
.namazj-hero-ajax-results .namazj-no-results {
	padding: 20px;
	text-align: center;
	color: var(--namazj-text-light);
}

@media (max-width: 768px) {
	.namazj-hb-field-select,
	.namazj-hb-field-input {
		flex: 1 1 100%;
	}
}

.namazj-hb-field select,
.namazj-hb-field input {
	width: 100%;
	padding: 16px 24px;
	border: 1px solid rgba(255,255,255,0.25);
	background-color: rgba(255, 255, 255, 0.1);
	color: var(--namazj-white);
	border-radius: 12px;
	font-size: 1.05rem;
	outline: none;
	appearance: none;
	transition: all 0.3s ease;
}

.namazj-hb-field select {
	background-image: url('data:image/svg+xml;utf8,<svg width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.5L7 6.5L13 1.5" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
	background-repeat: no-repeat;
	background-position: right 24px center;
}

.namazj-hb-field select:hover,
.namazj-hb-field input:hover,
.namazj-hb-field select:focus,
.namazj-hb-field input:focus {
	background-color: rgba(255, 255, 255, 0.2);
	border-color: rgba(255,255,255,0.5);
}

.namazj-hb-field select option {
	color: var(--namazj-text-dark);
}

.namazj-hb-field input::placeholder {
	color: rgba(255,255,255,0.9);
}

.namazj-hb-field input:disabled {
	opacity: 0.6;
	cursor: not-allowed;
	background-color: rgba(0, 0, 0, 0.05);
}

.namazj-hb-submit {
	flex: 0 0 auto;
}

.namazj-hb-submit button {
	background-color: var(--namazj-white);
	color: var(--namazj-primary);
	border: none;
	padding: 16px 40px;
	border-radius: 12px;
	font-weight: 700;
	font-size: 1.05rem;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 12px;
	transition: all 0.3s ease;
	height: 100%;
	box-shadow: 0 8px 16px rgba(0,0,0,0.1);
}

.namazj-hb-submit button:hover {
	background-color: #f8f8f8;
	transform: translateY(-2px);
	box-shadow: 0 12px 20px rgba(0,0,0,0.15);
}

/* Responsive adjustments */
@media (max-width: 1024px) {
	.namazj-floating-doctors { right: 0; }
	.namazj-floating-search { left: 0; bottom: 5%; }
}

@media (max-width: 992px) {
	.namazj-hero-container {
		flex-direction: column;
		text-align: center;
	}
	
	.namazj-hero-desc {
		margin: 0 auto 40px;
	}
	
	.namazj-hero-stats-card {
		margin-top: 40px;
		width: 100%;
	}
	
	.namazj-hero-image-area {
		min-height: 400px;
		width: 100%;
		padding: 40px 0;
	}
}

@media (max-width: 768px) {
	.namazj-hero-medical {
		padding: 60px 15px;
	}

	.namazj-hero-stats-card {
		padding: 20px 15px;
	}

	.namazj-hero-stats-grid {
		display: flex;
		justify-content: space-between;
		gap: 10px;
	}
	
	.namazj-stat-item:not(:last-child)::after {
		display: none;
	}
	
	.namazj-stat-number {
		font-size: 1.4rem;
	}
	
	.namazj-stat-label {
		font-size: 0.65rem;
		letter-spacing: 0;
	}
	
	.namazj-hb-field {
		flex: 1 1 100%;
	}
	
	.namazj-hb-submit button {
		width: 100%;
		justify-content: center;
	}
	
	/* Mobile Image Area Fixes */
	.namazj-hero-image-area {
		min-height: 380px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 20px;
	}

	.namazj-animated-logo {
		width: 100%;
		max-width: 200px;
		z-index: 4;
	}

	.namazj-hero-bg-blob {
		width: 280px;
		height: 280px;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%) !important;
		border-radius: 50%;
		animation: none;
	}
	
	.namazj-floating-doctors,
	.namazj-floating-search {
		position: absolute;
		animation: none;
		box-sizing: border-box;
		margin: 0;
	}

	.namazj-floating-doctors {
		top: 0;
		right: 0;
		padding: 8px 16px;
		font-size: 0.8rem;
	}

	.namazj-floating-search {
		bottom: 10px;
		left: 0;
		flex-direction: row;
		text-align: left;
		padding: 10px 15px;
		gap: 12px;
		border-radius: 16px;
	}
	
	.namazj-fs-icon {
		width: 36px;
		height: 36px;
		border-radius: 10px;
	}
	
	.namazj-fs-text strong {
		font-size: 0.9rem;
		margin-bottom: 2px;
	}
	
	.namazj-fs-text span {
		font-size: 0.7rem;
	}
}

/* =========================================================================
   Services Glassmorphism Widget
   ========================================================================= */

.namazj-services-glass-widget {
	font-family: var(--namazj-font);
	background-color: var(--namazj-primary); /* #0A2472 */
	padding: 100px 20px 140px;
	position: relative;
	overflow: hidden;
	color: var(--namazj-white);
}

.namazj-sg-container {
	max-width: 1280px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1.5fr 1fr;
	gap: 40px;
	align-items: center;
	position: relative;
	z-index: 2;
}

/* Left Column: Intro */
.namazj-sg-intro {
	padding-right: 20px;
}

.namazj-sg-title {
	font-size: clamp(2.5rem, 4vw, 3.5rem);
	font-weight: 700;
	color: var(--namazj-white);
	line-height: 1.2;
	margin-bottom: 40px;
	letter-spacing: -0.01em;
}

.namazj-sg-btn {
	display: inline-flex;
	align-items: center;
	background-color: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.3);
	color: var(--namazj-white);
	padding: 14px 28px;
	border-radius: 50px;
	text-decoration: none;
	font-weight: 600;
	font-size: 1rem;
	transition: all 0.3s ease;
}

.namazj-sg-btn:hover {
	background-color: var(--namazj-white);
	color: var(--namazj-primary);
	box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.namazj-sg-btn-icon {
	margin-left: 10px;
	display: flex;
	align-items: center;
}

/* Middle Column: Grid */
.namazj-sg-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

/* Staggered layout effect */
.namazj-sg-card:nth-child(even) {
	transform: translateY(40px);
}

.namazj-sg-card {
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(15px);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 20px;
	padding: 30px;
	transition: transform 0.3s ease, background 0.3s ease;
	box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}

.namazj-sg-card:hover {
	background: rgba(255, 255, 255, 0.15);
	border-color: rgba(255, 255, 255, 0.4);
}

.namazj-sg-card-icon {
	background: rgba(255, 255, 255, 0.2);
	width: 60px;
	height: 60px;
	border-radius: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	font-size: 24px;
	color: var(--namazj-white);
}

.namazj-sg-card-icon svg {
	width: 30px;
	height: 30px;
	fill: currentColor;
}

.namazj-sg-card-title {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--namazj-white);
	margin-bottom: 15px;
}

.namazj-sg-card-desc {
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.7);
	line-height: 1.6;
	margin: 0;
}

/* Right Column: Doctor Image */
.namazj-sg-image-col {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: relative;
	height: 100%;
}

.namazj-sg-doctor {
	max-width: 100%;
	height: auto;
	position: relative;
	z-index: 2;
	filter: drop-shadow(0 20px 40px rgba(0,0,0,0.3));
}

/* Heartbeat Line */
.namazj-sg-heartbeat {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	z-index: 1;
	opacity: 0.8;
}

.namazj-sg-heartbeat svg {
	width: 100%;
	height: 120px;
	display: block;
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-sg-container {
		grid-template-columns: 1fr 1fr;
	}
	.namazj-sg-image-col {
		display: none; /* Hide image on smaller tablets if no space */
	}
}

@media (max-width: 768px) {
	.namazj-services-glass-widget {
		padding: 60px 15px 100px;
	}
	
	.namazj-sg-container {
		grid-template-columns: 1fr;
		gap: 50px;
		text-align: center;
	}

	.namazj-sg-intro {
		padding-right: 0;
	}

	.namazj-sg-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.namazj-sg-card:nth-child(even) {
		transform: translateY(0);
	}
	
	.namazj-sg-image-col {
		display: flex;
		margin-top: 30px;
	}
	
	.namazj-sg-doctor {
		max-width: 80%;
	}
}

/* =========================================================================
   Glass Hero Widget (Complex Hardcoded Layout)
   ========================================================================= */

.namazj-glass-hero-widget {
	font-family: var(--namazj-font);
	position: relative;
	padding: 180px 20px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 800px;
}

/* Liquid Animated Background using Logo Colors */
.namazj-gh-liquid-bg {
	background: linear-gradient(120deg, #0A2472, #184b9f, #2992D7, #0A2472);
	background-size: 300% 300%;
	animation: liquidBg 12s ease infinite;
}

@keyframes liquidBg {
	0% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
	100% { background-position: 0% 50%; }
}

/* Center Content */
.namazj-gh-center {
	position: relative;
	z-index: 10;
	text-align: center;
	max-width: 600px;
}

.namazj-gh-title {
	font-size: clamp(3rem, 5vw, 4.5rem);
	font-weight: 800;
	color: #ffffff;
	line-height: 1.15;
	margin-bottom: 24px;
	letter-spacing: -0.02em;
	text-shadow: 0 4px 20px rgba(0,0,0,0.3);
}

.namazj-gh-subtitle {
	font-size: 1.25rem;
	color: rgba(255,255,255,0.85);
	line-height: 1.6;
	margin-bottom: 40px;
}

.namazj-gh-btn {
	display: inline-block;
	background: linear-gradient(135deg, #ffffff 0%, #e0e0e0 100%);
	color: var(--namazj-primary);
	padding: 16px 40px;
	border-radius: 50px;
	font-size: 1.1rem;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 10px 25px rgba(0,0,0,0.3);
	transition: all 0.3s ease;
}

.namazj-gh-btn:hover {
	transform: translateY(-3px);
	box-shadow: 0 15px 30px rgba(0,0,0,0.4);
	background: #ffffff;
	color: var(--namazj-primary);
}

/* Floating Cards Wrapper */
.namazj-gh-cards-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 5;
}

.namazj-gh-card {
	position: absolute;
	pointer-events: auto;
	animation: floatGlass 6s ease-in-out infinite alternate;
}

@keyframes floatGlass {
	0% { transform: translateY(0) rotate(0deg); }
	100% { transform: translateY(-15px) rotate(1deg); }
}

/* Base Glassmorphism Setup for Cards */
.namazj-gh-card-inner {
	background: rgba(255, 255, 255, 0.2);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-top: 2px solid rgba(255, 255, 255, 0.7);
	border-left: 2px solid rgba(255, 255, 255, 0.7);
	box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
	color: #ffffff;
	transition: transform 0.3s ease;
	position: relative;
}
.namazj-gh-card:hover .namazj-gh-card-inner {
	transform: scale(1.05);
}

/* =======================================
   Card 1: Top Left (Sticky Note)
   ======================================= */
.namazj-gh-pos-top-left { top: 12%; left: 8%; }
.namazj-gh-sticky-note {
	width: 220px;
	height: 220px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.15);
}
.namazj-gh-sticky-paper {
	background: #b3d4ff;
	width: 85%;
	height: 85%;
	border-radius: 4px;
	padding: 20px;
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
	color: #1a365d;
	font-family: 'Comic Sans MS', 'Chalkboard SE', sans-serif;
	font-size: 0.9rem;
	line-height: 1.4;
	transform: rotate(-2deg);
}
.namazj-gh-pin {
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
	width: 12px;
	height: 12px;
	background: radial-gradient(circle at 30% 30%, #ff4d4d, #b30000);
	border-radius: 50%;
	box-shadow: 0 4px 6px rgba(0,0,0,0.3);
	z-index: 10;
}
.namazj-gh-pin::after {
	content: '';
	position: absolute;
	bottom: -8px;
	left: 5px;
	width: 2px;
	height: 10px;
	background: #aaa;
	z-index: -1;
}
.namazj-gh-glass-square {
	position: absolute;
	bottom: -20px;
	right: -20px;
	width: 100px;
	height: 100px;
	background: rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(10px);
	border-radius: 16px;
	border: 1px solid rgba(255, 255, 255, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}
.namazj-gh-check-icon {
	width: 50px;
	height: 50px;
	background: linear-gradient(135deg, #4da3ff, #1e88e5);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: inset 0 2px 4px rgba(255,255,255,0.4);
}

/* =======================================
   Card 2: Top Right (Reminders)
   ======================================= */
.namazj-gh-pos-top-right { top: 10%; right: 8%; }
.namazj-gh-reminders {
	width: 260px;
	border-radius: 16px;
	padding: 20px;
}
.namazj-gh-rem-header {
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 15px 0;
	opacity: 0.9;
}
.namazj-gh-rem-content {
	background: #ffffff;
	border-radius: 12px;
	padding: 15px;
	color: var(--namazj-text-dark);
}
.namazj-gh-rem-title {
	font-size: 0.95rem;
	font-weight: 700;
	margin: 0 0 4px 0;
}
.namazj-gh-rem-sub {
	font-size: 0.8rem;
	color: var(--namazj-text-light);
	margin: 0 0 15px 0;
}
.namazj-gh-rem-time {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #e6f0fa;
	color: #1e88e5;
	padding: 6px 12px;
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 600;
}
.namazj-gh-clock-icon {
	position: absolute;
	top: -20px;
	left: -30px;
	width: 70px;
	height: 70px;
	background: #ffffff;
	border-radius: 16px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid rgba(255,255,255,0.8);
}
.namazj-gh-clock-face {
	width: 40px;
	height: 40px;
	border: 3px solid var(--namazj-text-dark);
	border-radius: 50%;
	position: relative;
}
.namazj-gh-clock-hand.red {
	position: absolute;
	bottom: 50%;
	left: 50%;
	width: 2px;
	height: 12px;
	background: red;
	transform-origin: bottom;
	transform: rotate(45deg);
}
.namazj-gh-clock-hand.black {
	position: absolute;
	bottom: 50%;
	left: 50%;
	width: 2px;
	height: 16px;
	background: var(--namazj-text-dark);
	transform-origin: bottom;
	transform: rotate(330deg);
}

/* =======================================
   Card 3 & 4: Folders (Tasks & Integrations)
   ======================================= */
.namazj-gh-pos-bottom-left { bottom: 10%; left: 8%; }
.namazj-gh-pos-bottom-right { bottom: 10%; right: 5%; }

.namazj-gh-folder {
	width: 320px;
	border-radius: 0 16px 16px 16px;
	padding: 25px;
	position: relative;
}
.namazj-gh-folder-tab {
	position: absolute;
	top: -15px;
	left: -1px;
	width: 100px;
	height: 16px;
	background: rgba(255, 255, 255, 0.2);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border-top: 2px solid rgba(255,255,255,0.7);
	border-left: 2px solid rgba(255,255,255,0.7);
	border-right: 1px solid rgba(255,255,255,0.4);
	border-radius: 12px 12px 0 0;
}
.namazj-gh-folder-title {
	font-size: 1.1rem;
	font-weight: 700;
	margin: 0 0 20px 0;
	opacity: 0.95;
}

/* Tasks specific */
.namazj-gh-task-row {
	background: #ffffff;
	border-radius: 12px;
	padding: 12px 15px;
	margin-bottom: 12px;
	color: var(--namazj-text-dark);
}
.namazj-gh-task-header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 15px;
}
.namazj-gh-task-header span {
	flex: 1;
	font-size: 0.9rem;
	font-weight: 600;
}
.namazj-gh-task-icon {
	width: 24px;
	height: 24px;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.namazj-gh-task-icon.blue { background: #4da3ff; }
.namazj-gh-task-icon.green { background: #34d399; }
.namazj-gh-avatars {
	display: flex;
}
.namazj-gh-avatar {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #ccc;
	border: 2px solid #fff;
	margin-left: -8px;
}
.namazj-gh-avatar.a1 { background: #fca5a5; }
.namazj-gh-avatar.a2 { background: #93c5fd; }
.namazj-gh-avatar.a3 { background: #fcd34d; }
.namazj-gh-avatar.a4 { background: #c4b5fd; }

.namazj-gh-task-progress {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 0.75rem;
	color: var(--namazj-text-light);
}
.namazj-gh-progress-bar {
	flex: 1;
	height: 6px;
	background: #e2e8f0;
	border-radius: 3px;
	overflow: hidden;
}
.namazj-gh-progress-fill.blue {
	height: 100%;
	background: #3b82f6;
	border-radius: 3px;
}
.namazj-gh-task-pct {
	font-weight: 700;
	color: var(--namazj-text-dark);
}

/* Integrations specific */
.namazj-gh-integrations {
	display: flex;
	gap: 10px;
	background: transparent;
}
.namazj-gh-int-icon {
	width: 60px;
	height: 60px;
	background: #ffffff;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

/* Responsive adjustments */
@media (max-width: 1024px) {
	.namazj-gh-pos-top-left { left: 2%; top: 5%; }
	.namazj-gh-pos-top-right { right: 2%; top: 5%; }
	.namazj-gh-pos-bottom-left { left: 2%; bottom: 5%; }
	.namazj-gh-pos-bottom-right { right: 2%; bottom: 5%; }
	.namazj-gh-folder { width: 280px; }
}

@media (max-width: 768px) {
	.namazj-glass-hero-widget {
		padding: 100px 20px;
		flex-direction: column;
		min-height: auto;
	}
	
	.namazj-gh-cards-wrapper {
		position: relative;
		margin-top: 60px;
		height: auto;
		display: grid;
		grid-template-columns: 1fr;
		gap: 40px;
		pointer-events: auto;
		justify-items: center;
	}

	.namazj-gh-card {
		position: relative;
		top: auto !important;
		bottom: auto !important;
		left: auto !important;
		right: auto !important;
		animation: none;
	}

	.namazj-gh-card-inner {
		transform: none !important;
	}
}

/* =========================================================================
   App Features Grid Widget
   ========================================================================= */

.namazj-app-features-widget {
	font-family: var(--namazj-font);
	padding: 100px 20px;
	background: linear-gradient(120deg, #ffffff, #e6f0fa, #2992D7, #ffffff);
	background-size: 300% 300%;
	animation: liquidBgLight 15s ease infinite;
}

@keyframes liquidBgLight {
	0% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
	100% { background-position: 0% 50%; }
}

.namazj-af-container {
	max-width: 1200px;
	margin: 0 auto;
}

/* Intro Section */
.namazj-af-intro {
	margin-bottom: 60px;
}
.namazj-af-title {
	font-size: clamp(2.5rem, 4vw, 3.5rem);
	font-weight: 800;
	color: var(--namazj-primary); /* #0A2472 */
	line-height: 1.1;
	margin-bottom: 20px;
}
.namazj-af-desc {
	font-size: 1.1rem;
	color: var(--namazj-text-light);
	max-width: 600px;
	line-height: 1.6;
}

/* Main Grid Layout */
.namazj-af-grid {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 40px;
	align-items: start;
}

/* Float Animation */
.namazj-float-anim {
	animation: floatGlass 6s ease-in-out infinite alternate;
}

/* Left Phone Mockup */
.namazj-af-phone {
	width: 100%;
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(10, 36, 114, 0.1);
	background: #f8fbff;
}
.namazj-af-phone img {
	width: 100%;
	height: auto;
	display: block;
}

/* Right Side Cards Grid */
.namazj-af-right-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 25px;
}

/* Base Card Style */
.namazj-af-card {
	background: #ffffff;
	border-radius: 20px;
	padding: 25px;
	box-shadow: 0 10px 30px rgba(10, 36, 114, 0.05);
	border: 1px solid rgba(41, 146, 215, 0.1);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.namazj-af-card:hover {
	box-shadow: 0 15px 40px rgba(10, 36, 114, 0.1);
	transform: translateY(-5px);
}

/* Card Header (Icon + Text side-by-side) */
.namazj-af-card-header {
	display: flex;
	align-items: flex-start;
	gap: 15px;
}

/* Icon Boxes */
.namazj-af-icon-box {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.namazj-af-icon-box.bg-blue { background: #e6f0fa; color: #2992D7; }
.namazj-af-icon-box.bg-dark { background: #f0f2f7; color: #0A2472; }
.namazj-af-icon-box.bg-orange { background: #fff0e6; color: #f97316; }
.namazj-af-icon-box svg, .namazj-af-icon-box i {
	font-size: 20px;
	width: 20px;
	height: 20px;
	fill: currentColor;
}

/* Card Content Text */
.namazj-af-card-content h4 {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--namazj-primary);
	margin: 0 0 8px 0;
}
.namazj-af-card-content p {
	font-size: 0.9rem;
	color: var(--namazj-text-light);
	margin: 0;
	line-height: 1.5;
}

/* Wide Stats Card (Spans across columns or takes specific space depending on screen) */
.namazj-af-wide-card {
	/* To match the image layout, this can just be a normal grid item or span depending on row configuration */
}
.namazj-af-stats-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.namazj-af-stat {
	flex: 1;
}
.namazj-af-stat h5 {
	font-size: 0.9rem;
	color: var(--namazj-text-light);
	font-weight: 600;
	margin: 0 0 10px 0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}
.namazj-af-stat-num {
	font-size: 2rem;
	font-weight: 800;
	line-height: 1;
}
.text-blue { color: #2992D7; }
.text-dark { color: #0A2472; }

/* Tall Features List Card */
.namazj-af-tall-card {
	grid-row: span 2; /* To make it tall */
}
.namazj-af-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.namazj-af-list-item {
	display: flex;
	align-items: flex-start;
	gap: 15px;
}

/* Responsive Layout Overrides */
@media (min-width: 1025px) {
	/* Creating the exact masonry-like overlap from the image */
	.namazj-af-right-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-areas: 
			"c1 c2"
			"c3 c4";
	}
	/* Targeting cards by nth-child since Elementor repeater outputs them sequentially */
	.namazj-af-right-grid > .namazj-af-item:nth-child(1) { grid-area: c1; }
	.namazj-af-right-grid > .namazj-af-item:nth-child(2) { grid-area: c2; }
	.namazj-af-right-grid > .namazj-af-item:nth-child(3) { grid-area: c3; }
	.namazj-af-right-grid > .namazj-af-item:nth-child(4) { grid-area: c4; grid-row: span 2; }
}

@media (max-width: 1024px) {
	.namazj-af-grid {
		grid-template-columns: 1fr;
	}
	.namazj-af-phone {
		max-width: 400px;
		margin: 0 auto 40px;
	}
	.namazj-af-right-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 768px) {
	.namazj-app-features-widget {
		padding: 60px 15px;
	}
	.namazj-af-right-grid {
		grid-template-columns: 1fr;
	}
	.namazj-af-stats-row {
		flex-direction: column;
		gap: 20px;
		align-items: flex-start;
	}
}

/* =========================================================================
   Glass Grid Widget
   ========================================================================= */

/* Mesh Gradient Background */
.namazj-glass-grid-widget {
	font-family: var(--namazj-font);
	padding: 120px 20px;
	position: relative;
	/* Soft, colorful mesh gradient blending logo colors with purples and greens */
	background: 
		radial-gradient(circle at 15% 50%, rgba(10, 36, 114, 0.4), transparent 50%),
		radial-gradient(circle at 85% 30%, rgba(41, 146, 215, 0.5), transparent 50%),
		radial-gradient(circle at 90% 80%, rgba(107, 70, 193, 0.4), transparent 50%),
		radial-gradient(circle at 10% 90%, rgba(46, 204, 113, 0.3), transparent 50%);
	background-color: #f0f4fa;
	background-size: 200% 200%;
	animation: meshPulse 20s ease infinite alternate;
	overflow: hidden;
}

@keyframes meshPulse {
	0% { background-position: 0% 0%; }
	50% { background-position: 100% 100%; }
	100% { background-position: 0% 100%; }
}

.namazj-gg-container {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	position: relative;
	z-index: 2;
}

/* Glassmorphism Card */
.namazj-gg-card {
	background: rgba(255, 255, 255, 0.4);
	backdrop-filter: blur(25px);
	-webkit-backdrop-filter: blur(25px);
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 24px;
	padding: 30px;
	position: relative;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
	transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s ease;
}
.namazj-gg-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.1);
	background: rgba(255, 255, 255, 0.5);
}

/* Absolute Heart/Pin Icon */
.namazj-gg-heart-icon {
	position: absolute;
	top: 20px;
	right: 20px;
	color: #a0aec0;
	transition: color 0.3s ease;
	cursor: pointer;
}
.namazj-gg-card:hover .namazj-gg-heart-icon {
	color: #f56565;
}

/* Top Icons Container */
.namazj-gg-icons {
	display: flex;
	gap: 15px;
	margin-bottom: 25px;
}
.namazj-gg-icon-box {
	width: 45px;
	height: 45px;
	background: #ffffff;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
	color: var(--namazj-primary); /* Default color if none specified inline */
}
.namazj-gg-icon-box svg, .namazj-gg-icon-box i {
	width: 20px;
	height: 20px;
	font-size: 20px;
	fill: currentColor;
}

/* Content */
.namazj-gg-title {
	font-size: 1.4rem;
	font-weight: 800;
	color: #1a202c;
	margin-bottom: 12px;
	letter-spacing: -0.02em;
}
.namazj-gg-desc {
	font-size: 0.95rem;
	color: #4a5568;
	line-height: 1.6;
	margin-bottom: 40px; /* Space for absolute badge */
}

/* Bottom Badge */
.namazj-gg-badge {
	position: absolute;
	bottom: 25px;
	right: 25px;
	background: rgba(0, 0, 0, 0.3);
	backdrop-filter: blur(5px);
	color: #ffffff;
	padding: 5px 12px;
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 6px;
	letter-spacing: 0.5px;
}
.namazj-gg-badge-dot {
	width: 6px;
	height: 6px;
	background: #ffffff;
	border-radius: 50%;
	display: block;
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-gg-container {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.namazj-glass-grid-widget {
		padding: 80px 15px;
	}
	.namazj-gg-container {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

/* =========================================================================
   Planner Widget
   ========================================================================= */

.namazj-planner-widget {
	font-family: var(--namazj-font);
	padding: 80px 20px;
	background: #e8f0fe; /* Soft light blue background behind the planner */
	display: flex;
	justify-content: center;
}

.namazj-pw-container {
	width: 100%;
	max-width: 900px;
	background: #ffffff;
	border-radius: 20px;
	box-shadow: 0 25px 50px rgba(10, 36, 114, 0.08);
	position: relative;
	padding: 60px 40px 50px 40px;
	margin-top: 20px; /* Space for rings */
}

/* Spiral Notebook Rings */
.namazj-pw-rings {
	position: absolute;
	top: -20px;
	left: 0;
	width: 100%;
	height: 40px;
	/* Create repeating spiral holes */
	background-image: 
		radial-gradient(circle at center, #d0d9eb 35%, transparent 36%),
		radial-gradient(circle at center, #ffffff 45%, transparent 46%);
	background-size: 50px 40px;
	background-position: center top;
	z-index: 10;
}
/* White overlay strip behind rings to make them look like cutouts */
.namazj-pw-rings::before {
	content: '';
	position: absolute;
	top: 15px;
	left: 20px;
	right: 20px;
	height: 10px;
	background: #ffffff;
	z-index: -1;
	border-radius: 10px;
	box-shadow: inset 0 2px 4px rgba(0,0,0,0.05);
}

/* Header Section */
.namazj-pw-header {
	text-align: center;
	margin-bottom: 40px;
}

.namazj-pw-title {
	font-size: 2.5rem;
	font-weight: 800;
	color: #1a202c;
	margin-bottom: 30px;
}

/* Months Row */
.namazj-pw-months {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #f8fafc;
	padding: 5px;
	border-radius: 40px;
	overflow-x: auto;
	/* Hide scrollbar */
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.namazj-pw-months::-webkit-scrollbar {
	display: none;
}

.namazj-pw-month-pill {
	padding: 10px 20px;
	border-radius: 30px;
	font-size: 0.95rem;
	font-weight: 600;
	color: #a0aec0;
	cursor: pointer;
	transition: all 0.3s ease;
	white-space: nowrap;
}
.namazj-pw-month-pill.active {
	background: #ffffff;
	color: #2992D7;
	box-shadow: 0 4px 10px rgba(41, 146, 215, 0.15);
}

/* Cards Grid */
.namazj-pw-cards-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 25px;
}

/* Individual Blue Card */
.namazj-pw-card {
	background: #dbeafe; /* Light blue card bg */
	border-radius: 16px;
	padding: 25px 30px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.namazj-pw-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(41, 146, 215, 0.15);
}

.namazj-pw-card-header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 15px;
}

.namazj-pw-icon-box {
	width: 32px;
	height: 32px;
	background: #ffffff;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #1a202c;
}
.namazj-pw-icon-box svg, .namazj-pw-icon-box i {
	width: 14px;
	height: 14px;
	font-size: 14px;
	fill: currentColor;
}

.namazj-pw-card-title {
	font-size: 1.4rem;
	font-weight: 700;
	color: #1a202c;
	margin: 0;
}

/* Divider Line */
.namazj-pw-card-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.6);
	margin-bottom: 15px;
}

.namazj-pw-card-body p {
	font-size: 0.95rem;
	color: #4a5568;
	line-height: 1.5;
	margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
	.namazj-pw-container {
		padding: 50px 20px 30px 20px;
	}
	.namazj-pw-title {
		font-size: 2rem;
	}
	.namazj-pw-cards-grid {
		grid-template-columns: 1fr;
	}
	.namazj-pw-months {
		justify-content: flex-start;
		gap: 5px;
	}
}

/* =========================================================================
   Blogs Carousel Widget
   ========================================================================= */

.namazj-blogs-carousel-widget {
	font-family: var(--namazj-font);
	padding: 80px 20px;
	background: #f8f9fa; /* Light grey background matching image */
}

.namazj-bc-container {
	max-width: 1200px;
	margin: 0 auto;
}

/* Header Row */
.namazj-bc-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 40px;
	gap: 40px;
}
.namazj-bc-title {
	font-size: 2.2rem;
	font-weight: 700;
	color: #1a202c;
	margin: 0;
	flex: 1;
}
.namazj-bc-desc {
	font-size: 1rem;
	color: #4a5568;
	margin: 0;
	max-width: 450px;
	flex: 1;
	line-height: 1.6;
}

/* Slider Wrapper */
.namazj-bc-slider-wrapper {
	margin-bottom: 40px;
}

.namazj-bc-slider {
	display: flex;
	gap: 20px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	/* Hide scrollbar */
	-ms-overflow-style: none;
	scrollbar-width: none;
	padding-bottom: 20px; /* Space for hover shadow */
}
.namazj-bc-slider::-webkit-scrollbar {
	display: none;
}

/* Individual Slide / Card */
.namazj-bc-slide {
	flex: 0 0 350px; /* Fixed width for cards */
	scroll-snap-align: start;
	text-decoration: none;
	display: block;
}

.namazj-bc-card {
	position: relative;
	height: 350px;
	border-radius: 16px;
	overflow: hidden;
	background-size: cover;
	background-position: center;
	background-color: #2d3748; /* Fallback */
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 20px;
}
.namazj-bc-slide:hover .namazj-bc-card {
	transform: translateY(-8px);
	box-shadow: 0 15px 30px rgba(0,0,0,0.15);
}

/* Dark Gradient Overlay for text readability */
.namazj-bc-card-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60%;
	background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
	z-index: 1;
}

/* Top Pill (Category) */
.namazj-bc-pill {
	position: relative;
	z-index: 2;
	align-self: flex-end;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(4px);
	color: #1a202c;
	font-size: 0.75rem;
	font-weight: 600;
	padding: 6px 14px;
	border-radius: 20px;
}

/* Bottom Content */
.namazj-bc-card-content {
	position: relative;
	z-index: 2;
	color: #ffffff;
}
.namazj-bc-card-title {
	font-size: 1.2rem;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 8px 0;
}
.namazj-bc-card-meta {
	font-size: 0.8rem;
	color: rgba(255, 255, 255, 0.8);
	margin-bottom: 12px;
}
.namazj-bc-card-location {
	font-size: 0.85rem;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 6px;
	color: #ffffff;
}
.namazj-bc-card-location svg {
	width: 14px;
	height: 14px;
	color: #f56565; /* Red pin color */
}

/* Footer Row */
.namazj-bc-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* Button */
.namazj-bc-btn {
	background: #1e293b;
	color: #ffffff;
	padding: 12px 28px;
	border-radius: 30px;
	font-size: 0.95rem;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.3s ease;
}
.namazj-bc-btn:hover {
	background: var(--namazj-primary); /* #0A2472 */
	color: #ffffff;
}

/* Navigation Arrows */
.namazj-bc-arrows {
	display: flex;
	gap: 15px;
}
.namazj-bc-arrow {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: #1a202c;
	transition: all 0.3s ease;
}
.namazj-bc-arrow:hover {
	background: var(--namazj-primary);
	color: #ffffff;
	border-color: var(--namazj-primary);
}
.namazj-bc-arrow svg {
	width: 20px;
	height: 20px;
}

/* Responsive */
@media (max-width: 768px) {
	.namazj-bc-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 15px;
	}
	.namazj-bc-desc {
		max-width: 100%;
	}
}

/* =========================================================================
   Capsule Header Widget
   ========================================================================= */

.namazj-header-wrapper {
	font-family: var(--namazj-font);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Top Bar - Initial State */
.namazj-topbar {
	background: var(--namazj-primary); /* Dark Logo Color #0A2472 */
	color: rgba(255, 255, 255, 0.8);
	font-size: 0.85rem;
	height: 40px;
	overflow: hidden;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.namazj-topbar-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.namazj-topbar-left {
	display: flex;
	gap: 20px;
}
.namazj-tb-item {
	display: flex;
	align-items: center;
	gap: 8px;
}
.namazj-tb-item svg {
	width: 14px;
	height: 14px;
	color: #2992D7;
}

.namazj-topbar-right {
	display: flex;
	align-items: center;
	gap: 15px;
}
.namazj-tb-socials {
	display: flex;
	gap: 10px;
}
.namazj-tb-socials a {
	color: #ffffff;
	transition: color 0.3s ease;
}
.namazj-tb-socials a:hover {
	color: #2992D7;
}
.namazj-tb-socials svg, .namazj-tb-socials i {
	width: 14px;
	height: 14px;
	font-size: 14px;
}

/* Main Header - Initial State */
.namazj-main-header {
	background: rgba(255, 255, 255, 0.5);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.3);
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	box-shadow: 0 4px 30px rgba(0,0,0,0.05);
	margin: 0;
	border-radius: 0;
}
.namazj-mh-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 15px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.namazj-mh-logo img {
	max-height: 40px;
	width: auto;
}

/* Navigation Links */
.namazj-mh-nav .namazj-nav-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 25px;
}
.namazj-mh-nav .namazj-nav-menu li a {
	text-decoration: none;
	color: #4a5568;
	font-weight: 600;
	font-size: 0.95rem;
	transition: color 0.3s ease;
}
.namazj-mh-nav .namazj-nav-menu li a:hover {
	color: var(--namazj-primary);
}

/* Header Actions (Right) */
.namazj-mh-actions {
	display: flex;
	align-items: center;
	gap: 20px;
}
.namazj-mh-icon-btn {
	background: transparent;
	border: none;
	color: #4a5568;
	cursor: pointer;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
	padding: 0;
	text-decoration: none;
}
.namazj-mh-icon-btn:hover {
	background: #0A2472;
	color: #ffffff;
	transform: scale(1.05);
}
.namazj-mobile-bottom-nav {
	display: none;
}
@media (max-width: 1024px) {
	.namazj-mobile-bottom-nav {
		display: flex;
		justify-content: space-around;
		align-items: center;
		position: fixed;
		bottom: 20px;
		left: 20px;
		right: 20px;
		background: rgba(21, 65, 148, 0.95); /* #154194 with slight transparency */
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
		border-radius: 40px;
		box-shadow: 0 15px 35px rgba(21, 65, 148, 0.4);
		border: 1px solid rgba(255, 255, 255, 0.15);
		padding: 12px 20px;
		z-index: 99999;
	}
	.namazj-mbn-item {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		color: rgba(255, 255, 255, 0.7);
		text-decoration: none;
		font-size: 0.75rem;
		font-weight: 500;
		gap: 5px;
		transition: all 0.3s ease;
	}
	.namazj-mbn-item svg {
		width: 24px;
		height: 24px;
	}
	.namazj-mbn-item:hover, .namazj-mbn-item:active {
		color: #ffffff;
		transform: translateY(-2px);
	}
	.namazj-mh-icon-btn {
		display: none;
	}
}
.namazj-mh-icon-btn svg {
	width: 24px !important;
	height: 24px !important;
	stroke-width: 2px !important;
	display: block;
	flex-shrink: 0;
}

.namazj-mh-cta {
	background: #e53e3e; /* Red CTA like image */
	color: #ffffff;
	padding: 10px 24px;
	border-radius: 30px;
	font-weight: 600;
	font-size: 0.95rem;
	text-decoration: none;
	transition: background 0.3s ease, transform 0.3s ease;
}
.namazj-mh-cta:hover {
	background: #c53030;
	color: #ffffff;
	transform: translateY(-2px);
}

/* =========================================
   SCROLLED STATE (THE CAPSULE EFFECT)
   ========================================= */
.namazj-header-wrapper.is-scrolled {
	/* Slide up to hide top bar if needed, or just let topbar height shrink */
	padding-top: 15px; /* Space from top of screen */
}

/* Hide Top Bar smoothly */
.namazj-header-wrapper.is-scrolled .namazj-topbar {
	height: 0;
	opacity: 0;
}

/* Transform Main Header into Capsule */
.namazj-header-wrapper.is-scrolled .namazj-main-header {
	max-width: 1000px;
	margin: 0 auto;
	border-radius: 50px;
	background: rgba(255, 255, 255, 0.5);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	box-shadow: 0 15px 40px rgba(10, 36, 114, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.4);
}

.namazj-header-wrapper.is-scrolled .namazj-mh-inner {
	padding: 10px 30px; /* Tighter padding for capsule */
}

/* Responsive Hide for Mobile */
@media (max-width: 992px) {
	.namazj-mh-nav {
		display: none; /* Hide nav on mobile for simplicity in this widget */
	}
	.namazj-topbar-left {
		display: none;
	}
	.namazj-header-wrapper.is-scrolled .namazj-main-header {
		max-width: 95%;
	}
}
/* =========================================
   SEARCH OVERLAY POPUP
   ========================================= */
.namazj-search-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(10, 36, 114, 0.95); /* Namazj Dark Blue */
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.namazj-search-overlay.is-active {
	opacity: 1;
	visibility: visible;
}
.namazj-search-close {
	position: absolute;
	top: 40px;
	right: 40px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: rgba(255,255,255,0.1);
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
}
.namazj-search-close:hover {
	background: #e53e3e;
	transform: rotate(90deg);
}
.namazj-search-close svg {
	width: 24px;
	height: 24px;
}
.namazj-search-content {
	width: 100%;
	max-width: 800px;
	padding: 0 20px;
	transform: translateY(30px);
	transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.namazj-search-overlay.is-active .namazj-search-content {
	transform: translateY(0);
}
.namazj-search-form {
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
}
.namazj-search-input {
	width: 100%;
	background: transparent;
	border: none;
	border-bottom: 2px solid rgba(255,255,255,0.3);
	color: #ffffff;
	font-size: 3rem;
	font-weight: 700;
	padding: 20px 60px 20px 0;
	outline: none;
	transition: border-color 0.3s ease;
}
.namazj-search-input::placeholder {
	color: rgba(255,255,255,0.3);
}
.namazj-search-input:focus {
	border-color: #2992D7; /* Namazj Bright Blue */
}
.namazj-search-submit {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: transparent;
	border: none;
	color: #ffffff;
	cursor: pointer;
	padding: 10px;
}
.namazj-search-submit svg {
	width: 40px;
	height: 40px;
	transition: color 0.3s ease;
}
.namazj-search-submit:hover svg {
	color: #2992D7;
}

@media (max-width: 768px) {
	.namazj-search-input { font-size: 2rem; }
	.namazj-search-submit svg { width: 30px; height: 30px; }
	.namazj-search-close { top: 20px; right: 20px; width: 40px; height: 40px; }
}

/* AJAX Search Results */
.namazj-ajax-search-results {
	margin-top: 30px;
	width: 100%;
}
.namazj-ajax-search-results ul {
	list-style: none;
	padding: 0;
	margin: 0;
	max-height: 50vh;
	overflow-y: auto;
}
.namazj-ajax-search-results ul::-webkit-scrollbar {
	width: 8px;
}
.namazj-ajax-search-results ul::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.05);
	border-radius: 4px;
}
.namazj-ajax-search-results ul::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.2);
	border-radius: 4px;
}
.namazj-ajax-search-results li {
	margin-bottom: 15px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: background 0.3s ease, transform 0.3s ease, border-color 0.3s;
}
.namazj-ajax-search-results li:hover {
	background: rgba(255, 255, 255, 0.15);
	border-color: #2992D7;
	transform: translateY(-2px);
}
.namazj-ajax-search-results a {
	display: flex;
	align-items: center;
	padding: 15px;
	text-decoration: none;
	color: #ffffff;
}
.namazj-ajax-search-results img,
.namazj-no-img {
	width: 70px;
	height: 70px;
	object-fit: cover;
	border-radius: 12px;
	margin-right: 20px;
	background: rgba(255, 255, 255, 0.1);
	flex-shrink: 0;
}
.namazj-ajax-search-results span {
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.4;
}
.namazj-no-results {
	color: rgba(255, 255, 255, 0.6);
	font-size: 1.2rem;
	text-align: center;
	padding: 30px;
}
.namazj-search-loader {
	width: 50px;
	height: 50px;
	margin: 40px auto;
	border: 4px solid rgba(255, 255, 255, 0.1);
	border-left-color: #2992D7;
	border-radius: 50%;
	animation: namazj-spin 1s linear infinite;
}
@keyframes namazj-spin {
	to { transform: rotate(360deg); }
}

/* =========================================================================
   Footer Widget
   ========================================================================= */

.namazj-footer-widget {
	font-family: var(--namazj-font);
	background: #f8f9fa; /* Assuming body is light, this is outer padding area */
	padding: 40px 20px;
}

/* Outer Capsule */
.namazj-fw-container {
	max-width: 1300px;
	margin: 0 auto;
	background: var(--namazj-secondary); /* #2992D7 Blue */
	border-radius: 40px;
	overflow: hidden;
	box-shadow: 0 0 0 10px #ffffff; /* Simulates the white padding/border in image */
	display: flex;
	flex-direction: column;
}

/* Main Two-Column Layout */
.namazj-fw-main {
	display: flex;
	flex-wrap: wrap;
	padding: 60px;
	gap: 60px;
}

/* --- Left Column --- */
.namazj-fw-left {
	flex: 1;
	min-width: 300px;
	max-width: 400px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.namazj-fw-logo {
	max-width: 200px;
	margin-bottom: 25px;
}

.namazj-fw-desc {
	color: #ffffff;
	font-size: 1.1rem;
	line-height: 1.5;
	margin-bottom: 30px;
}

.namazj-fw-cta {
	background: #ffffff;
	color: var(--namazj-primary); /* Dark text */
	padding: 14px 28px;
	border-radius: 30px;
	font-weight: 700;
	font-size: 1rem;
	text-decoration: none;
	margin-bottom: 40px;
	transition: background 0.3s ease, transform 0.3s ease;
}
.namazj-fw-cta:hover {
	background: #f1f5f9;
	transform: translateY(-2px);
}

.namazj-fw-socials {
	display: flex;
	gap: 15px;
}
.namazj-fw-social-icon {
	width: 45px;
	height: 45px;
	background: #ffffff;
	color: var(--namazj-secondary);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1rem;
	transition: all 0.3s ease;
	text-decoration: none;
}
.namazj-fw-social-icon:hover {
	background: var(--namazj-primary);
	color: #ffffff;
	transform: translateY(-3px);
}

/* --- Right Column --- */
.namazj-fw-right {
	flex: 2;
	min-width: 350px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

/* Menus Grid */
.namazj-fw-menus {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-bottom: 50px;
}

.namazj-fw-menu-col ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.namazj-fw-menu-col li {
	margin-bottom: 12px;
}
.namazj-fw-menu-col li a {
	color: rgba(255, 255, 255, 0.9);
	text-decoration: none;
	font-size: 0.95rem;
	transition: color 0.3s ease;
}
.namazj-fw-menu-col li a:hover {
	color: #ffffff;
	text-decoration: underline;
}

/* Newsletter Area */
.namazj-fw-newsletter {
	max-width: 500px;
}
.namazj-fw-nl-title {
	color: #ffffff;
	font-size: 1.1rem;
	font-weight: 700;
	margin-bottom: 15px;
}

/* Inline Newsletter Form */
.namazj-fw-nl-form {
	position: relative;
	display: flex;
	align-items: center;
}
.namazj-fw-nl-input {
	width: 100%;
	padding: 16px 140px 16px 20px; /* Space for button on right */
	border-radius: 40px;
	border: 1px solid rgba(255, 255, 255, 0.4);
	background: transparent;
	color: #ffffff;
	font-size: 0.95rem;
	outline: none;
	transition: border-color 0.3s ease;
}
.namazj-fw-nl-input::placeholder {
	color: rgba(255, 255, 255, 0.6);
}
.namazj-fw-nl-input:focus {
	border-color: #ffffff;
}

.namazj-fw-nl-btn {
	position: absolute;
	right: 6px;
	top: 6px;
	bottom: 6px;
	background: #ffffff;
	color: var(--namazj-primary);
	border: none;
	border-radius: 30px;
	padding: 0 25px;
	font-weight: 700;
	font-size: 0.95rem;
	cursor: pointer;
	transition: background 0.3s ease;
}
.namazj-fw-nl-btn:hover {
	background: #f1f5f9;
}

/* --- Bottom Bar --- */
.namazj-fw-bottom {
	background: var(--namazj-primary); /* #0A2472 Dark Blue */
	padding: 20px 60px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: rgba(255, 255, 255, 0.7);
	font-size: 0.85rem;
}

/* Responsive Styles */
@media (max-width: 992px) {
	.namazj-fw-main {
		flex-direction: column;
		padding: 40px;
		gap: 40px;
	}
	.namazj-fw-menus {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.namazj-fw-main {
		padding: 30px 20px;
	}
	.namazj-fw-menus {
		grid-template-columns: 1fr;
	}
	.namazj-fw-bottom {
		flex-direction: column;
		padding: 20px;
		text-align: center;
		gap: 10px;
	}
	.namazj-fw-nl-input {
		padding-right: 120px;
	}
	.namazj-fw-nl-btn {
		padding: 0 15px;
	}
}

/* =========================================================================
   Specialties Fan Widget
   ========================================================================= */

.namazj-specialties-fan {
	font-family: var(--namazj-font);
	background: #0f172a; /* Dark background */
	position: relative;
	overflow: hidden;
	padding: 80px 20px 0;
	color: #ffffff;
	border-radius: 40px;
}

/* Subtle Grid Background */
.namazj-sf-bg-grid {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background-size: 50px 50px;
	background-image: 
		linear-gradient(to right, rgba(255,255,255,0.03) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(255,255,255,0.03) 1px, transparent 1px);
	z-index: 1;
	pointer-events: none;
}

/* Header Section */
.namazj-sf-header {
	position: relative;
	z-index: 10;
	text-align: center;
	max-width: 600px;
	margin: 0 auto 60px;
}

.namazj-sf-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: rgba(255, 255, 255, 0.05);
	color: #fcd34d; /* Yellow text */
	padding: 6px 14px;
	border-radius: 20px;
	font-size: 0.85rem;
	font-weight: 600;
	margin-bottom: 20px;
}
.namazj-sf-badge svg {
	color: #fcd34d;
}

.namazj-sf-title {
	font-size: 3.5rem;
	font-weight: 800;
	line-height: 1.1;
	margin-bottom: 20px;
	color: #ffffff;
}

.namazj-sf-desc {
	font-size: 1.05rem;
	color: rgba(255, 255, 255, 0.6);
	line-height: 1.6;
}

/* Fan Container */
.namazj-sf-cards-container {
	position: relative;
	height: 460px; /* Space for the cards */
	max-width: 1100px;
	margin: 0 auto;
	z-index: 10;
	perspective: 1000px;
}

/* Individual Card Base */
.namazj-sf-card {
	position: absolute;
	bottom: -10px; /* Tuck slightly under the edge */
	left: 50%;
	width: 260px;
	height: 380px;
	margin-left: -130px; /* Center horizontally */
	border-radius: 30px;
	padding: 25px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 -10px 40px rgba(0,0,0,0.4);
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transform-origin: bottom center;
	color: #ffffff;
	border: 1px solid rgba(255,255,255,0.1);
}

.namazj-sf-card:hover {
	transform: translateY(-20px) scale(1.05) !important;
	z-index: 20 !important;
	box-shadow: 0 -20px 50px rgba(0,0,0,0.6);
}

/* Content Layout inside Card */
.namazj-sf-card-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	z-index: 2;
}

.namazj-sf-card-title {
	font-size: 1.5rem;
	font-weight: 800;
	margin: 0 0 5px 0;
	color: #ffffff;
}
.namazj-sf-card-sub {
	font-size: 0.9rem;
	opacity: 0.8;
}

.namazj-sf-card-rating {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: rgba(0,0,0,0.2);
	padding: 4px 10px;
	border-radius: 12px;
	font-size: 0.85rem;
	font-weight: 700;
	backdrop-filter: blur(5px);
	border: 1px solid rgba(255,255,255,0.1);
}

/* Pop-out Image */
.namazj-sf-card-image {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	z-index: 1;
}
.namazj-sf-card-image img {
	width: 120%;
	max-width: none;
	height: auto;
	margin-bottom: -10%; /* Protrude from bottom */
	filter: drop-shadow(0 -10px 15px rgba(0,0,0,0.3));
	transition: transform 0.5s ease;
	mix-blend-mode: multiply; /* Removes the solid white background generated by AI */
}
.namazj-sf-card:hover .namazj-sf-card-image img {
	transform: translateY(-10px) scale(1.05);
}


/* --- Specific Card Positioning for the Fan Effect --- */

/* Center Card (Card 3) */
.namazj-sf-card-3 {
	z-index: 5;
	transform: rotate(0deg) translateY(0);
	height: 420px; /* Slightly taller */
	bottom: 0;
}

/* Inner Left (Card 2) */
.namazj-sf-card-2 {
	z-index: 4;
	transform: rotate(-12deg) translateX(-180px) translateY(-10px);
}

/* Inner Right (Card 4) */
.namazj-sf-card-4 {
	z-index: 4;
	transform: rotate(12deg) translateX(180px) translateY(-10px);
}

/* Outer Left (Card 1) */
.namazj-sf-card-1 {
	z-index: 3;
	transform: rotate(-24deg) translateX(-360px) translateY(10px);
	height: 340px;
}

/* Outer Right (Card 5) */
.namazj-sf-card-5 {
	z-index: 3;
	transform: rotate(24deg) translateX(360px) translateY(10px);
	height: 340px;
}

/* Responsive Scaling */
@media (max-width: 992px) {
	.namazj-sf-cards-container {
		transform: scale(0.8);
		transform-origin: bottom center;
		height: 350px;
	}
	.namazj-sf-title {
		font-size: 2.8rem;
	}
}

@media (max-width: 768px) {
	.namazj-sf-cards-container {
		transform: scale(0.55);
		height: 250px;
	}
	.namazj-sf-title {
		font-size: 2rem;
	}
}
@media (max-width: 480px) {
	.namazj-sf-cards-container {
		transform: scale(0.4);
		height: 200px;
	}
}

/* =========================================================================
   Bento Grid Widget
   ========================================================================= */

.namazj-bento-container {
	font-family: var(--namazj-font);
	padding: 80px 20px;
	background-color: #dde1e6;
	color: #0f172a;
}

.namazj-bento-grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-auto-rows: minmax(180px, auto);
	gap: 24px;
	max-width: 1200px;
	margin: 0 auto;
}

/* Base Box Styling */
.namazj-bg-box {
	border-radius: 40px;
	overflow: hidden;
	position: relative;
	background-color: #ffffff;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.namazj-bg-box:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(0,0,0,0.08);
}

.namazj-bg-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Areas Definition */

/* 1. Portrait */
.namazj-bg-portrait {
	grid-column: 1 / 5;
	grid-row: 1 / 3;
	min-height: 450px;
	background-color: #a1c2d9;
}
.namazj-bg-portrait img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 2. Blue VR Icon */
.namazj-bg-blue {
	grid-column: 5 / 8;
	grid-row: 1 / 2;
	background-color: #6392b4;
}
.namazj-bg-blue img {
	width: 70%;
	height: 70%;
	object-fit: contain;
}

/* 3. White Award Icon */
.namazj-bg-white {
	grid-column: 5 / 8;
	grid-row: 2 / 3;
	background-color: #ffffff;
}
.namazj-bg-award-icon {
	margin-bottom: 10px;
	color: #0f172a;
}
.namazj-bg-award-text {
	font-size: 0.9rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.2;
	margin: 0;
	color: #64748b;
}

/* 4. Hero Box */
.namazj-bg-hero {
	grid-column: 8 / 13;
	grid-row: 1 / 3;
	background-color: transparent;
	border: 1px solid rgba(0,0,0,0.1);
	align-items: flex-start;
	padding: 50px;
	justify-content: space-between;
}
.namazj-bg-hero:hover {
	transform: none; /* No lift for the big hero box */
	box-shadow: none;
	background-color: rgba(255,255,255,0.3);
}
.namazj-bg-hero-title {
	font-size: 4.5rem;
	font-weight: 900;
	line-height: 1.05;
	margin: 0 0 20px 0;
	color: #111827;
	text-transform: uppercase;
}
.namazj-bg-hero-desc {
	font-size: 1.1rem;
	color: #4b5563;
	line-height: 1.6;
	max-width: 80%;
	margin-bottom: 40px;
}
.namazj-bg-hero-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}
.namazj-bg-hero-btn {
	display: inline-block;
	background-color: #1f2937;
	color: #ffffff;
	padding: 16px 32px;
	border-radius: 30px;
	font-weight: 700;
	font-size: 0.95rem;
	text-decoration: none;
	transition: background 0.3s;
}
.namazj-bg-hero-btn:hover {
	background-color: #000000;
	color: #fff;
}
.namazj-bg-hero-icons {
	display: flex;
	gap: 10px;
}
.namazj-bg-icon-dark, .namazj-bg-icon-blue {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.namazj-bg-icon-dark { background-color: #1f2937; }
.namazj-bg-icon-blue { background-color: #6392b4; margin-left: -20px; border: 3px solid #dde1e6; } /* Overlap effect */

/* 5. Creators */
.namazj-bg-creators {
	grid-column: 1 / 5;
	grid-row: 3 / 4;
	background-color: #ffffff;
	align-items: flex-start;
	padding: 30px 40px;
	justify-content: space-between;
}
.namazj-bg-creators-title {
	font-size: 1.4rem;
	font-weight: 800;
	margin: 0;
	line-height: 1.2;
}
.namazj-bg-creators-avatars {
	display: flex;
	margin-top: 20px;
}
.namazj-bg-avatar {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background-size: cover;
	background-position: center;
	border: 3px solid #fff;
	margin-left: -15px;
}
.namazj-bg-avatar:first-child { margin-left: 0; }

/* 6. Circular Badge */
.namazj-bg-badge {
	grid-column: 5 / 8;
	grid-row: 3 / 4;
	background-color: #111827;
	border-radius: 50%; /* Perfect circle */
	color: #ffffff;
}
.namazj-bg-badge-inner {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.namazj-bg-badge-center {
	z-index: 2;
}
.namazj-bg-badge-text-ring {
	position: absolute;
	width: 130px;
	height: 130px;
	border-radius: 50%;
	border: 1px dashed rgba(255,255,255,0.2);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 2px;
	animation: namazj-spin 15s linear infinite;
}
@keyframes namazj-spin {
	100% { transform: rotate(360deg); }
}

/* 7. Bottom Feature */
.namazj-bg-bottom-feature {
	grid-column: 8 / 13;
	grid-row: 3 / 5;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	padding: 20px 0 20px 40px;
}
.namazj-bg-bf-sub {
	font-size: 0.8rem;
	font-weight: 700;
	color: #64748b;
	text-transform: uppercase;
	margin-bottom: 10px;
	display: block;
}
.namazj-bg-bf-title {
	font-size: 2.2rem;
	font-weight: 800;
	line-height: 1.2;
	color: #111827;
	margin: 0 0 30px 0;
	max-width: 60%;
}
.namazj-bg-bf-footer {
	display: flex;
	align-items: center;
	gap: 15px;
	border-top: 1px solid rgba(0,0,0,0.1);
	padding-top: 20px;
}
.namazj-bg-bf-icon {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #6392b4;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.namazj-bg-bf-date {
	font-size: 0.85rem;
	color: #4b5563;
	font-weight: 600;
}
.namazj-bg-bf-cutout {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 200px;
	height: 200px;
	background: #fff;
	border-radius: 50%;
	overflow: hidden;
}
.namazj-bg-bf-circle {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	overflow: hidden;
	border: 10px solid #dde1e6;
}
.namazj-bg-bf-circle img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 8. Cube Box */
.namazj-bg-cube {
	grid-column: 1 / 5;
	grid-row: 4 / 5;
	background-color: #111827;
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-bg-hero-title { font-size: 3rem; }
	.namazj-bg-bf-title { font-size: 1.8rem; max-width: 100%; }
	.namazj-bg-bf-cutout { display: none; } /* Hide cutout on smaller screens */
}

@media (max-width: 768px) {
	.namazj-bento-grid {
		display: flex;
		flex-direction: column;
	}
	.namazj-bg-box {
		min-height: 250px;
	}
	.namazj-bg-hero { padding: 30px; }
	.namazj-bg-hero-bottom { flex-direction: column; gap: 20px; align-items: flex-start; }
	.namazj-bg-badge { border-radius: 40px; } /* Reset circle */
	.namazj-bg-bottom-feature { padding: 30px 0; }
}

/* =========================================================================
   Digital Agency Widget
   ========================================================================= */

.namazj-da-wrapper {
	font-family: var(--namazj-font);
	background-color: #000000;
	color: #ffffff;
	padding: 40px;
}

.namazj-da-container {
	display: flex;
	gap: 40px;
	max-width: 1600px;
	margin: 0 auto;
	min-height: 850px;
}

/* --- Left Sidebar --- */
.namazj-da-sidebar {
	width: 250px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.namazj-da-sidebar-top {
	display: flex;
	flex-direction: column;
}

.namazj-da-vertical-logo {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-size: 2.2rem;
	font-weight: 300;
	line-height: 1.1;
	letter-spacing: 2px;
	margin-bottom: 80px;
	color: #ffffff;
	align-self: flex-start;
}
.namazj-da-vertical-logo b {
	font-weight: 900;
	font-size: 3rem;
	letter-spacing: 5px;
}

.namazj-da-follow-box {
	margin-top: auto;
}
.namazj-da-follow-title {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 1px;
	margin-bottom: 15px;
}
.namazj-da-follow-desc {
	font-size: 0.9rem;
	color: #9ca3af;
	line-height: 1.6;
	margin-bottom: 20px;
}
.namazj-da-socials {
	display: flex;
	gap: 15px;
}
.namazj-da-social-icon {
	color: #ffffff;
	font-size: 1.2rem;
	transition: color 0.3s;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.namazj-da-social-icon svg {
	width: 1.2em;
	height: 1.2em;
	fill: currentColor;
}
.namazj-da-social-icon:hover {
	color: #2992D7; /* Bright Blue */
}

/* Sidebar Bottom CTA */
.namazj-da-pill-btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 1px solid rgba(255,255,255,0.3);
	border-radius: 50px;
	padding: 5px 5px 5px 25px;
	text-decoration: none;
	color: #ffffff;
	transition: all 0.3s;
}
.namazj-da-pill-btn:hover {
	background: rgba(255,255,255,0.1);
	border-color: #ffffff;
}
.namazj-da-pill-text {
	font-size: 0.9rem;
	font-weight: 600;
}
.namazj-da-pill-icon {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #2992D7; /* Bright blue accent */
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}

/* --- Main Container --- */
.namazj-da-main {
	flex: 1;
	border-radius: 60px;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.namazj-da-main-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.namazj-da-main-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	mix-blend-mode: screen; /* Blends nicely with the dark blue background */
	opacity: 0.7;
}

.namazj-da-main-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, rgba(10,36,114,0.9) 0%, rgba(10,36,114,0.2) 100%);
	z-index: 2;
}

.namazj-da-content-inner {
	position: relative;
	z-index: 3;
	padding: 80px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.namazj-da-text-area {
	max-width: 600px;
	margin-top: 100px;
}
.namazj-da-title {
	font-size: 6rem;
	font-weight: 900;
	line-height: 1;
	margin: 0 0 30px 0;
	text-transform: uppercase;
	letter-spacing: -2px;
}
.namazj-da-subtitle {
	font-size: 1.1rem;
	color: rgba(255,255,255,0.8);
	line-height: 1.6;
	max-width: 450px;
	margin-bottom: 50px;
}

/* Spinning Badge */
.namazj-da-spin-badge {
	position: relative;
	width: 120px;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000000;
	border-radius: 50%;
}
.namazj-da-spin-text-path {
	position: absolute;
	top: 10px;
	left: 10px;
	width: 100px;
	height: 100px;
	animation: namazj-da-spin 10s linear infinite;
}
.namazj-da-spin-icon {
	position: relative;
	z-index: 2;
	color: #ffffff;
}
@keyframes namazj-da-spin {
	100% { transform: rotate(360deg); }
}

/* Glass Card */
.namazj-da-glass-card {
	position: absolute;
	bottom: 50px;
	right: 50px;
	width: 380px;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 30px;
	padding: 35px;
	color: #ffffff;
	box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}
.namazj-da-glass-title {
	font-size: 1.2rem;
	font-weight: 700;
	margin: 0 0 15px 0;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.namazj-da-glass-desc {
	font-size: 0.95rem;
	color: rgba(255,255,255,0.8);
	line-height: 1.6;
	margin-bottom: 25px;
}
.namazj-da-glass-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.namazj-da-glass-avatars {
	display: flex;
}
.namazj-da-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-size: cover;
	background-position: center;
	border: 2px solid rgba(255,255,255,0.5);
	margin-left: -15px;
}
.namazj-da-avatar:first-child {
	margin-left: 0;
}
.namazj-da-glass-link {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #ffffff;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.9rem;
	opacity: 0.9;
	transition: opacity 0.3s;
}
.namazj-da-glass-link:hover {
	opacity: 1;
}

/* Responsive */
@media (max-width: 1200px) {
	.namazj-da-container { flex-direction: column; }
	.namazj-da-sidebar { width: 100%; flex-direction: row; align-items: center; }
	.namazj-da-vertical-logo { writing-mode: horizontal-tb; transform: none; margin-bottom: 0; }
	.namazj-da-follow-box { display: none; }
	.namazj-da-main { min-height: 700px; border-radius: 40px; }
	.namazj-da-title { font-size: 4rem; }
	.namazj-da-glass-card { position: relative; bottom: 0; right: 0; margin-top: 50px; width: 100%; }
}
@media (max-width: 768px) {
	.namazj-da-wrapper { padding: 20px; }
	.namazj-da-content-inner { padding: 40px; }
	.namazj-da-title { font-size: 3rem; }
	.namazj-da-sidebar-bottom { display: none; }
}

/* =========================================================================
   Mission & Vision Widget
   ========================================================================= */

.namazj-mv-container {
	font-family: var(--namazj-font);
	padding: 60px 20px;
	background-color: #ffffff; /* Default, overridden by Elementor */
}

.namazj-mv-grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-auto-rows: 250px; /* Fixed height rows for perfect alignment */
	gap: 20px;
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
}

/* Base Card Styling */
.namazj-mv-card {
	position: relative;
	border-radius: 40px;
	overflow: hidden;
	color: #ffffff;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 40px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.1);
	opacity: 0;
	transform: translateY(40px);
	animation: namazj-fade-up 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

@keyframes namazj-fade-up {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.namazj-mv-card-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
	opacity: 0.6;
	mix-blend-mode: screen;
	transition: transform 0.5s ease;
}

.namazj-mv-card:hover .namazj-mv-card-bg {
	transform: scale(1.05);
}

.namazj-mv-arrow-tr {
	position: absolute;
	top: 30px;
	right: 30px;
	width: 40px;
	height: 40px;
	z-index: 2;
	color: #ffffff;
}

/* Grid Assignments */

/* 1. Mission (Large Left) */
.namazj-mv-mission {
	grid-column: 1 / 7;
	grid-row: 1 / 3; /* Spans 2 rows */
	background-color: #0A2472;
	animation-delay: 0.1s;
}

/* Faux Cutout Effect for Logo */
.namazj-mv-faux-cutout {
	position: absolute;
	top: -30px;
	left: -30px;
	width: 140px;
	height: 140px;
	background-color: #ffffff; /* Matches widget background */
	border-radius: 50%;
	z-index: 1;
}

/* Floating Logo */
.namazj-mv-logo-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
	height: 80px;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
}

.namazj-mv-logo-anim {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	animation: namazj-float 4s ease-in-out infinite;
	box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}
.namazj-mv-logo-placeholder {
	background: #2992D7;
}

@keyframes namazj-float {
	0% { transform: translateY(0); }
	50% { transform: translateY(-10px); }
	100% { transform: translateY(0); }
}

.namazj-mv-mission-title {
	position: relative;
	z-index: 2;
	font-size: 3.5rem;
	font-weight: 800;
	line-height: 1.1;
	margin: 0;
	text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

/* 2. Vision (Wide Top Right) */
.namazj-mv-vision {
	grid-column: 7 / 13;
	grid-row: 1 / 2;
	background-color: #2992D7;
	align-items: flex-end; /* Text on right */
	justify-content: center;
	animation-delay: 0.2s;
}
.namazj-mv-vision .namazj-mv-card-bg {
	opacity: 0.8;
	left: -50px; /* Offset to match the image style */
	object-fit: contain;
}
.namazj-mv-card-title {
	position: relative;
	z-index: 2;
	font-size: 3rem;
	font-weight: 800;
	margin: 0;
}

.namazj-mv-card-desc {
	position: relative;
	z-index: 2;
	font-size: 1rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.85);
	margin: 10px 0 0 0;
}

.namazj-mv-mission-desc {
	font-size: 1.15rem;
	max-width: 80%;
	margin-top: 20px;
}

/* 3. Values (Small Bottom Left) */
.namazj-mv-values {
	grid-column: 7 / 10;
	grid-row: 2 / 3;
	background-color: #1e293b;
	animation-delay: 0.3s;
}
.namazj-mv-card-bottom-title {
	position: relative;
	z-index: 2;
	font-size: 2rem;
	font-weight: 800;
	margin: 0;
}

/* 4. Impact / Chart (Small Bottom Right) */
.namazj-mv-impact {
	grid-column: 10 / 13;
	grid-row: 2 / 3;
	background-color: #0f172a;
	animation-delay: 0.4s;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.namazj-mv-stat {
	color: #84cc16; /* Green accent */
	font-weight: 700;
	font-size: 1.2rem;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 5px;
}
.namazj-mv-chart {
	position: relative;
	z-index: 1;
	flex: 1;
	display: flex;
	align-items: flex-end;
	gap: 10px;
	margin: 20px 0;
}
.namazj-mv-bar {
	flex: 1;
	background: linear-gradient(to top, rgba(132, 204, 22, 0.2), #84cc16);
	border-radius: 4px 4px 0 0;
	border-top: 3px solid #ffffff;
}
.namazj-mv-impact-title {
	font-size: 1.2rem;
	opacity: 0.8;
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-mv-grid {
		grid-auto-rows: auto;
	}
	.namazj-mv-mission { grid-column: 1 / 13; grid-row: auto; min-height: 400px; }
	.namazj-mv-vision { grid-column: 1 / 13; grid-row: auto; min-height: 250px; }
	.namazj-mv-values { grid-column: 1 / 7; grid-row: auto; min-height: 250px; }
	.namazj-mv-impact { grid-column: 7 / 13; grid-row: auto; min-height: 250px; }
	.namazj-mv-mission-title { font-size: 2.5rem; }
}

@media (max-width: 768px) {
	.namazj-mv-values { grid-column: 1 / 13; }
	.namazj-mv-impact { grid-column: 1 / 13; }
}

/* =========================================================================
   Performance Stats Widget
   ========================================================================= */

.namazj-ps-wrapper {
	font-family: var(--namazj-font);
	background-color: #ffffff;
	padding: 80px 20px;
	color: #1e293b;
}

.namazj-ps-container {
	display: flex;
	gap: 60px;
	max-width: 1300px;
	margin: 0 auto;
}

/* --- Left Column --- */
.namazj-ps-left {
	flex: 0 0 40%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.namazj-ps-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #f1f5f9;
	padding: 8px 16px;
	border-radius: 20px;
	font-size: 0.9rem;
	font-weight: 600;
	color: #64748b;
	align-self: flex-start;
	margin-bottom: 30px;
}
.namazj-ps-badge-icon {
	width: 10px;
	height: 10px;
	background-color: #2992D7; /* Namazj Bright Blue */
	border-radius: 2px;
	transform: skew(-15deg);
}

.namazj-ps-title {
	font-size: 3.5rem;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -1px;
	margin: 0 0 20px 0;
	color: #0A2472; /* Namazj Dark Blue */
}

.namazj-ps-desc {
	font-size: 1.1rem;
	color: #64748b;
	line-height: 1.6;
	margin-bottom: 30px;
	max-width: 90%;
}

.namazj-ps-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #2992D7; /* Namazj Bright Blue */
	font-weight: 600;
	text-decoration: none;
	font-size: 1.05rem;
	transition: opacity 0.3s;
}
.namazj-ps-link:hover {
	opacity: 0.8;
}
.namazj-ps-link svg {
	width: 18px;
	height: 18px;
	transition: transform 0.3s;
}
.namazj-ps-link:hover svg {
	transform: translateX(5px);
}

.namazj-ps-footer {
	margin-top: auto;
	padding-top: 60px;
}
.namazj-ps-footer-desc {
	font-size: 0.95rem;
	color: #94a3b8;
	margin-bottom: 20px;
	max-width: 80%;
	line-height: 1.5;
}
.namazj-ps-footer-desc b {
	color: #475569;
}

.namazj-ps-rating {
	display: flex;
	align-items: center;
	gap: 15px;
}
.namazj-ps-avatars {
	display: flex;
}
.namazj-ps-avatar {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-size: cover;
	background-position: center;
	border: 2px solid #ffffff;
	margin-left: -10px;
}
.namazj-ps-avatar:first-child {
	margin-left: 0;
}
.namazj-ps-rating-text {
	font-size: 0.9rem;
	color: #94a3b8;
	font-weight: 500;
}

/* --- Right Column (Cards) --- */
.namazj-ps-right {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.namazj-ps-bottom-cards {
	display: flex;
	gap: 20px;
}

.namazj-ps-card {
	background-color: #f8fafc;
	border-radius: 30px;
	padding: 40px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex: 1;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.namazj-ps-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 35px rgba(0,0,0,0.05);
}
.namazj-ps-card-wide {
	min-height: 280px;
}

.namazj-ps-card-header {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 600;
	color: #64748b;
	margin-bottom: 40px;
}
.namazj-ps-card-icon {
	width: 16px;
	height: 12px;
	background-color: #2992D7; /* Namazj Bright Blue */
	border-radius: 2px;
	position: relative;
}
.namazj-ps-card-icon::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #0A2472; /* Dark blue accent line */
}

.namazj-ps-number-wrapper {
	font-size: 4.5rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1;
	margin-bottom: 15px;
	display: flex;
	align-items: baseline;
	letter-spacing: -2px;
}
.namazj-ps-suffix {
	font-size: 3rem;
	margin-left: 2px;
}

.namazj-ps-card-desc {
	font-size: 1.05rem;
	color: #64748b;
	margin: 0;
	line-height: 1.4;
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-ps-container {
		flex-direction: column;
	}
	.namazj-ps-left {
		flex: none;
		margin-bottom: 40px;
	}
	.namazj-ps-footer {
		padding-top: 30px;
	}
	.namazj-ps-title {
		font-size: 3rem;
	}
}

@media (max-width: 768px) {
	.namazj-ps-wrapper { padding: 40px 20px; }
	.namazj-ps-bottom-cards {
		flex-direction: column;
	}
	.namazj-ps-title { font-size: 2.5rem; }
	.namazj-ps-number-wrapper { font-size: 3.5rem; }
	.namazj-ps-suffix { font-size: 2.5rem; }
}

/* =========================================================================
   Contact Form Widget
   ========================================================================= */

.namazj-cf-wrapper {
	font-family: var(--namazj-font);
	background-color: #ffffff;
	background-image: radial-gradient(circle at center top, rgba(41,146,215,0.05) 0%, #ffffff 70%); /* Bright Blue aura */
	padding: 120px 20px;
	color: #1e293b;
	position: relative;
	overflow: hidden;
}

/* Background Watermark Text */
.namazj-cf-bg-text {
	position: absolute;
	top: 5%;
	left: 50%;
	transform: translateX(-50%);
	font-size: 20rem;
	font-weight: 900;
	color: #0A2472;
	opacity: 0.02;
	z-index: 1;
	pointer-events: none;
	user-select: none;
	white-space: nowrap;
}

.namazj-cf-container {
	position: relative;
	z-index: 2;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	gap: 80px;
}

/* --- Left Column --- */
.namazj-cf-left {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.namazj-cf-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: rgba(0,0,0,0.04);
	border: 1px solid rgba(0,0,0,0.05);
	padding: 10px 20px;
	border-radius: 30px;
	font-size: 0.9rem;
	font-weight: 500;
	color: #64748b;
	align-self: flex-start;
	margin-bottom: 30px;
}

.namazj-cf-title {
	font-size: 3.5rem;
	font-weight: 700;
	margin: 0 0 20px 0;
	letter-spacing: -1px;
}

.namazj-cf-desc {
	font-size: 1.1rem;
	color: #9ca3af;
	line-height: 1.6;
	margin-bottom: 50px;
	max-width: 90%;
}

.namazj-cf-cards {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.namazj-cf-card {
	display: flex;
	align-items: center;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 20px;
	padding: 20px 25px;
	text-decoration: none;
	color: #1e293b;
	transition: background 0.3s, border-color 0.3s;
}
.namazj-cf-card:hover {
	background: #f1f5f9;
	border-color: #cbd5e1;
}

.namazj-cf-card-icon {
	width: 50px;
	height: 50px;
	border-radius: 12px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	color: #2992D7;
	margin-right: 20px;
}

.namazj-cf-card-content {
	flex: 1;
}
.namazj-cf-card-content h4 {
	font-size: 1.1rem;
	font-weight: 600;
	margin: 0 0 5px 0;
}
.namazj-cf-card-content p {
	font-size: 0.95rem;
	color: #9ca3af;
	margin: 0;
}

.namazj-cf-card-arrow {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #94a3b8;
	transition: background 0.3s, color 0.3s, border-color 0.3s;
}
.namazj-cf-card-arrow svg {
	width: 16px;
	height: 16px;
}
.namazj-cf-card:hover .namazj-cf-card-arrow {
	background: #0A2472;
	color: #ffffff;
	border-color: #0A2472;
}

/* Social Icons */
.namazj-cf-socials {
	display: flex;
	gap: 15px;
	margin-top: 40px;
}
.namazj-cf-social-link {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #64748b;
	text-decoration: none;
	font-size: 1.1rem;
	transition: background 0.3s, transform 0.3s, border-color 0.3s, color 0.3s;
}
.namazj-cf-social-link:hover {
	background: #2992D7; /* Namazj Bright Blue */
	border-color: #2992D7;
	color: #ffffff;
	transform: translateY(-3px);
}

/* --- Right Column (Form) --- */
.namazj-cf-right {
	flex: 1;
}

.namazj-cf-form {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 30px;
	padding: 40px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.namazj-cf-input-group {
	display: flex;
	flex-direction: column;
}

.namazj-cf-input,
.namazj-cf-textarea {
	width: 100%;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 18px 20px;
	color: #1e293b;
	font-family: inherit;
	font-size: 1rem;
	outline: none;
	transition: border-color 0.3s, background 0.3s;
}
.namazj-cf-input::placeholder,
.namazj-cf-textarea::placeholder {
	color: #94a3b8;
}
.namazj-cf-input:focus,
.namazj-cf-textarea:focus {
	border-color: #2992D7;
	background: #ffffff;
}

.namazj-cf-textarea {
	resize: vertical;
	min-height: 150px;
}

.namazj-cf-btn {
	background: #0A2472;
	color: #ffffff;
	border: none;
	border-radius: 12px;
	padding: 20px;
	font-size: 1.1rem;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.3s, transform 0.3s;
	margin-top: 10px;
}
.namazj-cf-btn:hover {
	background: #081a54;
	transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-cf-bg-text {
		font-size: 12rem;
	}
	.namazj-cf-container {
		flex-direction: column;
		gap: 50px;
	}
	.namazj-cf-title {
		font-size: 3rem;
	}
}

@media (max-width: 768px) {
	.namazj-cf-wrapper {
		padding: 60px 20px;
	}
	.namazj-cf-bg-text {
		display: none; /* Hide on mobile to save space */
	}
	.namazj-cf-form {
		padding: 25px;
	}
}

/* ==========================================================================
   Course Dashboard Widget
   ========================================================================== */
.namazj-cdash-wrapper {
	font-family: var(--namazj-font);
	background-color: #edeafe; /* Very light lavender from design */
	padding: 40px;
	border-radius: 30px;
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 40px;
	color: #1e293b;
}

/* LEFT COLUMN */
.namazj-cdash-left {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

/* Main Purple Hero Card */
.namazj-cdash-hero {
	background: linear-gradient(135deg, #0A2472 0%, #2992D7 100%);
	border-radius: 24px;
	padding: 40px;
	color: white;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	overflow: hidden;
	box-shadow: 0 20px 40px rgba(10, 36, 114, 0.2);
}

.namazj-cdash-hero::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background: url('data:image/svg+xml;utf8,<svg opacity="0.1" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"><path fill="%23FFFFFF" d="M44.7,-76.4C58.8,-69.2,71.8,-59.1,79.6,-46.8C87.4,-34.5,90,-20,88.5,-6.3C87,7.4,81.4,20.3,74.6,32.7C67.8,45.1,59.8,57,48.5,65.4C37.2,73.8,22.6,78.7,7.8,81.3C-7,83.9,-22.1,84.2,-34.5,78.3C-46.9,72.4,-56.6,60.3,-64.5,47.6C-72.4,34.9,-78.5,21.6,-80.6,7.5C-82.7,-6.6,-80.8,-21.5,-74.6,-34.5C-68.4,-47.5,-57.9,-58.6,-45.3,-66.6C-32.7,-74.6,-18,-79.5,-2.1,-75.8C13.8,-72.1,27.5,-59.8,44.7,-76.4Z" transform="translate(100 100)"/></svg>') no-repeat center right;
	background-size: cover;
	pointer-events: none;
}

.namazj-cdash-hero-content {
	position: relative;
	z-index: 2;
	max-width: 60%;
}

.namazj-cdash-greeting {
	font-size: 2.5rem;
	font-weight: 500;
	margin: 0 0 5px 0;
	color: white;
}
.namazj-cdash-greeting strong {
	font-weight: 800;
}

.namazj-cdash-subgreeting {
	font-size: 1.1rem;
	opacity: 0.9;
	margin: 0 0 30px 0;
}

/* Board Sub-card */
.namazj-cdash-board-card {
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(10px);
	border-radius: 16px;
	padding: 15px 20px;
	display: inline-flex;
	align-items: center;
	gap: 15px;
	color: #1e293b;
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}
.namazj-cdash-board-icon {
	width: 40px; height: 40px;
	background: #f1f5f9;
	border-radius: 12px;
	display: flex; align-items: center; justify-content: center;
	color: #6366f1;
	font-size: 1.2rem;
}
.namazj-cdash-board-text span {
	display: block;
	font-size: 0.8rem;
	color: #64748b;
	font-weight: 600;
	text-transform: uppercase;
}
.namazj-cdash-board-text h4 {
	margin: 0;
	font-size: 1.1rem;
	font-weight: 700;
	color: #0f172a;
}

/* 3D Character */
.namazj-cdash-hero-img {
	position: absolute;
	right: 0;
	bottom: 0;
	max-height: 120%;
	z-index: 2;
	filter: drop-shadow(0 20px 30px rgba(0,0,0,0.2));
}

.namazj-cdash-star {
	position: absolute;
	z-index: 1;
	animation: floatElement 4s ease-in-out infinite;
}
.star-1 { top: 20px; left: 30px; animation-delay: 0s; }
.star-2 { bottom: 40px; left: 50%; animation-delay: 1s; }

/* Skill Cards */
.namazj-cdash-skills {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}
.namazj-cdash-skill-card {
	background: white;
	padding: 20px;
	border-radius: 20px;
	flex: 1;
	min-width: 150px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	box-shadow: 0 10px 25px rgba(0,0,0,0.02);
}
.namazj-cdash-skill-icon {
	width: 45px; height: 45px;
	border-radius: 12px;
	display: flex; align-items: center; justify-content: center;
	color: white;
	margin-bottom: 15px;
	font-size: 1.2rem;
}
.namazj-cdash-stars {
	margin-bottom: 10px;
	font-size: 0.9rem;
}
.namazj-cdash-stars .active { color: #f59e0b; }
.namazj-cdash-stars .inactive { color: #e2e8f0; }

.namazj-cdash-skill-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	color: #334155;
	line-height: 1.3;
}

/* Chart Area */
.namazj-cdash-chart-section {
	background: transparent;
	margin-top: 10px;
}
.namazj-cdash-chart-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}
.namazj-cdash-chart-header h3 {
	font-size: 1.3rem;
	font-weight: 800;
	margin: 0;
	color: #1e293b;
}
.namazj-cdash-chart-dropdown {
	font-size: 0.95rem;
	color: #64748b;
	font-weight: 600;
	cursor: pointer;
}

/* RIGHT COLUMN (Tasks) */
.namazj-cdash-right {
	background: white;
	padding: 30px;
	border-radius: 20px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.02);
	height: fit-content;
	position: sticky;
	top: 40px;
}

/* Enrollment Button Override */
.namazj-cdash-enrollment .tutor-add-to-cart-button,
.namazj-cdash-enrollment .tutor-enroll-course-button,
.namazj-cdash-enrollment .start-continue-retake-button,
.namazj-cdash-enrollment .tutor-woocommerce-view-cart {
	background: #1e40af !important; /* Deep Blue */
	color: white !important;
	border-radius: 50px !important;
	padding: 12px 30px !important;
	font-weight: 700 !important;
	font-size: 1.1rem !important; /* Keep base font size */
	border: none !important;
	width: 100% !important;
	transition: all 0.3s ease !important;
	text-transform: none !important;
	display: flex;
	justify-content: center;
	align-items: center;
}

/* Hide original text inside spans */
.namazj-cdash-enrollment .tutor-add-to-cart-button span,
.namazj-cdash-enrollment .tutor-enroll-course-button span {
	display: none !important;
}

/* Inject Subscribe Now text */
.namazj-cdash-enrollment .tutor-add-to-cart-button::after,
.namazj-cdash-enrollment .tutor-enroll-course-button::after {
	content: 'Subscribe Now';
	display: block;
}

.namazj-cdash-enrollment .tutor-add-to-cart-button:hover,
.namazj-cdash-enrollment .tutor-enroll-course-button:hover,
.namazj-cdash-enrollment .start-continue-retake-button:hover,
.namazj-cdash-enrollment .tutor-woocommerce-view-cart:hover {
	background: #1e3a8a !important;
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(30, 58, 138, 0.2) !important;
}

/* ==========================================================================
   NAMAZJ CTA WIDGET
   ========================================================================== */
.namazj-cta-wrapper {
	position: relative;
	width: 100%;
	padding: 40px 20px 20px;
	overflow: visible;
}

.namazj-cta-bg {
	position: absolute;
	top: 50px;
	bottom: 0;
	left: 0;
	right: 0;
	background: #0a2472; /* Medical Dark Blue Background */
	border-radius: 40px;
	z-index: 1;
}

.namazj-cta-container {
	position: relative;
	z-index: 2;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.namazj-cta-content-box {
	background: #2992d7; /* Bright Medical Blue Inner Box */
	border-radius: 30px;
	padding: 60px 50px;
	width: 60%;
	transform: translateX(-50px) translateY(-30px);
	box-shadow: 0 20px 40px rgba(0,0,0,0.1);
	position: relative;
}

.namazj-cta-title {
	font-size: 3rem;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 15px;
	line-height: 1.1;
}

.namazj-cta-subtitle {
	font-size: 1.2rem;
	color: rgba(255,255,255,0.9);
	margin-bottom: 30px;
	max-width: 80%;
}

.namazj-cta-btn {
	display: inline-block;
	background: #0a2472; /* Dark button */
	color: #ffffff;
	padding: 15px 40px;
	border-radius: 50px;
	font-weight: 700;
	font-size: 1.1rem;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 10px 20px rgba(10, 36, 114, 0.3);
}

.namazj-cta-btn:hover {
	background: #ffffff;
	color: #0a2472;
	transform: translateY(-3px);
	box-shadow: 0 15px 25px rgba(10, 36, 114, 0.4);
}

.namazj-cta-image-wrapper {
	width: 35%;
	max-width: 350px;
	position: absolute;
	right: 0;
	top: -40px;
	pointer-events: none; /* Let clicks pass through if needed */
}

.namazj-cta-floating-img {
	width: 100%;
	height: auto;
	display: block;
	animation: namazj-float 6s ease-in-out infinite;
	/* Brightness 0 invert 1 turns any colored image/svg to pure white */
	filter: drop-shadow(0 20px 30px rgba(0,0,0,0.2)) brightness(0) invert(1);
}

@keyframes namazj-float {
	0% {
		transform: translateY(0px) rotate(0deg);
	}
	50% {
		transform: translateY(-20px) rotate(2deg);
	}
	100% {
		transform: translateY(0px) rotate(0deg);
	}
}

/* Footer Styles */
.namazj-cta-footer {
	margin-top: 40px;
	position: relative;
	z-index: 2;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.namazj-cta-mini-logo {
	width: 60px;
	filter: brightness(0) invert(1);
}

.namazj-cta-footer-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: 30px;
}

.namazj-cta-footer-menu li a {
	color: #ffffff;
	font-weight: 600;
	font-size: 1.1rem;
	text-decoration: none;
	transition: opacity 0.3s;
}

.namazj-cta-footer-menu li a:hover {
	opacity: 0.7;
}

.namazj-cta-footer-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: 40px;
}

.namazj-cta-footer-left {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.namazj-cta-footer-right {
	display: flex;
	flex-direction: column;
	gap: 15px;
	min-width: 300px;
}

.namazj-cta-newsletter-title {
	color: #ffffff;
	font-size: 1.2rem;
	font-weight: 700;
	margin: 0;
}

.namazj-cta-newsletter-form {
	display: flex;
	gap: 10px;
	width: 100%;
}

.namazj-cta-newsletter-form input {
	flex: 1;
	padding: 12px 20px;
	border-radius: 8px;
	border: 1px solid rgba(255,255,255,0.2);
	background: transparent;
	color: #ffffff;
	font-size: 1rem;
	outline: none;
}

.namazj-cta-newsletter-form input::placeholder {
	color: rgba(255,255,255,0.5);
}

.namazj-cta-newsletter-form button {
	padding: 12px 25px;
	border-radius: 8px;
	border: none;
	background: #2992d7;
	color: white;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.3s;
}

.namazj-cta-newsletter-form button:hover {
	background: #1e7ebd;
}

.namazj-cta-footer-social {
	display: flex;
	gap: 15px;
}

.namazj-cta-footer-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: #ffffff;
	color: #0a2472;
	border-radius: 8px;
	font-size: 1.2rem;
	transition: transform 0.3s;
}

.namazj-cta-footer-social a:hover {
	transform: translateY(-3px);
}

.namazj-cta-footer-social a {
    text-decoration: none !important;
}

.namazj-cta-footer-social a svg,
.namazj-cta-footer-social a i,
.namazj-cta-footer-social a span.elementor-icon {
	width: 20px !important;
	height: 20px !important;
	font-size: 20px !important;
	line-height: 20px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	color: #0a2472 !important;
}

.namazj-cta-footer-social a svg path,
.namazj-cta-footer-social a svg {
	fill: #0a2472 !important;
}

.namazj-cta-footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 15px;
	margin-top: 40px;
	padding-top: 20px;
	border-top: 1px solid rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.6);
	font-size: 0.9rem;
}

.namazj-powered-by {
	text-align: center;
}

.namazj-powered-by strong {
	font-weight: 700;
}

.namazj-cta-footer-bottom a {
	color: rgba(255,255,255,0.6);
	text-decoration: none;
}

.namazj-cta-footer-bottom a:hover {
	color: #ffffff;
}

/* Responsive adjustments */
@media (max-width: 992px) {
	.namazj-cta-container {
		flex-direction: column;
		text-align: center;
	}
	
	.namazj-cta-content-box {
		width: 90%;
		transform: translateX(0) translateY(-20px);
		padding: 40px 30px;
	}
	
	.namazj-cta-subtitle {
		max-width: 100%;
		margin: 0 auto 30px auto;
	}
	
	.namazj-cta-image-wrapper {
		position: relative;
		width: 80%;
		right: 0;
		top: 0;
		margin-top: -30px;
	}

	.namazj-cta-footer-top {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.namazj-cta-footer-menu {
		flex-wrap: wrap;
		gap: 20px;
		justify-content: center;
	}

	.namazj-cta-footer-social {
		justify-content: center;
	}

	.namazj-cta-newsletter-form {
		flex-direction: column;
	}

	.namazj-cta-footer-bottom {
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}
}

/* ==========================================================================
   Hero Widget Styles (Travel/Medical Aesthetic)
   ========================================================================== */
.namazj-hero-wrapper {
	position: relative;
	width: 100%;
	padding: 80px 0;
	background-color: transparent;
	font-family: 'Inter', sans-serif;
	overflow: hidden;
}

.namazj-hero-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 50px;
	align-items: center;
	position: relative;
	z-index: 2;
}

/* Left Content */
.namazj-hero-left {
	position: relative;
	min-width: 0;
}

.namazj-hero-title {
	font-size: 4.0rem;
	font-weight: 800;
	color: #111827;
	line-height: 1.1;
	margin: 0 0 20px 0;
	letter-spacing: -1px;
}

.namazj-hero-highlight {
	color: #0d6efd;
}

.namazj-hero-arrow {
	position: absolute;
	right: 10%;
	top: 60%;
	transform: translateY(-50%);
	z-index: -1;
}

.namazj-hero-desc {
	font-size: 1.15rem;
	color: #6b7280;
	line-height: 1.6;
}

/* Right Collage */
.namazj-hero-right {
	position: relative;
	height: 280px;
	min-width: 0;
}

.namazj-hero-collage {
	position: relative;
	width: 100%;
	height: 100%;
}

.collage-grid-lines {
	position: absolute;
	inset: -20px;
	background-image: 
		linear-gradient(to right, rgba(0,0,0,0.05) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(0,0,0,0.05) 1px, transparent 1px);
	background-size: 50px 50px;
	z-index: 0;
	border-radius: 20px;
}

.collage-waves {
	position: absolute;
	top: -30px;
	right: -20px;
	z-index: 0;
}

/* Single Image Slideshow Frame */
.namazj-hero-single-frame {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.namazj-slideshow-container {
	position: relative;
	width: 85%;
	height: 90%;
	border-radius: 80px 0 80px 0;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(0,0,0,0.15);
	z-index: 2;
}

.namazj-slideshow-track {
	display: flex;
	height: 100%;
	will-change: transform;
}

.slide-img {
	height: 100%;
	object-fit: contain;
	flex-shrink: 0;
	padding: 40px;
	background-color: #ffffff;
}

/* Float Animations */
@keyframes namazjHeroFloat {
	0%, 100% { transform: translateY(0px); }
	50% { transform: translateY(-15px); }
}

.float-anim-single { 
	animation: namazjHeroFloat 6s ease-in-out infinite; 
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-hero-grid {
		grid-template-columns: 1fr;
		gap: 60px;
	}

	.namazj-hero-title {
		font-size: 3.5rem;
	}

	.namazj-hero-right {
		height: 280px;
	}
}

@media (max-width: 768px) {
	.namazj-hero-grid {
		gap: 30px;
	}
	
	.namazj-hero-title {
		font-size: 2.5rem;
	}

	.namazj-hero-right {
		height: 250px;
	}
}

/* ==========================================================================
   Course Categories Grid Widget
   ========================================================================== */
.namazj-categories-grid-wrapper {
	width: 100%;
	padding: 40px 0;
	font-family: 'Inter', sans-serif;
}

.namazj-categories-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

.namazj-category-capsule {
	position: relative;
	border-radius: 160px;
	overflow: hidden;
	background: #ffffff;
	box-shadow: 0 20px 40px rgba(0,0,0,0.08);
	transition: transform 0.4s ease;
	display: flex;
	flex-direction: column;
	min-height: 480px;
	text-decoration: none;
	color: inherit;
}

.namazj-category-capsule:hover {
	transform: translateY(-10px);
}

.namazj-category-img-wrap {
	width: 100%;
	height: 220px;
	position: relative;
	overflow: hidden;
	background: #f8fafc;
	flex-shrink: 0;
}

.namazj-category-bg {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.namazj-category-capsule:hover .namazj-category-bg {
	transform: scale(1.05);
}

.namazj-category-link-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}

.namazj-category-content {
	flex: 1;
	background: #ffffff;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 35px 25px 60px;
	text-align: center;
	position: relative;
	z-index: 5;
}

.namazj-category-badge {
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	background: #0d6efd;
	color: #ffffff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 1px;
	padding: 6px 16px;
	border-radius: 20px;
	box-shadow: 0 4px 10px rgba(13, 110, 253, 0.3);
	white-space: nowrap;
}

.namazj-category-text-box {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.namazj-category-subtitle {
	font-size: 0.75rem;
	color: #f97316;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.namazj-category-title {
	font-size: 1.5rem;
	font-weight: 800;
	color: #111827;
	margin: 0;
}

.namazj-category-desc {
	font-size: 0.9rem;
	color: #6b7280;
	line-height: 1.5;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.namazj-category-arrow {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	background: #f97316;
	color: #ffffff;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.9rem;
	box-shadow: 0 4px 10px rgba(249, 115, 22, 0.3);
	transition: transform 0.3s, background 0.3s;
}

.namazj-category-capsule:hover .namazj-category-arrow {
	background: #ea580c;
	transform: translate(-50%, -3px);
}

@media (max-width: 1024px) {
	.namazj-categories-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.namazj-categories-grid {
		grid-template-columns: 1fr;
		max-width: 320px;
		margin: 0 auto;
	}
	
	.namazj-category-capsule {
		border-radius: 120px;
		min-height: auto;
	}
	
	.namazj-category-img-wrap {
		height: 200px;
	}
	
	.namazj-category-content {
		padding: 30px 20px 60px;
	}
	
	.namazj-category-title {
		font-size: 1.3rem;
	}
	
	.namazj-category-desc {
		font-size: 0.85rem;
		-webkit-line-clamp: 2;
	}
}
.namazj-cdash-right-title {
	font-size: 1.3rem;
	font-weight: 800;
	margin: 0 0 25px 0;
	color: #1e293b;
}
.namazj-cdash-tasks {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.namazj-cdash-task-card {
	background: white;
	border-radius: 20px;
	padding: 20px;
	display: flex;
	align-items: center;
	gap: 20px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.02);
	transition: transform 0.3s ease;
}
.namazj-cdash-task-card:hover {
	transform: translateX(5px);
}
.namazj-cdash-task-circle {
	width: 70px; height: 70px;
	flex-shrink: 0;
	position: relative;
}
.namazj-cdash-task-circle svg {
	transform: rotate(0deg);
}

.namazj-cdash-task-info h4 {
	margin: 0 0 5px 0;
	font-size: 1.1rem;
	font-weight: 700;
	color: #1e293b;
}
.namazj-cdash-task-info p {
	margin: 0 0 10px 0;
	font-size: 0.9rem;
	color: #64748b;
}
.namazj-cdash-task-meta {
	display: flex;
	gap: 15px;
	font-size: 0.8rem;
	color: #94a3b8;
	font-weight: 600;
}
.namazj-cdash-task-meta span {
	display: flex; align-items: center; gap: 5px;
}

/* Responsive */
@media (max-width: 1024px) {
	.namazj-cdash-wrapper {
		grid-template-columns: 1fr;
	}
	.namazj-cdash-hero-img {
		max-height: 100%;
		opacity: 0.8;
	}
}
@media (max-width: 768px) {
	.namazj-cdash-hero {
		padding: 30px 20px;
	}
	.namazj-cdash-hero-content {
		max-width: 100%;
	}
	.namazj-cdash-greeting {
		font-size: 1.8rem;
		line-height: 1.2;
	}
	.namazj-cdash-subgreeting {
		font-size: 0.95rem;
		line-height: 1.5;
	}
	.namazj-cdash-hero-img {
		display: none;
	}
	.namazj-cdash-skills {
		flex-direction: column;
	}
}

/* Desktop Sticky Subscribe Box */
@media (min-width: 1025px) {
	.namazj-cdash-enrollment {
		position: sticky;
		top: 100px;
		background: white;
		padding: 30px;
		border-radius: 20px;
		box-shadow: 0 10px 30px rgba(0,0,0,0.05);
		margin-bottom: 40px;
		z-index: 100;
		box-sizing: border-box;
	}
}

/* Mobile Fixed Subscribe Bar */
@media (max-width: 1024px) {
	.namazj-cdash-enrollment {
		position: fixed;
		bottom: 75px; /* Push above the new Mobile Sticky Bottom Nav */
		left: 0;
		right: 0;
		background: white;
		z-index: 9999;
		padding: 15px 20px !important;
		margin: 0 !important;
		border-top: 1px solid #e2e8f0;
		border-bottom: 1px solid #e2e8f0;
		box-shadow: 0 -10px 25px rgba(0,0,0,0.1);
		box-sizing: border-box;
		width: 100vw;
	}
	.tutor-wrap.namazj-course-page {
		padding-bottom: 200px !important; /* give room for BOTH fixed bottom bars */
		box-sizing: border-box;
		overflow-x: hidden;
	}
	.namazj-cdash-enrollment .tutor-course-enrollment-box {
		margin: 0 !important;
		padding: 0 !important;
	}
}

/*   R I G H T   C O L U M N   */
/* Force hide Tutor LMS Author globally */
.tutor-meta.tutor-mt-auto {
	display: none !important;
}

/* Hide duplicate meta data inside enrollment box */
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-footer,
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-meta,
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-features,
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-details,
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-material,
.tutor-wrap .namazj-cdash-enrollment .tutor-card-footer,
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-body > ul,
.tutor-wrap .namazj-cdash-enrollment .tutor-course-sidebar-card-stat {
	display: none !important;
}

/* Horizontal Archive Filter */
.namazj-horizontal-filter .tutor-course-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: flex-start;
}
.namazj-horizontal-filter .tutor-course-filter > div {
	flex: 1;
	min-width: 200px;
}

/* CUSTOM COURSE CARD OVERRIDE */
.namazj-custom-course-card {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.06);
	overflow: hidden;
	position: relative;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	height: 100%;
}
.namazj-custom-course-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}
.namazj-ccard-link {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	z-index: 1;
}
.namazj-ccard-thumb {
	position: relative;
	height: 220px;
	width: 100%;
}
.namazj-ccard-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.namazj-ccard-play-icon {
	position: absolute;
	bottom: -20px;
	right: 20px;
	width: 40px;
	height: 40px;
	background: #2992D7;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	z-index: 2;
	box-shadow: 0 4px 10px rgba(41,146,215,0.4);
}
.namazj-ccard-play-icon svg {
	width: 14px;
	margin-left: 3px;
}
.namazj-ccard-content {
	padding: 25px 20px 15px 20px;
	flex-grow: 1;
}
.namazj-ccard-category {
	font-size: 11px;
	color: #a0aec0;
	letter-spacing: 1px;
	margin-bottom: 8px;
	font-weight: 600;
}
.namazj-ccard-title {
	margin: 0 0 15px 0;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.4;
	color: #2d3748;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	height: 50px;
}
.namazj-ccard-title a {
	color: inherit;
	text-decoration: none;
	position: relative;
	z-index: 2;
}
.namazj-ccard-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid #e2e8f0;
}
.namazj-ccard-lessons {
	display: flex;
	align-items: center;
	font-size: 12px;
	font-weight: 700;
	color: #718096;
}
.namazj-ccard-lessons-icon {
	width: 14px;
	height: 14px;
	color: #6b46c1; /* purple from image */
	margin-right: 6px;
}
.namazj-ccard-rating {
	display: flex;
	gap: 3px;
}
.namazj-ccard-rating svg {
	width: 14px;
	height: 14px;
}
.namazj-star-filled {
	color: #ecc94b;
}
.namazj-star-empty {
	color: #e2e8f0;
}
.namazj-ccard-footer {
	padding: 0 20px 20px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.namazj-ccard-btn {
	background: #ecc94b;
	color: #1a202c;
	font-weight: 700;
	font-size: 13px;
	padding: 8px 20px;
	border-radius: 4px;
	text-decoration: none;
	position: relative;
	z-index: 2;
	transition: background 0.2s ease;
}
.namazj-ccard-btn:hover {
	background: #d6b33b;
	color: #1a202c;
}
.namazj-ccard-price .price {
	font-size: 18px;
	font-weight: 800;
	color: #2d3748;
	margin: 0;
}
.namazj-ccard-price del {
	font-size: 14px;
	color: #a0aec0;
	margin-right: 5px;
}


/* MODERN HERO WIDGET */
.namazj-modern-hero-wrapper {
	position: relative;
	overflow: hidden;
	padding: 100px 20px 150px 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
}
.namazj-mhero-blob {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: 0.6;
	animation: namazjBlobAnim 15s infinite alternate;
}
.namazj-mhero-blob.blob-1 {
	width: 600px; height: 600px;
	background: rgba(41, 146, 215, 0.4); /* Namazj Light Blue */
	top: -100px; left: -100px;
}
.namazj-mhero-blob.blob-2 {
	width: 500px; height: 500px;
	background: rgba(10, 36, 114, 0.3); /* Namazj Dark Blue */
	bottom: -50px; right: -50px;
	animation-delay: -5s;
}
.namazj-mhero-blob.blob-3 {
	width: 400px; height: 400px;
	background: rgba(255, 105, 180, 0.15); /* Soft pink accent for warmth */
	top: 50%; left: 50%; transform: translate(-50%, -50%);
	animation-delay: -10s;
}
@keyframes namazjBlobAnim {
	0% { transform: scale(1) translate(0, 0); }
	100% { transform: scale(1.1) translate(30px, 30px); }
}
.namazj-mhero-container {
	position: relative;
	z-index: 10;
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}
.namazj-mhero-pill {
	display: inline-flex;
	align-items: center;
	padding: 6px 16px;
	background: rgba(255, 255, 255, 0.5);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.6);
	border-radius: 30px;
	font-size: 13px;
	font-weight: 600;
	color: #4a5568;
	margin-bottom: 30px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.03);
}
.namazj-mhero-pill .pill-dot {
	width: 6px; height: 6px;
	background: #0A2472;
	border-radius: 50%;
	margin-right: 8px;
}
.namazj-mhero-title {
	font-size: 64px;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -1px;
	color: #1a202c;
	margin-bottom: 20px;
}
.namazj-mhero-subtitle {
	font-size: 18px;
	line-height: 1.6;
	color: #4a5568;
	max-width: 700px;
	margin: 0 auto 40px auto;
}
.namazj-mhero-buttons {
	display: flex;
	justify-content: center;
	gap: 15px;
	margin-bottom: 60px;
}
.namazj-mhero-btn {
	padding: 12px 28px;
	border-radius: 30px;
	font-weight: 700;
	font-size: 15px;
	text-decoration: none;
	transition: all 0.3s ease;
}
.namazj-mhero-btn-light {
	background: rgba(255,255,255,0.7);
	color: #2d3748;
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.8);
}
.namazj-mhero-btn-light:hover {
	background: #fff;
	box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}
.namazj-mhero-btn-glow {
	background: linear-gradient(135deg, #0A2472 0%, #2992D7 100%);
	color: #fff;
	box-shadow: 0 10px 25px rgba(41, 146, 215, 0.4);
}
.namazj-mhero-btn-glow:hover {
	transform: translateY(-2px);
	box-shadow: 0 15px 30px rgba(41, 146, 215, 0.5);
	color: #fff;
}
/* GRAPHIC WRAPPER */
.namazj-mhero-graphic-wrap {
	position: relative;
	max-width: 700px;
	margin: 0 auto;
}
.namazj-mhero-glass-card {
	position: relative;
	z-index: 5;
	background: rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(25px);
	-webkit-backdrop-filter: blur(25px);
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 20px;
	padding: 20px;
	box-shadow: 0 20px 50px rgba(0,0,0,0.05), inset 0 0 0 1px rgba(255,255,255,0.5);
}
.namazj-glass-header {
	display: flex;
	gap: 8px;
	margin-bottom: 20px;
}
.namazj-glass-header .glass-dot {
	width: 10px; height: 10px;
	border-radius: 50%;
}
.namazj-glass-header .red { background: #fca5a5; }
.namazj-glass-header .yellow { background: #fde047; }
.namazj-glass-header .green { background: #86efac; }
.namazj-glass-body {
	display: flex;
	gap: 20px;
}
.glass-inner-card {
	flex: 1;
	background: rgba(255,255,255,0.5);
	border-radius: 12px;
	padding: 15px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.glass-block {
	background: rgba(255,255,255,0.8);
	border-radius: 6px;
}
.glass-block.img-block {
	height: 80px;
}
.glass-block.img-block.primary {
	background: #e0f2fe;
}
.glass-block.text-block.short {
	height: 12px; width: 60%;
}
.glass-block.text-block.long {
	height: 12px; width: 90%;
}
/* BACKGROUND CARDS */
.namazj-mhero-glass-bg {
	position: absolute;
	z-index: 4;
	width: 250px; height: 150px;
	background: rgba(255,255,255,0.15);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.3);
	border-radius: 15px;
}
.namazj-mhero-glass-bg.left {
	bottom: -20px; left: -80px;
	transform: rotate(-10deg);
}
.namazj-mhero-glass-bg.right {
	bottom: -10px; right: -70px;
	transform: rotate(10deg);
}
/* FLOATING ICONS */
.namazj-mhero-icon {
	position: absolute;
	z-index: 6;
	width: 60px; height: 60px;
	border-radius: 16px;
	display: flex; align-items: center; justify-content: center;
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}
.namazj-mhero-icon svg { width: 30px; height: 30px; color: #fff; }
.namazj-mhero-icon.float-icon-1 {
	top: -20px; right: -30px;
	background: #0A2472; /* Checkmark/Med */
	animation: floatAnim 4s infinite ease-in-out alternate;
}
.namazj-mhero-icon.float-icon-2 {
	bottom: 40px; left: -30px;
	background: #2992D7; /* Grad Cap */
	animation: floatAnim 5s infinite ease-in-out alternate-reverse;
}
@keyframes floatAnim {
	0% { transform: translateY(0); }
	100% { transform: translateY(-20px); }
}
/* MEDIA QUERIES */
.namazj-mhero-category-logo-float {
	position: absolute;
	top: -60px;
	right: 5%;
	max-width: 200px;
	background: #fff;
	padding: 10px;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.1);
	z-index: 10;
	animation: floatAnimSlow 5s ease-in-out infinite alternate-reverse;
}
.namazj-mhero-category-logo-float img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 8px;
}
@media (max-width: 768px) {
	.namazj-mhero-category-logo-float {
		position: relative;
		top: 0;
		right: 0;
		margin: 0 auto 20px auto;
	}
	.namazj-mhero-title { font-size: 40px; }
	.namazj-glass-body { flex-direction: column; }
	.namazj-mhero-glass-bg { display: none; }
}


/* =========================================================================
   Modern Contact Widget
   ========================================================================= */
.namazj-modern-contact-wrapper {
	font-family: var(--namazj-font);
	padding: 40px 20px;
}
.namazj-mc-main-heading {
	text-align: center;
	color: var(--namazj-primary, #0A2472);
	font-size: 2.2rem;
	font-weight: 700;
	margin-bottom: 40px;
}
.namazj-mc-container {
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
	align-items: stretch;
	justify-content: center;
	position: relative;
}
.namazj-mc-left {
	flex: 1;
	background: #ffffff;
	border-radius: 20px;
	box-shadow: 0 10px 40px rgba(0,0,0,0.05);
	padding: 50px;
	padding-right: 80px; /* Space for overlap */
	z-index: 1;
}
.namazj-mc-right {
	width: 350px;
	background: var(--namazj-primary, #0A2472);
	border-radius: 20px;
	padding: 40px 30px;
	color: #ffffff;
	margin-left: -40px;
	margin-top: 30px;
	margin-bottom: 30px;
	z-index: 2;
	position: relative;
	box-shadow: 0 15px 40px rgba(10,36,114,0.3);
	display: flex;
	flex-direction: column;
}

/* Left Form Typography */
.namazj-mc-title {
	font-size: 1.8rem;
	font-weight: 700;
	color: #1e293b;
	margin-bottom: 10px;
}
.namazj-mc-subtitle {
	font-size: 0.95rem;
	color: #64748b;
	margin-bottom: 30px;
	line-height: 1.6;
}

/* Form Layout */
.namazj-mc-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 20px;
}
.namazj-mc-col {
	display: flex;
	flex-direction: column;
}
.namazj-mc-col.namazj-mc-full {
	grid-column: span 2;
}
.namazj-mc-col label {
	font-size: 0.85rem;
	font-weight: 600;
	color: #1e293b;
	margin-bottom: 8px;
}
.namazj-mc-col input, 
.namazj-mc-col textarea {
	border: 1px solid #e2e8f0;
	border-radius: 30px;
	padding: 12px 20px;
	font-size: 0.95rem;
	font-family: inherit;
	background: #ffffff;
	transition: all 0.3s ease;
	outline: none;
}
.namazj-mc-col textarea {
	border-radius: 20px;
	resize: vertical;
}
.namazj-mc-col input:focus, 
.namazj-mc-col textarea:focus {
	border-color: var(--namazj-primary, #0A2472);
	box-shadow: 0 0 0 3px rgba(10,36,114,0.1);
}

/* Phone Wrap */
.namazj-mc-phone-wrap {
	display: flex;
	border: 1px solid #e2e8f0;
	border-radius: 30px;
	overflow: hidden;
	background: #ffffff;
}
.namazj-mc-phone-wrap:focus-within {
	border-color: var(--namazj-primary, #0A2472);
	box-shadow: 0 0 0 3px rgba(10,36,114,0.1);
}
.namazj-mc-country-code {
	border: none;
	background: transparent;
	padding: 12px 5px 12px 15px;
	font-weight: 600;
	color: #1e293b;
	outline: none;
	border-right: 1px solid #e2e8f0;
	cursor: pointer;
	width: auto !important;
	min-width: 80px;
	max-width: 120px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%231e293b%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%3E%3C%2Fpolyline%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 25px;
}
.namazj-mc-phone-wrap input {
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	flex: 1;
}

/* Submit Button */
.namazj-mc-submit-wrap {
	display: flex;
	justify-content: flex-end;
	margin-top: 10px;
}
.namazj-mc-submit {
	background: var(--namazj-primary, #0A2472);
	color: #ffffff;
	border: none;
	padding: 14px 32px;
	border-radius: 30px;
	font-weight: 600;
	font-size: 1rem;
	cursor: pointer;
	transition: all 0.3s ease;
}
.namazj-mc-submit:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(10,36,114,0.2);
}

/* Right Info Card */
.namazj-mc-right-title {
	font-size: 1.25rem;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 30px;
	line-height: 1.5;
}
.namazj-mc-contact-list {
	display: flex;
	flex-direction: column;
	gap: 15px;
	flex: 1;
}
.namazj-mc-contact-item {
	background: rgba(255,255,255,0.15);
	border-radius: 15px;
	padding: 15px;
	display: flex;
	align-items: center;
	gap: 15px;
	transition: background 0.3s ease;
}
.namazj-mc-contact-item:hover {
	background: rgba(255,255,255,0.25);
}
.namazj-mc-ci-icon {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.namazj-mc-ci-icon svg {
	width: 100%;
	height: 100%;
	stroke: rgba(255,255,255,0.8);
}
.namazj-mc-ci-text {
	display: flex;
	flex-direction: column;
}
.namazj-mc-ci-text span {
	font-size: 0.8rem;
	color: rgba(255,255,255,0.8);
	margin-bottom: 2px;
}
.namazj-mc-ci-text strong {
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.5px;
}

/* Socials */
.namazj-mc-socials-wrap {
	margin-top: 40px;
	border-top: 1px solid rgba(255,255,255,0.1);
	padding-top: 20px;
}
.namazj-mc-social-head {
	display: block;
	font-size: 0.9rem;
	font-weight: 600;
	margin-bottom: 15px;
}
.namazj-mc-social-icons {
	display: flex;
	gap: 15px;
}
.namazj-mc-social-icons a {
	color: #ffffff;
	font-size: 1.2rem;
	transition: all 0.3s ease;
	opacity: 0.8;
}
.namazj-mc-social-icons a:hover {
	opacity: 1;
	transform: scale(1.1);
}

/* Responsive */
@media (max-width: 992px) {
	.namazj-mc-container {
		flex-direction: column;
		align-items: center;
	}
	.namazj-mc-left {
		padding: 30px;
		width: 100%;
		border-radius: 20px 20px 0 0;
	}
	.namazj-mc-right {
		width: 100%;
		margin: -20px 0 0 0;
		border-radius: 20px;
	}
}
@media (max-width: 768px) {
	.namazj-mc-row {
		grid-template-columns: 1fr;
	}
}


.namazj-mc-social-icons a i {
	font-size: 1.4rem;
}
.namazj-mc-social-icons a svg {
	width: 22px;
	height: 22px;
	fill: currentColor;
}


.namazj-mc-social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* =========================================================================
   WooCommerce Checkout Optimizations
   ========================================================================= */
.woocommerce-checkout input[type=" text\],
.woocommerce-checkout input[type=\email\],
.woocommerce-checkout input[type=\tel\],
.woocommerce-checkout input[type=\password\],
.woocommerce-checkout select,
.woocommerce-checkout textarea {
 border: 1px solid #e2e8f0 !important;
 border-radius: 30px !important;
 padding: 16px 25px !important;
 font-size: 1.05rem !important;
 background: #ffffff !important;
 transition: all 0.3s ease !important;
 outline: none !important;
 width: 100% !important;
 box-shadow: 0 4px 6px rgba(0,0,0,0.02) !important;
}

.woocommerce-checkout input[type=\text\]:focus,
.woocommerce-checkout input[type=\email\]:focus,
.woocommerce-checkout input[type=\tel\]:focus,
.woocommerce-checkout input[type=\password\]:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
 border-color: var(--namazj-primary, #0A2472) !important;
 box-shadow: 0 0 0 4px rgba(10,36,114,0.1) !important;
}

.woocommerce-checkout label {
 font-size: 0.95rem;
 font-weight: 600;
 color: #1e293b;
 margin-bottom: 10px;
 display: block;
}

.woocommerce-checkout .form-row {
 margin-bottom: 25px;
}
.woocommerce-checkout h3 {
 font-size: 1.8rem;
 font-weight: 700;
 color: var(--namazj-primary, #0A2472);
 margin-bottom: 25px;
}


/* Hide WooCommerce View Cart injected link */
a.added_to_cart.wc-forward {
    display: none !important;
}


/* Make Classic Checkout look Premium */

/* Premium SaaS Checkout Layout */

/* Wrap the entire checkout form */
form.checkout {
    display: grid !important;
    grid-template-columns: 1fr 1.2fr !important;
    gap: 0px !important;
    max-width: 1100px !important;
    margin: 60px auto !important;
    background: #eef2fb !important;
    border-radius: 20px !important;
    padding: 0 !important;
    position: relative;
    box-shadow: 0 20px 50px rgba(0,0,0,0.05) !important;
    overflow: hidden !important;
}

/* Left Column: Info Box (We use order review for this) */
form.checkout #order_review_heading,
form.checkout #order_review {
    display: contents !important;
}

form.checkout .woocommerce-checkout-review-order-table {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 3 !important;
    background: #c3d2f7 !important;
    padding: 50px 40px !important;
    border-radius: 20px 0 0 20px !important;
    box-shadow: none !important;
    margin: 0 !important;
    height: 100%;
}

form.checkout #order_review_heading {
    display: none !important; /* Hide standard heading */
}

/* Right Column: Customer Details & Payment Box */
form.checkout #customer_details {
    grid-column: 2 / 3 !important;
    grid-row: 1 / 2 !important;
    background: #fdfdfe !important;
    padding: 50px 50px 20px 50px !important;
    border-radius: 0 20px 0 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

form.checkout #payment {
    grid-column: 2 / 3 !important;
    grid-row: 2 / 3 !important;
    background: #fdfdfe !important;
    padding: 0 50px 50px 50px !important;
    border-radius: 0 0 20px 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Form Fields Styling */
form.checkout .woocommerce-billing-fields__field-wrapper {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 20px !important;
}
form.checkout #billing_email_field,
form.checkout #billing_phone_field,
form.checkout .create-account {
    grid-column: 1 / -1 !important;
}

form.checkout .woocommerce-billing-fields h3 {
    font-size: 1.2rem !important;
    color: #4a5568 !important;
    margin-bottom: 25px !important;
    border: none !important;
    padding: 0 !important;
}

form.checkout input[type="text"],
form.checkout input[type="email"],
form.checkout input[type="tel"],
form.checkout input[type="password"] {
    border: 1px solid #d2d6dc !important;
    border-radius: 8px !important;
    padding: 12px 18px !important;
    font-size: 0.95rem !important;
    background: #f9fafb !important;
    color: #4a5568 !important;
    transition: all 0.2s !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

form.checkout input[type="text"]:focus,
form.checkout input[type="email"]:focus,
form.checkout input[type="tel"]:focus,
form.checkout input[type="password"]:focus {
    background: #fff !important;
    border-color: #5b6af0 !important;
    box-shadow: 0 0 0 3px rgba(91,106,240,0.2) !important;
}

form.checkout label {
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    color: #4a5568 !important;
    margin-bottom: 8px !important;
    display: block !important;
}

form.checkout .woocommerce-additional-fields {
    display: none !important;
}

/* Place Order Button */
form.checkout #place_order {
    background: linear-gradient(135deg, #5b6af0 0%, #8a5ef0 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 15px 30px !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    width: auto !important;
    float: left !important;
    box-shadow: 0 10px 20px rgba(91,106,240,0.3) !important;
    transition: all 0.3s ease !important;
}
form.checkout #place_order:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 15px 25px rgba(91,106,240,0.4) !important;
}

/* Order Review Table Styling (Left Box) */
form.checkout .woocommerce-checkout-review-order-table th,
form.checkout .woocommerce-checkout-review-order-table td {
    border: none !important;
    background: transparent !important;
    color: #1e3a8a !important;
}
form.checkout .woocommerce-checkout-review-order-table thead th {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    padding-bottom: 20px !important;
}

@media (max-width: 900px) {
    form.checkout {
        grid-template-columns: 1fr !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 20px !important;
    }
    form.checkout .woocommerce-checkout-review-order-table,
    form.checkout #customer_details,
    form.checkout #payment {
        grid-column: 1 / -1 !important;
        grid-row: auto !important;
        border-radius: 20px !important;
        margin-bottom: 20px !important;
    }
    form.checkout .woocommerce-checkout-review-order-table {
        padding: 30px !important;
    }
    form.checkout #customer_details,
    form.checkout #payment {
        padding: 30px !important;
    }
}

/* ==========================================================================
   Login & Registration Widget
   ========================================================================== */
.namazj-login-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 80px 20px;
	background: linear-gradient(135deg, #e0f2fe 0%, #ffffff 100%);
	font-family: 'Inter', sans-serif;
}

.namazj-login-card {
	background: #ffffff;
	border-radius: 30px;
	box-shadow: 0 30px 60px rgba(10, 36, 114, 0.08);
	width: 100%;
	max-width: 450px;
	padding: 50px 40px;
	text-align: center;
	position: relative;
}

.namazj-login-icon-box {
	width: 64px;
	height: 64px;
	background: #f1f5f9;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 30px auto;
	color: #0A2472;
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}
.namazj-login-icon-box i, .namazj-login-icon-box svg {
	width: 28px;
	height: 28px;
	font-size: 28px;
	fill: currentColor;
}

.namazj-auth-panel {
	display: none;
	animation: namazjFadeIn 0.4s ease forwards;
}
.namazj-auth-panel.is-active {
	display: block;
}

@keyframes namazjFadeIn {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}

.namazj-login-title {
	font-size: 1.8rem;
	font-weight: 800;
	color: #111827;
	margin: 0 0 10px 0;
	letter-spacing: -0.5px;
}

.namazj-login-subtitle {
	font-size: 1rem;
	color: #64748b;
	margin: 0 0 30px 0;
	line-height: 1.5;
}

.namazj-auth-form {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.namazj-input-group {
	position: relative;
	display: flex;
	align-items: center;
}

.namazj-input-icon {
	position: absolute;
	left: 20px;
	color: #94a3b8;
	display: flex;
}
.namazj-input-icon svg {
	width: 20px;
	height: 20px;
}

.namazj-input-group input {
	width: 100% !important;
	background: #f8fafc !important;
	border: 1px solid transparent !important;
	border-radius: 16px !important;
	padding: 16px 20px 16px 50px !important;
	font-size: 1rem !important;
	color: #334155 !important;
	transition: all 0.3s ease !important;
	outline: none !important;
}
.namazj-input-group input:focus {
	background: #ffffff;
	border-color: #2992D7;
	box-shadow: 0 0 0 4px rgba(41, 146, 215, 0.1);
}
.namazj-input-group input::placeholder {
	color: #94a3b8;
}

.namazj-auth-meta {
	display: flex;
	justify-content: flex-end;
	margin-top: 5px;
	margin-bottom: 5px;
}

.namazj-forgot-pwd {
	font-size: 0.9rem;
	color: #64748b;
	text-decoration: none;
	font-weight: 500;
	transition: color 0.3s ease;
}
.namazj-forgot-pwd:hover {
	color: #0A2472;
}

.namazj-login-btn {
	display: inline-block !important;
	background: #0A2472 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 16px !important;
	padding: 16px !important;
	font-size: 1.05rem !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: all 0.3s ease !important;
	margin-top: 10px !important;
	text-align: center !important;
	text-decoration: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.namazj-login-btn:hover {
	background: #2992D7;
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(41, 146, 215, 0.2);
}

.namazj-auth-divider {
	position: relative;
	text-align: center;
	margin: 30px 0;
}
.namazj-auth-divider::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	background: #e2e8f0;
	z-index: 1;
}
.namazj-auth-divider span {
	position: relative;
	z-index: 2;
	background: #ffffff;
	padding: 0 15px;
	color: #94a3b8;
	font-size: 0.9rem;
}

.namazj-auth-switch {
	font-size: 0.95rem;
	color: #64748b;
}
.namazj-auth-switch a {
	color: #0A2472;
	font-weight: 600;
	text-decoration: none;
	margin-left: 5px;
}
.namazj-auth-switch a:hover {
	text-decoration: underline;
}

@media (max-width: 480px) {
	.namazj-login-wrapper {
		padding: 40px 15px;
	}
	.namazj-login-card {
		padding: 40px 25px;
	}
}