:root {
	--rm-primary: #0d6efd;
	--rm-dark: #1a2233;
	--rm-accent: #f7a600;
}

body { font-family: 'Segoe UI', Roboto, Arial, sans-serif; color: #2b2f36; }

.navbar-brand img { height: 42px; margin-right: 8px; }
.navbar-brand span { font-weight: 700; font-size: 1.25rem; color: var(--rm-dark); }

.hero-section {
	background: linear-gradient(120deg, var(--rm-dark) 0%, #2c3e63 100%);
	color: #fff;
	padding: 90px 0 70px;
}
.hero-section h1 { font-weight: 700; }
.hero-section .btn-accent { background: var(--rm-accent); border-color: var(--rm-accent); color: #1a2233; font-weight: 600; }

.section-title { font-weight: 700; margin-bottom: 8px; }
.section-subtitle { color: #6c757d; margin-bottom: 40px; }

.category-card, .feature-card, .stat-card {
	border: 1px solid #eef0f4;
	border-radius: 12px;
	transition: transform .15s ease, box-shadow .15s ease;
	height: 100%;
}
.category-card:hover, .feature-card:hover { transform: translateY(-4px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.category-card .icon-circle, .feature-card .icon-circle {
	width: 60px; height: 60px; border-radius: 50%;
	background: rgba(13,110,253,.1); color: var(--rm-primary);
	display: flex; align-items: center; justify-content: center; font-size: 1.5rem;
}

.stat-card { background: var(--rm-dark); color: #fff; text-align: center; padding: 24px; }
.stat-card .num { font-size: 2.2rem; font-weight: 700; color: var(--rm-accent); }

footer.site-footer { background: var(--rm-dark); color: #cfd4de; padding: 50px 0 20px; }
footer.site-footer a { color: #cfd4de; text-decoration: none; }
footer.site-footer a:hover { color: var(--rm-accent); }
footer.site-footer h5 { color: #fff; font-weight: 600; margin-bottom: 16px; }

.cta-section { background: var(--rm-primary); color: #fff; padding: 50px 0; }

.auth-card { max-width: 480px; margin: 0 auto; }
.auth-card .card { border: none; border-radius: 14px; box-shadow: 0 10px 30px rgba(0,0,0,.08); }

.reg-card { max-width: 820px; margin: 0 auto; }
.reg-card .card { border: none; border-radius: 14px; box-shadow: 0 10px 30px rgba(0,0,0,.06); }
