body {
	font-family: 'Roboto', sans-serif;
}

@font-face {
	font-family: 'Roboto';
	src: url("/fonts/Roboto-Regular.ttf") format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Roboto';
	src: url("/fonts/Roboto-Bold.ttf") format("truetype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

.bd-placeholder-img {
	font-size: 1.125rem;
	text-anchor: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

@media (min-width: 768px) {
	.bd-placeholder-img-lg {
		font-size: 3.5rem;
	}
}

.b-example-divider {
	width: 100%;
	height: 3rem;
	background-color: rgba(0, 0, 0, .1);
	border: solid rgba(0, 0, 0, .15);
	border-width: 1px 0;
	box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.b-example-vr {
	flex-shrink: 0;
	width: 1.5rem;
	height: 100vh;
}

.bi {
	vertical-align: -.125em;
	fill: currentColor;
}

.nav-scroller {
	position: relative;
	z-index: 2;
	height: 2.75rem;
	overflow-y: hidden;
}

.nav-scroller .nav {
	display: flex;
	flex-wrap: nowrap;
	padding-bottom: 1rem;
	margin-top: -1px;
	overflow-x: auto;
	text-align: center;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
}

.btn-bd-primary {
	--bd-violet-bg: #712cf9;
	--bd-violet-rgb: 112.520718, 44.062154, 249.437846;
	--bd-gray-bg: #a7a0a0;

	--bs-btn-font-weight: 600;
	--bs-btn-color: var(--bs-white);
	--bs-btn-bg: var(--bd-gray-bg);
	--bs-btn-border-color: var(--bd-gray-bg);
	--bs-btn-hover-color: var(--bs-white);
	--bs-btn-hover-bg: #737272;
	--bs-btn-hover-border-color: #737272;
	--bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
	--bs-btn-active-color: var(--bs-btn-hover-color);
	--bs-btn-active-bg: #656363;
	--bs-btn-active-border-color: #656363;
}

.bd-mode-toggle {
	z-index: 1500;
}

.bd-mode-toggle .dropdown-menu .active .bi {
	display: block !important;
}

/* Table of Contents */
details summary {
	cursor: pointer;
	font-size: 1.1rem;
}
details summary:hover {
	color: var(--bs-primary);
}

#TableOfContents ul {
	list-style-type: none;
	padding-left: 1rem;
}
#TableOfContents ul ul {
	padding-left: 1rem;
}

/* Read more link */
.read-more {
	font-weight: 500;
}

/* Share buttons */
.share-buttons .btn {
	padding: 0.25rem 0.5rem;
	font-size: 0.875rem;
}

/* Breadcrumb */
.breadcrumb {
	margin-bottom: 0.5rem;
	font-size: 0.875rem;
}

/* Print styles */
@media print {
	.bd-mode-toggle,
	.nav-scroller,
	.share-buttons,
	footer,
	#TableOfContents,
	details {
		display: none !important;
	}
	body {
		font-size: 12pt;
		color: #000;
		background: #fff;
	}
	a {
		color: #000;
		text-decoration: underline;
	}
	.blog-post-meta {
		font-size: 10pt;
	}
}