:root {
    --site-theme-primary: #7c3aed;
    --site-theme-secondary: #4f46e5;
    --site-theme-accent: #22d3ee;
    --site-theme-text: #111827;
    --site-theme-muted-text: #6b7280;
    --site-theme-bg: #f5f3ff;
    --site-theme-surface: #ffffff;
    --site-theme-border: #ddd6fe;
    --site-theme-footer-bg: #111827;
    --site-theme-footer-text: #f3f4f6;
}

body {
    background:
        radial-gradient(circle at top right, rgba(124, 58, 237, 0.08), transparent 30%),
        var(--site-theme-bg);
    color: var(--site-theme-text);
}

a,
.nav-link,
.footer-area a:hover {
    color: var(--site-theme-primary);
}

.top-nav.main-nav,
.mobile-nav,
.sidebar-modal .modal-content,
.content-card {
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(10px);
}

.content-card,
.mobile-cta-bar {
    border: 1px solid var(--site-theme-border);
    border-radius: 18px;
}

.btn-primary,
.default-btn,
.cta-btn-primary,
.mobile-cta-btn-primary,
button[type="submit"].btn-primary {
    background: linear-gradient(135deg, var(--site-theme-primary), var(--site-theme-secondary));
    border: none;
    color: #fff;
    box-shadow: 0 12px 28px rgba(79, 70, 229, 0.22);
}

.default-btn::before,
.default-btn::after {
    background: linear-gradient(135deg, var(--site-theme-primary), var(--site-theme-secondary));
}

.btn-primary:hover,
.default-btn:hover::before,
.default-btn:hover::after,
.cta-btn-primary:hover,
.mobile-cta-btn-primary:hover,
button[type="submit"].btn-primary:hover {
    background: linear-gradient(135deg, var(--site-theme-secondary), var(--site-theme-primary));
    color: #fff;
}

.default-btn.active,
.btn-outline-primary,
.cta-btn-outline {
    color: var(--site-theme-primary);
    border-color: var(--site-theme-primary);
    background: rgba(255, 255, 255, 0.72);
    border-radius: 999px;
}

.default-btn.active::before,
.default-btn.active::after {
    background: transparent;
}

.default-btn.active:hover,
.btn-outline-primary:hover,
.cta-btn-outline:hover {
    background: linear-gradient(135deg, var(--site-theme-primary), var(--site-theme-secondary));
    color: #fff;
    border-color: transparent;
}

.cta-btn,
.btn-primary,
.btn-outline-primary,
.default-btn {
    border-radius: 999px;
}

.mobile-cta-phone,
.mobile-cta-whatsapp,
.mobile-cta-form {
    color: var(--site-theme-secondary);
}

.mobile-cta-phone i,
.mobile-cta-form i {
    color: var(--site-theme-secondary);
}

.mobile-cta-whatsapp i {
    color: var(--site-theme-accent);
}

.cta-card {
    background: linear-gradient(135deg, var(--site-theme-primary), var(--site-theme-secondary));
    border-radius: 28px;
}

.cta-icon,
.mobile-cta-btn i,
.footer-card i {
    color: var(--site-theme-accent);
}

.navbar-area .nav-link.active,
.navbar-area .nav-link:hover {
    color: var(--site-theme-secondary);
}

.footer-area {
    background: linear-gradient(180deg, var(--site-theme-footer-bg), #020617);
    color: var(--site-theme-footer-text);
}

.footer-area .footer-card,
.footer-area .footer-list,
.footer-area .footer-side-list {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 18px;
}

.footer-area h3,
.footer-area p,
.footer-area a,
.footer-area li,
.footer-area .bx {
    color: var(--site-theme-footer-text);
}
