/*
 * Saudi National Day theme — "عزّنا بطبعنا"
 * Source: SND brand guideline (colors 3.1, fonts 3.1, logo 1.2 / 1.6 / 1.7).
 * Loaded only when config('theme.national_day') is true; everything is
 * scoped to body.nd-theme so disabling the flag restores the normal site.
 */

:root:root {
	/* Primary: deep green system */
	--nd-deep: #002528;      /* page / base dark */
	--nd-teal: #003439;      /* dark surface */
	--nd-green: #008849;     /* main green */
	--nd-green-dark: #006a39;
	/* Secondary trait colors */
	--nd-lime: #5ab91c;      /* authenticity */
	--nd-blue: #0050ae;      /* generosity */
	--nd-maroon: #961a4d;    /* determination */
	--nd-olive: #5f7b4f;     /* courage */
	--nd-brown: #7b5d20;     /* vision */
	--nd-violet: #6464df;    /* exceptional giving */

	--nd-motif: url("motif.svg");

	/* Heros page variables */
	--purple: var(--nd-deep);
	--blue: var(--nd-green);
	--light-blue: #e6f3ec;
}

/* ---------- Typography (secondary ND typeface: IBM Plex Sans Arabic) ---------- */
body.nd-theme,
body.nd-theme p, body.nd-theme h1, body.nd-theme h2, body.nd-theme h3,
body.nd-theme h4, body.nd-theme h5, body.nd-theme h6, body.nd-theme div,
body.nd-theme a, body.nd-theme li, body.nd-theme span, body.nd-theme button,
body.nd-theme label, body.nd-theme td, body.nd-theme input, body.nd-theme .btn {
	font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
}

/* Keep icon fonts intact */
body.nd-theme .fa, body.nd-theme .fas, body.nd-theme .far, body.nd-theme .fal {
	font-family: 'Font Awesome 5 Free' !important;
}
body.nd-theme .fab {
	font-family: 'Font Awesome 5 Brands' !important;
}

/* ---------- Brand color swap (blue.css + inline brand colors) ---------- */
body.nd-theme .newBlue { color: var(--nd-green) !important; }
body.nd-theme .newBlueB { background: var(--nd-green) !important; }
body.nd-theme .newBlueB:hover { background: var(--nd-deep) !important; }
body.nd-theme .newDark:hover,
body.nd-theme .newDark:hover > .newDarki { color: var(--nd-lime) !important; }
body.nd-theme .playerIcon { color: var(--nd-green); }
body.nd-theme .playerIcon:hover { background: var(--nd-green); }

/* :where() keeps plain links at the same low specificity as blue.css */
:where(body.nd-theme) a,
body.nd-theme .fixed-menu .nav-menu li a.active,
body.nd-theme .op-mobile-menu .nav-menu li a:hover,
body.nd-theme #accordion .accordion-header a:not(.collapsed),
body.nd-theme #accordion .accordion-header a:hover,
body.nd-theme .contact-form-result > h4,
body.nd-theme .icon.colored i {
	color: var(--nd-green);
}
body.nd-theme footer a:hover,
body.nd-theme .footer-social a:hover > i {
	color: var(--nd-lime);
}
body.nd-theme .fixed-menu .nav-menu li a:hover {
	color: var(--nd-green) !important;
}

body.nd-theme .feature-box .box-icon .icon,
body.nd-theme .custom-btn,
body.nd-theme .overview-box:hover .icon,
body.nd-theme .service-single:hover .icon,
body.nd-theme .contact-info .icon {
	color: var(--nd-deep);
}

body.nd-theme .btn,
body.nd-theme .to-top:hover,
body.nd-theme .play-btn,
body.nd-theme .service-single:hover,
body.nd-theme .service-single .icon,
body.nd-theme .overview-box .icon,
body.nd-theme .overview-box:hover,
body.nd-theme .fixed-menu .nav-menu li a.active span:after,
body.nd-theme .clients-slider .owl-dots .active span,
body.nd-theme .screenshot-slider .owl-dots .active span,
body.nd-theme .pagination li a.active,
body.nd-theme .progress .progress-bar,
body.nd-theme blockquote {
	background-color: var(--nd-green);
}
body.nd-theme .btn:hover,
body.nd-theme .pagination li a:hover {
	background-color: var(--nd-deep);
}
body.nd-theme .custom-btn,
body.nd-theme .clients-slider .owl-dots .owl-dot span,
body.nd-theme .screenshot-slider .owl-dots .owl-dot span {
	border-color: var(--nd-green);
}
body.nd-theme input:focus,
body.nd-theme textarea:focus {
	border-color: var(--nd-green) !important;
}
body.nd-theme .page-loader .progress { border-left-color: var(--nd-green); }
body.nd-theme .swiper-pagination-bullet-active { background: var(--nd-green); }

