
/* =========================================================
 * THEME TOKENS
 * ======================================================= */

html[data-nal-theme="light"]{
	color-scheme:light;
	--nal-bg:#f3efe9;
	--nal-paper:#fbfaf7;
	--nal-ink:#121212;
	--nal-muted:#6d6862;
	--nal-line:rgba(18,18,18,.16);
	--nal-theme-header:rgba(243,239,233,.93);
	--nal-theme-card:#fbfaf7;
	--nal-theme-input:rgba(255,255,255,.38);
	--nal-theme-footer:#121212;
	--nal-theme-footer-text:#ffffff;
	--nal-theme-shadow:rgba(18,18,18,.10);
}

html[data-nal-theme="dark"]{
	color-scheme:dark;
	--nal-bg:#0d0d0f;
	--nal-paper:#17171a;
	--nal-ink:#f5f1ea;
	--nal-muted:#c7c0b7;
	--nal-line:rgba(255,255,255,.20);
	--nal-theme-header:rgba(13,13,15,.90);
	--nal-theme-card:#17171a;
	--nal-theme-input:rgba(255,255,255,.075);
	--nal-theme-footer:#070707;
	--nal-theme-footer-text:#f5f1ea;
	--nal-theme-shadow:rgba(0,0,0,.42);
}

html{
	background:var(--nal-bg);
}

body.nal-theme-switcher-enabled{
	background:var(--nal-bg)!important;
	color:var(--nal-ink)!important;
	transition:background-color .24s ease,color .24s ease;
}

body.nal-theme-switcher-enabled a{
	color:inherit;
}

body.nal-theme-switcher-enabled .site-header,
body.nal-theme-switcher-enabled .topbar{
	background:var(--nal-theme-header)!important;
	border-color:var(--nal-line)!important;
	color:var(--nal-ink)!important;
}

body.nal-theme-switcher-enabled .primary-navigation,
body.nal-theme-switcher-enabled .primary-navigation .menu,
body.nal-theme-switcher-enabled .primary-navigation a{
	color:var(--nal-ink);
}

body.nal-theme-switcher-enabled .page-hero,
body.nal-theme-switcher-enabled .nal-section,
body.nal-theme-switcher-enabled .home-editor-content,
body.nal-theme-switcher-enabled .page-content,
body.nal-theme-switcher-enabled .nal-home-contact,
body.nal-theme-switcher-enabled .nal-video-home,
body.nal-theme-switcher-enabled .article-hero,
body.nal-theme-switcher-enabled .article-content,
body.nal-theme-switcher-enabled .enrollment-section{
	background-color:var(--nal-bg)!important;
	color:var(--nal-ink)!important;
}

body.nal-theme-switcher-enabled .project-card,
body.nal-theme-switcher-enabled .course-card,
body.nal-theme-switcher-enabled .trend-row,
body.nal-theme-switcher-enabled .event-card,
body.nal-theme-switcher-enabled .nal-video-card,
body.nal-theme-switcher-enabled .enrollment-box,
body.nal-theme-switcher-enabled .wp-block-group,
body.nal-theme-switcher-enabled .wp-block-column{
	border-color:var(--nal-line);
}

body.nal-theme-switcher-enabled .project-card,
body.nal-theme-switcher-enabled .course-card,
body.nal-theme-switcher-enabled .trend-row,
body.nal-theme-switcher-enabled .nal-video-card,
body.nal-theme-switcher-enabled .enrollment-box{
	background:var(--nal-theme-card)!important;
	color:var(--nal-ink)!important;
}

body.nal-theme-switcher-enabled .page-intro,
body.nal-theme-switcher-enabled .detail-summary,
body.nal-theme-switcher-enabled .article-deck,
body.nal-theme-switcher-enabled .card-meta,
body.nal-theme-switcher-enabled .course-facts,
body.nal-theme-switcher-enabled .trend-row p,
body.nal-theme-switcher-enabled .nal-video-card__meta,
body.nal-theme-switcher-enabled .nal-video-card__body p,
body.nal-theme-switcher-enabled .nal-video-home__intro p,
body.nal-theme-switcher-enabled .nal-home-contact__content,
body.nal-theme-switcher-enabled .entry-content p,
body.nal-theme-switcher-enabled .entry-content li{
	color:var(--nal-muted)!important;
}

