*, *::before, *::after {
	box-sizing: border-box;
}

:root {
    --page-max-width: 100%;
    --sidebar-width: 0;
    --page-layout: [header-left] "header header" auto [header-right] [main-left] "sidebar main" 1fr [main-right] [footer-left] "sidebar footer" auto [footer-right];
    --edge-spacing: 1.5rem;
    --content-max-width: 1320px;
    --fullwidth-max-width: 1920px;
	--page-grid: [fluid-start] minmax(var(--edge-spacing), 1fr) [fullwidth-start] minmax(0, calc((var(--fullwidth-max-width) - var(--content-max-width)) / 2)) [content-start] min(var(--content-max-width), 100% - var(--edge-spacing) * 2) [content-end] minmax(0, calc((var(--fullwidth-max-width) - var(--content-max-width)) / 2)) [fullwidth-end] minmax(var(--edge-spacing), 1fr) [fluid-end];
	height: 100%;
}

@media (prefers-reduced-motion: no-preference) {
    :is(:root, :has(:target)) {
        scroll-behavior: smooth;
    }
    @view-transition {
        navigation: auto;
    }
}

body {
	margin: 0;
	text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	display: flex;
	flex-direction: column;
	min-height: 100%;
	color: #1E1E1E;
	font-family: "kallisto", sans-serif;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.875;
}

address {
	font-style: normal;
}

img {
	max-width: 100%;
	vertical-align: middle;
	height: auto;
	font-style: italic;
}

p, h1, h2, h3, h4, h5, h6 {
	margin: 0;
}

:any-link {
	color: #244CDF;
	text-underline-position: from-font;
}

b, strong {
    font-weight: bolder;
}

.page {
	display: grid;
    grid-template: var(--page-layout) / var(--sidebar-width, auto) 1fr;
    max-width: var(--page-max-width);
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    flex: 1;
    isolation: isolate;
    overflow-x: clip;
    background-image: url(gradient.svg);
    background-size: 110%;
    background-repeat: no-repeat;
}
.page::after {
	content: "";
	position: absolute;
	top: 0;
	/*background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1146' height='1075' viewBox='0 0 1146 1075' fill='none'%3E%3Cpath d='M32.0593 0.000182271L32.101 0.18763L32.101 0.0626647C339.756 0.0626378 618.295 124.778 819.858 326.346C1011.53 518.021 1133.72 779.323 1145.24 1069.05C1146.22 1093.65 1126.41 1114.13 1101.79 1114.13L816.963 1114.13C793.72 1114.13 774.914 1095.8 773.643 1072.62C763.251 884.023 682.463 714.154 557.272 588.939C422.939 454.623 237.205 371.417 32.101 371.417L32.101 371.271L32.0594 371.375L-519.021 371.375L-519.021 0.000230448L32.0593 0.000182271Z' fill='%2360A2FF'/%3E%3C/svg%3E");*/
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1665' height='4171' viewBox='0 0 1665 4171' fill='none'%3E%3Cpath d='M551.08 0.000182271L551.122 0.18763L551.122 0.0626647C858.777 0.0626378 1137.32 124.778 1338.88 326.346C1530.55 518.021 1652.74 779.323 1664.26 1069.05C1665.24 1093.65 1664.26 4170.5 1664.26 4170.5L1292.66 4170.5C1292.66 4170.5 1293.93 1095.8 1292.66 1072.62C1282.27 884.023 1201.48 714.154 1076.29 588.939C941.96 454.623 756.225 371.417 551.122 371.417L551.122 371.271L551.08 371.375L1.94906e-06 371.375L-3.05176e-05 0.000230448L551.08 0.000182271Z' fill='%2360A2FF'/%3E%3C/svg%3E");
	background-size: 100%;
	background-position: top left;
	height: 100%;
	width: 80%;
	background-repeat: no-repeat;
	left: -22%;
	top: 1%;
}

.page-header {
    display: grid;
    grid-template-columns: var(--page-grid);
    background-image: url(header-bg.svg);
    background-position: bottom;
    background-size: cover;
    width: 100%;
    text-align: center;
    align-content: end;
    z-index: 1;
    grid-column: 1 / -1;
    min-height: 250px;
}

.page-content {
	grid-area: main;
    display: grid;
    grid-template-columns: var(--page-grid);
}

.page-footer {
	display: grid;
    grid-template-columns: var(--page-grid);
    grid-area: footer;
}

.header__heading {
	color: #FFF;
	font-size: clamp(1.375rem, 5vw, 2.5rem);
	font-weight: 700;
	line-height: 1;
	grid-column: content;
    min-width: 0;
    margin-bottom: calc(80px - .375em);
}

.page-content .inner {
	grid-column: fullwidth;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
}

.content {
	border-radius: 30px;
	background-color: #FFF;
	box-shadow: 3px 4px 49.8px 7px rgba(0, 0, 0, 0.29);
	grid-row: 1;
	row-gap: 1.5rem;
	display: grid;
	padding-block: clamp(1.5rem, 5vw, 3rem);
	padding-inline: clamp(1.5rem, 5vw, 3rem);
	position: relative;
	z-index: 3;
	align-self: start;
	grid-column: 1 / -1;
	margin-top: 2rem;
}

.content__description {
	align-self: center;
}

.content__address {
	align-self: end;
}

.logo {
	justify-self: center;
}

.content-decoration {
	display: block;
}

.decoration {
	grid-column: 6 / -1;
	grid-row: 1;
	align-self: center;
	margin-top: 19vmax;
	display: none;
}

.content__heading {
	font-size: 1.5rem;
	font-weight: 700;
    color: #002EB0;
    line-height: 1.2;
    margin-bottom: 1rem;
}

.footer__copyright {
	font-size: 0.75rem;
	grid-column: 1 / -1;
	align-self: end;
	margin-bottom: 2rem;
	margin-top: 2rem;
	text-align: center;
}

.footer__copyright :any-link {
	color: inherit;
}

@media (min-width: 1024px) {
	.page-header {
		grid-row: 2;
		grid-column: fullwidth;
		position: absolute;
		min-height: 20vmax;
		text-align: end;
	}
	.page::after {
		top: 0;
	}
	.content {
		grid-column: 2 / span 5;
		align-self: center;
		margin-top: 0;
		padding-block: clamp(1.5rem, 10%, 80px);
		padding-inline: clamp(1.5rem, 15%, 120px);
	}
	.header__heading {
		margin-inline-end: 5rem;
		font-size: clamp(1.375rem, 2.5vw, 2.5rem);
		margin-bottom: 5.5vmax;
	}
	.decoration {
		display: block;
	}
	.content-decoration {
		display: none;
	}
	.footer__copyright {
		grid-row: 1;
		grid-column: 2 / -1;
		text-align: start;
	}
}

@media (min-width: 1366px) {
	.content {
		min-height: fit-content;
		height: min(75vh, 845px);
		grid-template-rows: repeat(3, 1fr);
	}
	.header__heading {
		margin-inline-end: 0;
	}
}