/* Sections that hard-code the Drovox navy / blue inline */
body.nd-theme [style*="#04002B"],
body.nd-theme [style*="#04002b"] {
	background: var(--nd-deep) !important;
}
body.nd-theme [style*="color: #29aae2"],
body.nd-theme [style*="color:#29aae2"] {
	color: var(--nd-green) !important;
}

/* ---------- Hero / overlays: deep green instead of black / navy ---------- */
body.nd-theme .banner:before {
	background: linear-gradient(-47deg, var(--nd-teal) 0%, var(--nd-deep) 55%, var(--nd-deep) 100%);
}
body.nd-theme .overlay {
	background-color: rgba(0, 37, 40, 0.82);
}

/* Sadu diamond motif strip under the hero and above the footer */
body.nd-theme .banner,
body.nd-theme .page-title {
	position: relative;
}
body.nd-theme .banner::after,
body.nd-theme .page-title::after,
body.nd-theme footer::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	height: 22px;
	background: var(--nd-motif) repeat-x center / auto 14px;
	pointer-events: none;
	z-index: 3;
}
body.nd-theme .banner::after,
body.nd-theme .page-title::after {
	bottom: 18px;
	opacity: 0.55;
}
body.nd-theme footer::before {
	top: 28px;
	opacity: 0.6;
}

/* ---------- Header: co-branded National Day logo ---------- */
body.nd-theme .logo {
	display: flex;
	align-items: center;
	gap: 14px;
}
body.nd-theme .nd-logo {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-shrink: 0;
}
body.nd-theme .nd-logo::before {
	content: "";
	width: 1px;
	height: 30px;
	background: currentColor;
	opacity: 0.35;
}
body.nd-theme .nd-logo img {
	height: 38px;
	width: auto;
	max-width: none;
}
body.nd-theme .main-menu-area .nd-logo { color: #fff; }
body.nd-theme .main-menu-area .nd-logo-dark { display: none; }
body.nd-theme .main-menu-area.fixed-menu .nd-logo { color: var(--nd-deep); }
body.nd-theme .main-menu-area.fixed-menu .nd-logo-light { display: none; }
body.nd-theme .main-menu-area.fixed-menu .nd-logo-dark { display: block; }

/* Header column needs room for both logos on desktop */
@media (min-width: 992px) {
	body.nd-theme .topheader > .col-lg-2 {
		flex: 0 0 auto;
		max-width: none;
		width: auto;
	}
	body.nd-theme .topheader > .op-mobile-menu {
		flex: 1 1 0;
		max-width: none;
		width: auto;
	}
}
@media (max-width: 1199px) {
	body.nd-theme .nd-logo img { height: 30px; }
}
@media (max-width: 575px) {
	body.nd-theme .nd-logo { gap: 10px; }
	body.nd-theme .logo { gap: 10px; }
	body.nd-theme .nd-logo img { height: 24px; }
}

/* ---------- Footer ---------- */
body.nd-theme footer {
	background: var(--nd-deep);
	color: #b9cfc6;
}
body.nd-theme footer p,
body.nd-theme footer .footer-widgets a {
	color: #b9cfc6;
}
body.nd-theme footer .footer-copyright {
	border-top-color: rgba(255, 255, 255, 0.08);
}
body.nd-theme .nd-footer-greeting {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 16px;
	margin-bottom: 18px;
	color: #fff;
	font-weight: 600;
}
body.nd-theme .nd-footer-greeting img {
	height: 34px;
	width: auto;
}

/* ---------- Heros page ---------- */
/* Decorative blue blob (external image) shifted to the ND green */
body.nd-theme .hero-card::before {
	filter: hue-rotate(-75deg) saturate(0.9);
}