body.nal-theme-switcher-enabled input,
body.nal-theme-switcher-enabled textarea,
body.nal-theme-switcher-enabled select{
	background:var(--nal-theme-input)!important;
	color:var(--nal-ink)!important;
	border-color:var(--nal-line)!important;
}

body.nal-theme-switcher-enabled .archive-filters,
body.nal-theme-switcher-enabled .filter-button{
	border-color:var(--nal-line);
	color:var(--nal-ink);
}

body.nal-theme-switcher-enabled .filter-button.is-active,
body.nal-theme-switcher-enabled .filter-button:hover{
	background:var(--nal-ink);
	color:var(--nal-bg);
}

body.nal-theme-switcher-enabled .site-footer{
	background:var(--nal-theme-footer)!important;
	color:var(--nal-theme-footer-text)!important;
}

body.nal-theme-switcher-enabled .site-footer a,
body.nal-theme-switcher-enabled .site-footer h2,
body.nal-theme-switcher-enabled .site-footer h3,
body.nal-theme-switcher-enabled .site-footer p,
body.nal-theme-switcher-enabled .site-footer label{
	color:inherit;
}

html[data-nal-theme="dark"] body .hero-copy,
html[data-nal-theme="dark"] body .detail-copy{
	background:#121212;
	color:#f4f0ea;
}

html[data-nal-theme="dark"] body .nal-marquee{
	background:#0a0a0a;
	color:#f4f0ea;
}

html[data-nal-theme="dark"] body .nal-home-contact{
	border-color:rgba(255,255,255,.16);
}

html[data-nal-theme="dark"] body .wp-block-separator,
html[data-nal-theme="dark"] body hr{
	border-color:rgba(255,255,255,.18);
}

/* Giữ các section vốn chủ ý nền tối */
body.nal-theme-switcher-enabled .event-feature,
body.nal-theme-switcher-enabled .nal-about-philosophy,
body.nal-theme-switcher-enabled .nal-video-modal{
	color:#fff!important;
}

/* =========================================================
 * THEME TOGGLE
 * ======================================================= */

#nal-theme-toggle-staging[hidden]{
	display:none!important;
}

.nal-theme-toggle{
	position:relative;
	z-index:1004;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-width:44px;
	height:40px;
	padding:0 12px;
	border:1px solid var(--nal-line);
	border-radius:999px;
	background:color-mix(in srgb,var(--nal-bg) 86%,transparent);
	color:var(--nal-ink);
	font:700 9px/1 Arial,sans-serif;
	letter-spacing:.08em;
	text-transform:uppercase;
	cursor:pointer;
	-webkit-backdrop-filter:blur(14px);
	backdrop-filter:blur(14px);
	transition:background-color .2s ease,border-color .2s ease,transform .2s ease;
}

.nal-theme-toggle:hover{
	transform:translateY(-1px);
}

.nal-theme-toggle__sun,
.nal-theme-toggle__moon{
	font-size:15px;
	line-height:1;
}

html[data-nal-theme="light"] .nal-theme-toggle__moon{
	display:none;
}

html[data-nal-theme="dark"] .nal-theme-toggle__sun{
	display:none;
}

.nal-theme-toggle.is-fixed{
	position:fixed;
	right:18px;
	bottom:18px;
	z-index:10000;
	box-shadow:0 10px 30px var(--nal-theme-shadow);
}

/* =========================================================
 * VIDEO LAYOUT REPAIR
 * ======================================================= */

body.home.nal-video-layout-fix{
	overflow-x:clip!important;
}

body.home .nal-video-home,
body.home .nal-home-contact,
body.home .site-footer{
	position:relative!important;
	inset:auto!important;
	float:none!important;
	clear:both!important;
	width:100%!important;
	max-width:none!important;
	height:auto!important;
	min-height:0!important;
	margin-left:0!important;
	margin-right:0!important;
	transform:none!important;
	box-sizing:border-box;
}

