@font-face {
	font-display: swap;
	font-family: 'Manrope';
	font-style: normal;
	font-weight: normal;
	src: url('../fonts/manrope-variable.ttf') format('truetype');
}

.material-symbols-outlined {
	font-size: 1.2em !important;
	font-variation-settings:
		'FILL' 0,
		'wght' 400,
		'GRAD' 0,
		'opsz' 24;
	vertical-align: text-bottom;
}


:root {
	--bs-primary: #427cc5;
	--bs-body-font-family: 'Manrope', sans-serif;
}


/* Typography */
.display-1,
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5 {
	letter-spacing: -.025em;
}


/* General layout */
main {
	min-height: calc(100svh - 23rem);
}


.display-1 {
	font-size: 2.5rem;
}

h5, .h5, .fs-5 {
	font-size: 1.125rem !important;
}


/* Colors */
.bg-light {
	background-color: #eff5f9 !important;
}


/* Buttons */
.btn-primary {
	--bs-btn-bg: #427cc5;
}

#main-nav .nav-link {
	color: #303b41;
	font-size: .875rem;
	font-weight: 600;

	&.active,
	&:hover {
		color: var(--bs-primary);
	}
}

#main-nav .dropdown-menu {
	padding-right: 1.5ch;
}
@media (min-width: 992px) {
	#main-nav .dropdown-menu {
		margin: 0 var(--bs-navbar-nav-link-padding-x);
		margin-top: 1px;
	}
}

#main-nav .dropdown-toggle {
	align-items: center;
	display: flex;
	height: 100%;
}

#main-nav .dropdown-item {
	background: none;
	font-size: .875rem;
	transform: translateX(0);
	transition: transform 200ms ease-in-out;

	&.active,
	&:hover {
		color: var(--bs-primary);
	}

	&:hover {
		transform: translateX(1.5ch);
	}
}

@media (min-width: 992px) {
	#main-nav > .navbar-nav {
		height: 100%;
	}

	#main-nav .navbar-nav > .nav-link,
	#main-nav .nav-link.dropdown-toggle {
		align-items: center;
		display: flex;
		position: relative;

		&::before {
			background: #427cc5;
			bottom: 0;
			content: '';
			display: block;
			height: 3px;
			left: var(--bs-navbar-nav-link-padding-x);
			position: absolute;
			transform: scaleX(0);
			transition: transform 200ms ease-in-out;
			width: calc(100% - 2 * var(--bs-navbar-nav-link-padding-x));
		}

		&.active,
		&.show,
		&:hover {
			&::before {
				transform: scaleX(1);
			}
		}
	}
}
