/* ==========================================================================
   Viyana Brief — Global base (applies site-wide, on top of Astra)
   ========================================================================== */
body.vb-site {
	font-family: var(--vb-font);
	font-size: var(--vb-text-base);
	line-height: var(--vb-lh);
	color: var(--vb-text);
	background: var(--vb-bg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

body.vb-site :is(button, input, select, textarea) { font-family: inherit; }

body.vb-site :is(h1, h2, h3, h4, h5, h6) {
	font-family: var(--vb-font);
	color: var(--vb-heading);
	line-height: var(--vb-lh-heading);
	font-weight: 700;
}

/* Links */
body.vb-site a { color: var(--vb-navy); text-decoration-color: rgba(4, 19, 53, 0.25); text-underline-offset: 3px; transition: color var(--vb-ease), text-decoration-color var(--vb-ease); }
body.vb-site a:hover { color: var(--vb-orange-600); text-decoration-color: currentColor; }

/* Focus — visible, on-brand, keyboard only */
body.vb-site :focus { outline: none; }
body.vb-site :focus-visible { outline: 2px solid var(--vb-orange); outline-offset: 2px; border-radius: 4px; }

/* Selection */
body.vb-site ::selection { background: rgba(243, 114, 43, 0.22); color: var(--vb-navy); }

/* Generic buttons (outside Fluent Forms) */
body.vb-site :is(.vb-btn, .wp-element-button, .wp-block-button__link) {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 10px 22px;
	font: 700 14px/1.2 var(--vb-font);
	color: #fff; background: var(--vb-orange);
	border: 0; border-radius: var(--vb-radius);
	text-decoration: none; cursor: pointer;
	transition: background var(--vb-ease), transform var(--vb-ease);
}
body.vb-site :is(.vb-btn, .wp-element-button, .wp-block-button__link):hover { background: var(--vb-orange-600); color: #fff; }

/* Arabic: no letter-spacing / uppercase tricks that break Arabic shaping */
body.rtl.vb-site * { letter-spacing: 0 !important; }

@media (prefers-reduced-motion: reduce) {
	body.vb-site *, body.vb-site *::before, body.vb-site *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