body.home .nal-video-home{
	z-index:2;
	display:block!important;
	isolation:isolate;
	overflow:visible!important;
}

body.home #nal-video-home-staging[hidden]{
	display:none!important;
}

body.home .nal-video-home *,
body.home .nal-video-home *::before,
body.home .nal-video-home *::after{
	box-sizing:border-box;
}

body.home .nal-video-home .nal-video-container{
	position:relative!important;
	inset:auto!important;
	display:block!important;
	width:min(1440px,100%)!important;
	max-width:1440px!important;
	height:auto!important;
	margin-inline:auto!important;
	padding-inline:clamp(20px,4vw,64px);
	transform:none!important;
}

body.home .nal-video-home__heading{
	position:relative!important;
	inset:auto!important;
	display:grid!important;
	grid-template-columns:minmax(0,1.08fr) minmax(300px,.58fr)!important;
	gap:clamp(42px,7vw,100px)!important;
	align-items:end!important;
	width:100%!important;
	height:auto!important;
	margin:0 0 40px!important;
	transform:none!important;
}

body.home .nal-video-home__grid{
	position:relative!important;
	inset:auto!important;
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	gap:clamp(20px,2vw,30px)!important;
	align-items:start!important;
	width:100%!important;
	height:auto!important;
	margin:0!important;
	transform:none!important;
}

body.home .nal-video-home .nal-video-card{
	position:relative!important;
	inset:auto!important;
	float:none!important;
	clear:none!important;
	display:block!important;
	min-width:0!important;
	max-width:100%!important;
	width:auto!important;
	height:auto!important;
	margin:0!important;
	transform:none;
}

body.home .nal-video-home .nal-video-card__play{
	position:relative!important;
	display:block!important;
	width:100%!important;
	height:auto!important;
}

body.home .nal-video-home .nal-video-card__media{
	position:relative!important;
	width:100%!important;
	aspect-ratio:16/9!important;
	overflow:hidden!important;
}

body.home .nal-video-home .nal-video-card__media img{
	width:100%!important;
	height:100%!important;
	object-fit:cover!important;
}

body.home .nal-video-modal{
	position:fixed!important;
	z-index:2147482500!important;
}

.nal-video-menu-item{
	display:list-item;
}

@media(max-width:1050px){
	body.home .nal-video-home__heading{
		grid-template-columns:1fr!important;
		gap:20px!important;
	}

	body.home .nal-video-home__grid{
		grid-template-columns:repeat(2,minmax(0,1fr))!important;
	}
}

@media(max-width:680px){
	.nal-theme-toggle__text{
		display:none;
	}

	.nal-theme-toggle{
		width:40px;
		min-width:40px;
		padding:0;
	}

	body.home .nal-video-home__grid{
		grid-template-columns:minmax(0,1fr)!important;
	}
}

@media(prefers-reduced-motion:reduce){
	body.nal-theme-switcher-enabled,
	.nal-theme-toggle{
		transition:none!important;
	}
}

/* =========================================================
 * DARK MODE READABILITY PATCH – v1.1
 * ======================================================= */

html[data-nal-theme="dark"] body,
html[data-nal-theme="dark"] body p,
html[data-nal-theme="dark"] body li,
html[data-nal-theme="dark"] body label,
html[data-nal-theme="dark"] body small{
	color:var(--nal-ink);
}

html[data-nal-theme="dark"] body .page-intro,
html[data-nal-theme="dark"] body .detail-summary,
html[data-nal-theme="dark"] body .article-deck,
html[data-nal-theme="dark"] body .card-meta,
html[data-nal-theme="dark"] body .course-facts,
html[data-nal-theme="dark"] body .trend-row p,
html[data-nal-theme="dark"] body .nal-video-card__meta,
html[data-nal-theme="dark"] body .nal-video-card__body p,
html[data-nal-theme="dark"] body .nal-video-home__intro p,
html[data-nal-theme="dark"] body .nal-home-contact__content,
html[data-nal-theme="dark"] body .entry-content p,
html[data-nal-theme="dark"] body .entry-content li,
html[data-nal-theme="dark"] body .nal-video-intro,
html[data-nal-theme="dark"] body .nal-video-eyebrow,
html[data-nal-theme="dark"] body .nal-video-home .nal-video-eyebrow,
html[data-nal-theme="dark"] body [class*="event"] .eyebrow,
html[data-nal-theme="dark"] body [class*="event"] [class*="meta"],
html[data-nal-theme="dark"] body [class*="event"] [class*="label"]{
	color:var(--nal-muted)!important;
}

