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

*:not(dialog) {
	margin: 0;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
	margin: 0;
}

ul[class], ol[class] {
	list-style: none;
}

html:focus-within {
	scroll-behavior: smooth;
}

body {
	min-height: 100vh;
	text-rendering: optimizeLegibility;
	line-height: 1.5;
}

a:not([class]) {
	text-decoration-skip-ink: auto;
}

@media (prefers-reduced-motion: no-preference) {
	html {
		interpolate-size: allow-keywords;
	}
}

@media (prefers-reduced-motion: reduce) {
	html:focus-within {
		scroll-behavior: auto;
	}

	*, *::before, *::after {
		animation-duration: 0.01ms !important;
	    animation-iteration-count: 1 !important;
	    transition-duration: 0.01ms !important;
	    scroll-behavior: auto !important;
	}
}

section {
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	padding-top: var(--space-md);
	padding-bottom: var(--space-md);
	padding-left: var(--space-md);
	padding-right: var(--space-md);
}

vspace-sx { display: block; min-height: 8px; }
vpsace-sm { display: block; min-height: 16px; }
vspace-md { display: block; min-height: 32px; }
vspace-lg { display: block; min-height: 64px; }

block {
	display: flex;
	align-items: stretch;
	gap: var(--space-md);
}
block content {
	flex: 6;
}
block sidecon {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--gradient-eu-header-0);
	border-radius: 4px;
	padding: var(--space-sm);
}
block sidecon svg {
	color: var(--color-bright-snow);
}
block h1, h2, h3, h4, h5, h6 {
	color: var(--color-smart-blue);
}
block p {
	font-size: var(--font-size-body);
	font-family: var(--font-family-body);
	font-weight: normal;
	color: var(--color-carbon-black);
	margin-bottom: 1em;
	text-align: justify;
}
block offset {
	display: flex;
	flex: 4;
	justify-content: center;
	align-items: center;
}
block offset img {
	max-width: 100%;
	border-radius: 4px;
}


button {
	all: unset;
	cursor: pointer;
	display: flex;
	align-items: center;
	font-size: 1.5em;
	font-family: var(--font-body);
	font-weight: 600;
	color: var(--color-carbon-black);
	gap: var(--space-sm);
}
button a {
	all: unset;
	text-decoration: underline;
}
button svg {
	width: 16px;
	height: 16px;
	color: black;
}



sub {
	display: flex;
	min-width: 100%;
	max-width: 100%;
	border-radius: 4px;
	background: var(--color-gradient-alabaster-gray-clean-ice);
	padding: var(--space-md);
}
card {
	display: flex;
	border-radius: 4px;
	background: var(--color-alabaster-gray);
	padding: var(--space-md);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-body);
	font-weight: bold;
	color: var(--color-carbon-black);
}





html {
	scrollbar-width: thin;
	scrollbar-color: var(--color-smart-blue, #0d3b66) transparent;
}

::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
::-webkit-scrollbar-track {
	background: transparent;
}
::-webkit-scrollbar-thumb {
	background: var(--gradient-eu-header-0);
	border: 2px solid transparent;
	background-clip: padding-box;
	border-radius: 99px;
	transition: background-color 0.2s ease;
	opacity: 0.6;
}
::-webkit-scrollbar-thumb:hover {
	background-color: var(--color-carbon-black, #1a1a1a);
}