/**
 * Shula Design Engine 4.0.5 - safe progressive UI layer.
 */
:where(.nsv-rm-card,.nsv-events-card,.nsv-admin-card,.nsv-modern-card,.nsv-rm-panel,.shulah-card,.service-card,.card,.post-card,.event-card,.partner-card){
	transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

body.nsv-de405-surface-light :where(.nsv-rm-card,.nsv-events-card,.nsv-admin-card,.nsv-modern-card,.nsv-rm-panel,.shulah-card,.service-card,.card,.post-card,.event-card,.partner-card){
	box-shadow:0 10px 28px rgba(15,23,42,.06)!important;
}

body.nsv-de405-surface-premium :where(.nsv-rm-card,.nsv-events-card,.nsv-admin-card,.nsv-modern-card,.nsv-rm-panel,.shulah-card,.service-card,.card,.post-card,.event-card,.partner-card){
	box-shadow:0 18px 44px rgba(15,23,42,.09)!important;
	border-color:color-mix(in srgb,var(--shula-primary, #0f766e) 10%, var(--shula-border, #e5e7eb))!important;
}

body.nsv-de405-surface-deep :where(.nsv-rm-card,.nsv-events-card,.nsv-admin-card,.nsv-modern-card,.nsv-rm-panel,.shulah-card,.service-card,.card,.post-card,.event-card,.partner-card){
	box-shadow:0 26px 70px color-mix(in srgb,var(--shula-secondary, #0f172a) 18%, transparent)!important;
}

body.nsv-de405-surface-flat :where(.nsv-rm-card,.nsv-events-card,.nsv-admin-card,.nsv-modern-card,.nsv-rm-panel,.shulah-card,.service-card,.card,.post-card,.event-card,.partner-card){
	box-shadow:none!important;
	border:1px solid var(--shula-border, #e5e7eb)!important;
}

body.nsv-de405-rhythm-compact{--shula-section-spacing:56px;--shula-content-gap:18px;--shula-card-padding:18px;}
body.nsv-de405-rhythm-balanced{--shula-section-spacing:78px;--shula-content-gap:24px;--shula-card-padding:22px;}
body.nsv-de405-rhythm-airy{--shula-section-spacing:104px;--shula-content-gap:32px;--shula-card-padding:28px;}

body.nsv-de405-motion-none :where(.button,.btn,button,input[type="submit"],.nsv-sp-btn,.service-card,.card,.shulah-card){transition:none!important;transform:none!important;}
body.nsv-de405-motion-soft-lift :where(.button,.btn,button,input[type="submit"],.nsv-sp-btn):hover{transform:translateY(-2px);}
body.nsv-de405-motion-soft-lift :where(.service-card,.card,.shulah-card,.post-card,.event-card,.partner-card):hover{transform:translateY(-4px);}
body.nsv-de405-motion-glow :where(.button,.btn,button,input[type="submit"],.nsv-sp-btn):hover{box-shadow:0 14px 30px color-mix(in srgb,var(--shula-primary, #0f766e) 24%, transparent)!important;}
body.nsv-de405-motion-slide :where(.button,.btn,button,input[type="submit"],.nsv-sp-btn){position:relative;overflow:hidden;}
body.nsv-de405-motion-slide :where(.button,.btn,button,input[type="submit"],.nsv-sp-btn):before{content:"";position:absolute;inset:0;translate:100% 0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transition:translate .34s ease;}
body.nsv-de405-motion-slide :where(.button,.btn,button,input[type="submit"],.nsv-sp-btn):hover:before{translate:-100% 0;}

body.nsv-de405-bg-soft-pattern:before,
body.nsv-de405-bg-glass-rings:before,
body.nsv-de405-bg-institutional:before{
	content:"";
	position:fixed;
	inset:0;
	z-index:-1;
	pointer-events:none;
}

body.nsv-de405-bg-soft-pattern:before{
	opacity:.42;
	background:
		radial-gradient(circle at 12% 15%, color-mix(in srgb,var(--shula-primary, #0f766e) 16%, transparent), transparent 26%),
		radial-gradient(circle at 86% 10%, color-mix(in srgb,var(--shula-accent, #3158e8) 12%, transparent), transparent 24%);
}

body.nsv-de405-bg-glass-rings:before{
	opacity:.5;
	background:
		radial-gradient(circle at 20% 20%, rgba(255,255,255,.62), transparent 12%),
		radial-gradient(circle at 82% 18%, color-mix(in srgb,var(--shula-primary, #0f766e) 13%, transparent), transparent 16%),
		radial-gradient(circle at 50% 92%, color-mix(in srgb,var(--shula-secondary, #0f172a) 9%, transparent), transparent 20%);
}

body.nsv-de405-bg-institutional:before{
	opacity:.34;
	background:
		linear-gradient(135deg, color-mix(in srgb,var(--shula-primary, #0f766e) 7%, transparent), transparent 35%),
		repeating-linear-gradient(135deg, rgba(15,23,42,.025) 0 1px, transparent 1px 18px);
}

body.nsv-de405-bg-plain:before{display:none!important;}

:where(.site-header,.main-navigation,.nsv-header,.header){transition:background .22s ease, box-shadow .22s ease, border-color .22s ease;}
:where(.site-header,.main-navigation,.nsv-header,.header) a:hover{color:var(--shula-primary, #0f766e);}

@media (max-width: 782px){
	body.nsv-de405-rhythm-airy{--shula-section-spacing:72px;--shula-content-gap:22px;--shula-card-padding:20px;}
	body.nsv-de405-rhythm-balanced{--shula-section-spacing:58px;--shula-content-gap:18px;--shula-card-padding:18px;}
}
