/**
 * Shula Global Design Tokens 4.0.6
 * Safe progressive visual layer. No legacy selectors are removed.
 */

:root {
	--nsv-space-2xs: 6px;
	--nsv-space-xs: 12px;
	--nsv-space-sm: 18px;
	--nsv-space-md: 28px;
	--nsv-space-lg: 42px;
	--nsv-space-xl: 64px;
	--nsv-radius-sm: 10px;
	--nsv-radius-md: 16px;
	--nsv-radius-lg: 22px;
	--nsv-radius-xl: 30px;
	--nsv-shadow-sm: 0 10px 30px rgba(15,23,42,.09);
	--nsv-shadow-md: 0 18px 46px rgba(15,23,42,.13);
	--nsv-shadow-lg: 0 26px 70px rgba(15,23,42,.16);
	--nsv-glass-opacity: .88;
	--nsv-glass-blur: 10px;
	--nsv-glass-bg: rgba(255,255,255,.88);
	--nsv-motion-duration: 220ms;
	--nsv-motion-ease: cubic-bezier(.2,.8,.2,1);
	--nsv-motion-lift: -3px;
	--nsv-line-height: 1.9;
	--nsv-letter-spacing: .01em;
	--nsv-heading-weight: 800;
}

.nsv-tokens-406 {
	line-height: var(--nsv-line-height);
	letter-spacing: var(--nsv-letter-spacing);
}

.nsv-tokens-406 h1,
.nsv-tokens-406 h2,
.nsv-tokens-406 h3,
.nsv-tokens-406 .section-title,
.nsv-tokens-406 .nsv-section-title {
	font-weight: var(--nsv-heading-weight);
}

.nsv-tokens-apply-layer .nsv-card,
.nsv-tokens-apply-layer .shula-card,
.nsv-tokens-apply-layer .service-card,
.nsv-tokens-apply-layer .event-card,
.nsv-tokens-apply-layer .post-card,
.nsv-tokens-apply-layer .partner-card,
.nsv-tokens-apply-layer .team-card,
.nsv-tokens-apply-layer .stat-card,
.nsv-tokens-apply-layer .glass-card,
.nsv-tokens-apply-layer .nsv-box,
.nsv-tokens-apply-layer .shula-box {
	border-radius: var(--nsv-radius-lg);
	box-shadow: var(--nsv-shadow-sm);
	transition: transform var(--nsv-motion-duration) var(--nsv-motion-ease), box-shadow var(--nsv-motion-duration) var(--nsv-motion-ease), border-color var(--nsv-motion-duration) var(--nsv-motion-ease);
}

.nsv-tokens-apply-layer .nsv-card:hover,
.nsv-tokens-apply-layer .shula-card:hover,
.nsv-tokens-apply-layer .service-card:hover,
.nsv-tokens-apply-layer .event-card:hover,
.nsv-tokens-apply-layer .post-card:hover,
.nsv-tokens-apply-layer .partner-card:hover,
.nsv-tokens-apply-layer .team-card:hover,
.nsv-tokens-apply-layer .stat-card:hover,
.nsv-tokens-apply-layer .glass-card:hover {
	transform: translateY(var(--nsv-motion-lift));
	box-shadow: var(--nsv-shadow-md);
}

.nsv-tokens-apply-layer section,
.nsv-tokens-apply-layer .nsv-section,
.nsv-tokens-apply-layer .shula-section,
.nsv-tokens-apply-layer .home-section {
	padding-top: var(--nsv-space-lg);
	padding-bottom: var(--nsv-space-lg);
}

.nsv-tokens-apply-layer .container,
.nsv-tokens-apply-layer .nsv-container,
.nsv-tokens-apply-layer .shula-container {
	padding-inline: var(--nsv-space-md);
}

.nsv-tokens-apply-layer .btn,
.nsv-tokens-apply-layer .button,
.nsv-tokens-apply-layer button,
.nsv-tokens-apply-layer input[type="submit"],
.nsv-tokens-apply-layer .wp-block-button__link {
	border-radius: var(--nsv-radius-md);
	transition: transform var(--nsv-motion-duration) var(--nsv-motion-ease), box-shadow var(--nsv-motion-duration) var(--nsv-motion-ease), background-color var(--nsv-motion-duration) var(--nsv-motion-ease), color var(--nsv-motion-duration) var(--nsv-motion-ease);
}