html[data-nal-theme="dark"] body .nal-video-hero h1,
html[data-nal-theme="dark"] body .nal-video-page h1,
html[data-nal-theme="dark"] body .nal-video-home__heading h2,
html[data-nal-theme="dark"] body .nal-video-card h2,
html[data-nal-theme="dark"] body .nal-video-card h3,
html[data-nal-theme="dark"] body [class*="event"] h1,
html[data-nal-theme="dark"] body [class*="event"] h2,
html[data-nal-theme="dark"] body [class*="event"] h3,
html[data-nal-theme="dark"] body [class*="event"] strong,
html[data-nal-theme="dark"] body [class*="event"] .value{
	color:var(--nal-ink)!important;
	text-shadow:none!important;
}

html[data-nal-theme="dark"] body .nal-video-filter{
	background:rgba(255,255,255,.045)!important;
	border-color:rgba(255,255,255,.24)!important;
	color:var(--nal-ink)!important;
}

html[data-nal-theme="dark"] body .nal-video-filter.is-active,
html[data-nal-theme="dark"] body .nal-video-filter:hover{
	background:var(--nal-ink)!important;
	border-color:var(--nal-ink)!important;
	color:#111!important;
}

html[data-nal-theme="dark"] body .nal-video-duration{
	background:rgba(0,0,0,.76)!important;
	color:#fff!important;
}

html[data-nal-theme="dark"] body .nal-theme-toggle{
	background:rgba(255,255,255,.05)!important;
	border-color:rgba(255,255,255,.18)!important;
	color:var(--nal-ink)!important;
}

html[data-nal-theme="dark"] body .nal-theme-toggle:hover{
	background:rgba(255,255,255,.085)!important;
}

/*
 * Video archive + section headings
 */
html[data-nal-theme="dark"] body .nal-video-hero,
html[data-nal-theme="dark"] body .nal-video-archive,
html[data-nal-theme="dark"] body .nal-video-home{
	background:transparent!important;
}

html[data-nal-theme="dark"] body .nal-video-card{
	box-shadow:0 12px 30px rgba(0,0,0,.22);
}

/*
 * Event pages/blocks: ép phần card sáng còn sót lại thành nền tối
 * để tránh tình trạng chữ quá nhạt trên nền be.
 */
html[data-nal-theme="dark"] body [class*="event-feature"],
html[data-nal-theme="dark"] body [class*="event-hero"],
html[data-nal-theme="dark"] body [class*="event-detail"],
html[data-nal-theme="dark"] body [class*="event-card"],
html[data-nal-theme="dark"] body .single-nal_event section{
	background:#141416!important;
	color:var(--nal-ink)!important;
	border-color:rgba(255,255,255,.16)!important;
}

html[data-nal-theme="dark"] body [class*="event-feature"] p,
html[data-nal-theme="dark"] body [class*="event-hero"] p,
html[data-nal-theme="dark"] body [class*="event-detail"] p,
html[data-nal-theme="dark"] body [class*="event-card"] p,
html[data-nal-theme="dark"] body .single-nal_event section p,
html[data-nal-theme="dark"] body [class*="event-feature"] span,
html[data-nal-theme="dark"] body [class*="event-hero"] span,
html[data-nal-theme="dark"] body [class*="event-detail"] span,
html[data-nal-theme="dark"] body [class*="event-card"] span{
	color:var(--nal-ink)!important;
}

/*
 * Các đường line trong dark mode sáng hơn một chút để định khối rõ hơn.
 */
