/*
 * Shula Home Visual Engine
 * Lightweight visual variations for the front page.
 */

.nsv-home-design{
	--nsv-home-accent: var(--nsv-primary, #0f766e);
	--nsv-home-soft: #f8fafc;
	--nsv-home-card: #ffffff;
	--nsv-home-section-space: 70px;
}

.nsv-home-design .container{
	transition:max-width .2s ease;
}

.nsv-home-width-narrow .container{max-width:1040px}
.nsv-home-width-wide .container{max-width:1280px}
.nsv-home-width-full .container{max-width:min(1480px,calc(100% - 28px))}

.nsv-home-spacing-compact{--nsv-home-section-space:42px}
.nsv-home-spacing-normal{--nsv-home-section-space:70px}
.nsv-home-spacing-airy{--nsv-home-section-space:96px}

.nsv-home-design .section{
	padding-top:var(--nsv-home-section-space);
	padding-bottom:var(--nsv-home-section-space);
	position:relative;
}

.nsv-home-design .feature-card,
.nsv-home-design .post-card,
.nsv-home-design .nsv-home-media-card{
	background:var(--nsv-home-card,#fff);
}

.nsv-home-cards-bordered .feature-card,
.nsv-home-cards-bordered .post-card,
.nsv-home-cards-bordered .nsv-home-media-card{
	border:1px solid color-mix(in srgb,var(--nsv-home-accent,#0f766e) 24%,#e5e7eb)!important;
	box-shadow:none!important;
}

.nsv-home-cards-elevated .feature-card,
.nsv-home-cards-elevated .post-card,
.nsv-home-cards-elevated .nsv-home-media-card{
	box-shadow:0 28px 80px rgba(15,23,42,.12)!important;
}

.nsv-home-cards-flat .feature-card,
.nsv-home-cards-flat .post-card,
.nsv-home-cards-flat .nsv-home-media-card{
	box-shadow:none!important;
	border:1px solid rgba(15,23,42,.06)!important;
}

.nsv-home-cards-glass .feature-card,
.nsv-home-cards-glass .post-card,
.nsv-home-cards-glass .nsv-home-media-card{
	background:rgba(255,255,255,.72)!important;
	backdrop-filter:blur(18px);
	-webkit-backdrop-filter:blur(18px);
	border:1px solid rgba(255,255,255,.7)!important;
}

.nsv-home-heading-centered .section-head{
	text-align:center;
	margin-inline:auto;
}

.nsv-home-heading-centered .section-head p{
	margin-inline:auto;
}

.nsv-home-heading-boxed .section-head{
	background:linear-gradient(135deg,var(--nsv-home-card,#fff),color-mix(in srgb,var(--nsv-home-accent,#0f766e) 7%,#fff));
	border:1px solid rgba(15,23,42,.06);
	border-radius:28px;
	padding:24px;
	box-shadow:0 18px 60px rgba(15,23,42,.06);
}

.nsv-home-heading-line .section-head h2{
	position:relative;
	padding-inline-start:18px;
}

.nsv-home-heading-line .section-head h2:before{
	content:"";
	position:absolute;
	inset-inline-start:0;
	top:.2em;
	bottom:.2em;
	width:5px;
	border-radius:999px;
	background:var(--nsv-home-accent,#0f766e);
}

.nsv-home-shape-soft .section:nth-of-type(even){
	background:linear-gradient(180deg,color-mix(in srgb,var(--nsv-home-soft,#f8fafc) 88%,#fff),#fff);
}

.nsv-home-shape-layered .section{
	border-radius:40px;
	margin-block:26px;
	background:linear-gradient(135deg,rgba(255,255,255,.74),color-mix(in srgb,var(--nsv-home-soft,#f8fafc) 88%,#fff));
}

.nsv-home-shape-framed .section.container{
	border:1px solid rgba(15,23,42,.06);
	border-radius:38px;
	padding-inline:28px;
	box-shadow:0 20px 70px rgba(15,23,42,.045);
}

.nsv-home-shape-pattern .section:before{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	opacity:.28;
	background-image:
		radial-gradient(circle at 18px 18px,color-mix(in srgb,var(--nsv-home-accent,#0f766e) 15%,transparent) 2px,transparent 2px);
	background-size:34px 34px;
	mask-image:linear-gradient(180deg,transparent,black 20%,black 70%,transparent);
}

.nsv-home-decorated .section-head:after{
	content:"";
	display:block;
	width:78px;
	height:5px;
	border-radius:999px;
	margin-top:18px;
	background:linear-gradient(90deg,var(--nsv-home-accent,#0f766e),transparent);
}

.nsv-home-heading-centered.nsv-home-decorated .section-head:after{
	margin-inline:auto;
}

.nsv-home-numbered{
	counter-reset:nsv-home-section;
}

.nsv-home-numbered .section > .section-head,
.nsv-home-numbered .section .container > .section-head{
	counter-increment:nsv-home-section;
}

.nsv-home-numbered .section-head .eyebrow:before{
	content:counter(nsv-home-section, decimal-leading-zero) " / ";
	color:var(--nsv-home-accent,#0f766e);
	font-weight:900;
}

/* Presets */
.nsv-home-preset-official{--nsv-home-accent:#1d4ed8;--nsv-home-soft:#f3f7ff}
.nsv-home-preset-modern{--nsv-home-accent:#7c3aed;--nsv-home-soft:#faf5ff}
.nsv-home-preset-media{--nsv-home-accent:#dc2626;--nsv-home-soft:#fff5f5}
.nsv-home-preset-community{--nsv-home-accent:#16a34a;--nsv-home-soft:#f0fdf4}
.nsv-home-preset-national{--nsv-home-accent:#0f766e;--nsv-home-soft:#fff7ed}
.nsv-home-preset-calm{--nsv-home-accent:#0f766e;--nsv-home-soft:#f8fafc}

/* NSV 2.6.1 - Eid design presets */
.nsv-home-preset-eid-fitr{
	--nsv-home-accent:#0f9f7a;
	--nsv-home-soft:#ecfdf5;
	--nsv-eid-accent:#f59e0b;
	--nsv-eid-pattern:"✦";
}

.nsv-home-preset-eid-adha{
	--nsv-home-accent:#7c2d12;
	--nsv-home-soft:#fff7ed;
	--nsv-eid-accent:#16a34a;
	--nsv-eid-pattern:"◆";
}

.nsv-home-preset-eid-fitr .hero-section,
.nsv-home-preset-eid-adha .hero-section{
	position:relative;
	overflow:hidden;
	background:
		radial-gradient(circle at 12% 18%, color-mix(in srgb,var(--nsv-eid-accent) 18%,transparent), transparent 26%),
		radial-gradient(circle at 88% 12%, color-mix(in srgb,var(--nsv-home-accent) 16%,transparent), transparent 24%),
		linear-gradient(135deg,var(--nsv-home-soft),#ffffff 52%,color-mix(in srgb,var(--nsv-eid-accent) 10%,#fff));
}

.nsv-home-preset-eid-fitr .hero-section:after,
.nsv-home-preset-eid-adha .hero-section:after{
	content:var(--nsv-eid-pattern) "  " var(--nsv-eid-pattern) "  " var(--nsv-eid-pattern);
	position:absolute;
	left:28px;
	top:24px;
	z-index:0;
	color:color-mix(in srgb,var(--nsv-eid-accent) 78%,#fff);
	font-size:2.2rem;
	letter-spacing:10px;
	opacity:.28;
	pointer-events:none;
}

.nsv-home-preset-eid-fitr .eyebrow:before{
	content:"☾";
	display:inline-grid;
	place-items:center;
	width:28px;
	height:28px;
	margin-inline-end:8px;
	border-radius:999px;
	background:color-mix(in srgb,var(--nsv-eid-accent) 18%,#fff);
	color:var(--nsv-eid-accent);
}

.nsv-home-preset-eid-adha .eyebrow:before{
	content:"◆";
	display:inline-grid;
	place-items:center;
	width:28px;
	height:28px;
	margin-inline-end:8px;
	border-radius:999px;
	background:color-mix(in srgb,var(--nsv-eid-accent) 18%,#fff);
	color:var(--nsv-eid-accent);
}

.nsv-home-preset-eid-fitr .section-head .eyebrow:after{
	content:" ✦";
	color:var(--nsv-eid-accent);
}

.nsv-home-preset-eid-adha .section-head .eyebrow:after{
	content:" ◆";
	color:var(--nsv-eid-accent);
}

.nsv-home-preset-eid-fitr .feature-card:before,
.nsv-home-preset-eid-fitr .nsv-home-service-card:before,
.nsv-home-preset-eid-adha .feature-card:before,
.nsv-home-preset-eid-adha .nsv-home-service-card:before{
	content:var(--nsv-eid-pattern);
	position:absolute;
	inset:14px auto auto 16px;
	color:color-mix(in srgb,var(--nsv-eid-accent) 70%,#fff);
	font-size:1.1rem;
	opacity:.72;
}

.nsv-home-preset-eid-fitr .feature-card,
.nsv-home-preset-eid-fitr .nsv-home-service-card,
.nsv-home-preset-eid-adha .feature-card,
.nsv-home-preset-eid-adha .nsv-home-service-card{
	position:relative;
	border-color:color-mix(in srgb,var(--nsv-eid-accent) 22%,var(--nsv-border,#e5e7eb))!important;
}

.nsv-home-preset-eid-fitr .hero-badge span:before{
	content:"☾ ";
}

.nsv-home-preset-eid-adha .hero-badge span:before{
	content:"◆ ";
}

@media (max-width:768px){
	.nsv-home-preset-eid-fitr .hero-section,
	.nsv-home-preset-eid-adha .hero-section{
		min-height:auto!important;
		padding-top:22px!important;
		padding-bottom:24px!important;
	}

	.nsv-home-preset-eid-fitr .hero-section:after,
	.nsv-home-preset-eid-adha .hero-section:after{
		left:14px;
		top:10px;
		font-size:1.4rem;
		letter-spacing:5px;
		opacity:.2;
	}
}


/* Services layouts */
.nsv-home-services-layout-compact .nsv-home-services-grid{
	grid-template-columns:repeat(4,minmax(0,1fr));
}

.nsv-home-services-layout-compact .nsv-home-service-card{
	min-height:auto;
	padding:22px!important;
}

.nsv-home-services-layout-horizontal .nsv-home-services-grid{
	grid-template-columns:1fr!important;
}

.nsv-home-services-layout-horizontal .nsv-home-service-card{
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:center;
	gap:18px;
	min-height:auto;
}

.nsv-home-services-layout-horizontal .nsv-home-service-card p{
	margin-bottom:0;
}

/* About layouts */
.nsv-home-about-layout-cards .institutional-section .feature-grid{
	grid-template-columns:repeat(2,minmax(0,1fr));
}

.nsv-home-about-layout-cards .compact-card{
	min-height:220px;
	padding:34px;
}

.nsv-home-about-layout-timeline .institutional-section .feature-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:18px;
	position:relative;
}

.nsv-home-about-layout-timeline .compact-card{
	display:grid;
	grid-template-columns:160px 1fr;
	gap:18px;
	align-items:start;
	border-inline-start:5px solid var(--nsv-home-accent,#0f766e);
}

.nsv-home-about-layout-compact .compact-card{
	padding:20px;
	min-height:auto;
}

/* Posts layouts */
.nsv-home-posts-layout-grid .nsv-news-slider-arrow{
	display:none!important;
}

.nsv-home-posts-layout-grid .nsv-news-mobile-slider{
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr));
	overflow:visible!important;
}

.nsv-home-posts-layout-compact .nsv-news-mobile-slider{
	display:grid!important;
	grid-template-columns:repeat(2,minmax(0,1fr));
}

.nsv-home-posts-layout-featured .nsv-news-mobile-slider{
	display:grid!important;
	grid-template-columns:1.25fr 1fr 1fr;
}

.nsv-home-posts-layout-featured .nsv-news-mobile-slider > *:first-child{
	grid-row:span 2;
}

/* Motion */
.nsv-home-motion-none .feature-card,
.nsv-home-motion-none .post-card,
.nsv-home-motion-none .nsv-home-media-card{
	transition:none!important;
}

.nsv-home-motion-float .feature-card:hover,
.nsv-home-motion-float .post-card:hover,
.nsv-home-motion-float .nsv-home-media-card:hover{
	transform:translateY(-8px) scale(1.01)!important;
}

/* Dynamic CSS variables injected from customizer. */
.nsv-home-design{
	--nsv-home-accent: var(--nsv-home-custom-accent,var(--nsv-home-accent));
	--nsv-home-soft: var(--nsv-home-custom-soft,var(--nsv-home-soft));
	--nsv-home-card: var(--nsv-home-custom-card,#fff);
}

@media(max-width:980px){
	.nsv-home-services-layout-compact .nsv-home-services-grid,
	.nsv-home-posts-layout-grid .nsv-news-mobile-slider,
	.nsv-home-posts-layout-featured .nsv-news-mobile-slider{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}

@media(max-width:768px){
	.nsv-home-mobile-slider .nsv-home-services-grid,
	.nsv-home-mobile-slider .institutional-section .feature-grid{
		display:flex!important;
		overflow-x:auto;
		scroll-snap-type:x mandatory;
		gap:14px!important;
		margin-inline:-16px;
		padding-inline:16px;
		scrollbar-width:none;
	}
	.nsv-home-mobile-slider .nsv-home-services-grid::-webkit-scrollbar,
	.nsv-home-mobile-slider .institutional-section .feature-grid::-webkit-scrollbar{
		display:none;
	}
	.nsv-home-mobile-slider .nsv-home-service-card,
	.nsv-home-mobile-slider .institutional-section .feature-card{
		flex:0 0 88%;
		scroll-snap-align:center;
	}
	.nsv-home-about-layout-timeline .compact-card,
	.nsv-home-services-layout-horizontal .nsv-home-service-card{
		grid-template-columns:1fr;
	}
	.nsv-home-posts-layout-grid .nsv-news-mobile-slider,
	.nsv-home-posts-layout-compact .nsv-news-mobile-slider,
	.nsv-home-posts-layout-featured .nsv-news-mobile-slider{
		display:flex!important;
		grid-template-columns:none;
		overflow-x:auto!important;
		scroll-snap-type:x mandatory;
	}
}


/* Advanced visual engine - safe */
.nsv-home-shadow-none .feature-card,
.nsv-home-shadow-none .post-card,
.nsv-home-shadow-none .nsv-home-media-card{box-shadow:none!important}

.nsv-home-shadow-soft .feature-card,
.nsv-home-shadow-soft .post-card,
.nsv-home-shadow-soft .nsv-home-media-card{box-shadow:0 12px 40px rgba(15,23,42,.06)!important}

.nsv-home-shadow-medium .feature-card,
.nsv-home-shadow-medium .post-card,
.nsv-home-shadow-medium .nsv-home-media-card{box-shadow:0 22px 60px rgba(15,23,42,.12)!important}

.nsv-home-shadow-strong .feature-card,
.nsv-home-shadow-strong .post-card,
.nsv-home-shadow-strong .nsv-home-media-card{box-shadow:0 30px 90px rgba(15,23,42,.18)!important}

.nsv-home-buttons-rounded .btn{border-radius:16px!important}
.nsv-home-buttons-square .btn{border-radius:0!important}
.nsv-home-buttons-pill .btn{border-radius:999px!important}
.nsv-home-buttons-glass .btn{
	background:rgba(255,255,255,.18)!important;
	backdrop-filter:blur(18px);
	border:1px solid rgba(255,255,255,.26)!important;
}

.nsv-home-header-glass .site-header{
	backdrop-filter:blur(18px);
	background:rgba(255,255,255,.75)!important;
}

.nsv-home-header-floating .site-header{
	margin:16px auto;
	width:min(1280px,calc(100% - 24px));
	border-radius:28px;
}

.nsv-home-header-minimal .site-header{
	box-shadow:none!important;
	border-bottom:1px solid rgba(15,23,42,.06);
}

.nsv-home-header-bold .site-header{
	background:#0f172a!important;
}

.nsv-home-hover-zoom .feature-card:hover,
.nsv-home-hover-zoom .post-card:hover,
.nsv-home-hover-zoom .nsv-home-media-card:hover{
	transform:translateY(-6px) scale(1.02)!important;
}

.nsv-home-glow .feature-card,
.nsv-home-glow .nsv-home-media-card{
	box-shadow:0 18px 64px rgba(15,118,110,.10)!important;
}


/* Advanced visual engine - extra modern options */
.nsv-home-hero-layout-center .hero-grid{
	grid-template-columns:1fr!important;
	text-align:center;
}
.nsv-home-hero-layout-center .hero-actions{
	justify-content:center;
}
.nsv-home-hero-layout-wide .hero-section{
	min-height:720px;
	display:flex;
	align-items:center;
}
.nsv-home-hero-layout-compact .hero-section{
	padding-block:56px!important;
	min-height:auto!important;
}
.nsv-home-hero-layout-compact .hero-visual{
	display:none;
}

.nsv-home-hover-none .feature-card:hover,
.nsv-home-hover-none .post-card:hover,
.nsv-home-hover-none .nsv-home-media-card:hover{
	transform:none!important;
}
.nsv-home-hover-lift .feature-card:hover,
.nsv-home-hover-lift .post-card:hover,
.nsv-home-hover-lift .nsv-home-media-card:hover{
	transform:translateY(-6px)!important;
}
.nsv-home-hover-zoom .feature-card:hover,
.nsv-home-hover-zoom .post-card:hover,
.nsv-home-hover-zoom .nsv-home-media-card:hover{
	transform:scale(1.025)!important;
}
.nsv-home-hover-glow .feature-card:hover,
.nsv-home-hover-glow .post-card:hover,
.nsv-home-hover-glow .nsv-home-media-card:hover{
	box-shadow:0 28px 90px color-mix(in srgb,var(--nsv-home-accent,#0f766e) 18%,rgba(15,23,42,.08))!important;
}
.nsv-home-hover-slide .feature-card:hover,
.nsv-home-hover-slide .post-card:hover,
.nsv-home-hover-slide .nsv-home-media-card:hover{
	transform:translateX(-4px)!important;
}

.nsv-home-divider-line .section:not(:last-child)::after{
	content:"";
	position:absolute;
	inset-inline:10%;
	bottom:0;
	height:1px;
	background:linear-gradient(90deg,transparent,rgba(15,23,42,.12),transparent);
}
.nsv-home-divider-glow .section:not(:last-child)::after{
	content:"";
	position:absolute;
	inset-inline:18%;
	bottom:-1px;
	height:2px;
	background:linear-gradient(90deg,transparent,var(--nsv-home-accent,#0f766e),transparent);
	filter:blur(.3px);
	opacity:.45;
}
.nsv-home-divider-wave .section:not(:last-child)::after{
	content:"";
	position:absolute;
	right:0;
	left:0;
	bottom:-1px;
	height:18px;
	background:radial-gradient(50% 16px at 50% 0,rgba(15,118,110,.12),transparent 70%);
}

.nsv-home-texture-dots{
	background-image:radial-gradient(circle at 16px 16px,rgba(15,23,42,.045) 2px,transparent 2px);
	background-size:32px 32px;
}
.nsv-home-texture-grid{
	background-image:
		linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),
		linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);
	background-size:38px 38px;
}
.nsv-home-texture-orbs::before{
	content:"";
	position:fixed;
	inset:0;
	pointer-events:none;
	background:
		radial-gradient(circle at 12% 18%,rgba(15,118,110,.10),transparent 24%),
		radial-gradient(circle at 86% 28%,rgba(37,99,235,.08),transparent 20%);
	z-index:-1;
}

.nsv-home-cta-outline .btn-primary{
	background:transparent!important;
	color:var(--nsv-home-accent,#0f766e)!important;
	border:2px solid var(--nsv-home-accent,#0f766e)!important;
}
.nsv-home-cta-gradient .btn-primary{
	background:linear-gradient(135deg,var(--nsv-home-accent,#0f766e),#2563eb)!important;
	border:0!important;
}
.nsv-home-cta-soft .btn-primary{
	background:color-mix(in srgb,var(--nsv-home-accent,#0f766e) 13%,#fff)!important;
	color:var(--nsv-home-accent,#0f766e)!important;
}

.nsv-home-equal-cards .feature-card,
.nsv-home-equal-cards .post-card,
.nsv-home-equal-cards .nsv-home-media-card{
	height:100%;
}

.nsv-home-clean-mode .section::before,
.nsv-home-clean-mode .section::after,
.nsv-home-clean-mode .nsv-home-media-glow{
	display:none!important;
}
.nsv-home-clean-mode .feature-card,
.nsv-home-clean-mode .post-card,
.nsv-home-clean-mode .nsv-home-media-card{
	box-shadow:0 10px 30px rgba(15,23,42,.05)!important;
}

@media(max-width:768px){
	.nsv-home-hero-layout-wide .hero-section{
		min-height:auto;
	}
	.nsv-home-hero-layout-center .hero-grid{
		text-align:center;
	}
}


/* Home sections order, seasonal modes and quick CTA */
.nsv-home-design{
	display:flex;
	flex-direction:column;
}

.nsv-home-section{
	order:var(--nsv-section-order,50);
}

.nsv-home-section-hero{--nsv-section-order:1}
.nsv-home-section-quick-cta{--nsv-section-order:2}
.nsv-home-section-services{--nsv-section-order:3}
.nsv-home-section-about{--nsv-section-order:4}
.nsv-home-section-media{--nsv-section-order:5}
.nsv-home-section-posts{--nsv-section-order:6}

.nsv-home-quick-cta{
	padding:0 0 22px;
	background:linear-gradient(180deg,rgba(255,255,255,0),rgba(248,250,252,.8));
}

.nsv-home-quick-cta-inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	padding:22px 26px;
	border-radius:26px;
	background:linear-gradient(135deg,var(--nsv-home-accent,#0f766e),#2563eb);
	color:#fff;
	box-shadow:0 22px 70px rgba(15,23,42,.14);
}

.nsv-home-quick-cta-inner strong{
	font-size:1.1rem;
	line-height:1.8;
}

.nsv-home-quick-cta-inner .btn{
	background:#fff!important;
	color:var(--nsv-home-accent,#0f766e)!important;
	border:0!important;
	white-space:nowrap;
}

/* Seasonal modes */
.nsv-home-season-ramadan{
	--nsv-home-accent:#15803d;
	--nsv-home-soft:#f7fee7;
}

.nsv-home-season-ramadan .hero-section{
	background:
	radial-gradient(circle at 15% 20%,rgba(250,204,21,.14),transparent 26%),
	linear-gradient(135deg,#064e3b,#166534)!important;
}

.nsv-home-season-national{
	--nsv-home-accent:#0f766e;
	--nsv-home-soft:#ecfdf5;
}

.nsv-home-season-national .hero-section{
	background:linear-gradient(135deg,#006c35,#ffffff)!important;
}

.nsv-home-season-eid{
	--nsv-home-accent:#b45309;
	--nsv-home-soft:#fffbeb;
}

.nsv-home-season-eid .hero-section{
	background:linear-gradient(135deg,#fef3c7,#ffffff,#ecfeff)!important;
}

.nsv-home-season-campaign{
	--nsv-home-accent:#dc2626;
	--nsv-home-soft:#fff1f2;
}

.nsv-home-season-campaign .hero-section{
	background:linear-gradient(135deg,#7f1d1d,#dc2626,#f97316)!important;
}

/* News card styles */
.nsv-home-news-style-magazine .post-card:first-child{
	grid-column:span 2;
	grid-row:span 2;
}

.nsv-home-news-style-glass .post-card{
	background:rgba(255,255,255,.68)!important;
	backdrop-filter:blur(18px);
	border:1px solid rgba(255,255,255,.62)!important;
}

.nsv-home-news-style-compact .post-card{
	display:grid;
	grid-template-columns:120px 1fr;
	min-height:auto;
}

.nsv-home-news-style-compact .post-card img{
	height:100%;
	object-fit:cover;
}

/* Inline dynamic order is added from functions.php */
@media(max-width:768px){
	.nsv-home-quick-cta-inner{
		display:grid;
		text-align:center;
	}
	.nsv-home-news-style-compact .post-card{
		grid-template-columns:1fr;
	}
}


/* Visible preset correction - stronger visual differences */
.nsv-home-preset-calm{--nsv-home-accent:#0f766e;--nsv-home-soft:#f8fafc;--nsv-home-card:#ffffff}
.nsv-home-preset-calm .hero-section{background:linear-gradient(135deg,#f8fafc,#ecfdf5)!important}

.nsv-home-preset-official{--nsv-home-accent:#1d4ed8;--nsv-home-soft:#eff6ff;--nsv-home-card:#ffffff}
.nsv-home-preset-official .hero-section{background:linear-gradient(135deg,#0f172a,#1d4ed8)!important;color:#fff!important}
.nsv-home-preset-official .hero-section h1,.nsv-home-preset-official .hero-section p,.nsv-home-preset-official .hero-section .eyebrow{color:#fff!important}
.nsv-home-preset-official .section-head h2,.nsv-home-preset-official .feature-card h3{color:#1d4ed8!important}

.nsv-home-preset-modern{--nsv-home-accent:#7c3aed;--nsv-home-soft:#faf5ff;--nsv-home-card:#ffffff}
.nsv-home-preset-modern .hero-section{background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.18),transparent 26%),linear-gradient(135deg,#7c3aed,#2563eb)!important;color:#fff!important}
.nsv-home-preset-modern .hero-section h1,.nsv-home-preset-modern .hero-section p,.nsv-home-preset-modern .hero-section .eyebrow{color:#fff!important}
.nsv-home-preset-modern .feature-card,.nsv-home-preset-modern .post-card,.nsv-home-preset-modern .nsv-home-media-card{border-radius:34px!important}

.nsv-home-preset-media{--nsv-home-accent:#dc2626;--nsv-home-soft:#fff1f2;--nsv-home-card:#ffffff}
.nsv-home-preset-media .hero-section{background:linear-gradient(135deg,#7f1d1d,#dc2626,#f97316)!important;color:#fff!important}
.nsv-home-preset-media .hero-section h1,.nsv-home-preset-media .hero-section p,.nsv-home-preset-media .hero-section .eyebrow{color:#fff!important}
.nsv-home-preset-media .section-head .eyebrow,.nsv-home-preset-media .feature-card h3{color:#dc2626!important}

.nsv-home-preset-community{--nsv-home-accent:#16a34a;--nsv-home-soft:#f0fdf4;--nsv-home-card:#ffffff}
.nsv-home-preset-community .hero-section{background:linear-gradient(135deg,#052e16,#16a34a)!important;color:#fff!important}
.nsv-home-preset-community .hero-section h1,.nsv-home-preset-community .hero-section p,.nsv-home-preset-community .hero-section .eyebrow{color:#fff!important}
.nsv-home-preset-community .feature-card,.nsv-home-preset-community .post-card{background:linear-gradient(145deg,#fff,#f0fdf4)!important}

.nsv-home-preset-national{--nsv-home-accent:#006c35;--nsv-home-soft:#ecfdf5;--nsv-home-card:#ffffff}
.nsv-home-preset-national .hero-section{background:linear-gradient(135deg,rgba(0,108,53,.96),rgba(255,255,255,.78))!important}
.nsv-home-preset-national .hero-section h1{color:#063f25!important}
.nsv-home-preset-national .hero-section p,.nsv-home-preset-national .hero-section .eyebrow{color:#064e3b!important}
.nsv-home-preset-national .feature-card,.nsv-home-preset-national .post-card,.nsv-home-preset-national .nsv-home-media-card{border:1px solid rgba(0,108,53,.18)!important;background:linear-gradient(145deg,#fff,#ecfdf5)!important}

.nsv-home-design .btn-primary{background:var(--nsv-home-accent,#0f766e)!important;border-color:var(--nsv-home-accent,#0f766e)!important}
.nsv-home-design .eyebrow,.nsv-home-design .section-head .eyebrow{color:var(--nsv-home-accent,#0f766e)!important}
.nsv-home-design .section-head:after{background:linear-gradient(90deg,var(--nsv-home-accent,#0f766e),transparent)!important}


/* ===== POWER PRESETS ENGINE ===== */

/* رسمي */
.nsv-home-preset-official .feature-card,
.nsv-home-preset-official .post-card,
.nsv-home-preset-official .nsv-home-media-card{
    border-radius:14px!important;
    border:1px solid rgba(29,78,216,.18)!important;
    box-shadow:0 18px 40px rgba(15,23,42,.08)!important;
}
.nsv-home-preset-official .section-head h2{
    font-size:clamp(2rem,3vw,3rem)!important;
    letter-spacing:-1px;
}

/* عصري */
.nsv-home-preset-modern .hero-section{
    border-radius:0 0 42px 42px!important;
}
.nsv-home-preset-modern .feature-grid,
.nsv-home-preset-modern .posts-grid,
.nsv-home-preset-modern .nsv-home-media-grid{
    gap:32px!important;
}
.nsv-home-preset-modern .feature-card,
.nsv-home-preset-modern .post-card,
.nsv-home-preset-modern .nsv-home-media-card{
    transform:translateY(0);
    backdrop-filter:blur(18px)!important;
    background:rgba(255,255,255,.84)!important;
    border:1px solid rgba(255,255,255,.55)!important;
    box-shadow:0 24px 60px rgba(124,58,237,.16)!important;
}
.nsv-home-preset-modern .feature-card:hover,
.nsv-home-preset-modern .post-card:hover{
    transform:translateY(-8px)!important;
}

/* إعلامي */
.nsv-home-preset-media .hero-section{
    min-height:auto!important;
}
.nsv-home-preset-media .feature-card,
.nsv-home-preset-media .nsv-home-media-card{
    background:#111827!important;
    color:#fff!important;
    border:none!important;
}
.nsv-home-preset-media .feature-card h3,
.nsv-home-preset-media .nsv-home-media-card h3,
.nsv-home-preset-media .feature-card p,
.nsv-home-preset-media .nsv-home-media-card p{
    color:#fff!important;
}
.nsv-home-preset-media .post-card{
    border-right:6px solid #dc2626!important;
}
.nsv-home-preset-media .section-head h2{
    text-transform:uppercase;
}

/* مجتمعي */
.nsv-home-preset-community .feature-card,
.nsv-home-preset-community .post-card{
    border-radius:40px!important;
}
.nsv-home-preset-community .feature-grid{
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;
}
.nsv-home-preset-community .hero-section{
    padding-top:clamp(34px,5vw,76px)!important;
    padding-bottom:clamp(34px,5vw,76px)!important;
}

/* وطني */
.nsv-home-preset-national .hero-section{
    position:relative;
    overflow:hidden;
}
.nsv-home-preset-national .hero-section:before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(255,255,255,.04),rgba(255,255,255,.04)),
        repeating-linear-gradient(
            90deg,
            rgba(255,255,255,.06) 0,
            rgba(255,255,255,.06) 2px,
            transparent 2px,
            transparent 90px
        );
    pointer-events:none;
}
.nsv-home-preset-national .feature-card{
    border-top:5px solid #006c35!important;
}
.nsv-home-preset-national .btn-primary{
    border-radius:999px!important;
}

/* هادئ */
.nsv-home-preset-calm .feature-card,
.nsv-home-preset-calm .post-card{
    box-shadow:none!important;
    border:1px solid rgba(15,118,110,.12)!important;
}
.nsv-home-preset-calm .hero-section{
    min-height:auto!important;
}

/* تغييرات عامة قوية */
.nsv-home-design[class*="nsv-home-preset-"] .feature-card,
.nsv-home-design[class*="nsv-home-preset-"] .post-card,
.nsv-home-design[class*="nsv-home-preset-"] .nsv-home-media-card{
    transition:all .28s ease!important;
}

.nsv-home-design[class*="nsv-home-preset-"] .section-head{
    margin-bottom:42px!important;
}

.nsv-home-design[class*="nsv-home-preset-"] .btn-primary{
    padding:16px 28px!important;
    font-weight:800!important;
    letter-spacing:.3px;
}

@media(max-width:768px){

    .nsv-home-preset-modern .feature-card,
    .nsv-home-preset-modern .post-card{
        border-radius:28px!important;
    }

    .nsv-home-preset-media .hero-section,
    .nsv-home-preset-community .hero-section{
        min-height:auto!important;
        padding-top:90px!important;
        padding-bottom:90px!important;
    }

    .nsv-home-preset-official .section-head h2,
    .nsv-home-preset-modern .section-head h2,
    .nsv-home-preset-media .section-head h2{
        font-size:2rem!important;
    }
}




/* NSV 2.6.0 - Clean mobile hero preset fix
   يعالج مصدر تضخم الهيرو في أنماط الصفحة الرئيسية دون التأثير على سطح المكتب. */
@media (max-width: 768px){
	.nsv-home-preset-calm .hero-section,
	.nsv-home-preset-modern .hero-section,
	.nsv-home-preset-soft .hero-section,
	.nsv-home-preset-clean .hero-section,
	.nsv-home-hero-layout-wide .hero-section{
		min-height: auto !important;
		height: auto !important;
		padding-top: 22px !important;
		padding-bottom: 24px !important;
		align-items: flex-start !important;
	}

	.nsv-home-preset-calm .hero-grid,
	.nsv-home-preset-modern .hero-grid,
	.nsv-home-preset-soft .hero-grid,
	.nsv-home-preset-clean .hero-grid,
	.nsv-home-hero-layout-wide .hero-grid{
		min-height: auto !important;
		grid-template-columns: 1fr !important;
		gap: 16px !important;
		align-items: start !important;
	}

	.hero-content h1{
		font-size: clamp(1.8rem, 7vw, 2.1rem) !important;
		line-height: 1.25 !important;
		margin-bottom: 10px !important;
	}

	.hero-content p{
		font-size: .96rem !important;
		line-height: 1.75 !important;
		margin-bottom: 14px !important;
	}

	.hero-visual{
		width: 100% !important;
		max-width: 330px !important;
		min-height: 0 !important;
		height: auto !important;
		margin: 0 !important;
		padding: 10px !important;
		border-radius: 20px !important;
	}

	.hero-card{
		position: relative !important;
		inset: auto !important;
		width: 100% !important;
		padding: 8px !important;
		gap: 7px !important;
		border-radius: 16px !important;
		box-shadow: none !important;
	}

	.hero-stat{
		padding: 8px 10px !important;
		min-height: 0 !important;
		border-radius: 12px !important;
	}

	.hero-stat strong{
		font-size: 1.08rem !important;
		line-height: 1.2 !important;
	}

	.hero-stat span{
		font-size: .76rem !important;
	}

	.hero-badge{
		display: none !important;
	}

	.hero-section::before{
		width: 120px !important;
		height: 120px !important;
		opacity: .3 !important;
	}
}


/* NSV 2.6.8 - Mobile one-card slider for home sections
   يظهر بطاقة واحدة فقط في الجوال مع سحب أفقي وأسهم إرشادية. */
@media (max-width: 768px){
	.nsv-home-mobile-slider .nsv-home-services-grid,
	.nsv-home-mobile-slider .institutional-section .feature-grid,
	.nsv-home-mobile-slider .media-section .feature-grid,
	.nsv-home-mobile-slider .feature-grid,
	.nsv-home-mobile-slider .cards-grid{
		display:grid !important;
		grid-auto-flow:column !important;
		grid-auto-columns:100% !important;
		grid-template-columns:none !important;
		gap:14px !important;
		overflow-x:auto !important;
		overflow-y:hidden !important;
		scroll-snap-type:x mandatory !important;
		scroll-padding-inline:0 !important;
		-webkit-overflow-scrolling:touch !important;
		padding-inline:0 !important;
		margin-inline:0 !important;
		scrollbar-width:none;
	}

	.nsv-home-mobile-slider .nsv-home-services-grid::-webkit-scrollbar,
	.nsv-home-mobile-slider .feature-grid::-webkit-scrollbar,
	.nsv-home-mobile-slider .cards-grid::-webkit-scrollbar{
		display:none;
	}

	.nsv-home-mobile-slider .nsv-home-services-grid > *,
	.nsv-home-mobile-slider .institutional-section .feature-grid > *,
	.nsv-home-mobile-slider .media-section .feature-grid > *,
	.nsv-home-mobile-slider .feature-grid > *,
	.nsv-home-mobile-slider .cards-grid > *{
		width:100% !important;
		min-width:100% !important;
		max-width:100% !important;
		scroll-snap-align:start !important;
		scroll-snap-stop:always !important;
		box-sizing:border-box !important;
	}

	.nsv-home-mobile-slider .section .container,
	.nsv-home-mobile-slider .nsv-home-section .container{
		position:relative;
	}

	.nsv-home-mobile-slider .section .container:before,
	.nsv-home-mobile-slider .section .container:after,
	.nsv-home-mobile-slider .nsv-home-section .container:before,
	.nsv-home-mobile-slider .nsv-home-section .container:after{
		position:absolute;
		top:58%;
		z-index:5;
		width:36px;
		height:36px;
		display:grid;
		place-items:center;
		border-radius:999px;
		background:rgba(15,118,110,.92);
		color:#fff;
		font-size:1.25rem;
		font-weight:900;
		line-height:1;
		box-shadow:0 10px 24px rgba(15,23,42,.16);
		pointer-events:none;
		transform:translateY(-50%);
	}

	.nsv-home-mobile-slider .section .container:before,
	.nsv-home-mobile-slider .nsv-home-section .container:before{
		content:"‹";
		right:6px;
	}

	.nsv-home-mobile-slider .section .container:after,
	.nsv-home-mobile-slider .nsv-home-section .container:after{
		content:"›";
		left:6px;
	}

	.nsv-home-mobile-slider .nsv-home-service-card,
	.nsv-home-mobile-slider .feature-card,
	.nsv-home-mobile-slider .post-card,
	.nsv-home-mobile-slider .nsv-home-media-card,
	.nsv-home-mobile-slider .card{
		min-height:220px;
	}
}

@media (max-width: 420px){
	.nsv-home-mobile-slider .section .container:before,
	.nsv-home-mobile-slider .section .container:after,
	.nsv-home-mobile-slider .nsv-home-section .container:before,
	.nsv-home-mobile-slider .nsv-home-section .container:after{
		width:32px;
		height:32px;
		font-size:1.1rem;
	}
}















/* NSV 2.7.4 - Correct fixed swipe button for card grids only */
@media (max-width:768px){

	/* منع أي أسهم أو مؤشرات من الظهور في الهيرو نهائيًا */
	.hero-section:before,
	.hero-section:after,
	.nsv-home-section-hero:before,
	.nsv-home-section-hero:after,
	.nsv-home-section-hero .container:before,
	.nsv-home-section-hero .container:after,
	.nsv-home-section-hero .hero-grid:before,
	.nsv-home-section-hero .hero-grid:after,
	.nsv-home-section-hero .hero-section:before,
	.nsv-home-section-hero .hero-section:after{
		content:none!important;
		display:none!important;
	}

	/* نجعل الحاوية هي مرجع الزر الثابت */
	.nsv-home-mobile-slider .nsv-home-section:not(.nsv-home-section-hero):not(.nsv-satisfaction-home) .container{
		position:relative;
	}

	/* الزر يظهر مرة واحدة في وسط القسم، مرتبط بالحاوية وليس بالبطاقة حتى لا يختفي مع السحب */
	.nsv-home-mobile-slider .nsv-home-section:not(.nsv-home-section-hero):not(.nsv-satisfaction-home) .container:after{
		content:"‹ ›";
		position:absolute;
		left:50%;
		bottom:8px;
		transform:translateX(-50%);
		display:flex;
		align-items:center;
		justify-content:center;
		width:58px;
		height:28px;
		border-radius:999px;
		background:#0f766e;
		color:#fff;
		font-size:17px;
		font-weight:800;
		letter-spacing:7px;
		box-shadow:0 10px 22px rgba(15,118,110,.20);
		z-index:40;
		pointer-events:none;
		opacity:.95;
	}

	/* لا يظهر الزر في قياس الرضا */
	.nsv-satisfaction-home .container:after,
	.nsv-satisfaction-home:after{
		content:none!important;
		display:none!important;
	}

	/* نلغي أي مؤشرات داخلية على الشبكات حتى لا تتكرر */
	.nsv-home-services-grid:before,
	.nsv-home-services-grid:after,
	.feature-grid:before,
	.feature-grid:after,
	.cards-grid:before,
	.cards-grid:after,
	.swiper:before,
	.swiper:after{
		content:none!important;
		display:none!important;
	}

	/* مساحة بسيطة أسفل الشبكة حتى لا يركب الزر على البطاقة */
	.nsv-home-mobile-slider .nsv-home-section:not(.nsv-home-section-hero):not(.nsv-satisfaction-home) .nsv-home-services-grid,
	.nsv-home-mobile-slider .nsv-home-section:not(.nsv-home-section-hero):not(.nsv-satisfaction-home) .feature-grid,
	.nsv-home-mobile-slider .nsv-home-section:not(.nsv-home-section-hero):not(.nsv-satisfaction-home) .cards-grid{
		margin-bottom:34px!important;
	}
}


/* NSV 2.7.5 - No swipe arrows on news/media section */
@media (max-width:768px){

	/* لا تضع أي أسهم أو زر سحب على قسم الأخبار / المركز الإعلامي */
	.nsv-home-section-media .container:before,
	.nsv-home-section-media .container:after,
	.media-section .container:before,
	.media-section .container:after,
	.posts-section .container:before,
	.posts-section .container:after,
	.news-section .container:before,
	.news-section .container:after,
	.nsv-home-section-posts .container:before,
	.nsv-home-section-posts .container:after,
	.nsv-home-section-media .feature-grid:before,
	.nsv-home-section-media .feature-grid:after,
	.nsv-home-section-media .cards-grid:before,
	.nsv-home-section-media .cards-grid:after,
	.media-section .feature-grid:before,
	.media-section .feature-grid:after,
	.media-section .cards-grid:before,
	.media-section .cards-grid:after,
	.posts-section .feature-grid:before,
	.posts-section .feature-grid:after,
	.posts-section .cards-grid:before,
	.posts-section .cards-grid:after,
	.news-section .feature-grid:before,
	.news-section .feature-grid:after,
	.news-section .cards-grid:before,
	.news-section .cards-grid:after,
	.nsv-home-section-posts .feature-grid:before,
	.nsv-home-section-posts .feature-grid:after,
	.nsv-home-section-posts .cards-grid:before,
	.nsv-home-section-posts .cards-grid:after{
		content:none!important;
		display:none!important;
	}

	/* منع زر السحب العام من الظهور على أقسام الأخبار حتى لو كانت ضمن nsv-home-section */
	.nsv-home-mobile-slider .nsv-home-section-media .container:after,
	.nsv-home-mobile-slider .media-section .container:after,
	.nsv-home-mobile-slider .posts-section .container:after,
	.nsv-home-mobile-slider .news-section .container:after,
	.nsv-home-mobile-slider .nsv-home-section-posts .container:after{
		content:none!important;
		display:none!important;
	}
}


/* NSV 2.7.6 - Remove satisfaction arrows only */
.nsv-satisfaction-home .swiper-button-next,
.nsv-satisfaction-home .swiper-button-prev,
.nsv-satisfaction-home .swiper-navigation,
.nsv-satisfaction-home .swiper-nav,
.nsv-satisfaction-home .splide__arrow,
.nsv-satisfaction-home .tns-controls,
.nsv-satisfaction-home .tns-controls button,
.nsv-satisfaction-home [class*="swiper-button"],
.nsv-satisfaction-home [class*="slider-arrow"],
.nsv-satisfaction-home [class*="carousel-arrow"],
.nsv-satisfaction-home [class*="nav-arrow"],
.nsv-satisfaction-home [class*="slick-arrow"],
.nsv-satisfaction-home [aria-label*="Next"],
.nsv-satisfaction-home [aria-label*="Previous"],
.nsv-satisfaction-home [aria-label*="التالي"],
.nsv-satisfaction-home [aria-label*="السابق"]{
	display:none!important;
	visibility:hidden!important;
	opacity:0!important;
	pointer-events:none!important;
}

.nsv-satisfaction-home:before,
.nsv-satisfaction-home:after,
.nsv-satisfaction-home .container:before,
.nsv-satisfaction-home .container:after,
.nsv-satisfaction-summary-card:before,
.nsv-satisfaction-summary-card:after,
.nsv-satisfaction-score:before,
.nsv-satisfaction-score:after{
	content:none!important;
	display:none!important;
}

/* NSV 3.3.3 - Structural homepage hero height normalization
   Source-level fix: homepage hero follows content height; visual presets do not force viewport height. */
.nsv-home-design .nsv-home-section-hero.hero-section{
	min-height:auto!important;
	height:auto!important;
	padding-top:clamp(28px,5vw,72px)!important;
	padding-bottom:clamp(28px,5vw,72px)!important;
	display:block!important;
}
.nsv-home-design .nsv-home-section-hero .hero-grid{
	min-height:0!important;
	align-items:center;
}
.nsv-home-design .nsv-home-section-hero .hero-visual,
.nsv-home-design .nsv-home-section-hero .hero-content{
	min-height:0!important;
}
.nsv-home-design .nsv-home-section-hero::before,
.nsv-home-design .nsv-home-section-hero::after{
	pointer-events:none;
}
@media(max-width:768px){
	.nsv-home-design .nsv-home-section-hero.hero-section{
		padding-top:24px!important;
		padding-bottom:28px!important;
	}
	.nsv-home-design .nsv-home-section-hero .hero-grid{
		gap:18px!important;
	}
}
