/**
 * Revilope brand foundation.
 *
 * Keep Elementor layout and typography controls inside Elementor.
 * These variables and helper classes provide a consistent brand system.
 */

:root {
	--revilope-indigo: #6254e8;
	--revilope-indigo-dark: #493bbe;
	--revilope-gold: #f4b740;
	--revilope-ink: #192033;
	--revilope-lavender: #f1efff;
	--revilope-cream: #fff9ed;
	--revilope-grey: #667085;
	--revilope-border: #e4e7ec;
	--revilope-success: #20a66a;
	--revilope-surface: #f8f9fc;
	--revilope-white: #ffffff;

	--revilope-radius-sm: 8px;
	--revilope-radius-md: 14px;
	--revilope-radius-lg: 20px;
	--revilope-shadow-sm: 0 8px 24px rgba(25, 32, 51, 0.08);
	--revilope-shadow-md: 0 18px 50px rgba(25, 32, 51, 0.12);
}

/* Sensible global defaults. */
body {
	color: var(--revilope-ink);
	background: var(--revilope-white);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	color: var(--revilope-indigo);
}

a:hover,
a:focus {
	color: var(--revilope-indigo-dark);
}

button,
input[type="button"],
input[type="submit"],
.elementor-button {
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
	border-color: var(--revilope-border);
	border-radius: var(--revilope-radius-sm);
}

input:focus,
select:focus,
textarea:focus {
	border-color: var(--revilope-indigo);
	box-shadow: 0 0 0 3px rgba(98, 84, 232, 0.14);
	outline: none;
}

/* Optional helper classes for Elementor containers and widgets. */
.revilope-bg-lavender {
	background-color: var(--revilope-lavender);
}

.revilope-bg-cream {
	background-color: var(--revilope-cream);
}

.revilope-bg-ink {
	background-color: var(--revilope-ink);
	color: var(--revilope-white);
}

.revilope-card {
	background: var(--revilope-white);
	border: 1px solid var(--revilope-border);
	border-radius: var(--revilope-radius-md);
	box-shadow: var(--revilope-shadow-sm);
}

.revilope-gradient {
	background: linear-gradient(135deg, var(--revilope-indigo) 0%, #8b7cf6 100%);
}

.revilope-text-gradient {
	background: linear-gradient(135deg, var(--revilope-indigo-dark), var(--revilope-indigo));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.revilope-gold-accent {
	color: var(--revilope-gold);
}

.revilope-success {
	color: var(--revilope-success);
}