html[data-nal-theme="dark"] body .wp-block-separator,
html[data-nal-theme="dark"] body hr,
html[data-nal-theme="dark"] body .nal-video-page,
html[data-nal-theme="dark"] body .nal-video-hero,
html[data-nal-theme="dark"] body .nal-video-home,
html[data-nal-theme="dark"] body .site-header{
	border-color:rgba(255,255,255,.16)!important;
}

/*
 * Hero title trên trang Video giảm độ "nặng" một chút để dễ nhìn hơn.
 */
html[data-nal-theme="dark"] body .nal-video-hero h1{
	opacity:.96;
	letter-spacing:-.055em;
}

/*
 * Intro bên phải trong trang Video tăng độ rõ.
 */
html[data-nal-theme="dark"] body .nal-video-intro,
html[data-nal-theme="dark"] body .nal-video-home__intro p{
	font-size:16px;
	line-height:1.75;
	opacity:1!important;
}

/*
 * Trạng thái hover link rõ hơn.
 */
html[data-nal-theme="dark"] body a:hover{
	opacity:.92;
}

/* =========================================================
 * FILMIC BACKGROUND SYSTEM – v1.2
 * ======================================================= */

html[data-nal-theme="light"]{
	--nal-film-base:#f3efe9;
	--nal-film-glow-1:rgba(255,247,236,.72);
	--nal-film-glow-2:rgba(232,217,201,.46);
	--nal-film-tint-1:rgba(198,162,122,.10);
	--nal-film-tint-2:rgba(140,110,84,.06);
	--nal-film-noise-opacity:.14;
	--nal-film-vignette-opacity:.15;
}

html[data-nal-theme="dark"]{
	--nal-film-base:#0d0d0f;
	--nal-film-glow-1:rgba(124,38,66,.16);
	--nal-film-glow-2:rgba(68,24,42,.11);
	--nal-film-tint-1:rgba(255,189,116,.035);
	--nal-film-tint-2:rgba(214,60,114,.06);
	--nal-film-noise-opacity:.12;
	--nal-film-vignette-opacity:.30;
}

html,
body{
	background-color:var(--nal-film-base)!important;
}

body.nal-theme-switcher-enabled{
	position:relative;
	background-color:var(--nal-film-base)!important;
	background-image:
		radial-gradient(1200px 700px at 18% 14%, var(--nal-film-glow-1) 0%, transparent 56%),
		radial-gradient(980px 580px at 82% 8%, var(--nal-film-glow-2) 0%, transparent 52%),
		radial-gradient(900px 600px at 50% 100%, var(--nal-film-tint-1) 0%, transparent 60%),
		linear-gradient(135deg, transparent 0%, var(--nal-film-tint-2) 100%) !important;
	background-attachment:fixed!important;
	background-size:cover!important;
}

body.nal-theme-switcher-enabled::before,
body.nal-theme-switcher-enabled::after{
	content:"";
	position:fixed;
	inset:0;
	pointer-events:none;
	z-index:0;
}

/* subtle film grain */
body.nal-theme-switcher-enabled::before{
	opacity:var(--nal-film-noise-opacity);
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.88' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
	background-repeat:repeat;
	mix-blend-mode:soft-light;
}

/* vignette + cinematic falloff */
body.nal-theme-switcher-enabled::after{
	opacity:1;
	background:
		radial-gradient(circle at center, transparent 46%, rgba(0,0,0,var(--nal-film-vignette-opacity)) 100%),
		linear-gradient(180deg, rgba(0,0,0,.00) 0%, rgba(0,0,0,.02) 100%);
}

/* keep site content above texture */
body.nal-theme-switcher-enabled > *{
	position:relative;
	z-index:1;
}

/* sections slightly translucent so film texture shows through softly */
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .page-hero,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .nal-section,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .home-editor-content,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .page-content,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .nal-home-contact,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .nal-video-home,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .article-hero,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .article-content,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .enrollment-section{
	background-color:rgba(243,239,233,.86)!important;
	-webkit-backdrop-filter:blur(3px);
	backdrop-filter:blur(3px);
}