.nsv-tokens-apply-layer .btn:hover,
.nsv-tokens-apply-layer .button:hover,
.nsv-tokens-apply-layer button:hover,
.nsv-tokens-apply-layer input[type="submit"]:hover,
.nsv-tokens-apply-layer .wp-block-button__link:hover {
	transform: translateY(var(--nsv-motion-lift));
	box-shadow: var(--nsv-shadow-sm);
}

.nsv-tokens-glass-clean .glass,
.nsv-tokens-glass-clean .glass-card,
.nsv-tokens-glass-clean .nsv-glass,
.nsv-tokens-glass-frosted .glass,
.nsv-tokens-glass-frosted .glass-card,
.nsv-tokens-glass-frosted .nsv-glass,
.nsv-tokens-glass-luxury .glass,
.nsv-tokens-glass-luxury .glass-card,
.nsv-tokens-glass-luxury .nsv-glass {
	background: var(--nsv-glass-bg);
	-webkit-backdrop-filter: blur(var(--nsv-glass-blur));
	backdrop-filter: blur(var(--nsv-glass-blur));
	border: 1px solid rgba(255,255,255,.42);
}

.nsv-tokens-glass-off .glass,
.nsv-tokens-glass-off .glass-card,
.nsv-tokens-glass-off .nsv-glass {
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

.nsv-tokens-motion-none *,
.nsv-tokens-motion-none *::before,
.nsv-tokens-motion-none *::after {
	transition-duration: 0ms !important;
	animation-duration: 0ms !important;
}

@media (max-width: 768px) {
	.nsv-tokens-apply-layer section,
	.nsv-tokens-apply-layer .nsv-section,
	.nsv-tokens-apply-layer .shula-section,
	.nsv-tokens-apply-layer .home-section {
		padding-top: calc(var(--nsv-space-lg) * .72);
		padding-bottom: calc(var(--nsv-space-lg) * .72);
	}

	.nsv-tokens-apply-layer .container,
	.nsv-tokens-apply-layer .nsv-container,
	.nsv-tokens-apply-layer .shula-container {
		padding-inline: var(--nsv-space-sm);
	}
}

/* Shula Design Tokens Dashboard Bridge 4.0.7
   Expands token adoption safely to common theme components without removing legacy CSS. */
.nsv-tokens-apply-layer .nsv-dynamic-card,
.nsv-tokens-apply-layer .nsv-board-card,
.nsv-tokens-apply-layer .nsv-feature-card,
.nsv-tokens-apply-layer .nsv-news-card,
.nsv-tokens-apply-layer .nsv-event-card,
.nsv-tokens-apply-layer .nsv-partner-card,
.nsv-tokens-apply-layer .nsv-dashboard-card,
.nsv-tokens-apply-layer .nsv-design-card{
	border-radius:var(--nsv-radius-xl);
	box-shadow:var(--nsv-shadow-sm);
	transition:transform var(--nsv-motion-duration) var(--nsv-motion-ease), box-shadow var(--nsv-motion-duration) var(--nsv-motion-ease);
}
.nsv-tokens-apply-layer .nsv-dynamic-card:hover,
.nsv-tokens-apply-layer .nsv-board-card:hover,
.nsv-tokens-apply-layer .nsv-feature-card:hover,
.nsv-tokens-apply-layer .nsv-news-card:hover,
.nsv-tokens-apply-layer .nsv-event-card:hover,
.nsv-tokens-apply-layer .nsv-partner-card:hover{
	transform:translateY(var(--nsv-motion-lift));
	box-shadow:var(--nsv-shadow-md);
}
.nsv-tokens-apply-layer .nsv-dynamic-card-body,
.nsv-tokens-apply-layer .nsv-card-body,
.nsv-tokens-apply-layer .shula-card-body{
	padding:var(--nsv-space-md);
}
.nsv-tokens-apply-layer .nsv-page-hero,
.nsv-tokens-apply-layer .hero-section,
.nsv-tokens-apply-layer .shula-hero{
	padding-top:var(--nsv-space-xl);
	padding-bottom:var(--nsv-space-lg);
}
.nsv-tokens-apply-layer .nsv-btn,
.nsv-tokens-apply-layer .shula-btn,
.nsv-tokens-apply-layer .hero-btn{
	border-radius:var(--nsv-radius-md);
}
