@import url('https://fonts.googleapis.com/css2?family=Noto+Sans&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4&display=swap');

:root {
	--hue: 214;
	--template-bg-light: #f0f4fb;
	--template-text-dark: #495057;
	--template-text-light: #ffffff;
	--template-link-color: #2a69b8;
	--template-special-color: #001B4C;
	--cassiopeia-font-family-body: "Fira Sans", sans-serif;
	--cassiopeia-font-family-headings: "Fira Sans", sans-serif;
	--cassiopeia-font-weight-normal: 400;
	--cassiopeia-font-weight-headings: 700;
	--cassiopeia-color-primary: #112855;
	--cassiopeia-color-link: #224faa;
	--cassiopeia-color-hover: #424077;
}
.container-header {
	background-color: var(--cassiopeia-color-primary);
	background-image: linear-gradient(135deg, var(--cassiopeia-color-primary) 0, var(--cassiopeia-color-hover) 100%);
	box-shadow: inset 0 5px 5px rgba(0, 0, 0, 0.03);
	position: relative;
	z-index: 10;
}
@media (max-width: 991.98px) {
	.container-header {
		position: relative !important;
	}
}
.container-header .grid-child {
	padding: 0.5em;
}
.container-header nav {
	margin-top: 0.5em;
	padding: 0;
}
.container-header .container-nav {
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 1em;
}
@media (max-width: 767.98px) {
	.container-header .container-nav .container-search,
	.container-header .container-nav nav {
		margin-top: 1em;
	}
}
.container-header .container-nav .container-search:only-child {
	margin-left: auto;
}
.container-header .navbar-collapse.show {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.container-header .mod-menu {
	color: #fff;
	flex: 1 0 100%;
	list-style: none;
	margin: 0;
	padding: 0;
}
@media (min-width: 992px) {
	.container-header .mod-menu {
		display: flex;
		flex: 1 1 0%;
		flex-direction: row;
	}
}
.container-header .mod-menu > li {
	position: relative;
}
@media (min-width: 992px) {
	.container-header .mod-menu > li + li {
		margin-left: 1.55em;
	}
}
.container-header .mod-menu > li > a,
.container-header .mod-menu > li > span {
	color: currentColor;
	position: relative;
	text-decoration: none;
}
@media (min-width: 992px) {
	.container-header .mod-menu > li:after {
		background: transparent;
		bottom: 0;
		content: "";
		display: block;
		height: 2px;
		left: 50%;
		margin: auto;
		opacity: 0.2;
		position: absolute;
		right: 50%;
		transition: all 0.2s ease, background-color 0.2s ease;
	}
}
.container-header .mod-menu > li.active:after,
.container-header .mod-menu > li:hover:after {
	background: #fff;
	left: 0;
	right: 2px;
}
@media (max-width: 991.98px) {
	.container-header .mod-menu > li.active > a,
	.container-header .mod-menu > li.active > span,
	.container-header .mod-menu > li > a:hover {
		text-decoration: none;
	}
}
.container-header .mod-menu .parent > ul {
	color: #22262a;
	display: none;
}
.container-header .navbar-toggler {
	border: 1px solid #fff;
	color: #fff;
	cursor: pointer;
}
.container-header .navbar-toggler .fas {
	font-size: 1.5rem;
}
.container-header .container-search {
	margin-top: 10px;
}

.sr-only,
.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	white-space: nowrap !important;
	width: 1px !important;
}
.grid-child {
	display: flex;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
.BUTTON_DVM {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	height: 50px;
	line-height: 24px;
	display: inline-table;
	color: #FFFFFF;
	font-size:30px;
	font-family: 'Raleway';
	width: 200px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
	background-color: #A00037;
	-webkit-box-shadow: 1px 1px 20px 0 #000000;
	-moz-box-shadow: 1px 1px 20px 0 #000000;
	box-shadow: 1px 1px 20px 0 #000000;
	border: solid #AAAAAA 1px;
	cursor: pointer;
	text-align: center;
	margin-top: 10px;
}

.BUTTON_DVM:hover {
	background: #F00037;
	border: solid #FFFFFF 1px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-decoration: none;
}

.BUTTON_DVM_SMALL:hover {
	background: #F00037;
	border: solid #FFFFFF 1px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-decoration: none;
}

.BUTTON_DVM_SMALL {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	height: 50px;
	line-height: 24px;
	display: inline-table;
	color: #FFFFFF;
	font-size:20px;
	font-family: 'Raleway';
	width: 200px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
	background-color: #A00037;
	-webkit-box-shadow: 1px 1px 20px 0 #000000;
	-moz-box-shadow: 1px 1px 20px 0 #000000;
	box-shadow: 1px 1px 20px 0 #000000;
	border: solid #AAAAAA 1px;
	cursor: pointer;
	text-align: center;
}

.container-header .mod-menu>li.active:after, .container-header .mod-menu>li:hover:after {
	background: transparent;
}

.footer {
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 10000;
	margin-top: 0em;
}

.footer {
    background-color: var(--cassiopeia-color-primary);
    background-image: linear-gradient(
	135deg
	,var(--cassiopeia-color-primary) 0,var(--cassiopeia-color-hover) 100%);
    color: #fff;
    margin-top: 1em;
}

.footer .grid-child {
	display: block;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 0.5em;
}

.container-component > * + *,
.container-sidebar-left > * + *,
.container-sidebar-right > * + * {
	margin-top: 0em;
	margin-bottom: 1em;
}

body {
    display: flex;
    flex-direction: column;
}
body.wrapper-fluid .grid-child {
    max-width: none;
}
body.wrapper-fluid footer > .grid-child,
body.wrapper-fluid header > .grid-child {
    padding-left: 2em;
    padding-right: 2em;
}

body.wrapper-fluid .site-grid {
	grid-template-columns: [full-start] minmax(0, 1fr) [main-start] repeat(4, minmax(0, 25%)) [main-end] minmax(0, 1fr) [full-end];
	grid-gap: 0 0em;
}

body {
	min-height: 0;
    margin: 0;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fff;
}

.row {
    --gutter-x: 1em;
    --gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(var(--gutter-x) * -0.5);
    margin-right: calc(var(--gutter-x) * -0.5);
    margin-top: calc(var(--gutter-y) * -1);
}
.row > * {
    flex-shrink: 0;
    margin-top: var(--gutter-y);
    max-width: 100%;
    padding-left: calc(var(--gutter-x) * 0.5);
    padding-right: calc(var(--gutter-x) * 0.5);
    width: 100%;
}
.col {
    flex: 1 0 0%;
}
img {
    height: auto;
    max-width: 100%;
}