html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .page-hero,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .nal-section,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .home-editor-content,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .page-content,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .nal-home-contact,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .nal-video-home,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .article-hero,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .article-content,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .enrollment-section{
	background-color:rgba(13,13,15,.78)!important;
	-webkit-backdrop-filter:blur(4px);
	backdrop-filter:blur(4px);
}

/* cards get a subtle film-paper surface instead of flat blocks */
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .project-card,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .course-card,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .trend-row,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .event-card,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .nal-video-card,
html[data-nal-theme="light"] body.nal-theme-switcher-enabled .enrollment-box{
	background:linear-gradient(180deg, rgba(255,251,245,.88), rgba(246,239,230,.82))!important;
}

html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .project-card,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .course-card,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .trend-row,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .event-card,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .nal-video-card,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .enrollment-box{
	background:linear-gradient(180deg, rgba(25,25,28,.90), rgba(16,16,18,.82))!important;
}

/* keep intentional black areas rich rather than flat */
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .site-footer,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .nal-video-modal,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .event-feature,
html[data-nal-theme="dark"] body.nal-theme-switcher-enabled .nal-about-philosophy{
	background-image:
		radial-gradient(900px 380px at 100% 0%, rgba(121,28,67,.14) 0%, transparent 50%),
		linear-gradient(180deg, rgba(18,18,19,.98), rgba(9,9,10,.98))!important;
}

/* mobile performance */
@media(max-width:900px){
	body.nal-theme-switcher-enabled{
		background-attachment:scroll!important;
	}

	body.nal-theme-switcher-enabled::before{
		opacity:.055;
	}
}

/* =========================================================
 * MOBILE CONTRAST + STRONGER FILM TEXTURE – v1.3
 * ======================================================= */

/* denser film texture */
body.nal-theme-switcher-enabled::before{
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.88' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n2'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n2)' opacity='1'/%3E%3C/svg%3E");
	background-repeat:repeat,repeat;
	background-size:220px 220px,160px 160px;
	mix-blend-mode:soft-light;
}

/* extra tonal wash so background feels less flat */
body.nal-theme-switcher-enabled{
	background-image:
		radial-gradient(1200px 700px at 18% 14%, var(--nal-film-glow-1) 0%, transparent 56%),
		radial-gradient(980px 580px at 82% 8%, var(--nal-film-glow-2) 0%, transparent 52%),
		radial-gradient(900px 600px at 50% 100%, var(--nal-film-tint-1) 0%, transparent 60%),
		radial-gradient(760px 420px at 50% 40%, rgba(255,255,255,.03) 0%, transparent 65%),
		linear-gradient(135deg, transparent 0%, var(--nal-film-tint-2) 100%) !important;
}

/* light mode: force readable event section text */
html[data-nal-theme="light"] body [class*="event"] h1,
html[data-nal-theme="light"] body [class*="event"] h2,
html[data-nal-theme="light"] body [class*="event"] h3,
html[data-nal-theme="light"] body [class*="event"] .value,
html[data-nal-theme="light"] body [class*="event"] strong,
html[data-nal-theme="light"] body .single-nal_event h1,
html[data-nal-theme="light"] body .single-nal_event h2,
html[data-nal-theme="light"] body .single-nal_event h3,
html[data-nal-theme="light"] body .single-nal_event strong{
	color:#f6f1ea !important;
}

html[data-nal-theme="light"] body [class*="event"] p,
html[data-nal-theme="light"] body [class*="event"] li,
html[data-nal-theme="light"] body [class*="event"] span,
html[data-nal-theme="light"] body [class*="event"] a,
html[data-nal-theme="light"] body .single-nal_event p,
html[data-nal-theme="light"] body .single-nal_event li,
html[data-nal-theme="light"] body .single-nal_event span,
html[data-nal-theme="light"] body .single-nal_event a{
	color:#d7d0c7 !important;
}

html[data-nal-theme="light"] body [class*="event"] .eyebrow,
html[data-nal-theme="light"] body [class*="event"] [class*="meta"],
html[data-nal-theme="light"] body [class*="event"] [class*="label"]{
	color:#c5bdb3 !important;
}

