:root {
	--color1: #1904d9; /* Bright Red */
	--color2: #2334ef; /* Secondary Red */
	--color3: #2b2d42; /* Dark Navy/Black */
	--color4: #edf2f4; /* Light Background */
	--color5: #ffffff;
}

body {
	font-family: 'Open Sans', sans-serif;
	scroll-behavior: smooth;
	color: var(--color3);
}

h1,
h2,
h3,
.font-title {
	font-family: 'Montserrat', sans-serif;
	letter-spacing: -0.02em;
}

/* Animations */
.reveal-element {
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.reveal-element.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Custom Buttons & Hover Effects */
.btn-primary {
	background-color: var(--color1);
	color: white;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(217, 4, 41, 0.3);
}

.btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 25px rgba(217, 4, 41, 0.4);
	background-color: var(--color2);
}

/* Red Accent for selections */
::selection {
	background: var(--color1);
	color: white;
}

/* Decorative Background Grid */
.bg-grid {
	background-image: radial-gradient(var(--color1) 0.5px, transparent 0.5px);
	background-size: 30px 30px;
	opacity: 0.05;
}

/* Image styling */
img {
	filter: contrast(1.1) brightness(1.05);
	transition: filter 0.5s ease;
}

/* Mobile Nav Reset */
#burger-btn:focus {
	outline: none;
}