/* mobile: the upcoming event block should no longer fade out */
@media(max-width:900px){
	html[data-nal-theme="light"] body [class*="event-feature"],
	html[data-nal-theme="light"] body [class*="event-hero"],
	html[data-nal-theme="light"] body [class*="event-detail"],
	html[data-nal-theme="light"] body [class*="event-card"]{
		background:#d9d2c9 !important;
	}

	html[data-nal-theme="light"] body [class*="event-feature"] h1,
	html[data-nal-theme="light"] body [class*="event-feature"] h2,
	html[data-nal-theme="light"] body [class*="event-feature"] h3,
	html[data-nal-theme="light"] body [class*="event-hero"] h1,
	html[data-nal-theme="light"] body [class*="event-hero"] h2,
	html[data-nal-theme="light"] body [class*="event-hero"] h3,
	html[data-nal-theme="light"] body [class*="event-detail"] h1,
	html[data-nal-theme="light"] body [class*="event-detail"] h2,
	html[data-nal-theme="light"] body [class*="event-detail"] h3,
	html[data-nal-theme="light"] body [class*="event-card"] h1,
	html[data-nal-theme="light"] body [class*="event-card"] h2,
	html[data-nal-theme="light"] body [class*="event-card"] h3,
	html[data-nal-theme="light"] body .single-nal_event section h1,
	html[data-nal-theme="light"] body .single-nal_event section h2,
	html[data-nal-theme="light"] body .single-nal_event section h3,
	html[data-nal-theme="light"] body .single-nal_event section strong,
	html[data-nal-theme="light"] body .single-nal_event .value{
		color:#ffffff !important;
		text-shadow:0 1px 0 rgba(0,0,0,.03) !important;
	}

	html[data-nal-theme="light"] body [class*="event-feature"] p,
	html[data-nal-theme="light"] body [class*="event-feature"] span,
	html[data-nal-theme="light"] body [class*="event-hero"] p,
	html[data-nal-theme="light"] body [class*="event-hero"] span,
	html[data-nal-theme="light"] body [class*="event-detail"] p,
	html[data-nal-theme="light"] body [class*="event-detail"] span,
	html[data-nal-theme="light"] body [class*="event-card"] p,
	html[data-nal-theme="light"] body [class*="event-card"] span,
	html[data-nal-theme="light"] body .single-nal_event section p,
	html[data-nal-theme="light"] body .single-nal_event section span,
	html[data-nal-theme="light"] body .single-nal_event section li,
	html[data-nal-theme="light"] body .single-nal_event section a{
		color:#f3eee7 !important;
	}

	html[data-nal-theme="light"] body [class*="event"] .eyebrow,
	html[data-nal-theme="light"] body [class*="event"] [class*="label"],
	html[data-nal-theme="light"] body [class*="event"] [class*="meta"]{
		color:#cfc7bd !important;
	}

	/* grain is slightly stronger on mobile but cheaper than a full image bg */
	body.nal-theme-switcher-enabled::before{
		opacity:.09;
	}
}

/* dark mobile: keep readability high */
@media(max-width:900px){
	html[data-nal-theme="dark"] body [class*="event"] h1,
	html[data-nal-theme="dark"] body [class*="event"] h2,
	html[data-nal-theme="dark"] body [class*="event"] h3,
	html[data-nal-theme="dark"] body [class*="event"] strong,
	html[data-nal-theme="dark"] body [class*="event"] .value{
		color:#f5f1ea !important;
	}

	html[data-nal-theme="dark"] body [class*="event"] p,
	html[data-nal-theme="dark"] body [class*="event"] span,
	html[data-nal-theme="dark"] body [class*="event"] li,
	html[data-nal-theme="dark"] body [class*="event"] a{
		color:#d6cec4 !important;
	}
}

/* =========================================================
 * FILM INTENSITY MODES – v1.4
 * ======================================================= */

/* default / soft */
body.nal-film-soft.nal-theme-switcher-enabled::before{
	opacity:calc(var(--nal-film-noise-opacity) * .88);
}

body.nal-film-soft.nal-theme-switcher-enabled::after{
	background:
		radial-gradient(circle at center, transparent 48%, rgba(0,0,0,calc(var(--nal-film-vignette-opacity) * .78)) 100%),
		linear-gradient(180deg, rgba(0,0,0,.00) 0%, rgba(0,0,0,.015) 100%);
}

body.nal-film-soft.nal-theme-switcher-enabled{
	background-image:
		radial-gradient(1200px 700px at 18% 14%, var(--nal-film-glow-1) 0%, transparent 56%),
		radial-gradient(980px 580px at 82% 8%, var(--nal-film-glow-2) 0%, transparent 52%),
		radial-gradient(900px 600px at 50% 100%, var(--nal-film-tint-1) 0%, transparent 60%),
		radial-gradient(760px 420px at 50% 40%, rgba(255,255,255,.02) 0%, transparent 65%),
		linear-gradient(135deg, transparent 0%, var(--nal-film-tint-2) 100%) !important;
}

/* bold */
body.nal-film-bold.nal-theme-switcher-enabled::before{
	opacity:calc(var(--nal-film-noise-opacity) * 1.22);
	mix-blend-mode:overlay;
	filter:contrast(112%) brightness(102%);
}

body.nal-film-bold.nal-theme-switcher-enabled::after{
	background:
		radial-gradient(circle at center, transparent 42%, rgba(0,0,0,calc(var(--nal-film-vignette-opacity) * 1.18)) 100%),
		linear-gradient(180deg, rgba(0,0,0,.01) 0%, rgba(0,0,0,.035) 100%);
}

body.nal-film-bold.nal-theme-switcher-enabled{
	background-image:
		radial-gradient(1280px 760px at 14% 12%, color-mix(in srgb,var(--nal-film-glow-1) 118%, white) 0%, transparent 56%),
		radial-gradient(980px 640px at 84% 10%, color-mix(in srgb,var(--nal-film-glow-2) 120%, transparent) 0%, transparent 54%),
		radial-gradient(960px 620px at 52% 96%, color-mix(in srgb,var(--nal-film-tint-1) 122%, transparent) 0%, transparent 63%),
		radial-gradient(900px 460px at 48% 36%, rgba(255,255,255,.05) 0%, transparent 66%),
		linear-gradient(135deg, rgba(255,255,255,.008) 0%, var(--nal-film-tint-2) 100%) !important;
}

html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .page-hero,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .nal-section,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .home-editor-content,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .page-content,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .nal-home-contact,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .nal-video-home,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .article-hero,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .article-content,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .enrollment-section{
	background-color:rgba(243,239,233,.80)!important;
	-webkit-backdrop-filter:blur(4px) saturate(106%);
	backdrop-filter:blur(4px) saturate(106%);
}

html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .page-hero,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .nal-section,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .home-editor-content,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .page-content,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .nal-home-contact,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .nal-video-home,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .article-hero,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .article-content,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .enrollment-section{
	background-color:rgba(13,13,15,.72)!important;
	-webkit-backdrop-filter:blur(5px) saturate(108%);
	backdrop-filter:blur(5px) saturate(108%);
}

html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .project-card,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .course-card,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .trend-row,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .event-card,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .nal-video-card,
html[data-nal-theme="light"] body.nal-film-bold.nal-theme-switcher-enabled .enrollment-box{
	background:linear-gradient(180deg, rgba(255,252,246,.84), rgba(242,235,225,.76))!important;
}

html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .project-card,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .course-card,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .trend-row,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .event-card,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .nal-video-card,
html[data-nal-theme="dark"] body.nal-film-bold.nal-theme-switcher-enabled .enrollment-box{
	background:linear-gradient(180deg, rgba(30,30,33,.88), rgba(16,16,18,.76))!important;
	box-shadow:0 14px 32px rgba(0,0,0,.24);
}

@media(max-width:900px){
	body.nal-film-bold.nal-theme-switcher-enabled::before{
		opacity:.11;
	}
}

