@charset "UTF-8";
*,
::after,
::before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
ol,
ul {
	padding: 0;
}
blockquote,
body,
dd,
dl,
figcaption,
figure,
h1,
h2,
h3,
h4,
h5,
li,
ol,
p,
ul {
	margin: 0;
}
html {
	-webkit-text-size-adjust: 100%;
}
pre {
	font-family: monospace, monospace;
}
hr {
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
a {
	background-color: transparent;
}
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
code,
kbd,
samp {
	font-family: monospace, monospace;
}
sub,
sup {
	position: relative;
	line-height: 0;
	vertical-align: baseline;
}
img {
	border-style: none;
}
input,
optgroup,
select,
textarea {
	font-family: inherit;
	margin: 0;
}
input {
	overflow: visible;
}
button,
select {
	text-transform: none;
}
[type='button'],
[type='reset'],
[type='submit'],
button {
	-webkit-appearance: button;
}
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner,
button::-moz-focus-inner {
	border-style: none;
	padding: 0;
}
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring,
button:-moz-focusring {
	outline: 1px dotted ButtonText;
}
legend {
	display: table;
	color: inherit;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}
progress {
	vertical-align: baseline;
}
textarea {
	overflow: auto;
}
[type='checkbox'],
[type='radio'] {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
}
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
	height: auto;
}
[type='search'] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}
body {
	min-height: 100dvh;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
}
:where(ol[class]),
:where(ul[class]) {
	list-style: none;
}
a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}
input,
select,
textarea {
	font: inherit;
}
@font-face {
	font-family: system;
	font-style: normal;
	font-weight: 300;
	src: local('.SFNSText-Light'), local('.HelveticaNeueDeskInterface-Light'), local('.LucidaGrandeUI'), local('Ubuntu Light'), local('Segoe UI Light'), local('Roboto-Light'), local('DroidSans'), local('Tahoma');
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Black.woff) format('woff'),
		url(../fonts/Jost-Black.woff2) format('woff2');
	font-weight: 900;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-BlackItalic.woff) format('woff'),
		url(../fonts/Jost-BlackItalic.woff2) format('woff2');
	font-weight: 900;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Bold.woff) format('woff'),
		url(../fonts/Jost-Bold.woff2) format('woff2');
	font-weight: 700;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-BoldItalic.woff) format('woff'),
		url(../fonts/Jost-BoldItalic.woff2) format('woff2');
	font-weight: 700;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-ExtraBold.woff) format('woff'),
		url(../fonts/Jost-ExtraBold.woff2) format('woff2');
	font-weight: 700;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-ExtraBoldItalic.woff) format('woff'),
		url(../fonts/Jost-ExtraBoldItalic.woff2) format('woff2');
	font-weight: 700;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-ExtraLight.woff) format('woff'),
		url(../fonts/Jost-ExtraLight.woff2) format('woff2');
	font-weight: 200;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-ExtraLightItalic.woff) format('woff'),
		url(../fonts/Jost-ExtraLightItalic.woff2) format('woff2');
	font-weight: 200;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Italic-VariableFont_wght.woff) format('woff'),
		url(../fonts/Jost-Italic-VariableFont_wght.woff2) format('woff2');
	font-weight: 400;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Italic.woff) format('woff'),
		url(../fonts/Jost-Italic.woff2) format('woff2');
	font-weight: 400;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Light.woff) format('woff'),
		url(../fonts/Jost-Light.woff2) format('woff2');
	font-weight: 300;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-LightItalic.woff) format('woff'),
		url(../fonts/Jost-LightItalic.woff2) format('woff2');
	font-weight: 300;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Medium.woff) format('woff'),
		url(../fonts/Jost-Medium.woff2) format('woff2');
	font-weight: 500;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-MediumItalic.woff) format('woff'),
		url(../fonts/Jost-MediumItalic.woff2) format('woff2');
	font-weight: 500;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Regular.woff) format('woff'),
		url(../fonts/Jost-Regular.woff2) format('woff2');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-SemiBold.woff) format('woff'),
		url(../fonts/Jost-SemiBold.woff2) format('woff2');
	font-weight: 600;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-SemiBoldItalic.woff) format('woff'),
		url(../fonts/Jost-SemiBoldItalic.woff2) format('woff2');
	font-weight: 600;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-Thin.woff) format('woff'),
		url(../fonts/Jost-Thin.woff2) format('woff2');
	font-weight: 100;
	font-style: normal;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-ThinItalic.woff) format('woff'),
		url(../fonts/Jost-ThinItalic.woff2) format('woff2');
	font-weight: 100;
	font-style: italic;
}
@font-face {
	font-family: Jost;
	font-display: swap;
	src:
		url(../fonts/Jost-VariableFont_wght.woff) format('woff'),
		url(../fonts/Jost-VariableFont_wght.woff2) format('woff2');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-Bold.woff) format('woff'),
		url(../fonts/Lora-Bold.woff2) format('woff2');
	font-weight: 700;
	font-style: normal;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-BoldItalic.woff) format('woff'),
		url(../fonts/Lora-BoldItalic.woff2) format('woff2');
	font-weight: 700;
	font-style: italic;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-Italic-VariableFont_wght.woff) format('woff'),
		url(../fonts/Lora-Italic-VariableFont_wght.woff2) format('woff2');
	font-weight: 400;
	font-style: italic;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-Italic.woff) format('woff'),
		url(../fonts/Lora-Italic.woff2) format('woff2');
	font-weight: 400;
	font-style: italic;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-Medium.woff) format('woff'),
		url(../fonts/Lora-Medium.woff2) format('woff2');
	font-weight: 500;
	font-style: normal;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-MediumItalic.woff) format('woff'),
		url(../fonts/Lora-MediumItalic.woff2) format('woff2');
	font-weight: 500;
	font-style: italic;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-Regular.woff) format('woff'),
		url(../fonts/Lora-Regular.woff2) format('woff2');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-SemiBold.woff) format('woff'),
		url(../fonts/Lora-SemiBold.woff2) format('woff2');
	font-weight: 600;
	font-style: normal;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-SemiBoldItalic.woff) format('woff'),
		url(../fonts/Lora-SemiBoldItalic.woff2) format('woff2');
	font-weight: 600;
	font-style: italic;
}
@font-face {
	font-family: Lora;
	font-display: swap;
	src:
		url(../fonts/Lora-VariableFont_wght.woff) format('woff'),
		url(../fonts/Lora-VariableFont_wght.woff2) format('woff2');
	font-weight: 400;
	font-style: normal;
}
:root {
	--minWidth: 320px;
	--maxWidth: 1320px;
}
:root {
	--space-unit: 1em;
	--space-xxxxs: calc(0.125 * var(--space-unit));
	--space-xxxs: calc(0.25 * var(--space-unit));
	--space-xxs: calc(0.375 * var(--space-unit));
	--space-xs: calc(0.5 * var(--space-unit));
	--space-s: calc(0.75 * var(--space-unit));
	--space-m: calc(1.25 * var(--space-unit));
	--space-l: calc(2 * var(--space-unit));
	--space-xl: calc(3.25 * var(--space-unit));
	--space-xxl: calc(5.25 * var(--space-unit));
	--space-xxxl: calc(8.5 * var(--space-unit));
	--space-xxxxl: calc(13.75 * var(--space-unit));
}
:root {
	--clr-bg-main: #fbfbfb;
	--clr-bg-gray: #e9e8e8;
	--clr-bg-blue: #f2f4f9;
	--clr-primary: #1abcf2;
	--clr-primary-trns: #1abcf281;
	--clr-primary-trns-300: #1abcf22c;
	--clr-secandary: #1f86b6;
	--clr-accent: #ffa939;
	--clr-border: #a8a8a8;
	--clr-white: #fff;
	--clr-black: #000;
	--clr-success: rgb(38, 203, 124);
	--clr-error: rgb(255, 70, 66);
	--clr-warning: rgb(247, 125, 5);
	--clr-information: rgb(56, 132, 255);
	--header-clr: var(--clr-white);
}
:root {
	--ff-main: 'Lora', system, serif;
	--ff-accent: 'Jost', system, serif;
	--fs-12: 0.75rem;
	--fs-14: 0.875rem;
	--fs-16: 1rem;
	--fs-18: 1.125rem;
	--fs-19: 1.1875rem;
	--fs-20: 1.25rem;
	--fs-22: 1.375rem;
	--fs-24: 1.5rem;
	--fs-32: 2rem;
	--fs-35: 2.1875rem;
	--fs-36: 2.25rem;
	--fs-40: 2.5rem;
	--fs-48: 3rem;
	--fs-50: 3.125rem;
	--fs-55: 3.4375rem;
	--fs-58: 3.625rem;
	--fs-65: 4.0625rem;
	--fs-72: 4.5rem;
	--fs-s: 0.8125rem;
	--fs-m: 1rem;
	--fs-l: 1.25rem;
	--fs-xl: 1.625rem;
	--fs-xxl: 2.0625rem;
	--fs-xxxl: 2.625rem;
	--lh-s: 1.4375rem;
	--lh-m: 1.6875rem;
	--lh-l: 2.0625rem;
	--lh-xl: 2.625rem;
	--lh-xxl: 3.25rem;
	--lh-xxxl: 4.0625rem;
}
:root {
	--sz-navigation-small: 4.375rem;
	--sz-navigation-large: 13.75rem;
	--container-padding: 1.875rem;
	--space-container-padding: var(--space-md);
	--bd-radius: 0.625rem;
	--main-shadow: 0px 5px 10px 3px rgba(0, 0, 0, 0.2);
	--main-page-margin-elements: var(--space-l);
	--scroll-padding: var(--space-m);
}
* {
	outline-offset: 0;
	-webkit-transition: outline-offset 0.2s linear;
	transition: outline-offset 0.2s linear;
}
body,
html {
	width: 100%;
	min-width: var(--minWidth);
	accent-color: var(--clr-primary);
}
::-moz-selection {
	background-color: var(--clr-primary);
	color: var(--clr-bg-main);
}
::selection {
	background-color: var(--clr-primary);
	color: var(--clr-bg-main);
}
h1,
h2,
h3,
h4 {
	text-wrap: balance;
}
input {
	caret-color: var(--clr-primary);
	accent-color: var(--clr-primary);
}
img,
picture {
	display: block;
	font-style: italic;
	max-width: 100%;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	background-repeat: no-repeat;
	background-size: cover;
}
.body {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	font-family: var(--ff-main);
	font-size: var(--fs-m);
	background-color: var(--clr-bg-main);
}
.fonts-loaded .body {
	font-family: var(--ff-main);
}
.main {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}
.footer,
.header,
.main {
	-ms-flex-negative: 0;
	flex-shrink: 0;
}
.container {
	--padding: var(--container-padding);
	width: min(var(--maxWidth), 100% - var(--padding) * 2);
	margin-inline: auto;
}
.container-grid {
	--padding-inline: var(--container-padding);
	--fw-column-size: 60;
	--wrap-column-size: 18.75rem;
	display: -ms-grid;
	display: grid;
	width: 100%;
	-ms-grid-columns: [full-start] 0 [left-start] minmax(var(--padding-inline), 1fr) [right-start] 0 [content-start] min(100% - var(--padding-inline) * 2, var(--maxWidth)) [content-end] 0 [left-end] minmax(var(--padding-inline), 1fr) [right-end] 0 [full-end];
	grid-template-columns: [full-start] 0 [left-start] minmax(var(--padding-inline), 1fr) [right-start] 0 [content-start] min(100% - var(--padding-inline) * 2, var(--maxWidth)) [content-end] 0 [left-end] minmax(var(--padding-inline), 1fr) [right-end] 0 [full-end];
}
.container-grid > * {
	grid-column: content;
}
.container-grid > .container-grid__fw {
	grid-column: full;
}
.container-grid > .container-grid__fw-left,
.container-grid > .container-grid__fw-right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.container-grid > .container-grid__fw-left {
	-ms-grid-column: 1;
	grid-column-start: 1;
}
.container-grid > .container-grid__fw-right {
	-ms-grid-column-span: none;
	grid-column-end: none;
}
.container-grid > .container-grid__fw-left > :last-child,
.container-grid > .container-grid__fw-right > :first-child {
	min-width: var(--wrap-column-size);
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	-ms-flex-negative: 1;
	flex-shrink: 1;
}
.container-grid > .container-grid__fw-left > :last-child,
.container-grid > .container-grid__fw-right > :first-child {
	-ms-flex-preferred-size: calc(min(100% - var(--padding-inline), var(--maxWidth)) * (1 - var(--fw-column-size) / 100));
	flex-basis: calc(min(100% - var(--padding-inline), var(--maxWidth)) * (1 - var(--fw-column-size) / 100));
}
.container-grid > .container-grid__fw-left > :first-child,
.container-grid > .container-grid__fw-right > :last-child {
	-webkit-box-flex: 1000000;
	-ms-flex-positive: 1000000;
	flex-grow: 1000000;
	min-width: calc(var(--wrap-column-size) / (1 - var(--fw-column-size) / 100) - var(--wrap-column-size) + var(--padding-inline));
}
.columns {
	--column-gap: 5%;
	--row-gap: 10%;
	--columns: 1fr 1fr;
	--align-items: center;
}
.columns > :not(:last-child) {
	margin-bottom: var(--row-gap);
}
.clipped {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px);
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0 !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden;
}
.hidden {
	display: none;
}
.skip-nav-link {
	position: absolute;
	top: 0.625rem;
	left: 0.625rem;
	background-color: rgba(255, 255, 255, 0.8);
	padding: 0.3125rem 0.625rem;
	opacity: 0;
	-webkit-transform: translateY(-120%);
	-ms-transform: translateY(-120%);
	transform: translateY(-120%);
	-webkit-transition: -webkit-transform 0.3s ease-in;
	transition: -webkit-transform 0.3s ease-in;
	transition: transform 0.3s ease-in;
	transition:
		transform 0.3s ease-in,
		-webkit-transform 0.3s ease-in;
}
.skip-nav-link:focus {
	opacity: 1;
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
}
.js-focus-visible :focus:not(.focus-visible) {
	outline: 0;
}
.focus-visible {
	outline: 0.1875rem solid;
	outline-offset: 0.1875rem;
	outline-style: auto;
	outline-color: var(--clr-primary);
}
[class*='grid-'] {
	display: -ms-grid;
	display: grid;
	gap: 0.625rem;
}
.grid-auto-columns {
	grid-template-columns: repeat(auto-fit, minmax(min(var(--grid-column, 9.375rem), 100%), 1fr));
}
.grid-even-columns {
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
}
.overlay {
	--overlay-from: hsl(240 100% 20% / 0.6);
	--overlay-to: hsl(0 100% 20% / 0.6);
	-o-border-image: linear-gradient(var(--overlay-from), var(--overlay-to)) 1;
	border-image: -webkit-gradient(linear, left top, left bottom, from(var(--overlay-from)), to(var(--overlay-to))) fill 1;
	border-image: linear-gradient(var(--overlay-from), var(--overlay-to)) fill 1;
}
.glass-card {
	backdrop-filter: blur(5px) saturate(180%);
	background: rgba(255, 255, 255, 0.4);
	border: 1px solid rgba(209, 213, 219, 0.3);
}
.menu-hover:hover {
	background-color: var(--clr-primary-trns);
	color: var(--clr-black);
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
[data-slide] {
	-webkit-transform: translateX(20px);
	-ms-transform: translateX(20px);
	transform: translateX(20px);
	opacity: 0;
	-webkit-transition: -webkit-transform 0.5s ease;
	transition: -webkit-transform 0.5s ease;
	transition: transform 0.5s ease;
	transition:
		transform 0.5s ease,
		-webkit-transform 0.5s ease;
	overflow: hidden;
}
.visible[data-slide] {
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	opacity: 1;
}
:where(h1, h2, h3, h4, h5) {
	font-family: var(--ff-accent);
	font-weight: 600;
	line-height: 1;
}
:where(h1) {
	font-size: var(--fs-xxxl);
}
:where(h2) {
	font-size: var(--fs-xl);
}
:where(h3) {
	font-size: var(--fs-l);
}
:where(h4) {
	font-size: 1.2rem;
}
:where(a) {
	text-decoration: none;
	color: var(--clr-black);
	-webkit-transition: color 0.3s ease;
	transition: color 0.3s ease;
}
:where(a:hover) {
	text-decoration: underline;
	color: var(--clr-primary);
}
@-webkit-keyframes fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@-webkit-keyframes fade-out {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}
@keyframes fade-out {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}
@-webkit-keyframes slide-up {
	from {
		translate: 0 100%;
	}
	to {
		translate: 0 0;
	}
}
@keyframes slide-up {
	from {
		translate: 0 100%;
	}
	to {
		translate: 0 0;
	}
}
@-webkit-keyframes slide-down {
	from {
		translate: 0 -100%;
	}
	to {
		translate: 0 0;
	}
}
@keyframes slide-down {
	from {
		translate: 0 -100%;
	}
	to {
		translate: 0 0;
	}
}
@-webkit-keyframes slide-to-left {
	from {
		translate: 100% 0;
	}
	to {
		translate: 0 0;
	}
}
@keyframes slide-to-left {
	from {
		translate: 100% 0;
	}
	to {
		translate: 0 0;
	}
}
@-webkit-keyframes slide-to-right {
	from {
		translate: -100% 0;
	}
	to {
		translate: 0 0;
	}
}
@keyframes slide-to-right {
	from {
		translate: -100% 0;
	}
	to {
		translate: 0 0;
	}
}
@-webkit-keyframes slide-from-left {
	from {
		translate: 0 0;
	}
	to {
		translate: 100% 0;
	}
}
@keyframes slide-from-left {
	from {
		translate: 0 0;
	}
	to {
		translate: 100% 0;
	}
}
@-webkit-keyframes slide-from-right {
	from {
		translate: 0 0;
	}
	to {
		translate: -100% 0;
	}
}
@keyframes slide-from-right {
	from {
		translate: 0 0;
	}
	to {
		translate: -100% 0;
	}
}
@-webkit-keyframes fade-bg-in {
	from {
		-webkit-box-shadow: 0 0 0 100vw transparent;
		box-shadow: 0 0 0 100vw transparent;
	}
	to {
		-webkit-box-shadow: 0 0 0 100vw var(--backdrop-clr);
		box-shadow: 0 0 0 100vw var(--backdrop-clr);
	}
}
@keyframes fade-bg-in {
	from {
		-webkit-box-shadow: 0 0 0 100vw transparent;
		box-shadow: 0 0 0 100vw transparent;
	}
	to {
		-webkit-box-shadow: 0 0 0 100vw var(--backdrop-clr);
		box-shadow: 0 0 0 100vw var(--backdrop-clr);
	}
}
@-webkit-keyframes fade-bg-out {
	from {
		-webkit-box-shadow: 0 0 0 100vw var(--backdrop-clr);
		box-shadow: 0 0 0 100vw var(--backdrop-clr);
	}
	to {
		-webkit-box-shadow: 0 0 0 100vw transparent;
		box-shadow: 0 0 0 100vw transparent;
	}
}
@keyframes fade-bg-out {
	from {
		-webkit-box-shadow: 0 0 0 100vw var(--backdrop-clr);
		box-shadow: 0 0 0 100vw var(--backdrop-clr);
	}
	to {
		-webkit-box-shadow: 0 0 0 100vw transparent;
		box-shadow: 0 0 0 100vw transparent;
	}
}
@-webkit-keyframes slideCards {
	0% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
	10% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
	45% {
		-webkit-transform: translate(0);
		transform: translate(0);
	}
	55% {
		-webkit-transform: translate(0);
		transform: translate(0);
	}
	90% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
	100% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
}
@keyframes slideCards {
	0% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
	10% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
	45% {
		-webkit-transform: translate(0);
		transform: translate(0);
	}
	55% {
		-webkit-transform: translate(0);
		transform: translate(0);
	}
	90% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
	100% {
		-webkit-transform: translate(var(--translate));
		transform: translate(var(--translate));
	}
}
.header.visible {
	padding-top: var(--sz-navigation-small) !important;
}
.header {
	--icon-size: 3rem;
	--padding-block-header: 0.625rem;
	--items-gap: var(--space-xs);
	position: relative;
	background-size: cover;
	color: var(--clr-white);
	padding-bottom: var(--space-l);
}
.header::before {
	display: block;
	position: absolute;
	content: '';
	inset: 0;
	background: linear-gradient(135deg, #1abcf2, #063c4e 63%);
	opacity: 0.6;
	z-index: 2;
}
.header__video {
	position: absolute;
	inset: 0;
	z-index: 1;
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.header__container {
	position: relative;
	z-index: 10;
}
.header__title {
	margin-top: var(--space-m);
}
.navigation {
	--clr-header: var(--clr-white);
	display: none;
	position: fixed;
	inset: 0;
	z-index: 10;
}
.navigation[aria-hidden='false'] {
	display: block;
}
.navigation__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-line-pack: start;
	align-content: start;
	gap: var(--space-m);
	padding: 1.875rem;
	height: 100dvh;
	width: 80%;
	overflow-y: scroll;
	background-color: var(--clr-bg-blue);
	z-index: 100;
	-webkit-animation: slide-to-right 0.5s forwards;
	animation: slide-to-right 0.5s forwards;
}
.navigation__content > * {
	min-height: -webkit-fit-content;
	min-height: -moz-fit-content;
	min-height: fit-content;
}
.navigation[closing] .navigation__content {
	-webkit-animation: slide-from-right 0.5s forwards;
	animation: slide-from-right 0.5s forwards;
}
.navigation__overlay {
	-webkit-animation: fade-in 0.5s forwards;
	animation: fade-in 0.5s forwards;
}
.navigation[closing] .navigation__overlay {
	-webkit-animation: fade-out 0.5s forwards;
	animation: fade-out 0.5s forwards;
}
.navigation__logo {
	max-width: 35%;
	-ms-flex-item-align: center;
	-ms-grid-row-align: center;
	align-self: center;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}
.navigation__btn {
	max-width: none;
	min-height: -webkit-fit-content;
	min-height: -moz-fit-content;
	min-height: fit-content;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}
.navigation__phones-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: var(--space-m);
}
.navigation__phone-header {
	font-family: var(--ff-accent);
	font-weight: 600;
	color: var(--clr-primary);
	margin-bottom: var(--space-xs);
}
.navigation__phone-items {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: var(--space-xxxs);
}
.navigation__phone-link {
	font-family: var(--ff-accent);
	font-weight: 700;
	font-size: var(--fs-l);
}
.navigation__adress {
	display: none;
}
.navigation__info-worktime {
	display: none;
}
.navigation__social-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: var(--space-m);
}
.navigation__social-icon {
	fill: var(--clr-primary);
}
.navigation__social-info {
	font-size: var(--fs-s);
	line-height: 1;
	-webkit-margin-before: var(--space-m);
	margin-block-start: var(--space-m);
	color: var(--clr-black);
}
@media (prefers-reduced-motion: reduce) {
	* {
		-webkit-animation-duration: 0s !important;
		animation-duration: 0s !important;
		-webkit-animation-iteration-count: 1 !important;
		animation-iteration-count: 1 !important;
		-webkit-transition-duration: 0s !important;
		transition-duration: 0s !important;
		scroll-behavior: auto !important;
	}
}
@media (width >= 768px) {
	.columns {
		--row-gap: 0 !important;
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: var(--columns);
		grid-template-columns: var(--columns);
		-webkit-box-align: var(--align-items);
		-ms-flex-align: var(--align-items);
		align-items: var(--align-items);
		-webkit-column-gap: var(--column-gap);
		-moz-column-gap: var(--column-gap);
		column-gap: var(--column-gap);
	}
}
@media (width >= 992px) {
	:where(h1) {
		font-size: var(--fs-xxl);
	}
	.header:has(.navigation) {
		padding-top: var(--sz-navigation-large);
	}
	.header:has(.navigation[aria-hidden]) {
		padding-top: 0;
	}
	.header.visible {
		padding-top: var(--sz-navigation-large) !important;
	}
	.header {
		padding-bottom: var(--space-l);
	}
	.header.visible .navigation__content {
		--padding: var(--space-s);
		position: fixed;
		top: 0.625rem;
		-ms-grid-rows: auto;
		grid-template-rows: auto;
		height: auto;
		backdrop-filter: blur(12px) saturate(180%);
		background-color: var(--clr-primary-trns);
		width: calc(100% - var(--container-padding) * 2);
		max-width: var(--maxWidth);
		-webkit-transition: top 1s ease;
		transition: top 1s ease;
		padding-inline: var(--space-l);
		padding-block: 0;
		border-radius: var(--bd-radius);
		border: 0.0625rem solid var(--clr-white);
		row-gap: 0;
	}
	.header.visible .navigation__logo {
		-ms-grid-column: 1;
		grid-column-start: 1;
	}
	.header.visible .navigation__logo > svg {
		height: 3.75rem;
		min-height: auto;
		padding-block: var(--padding);
	}
	.header.visible .navigation__adress {
		display: none;
	}
	.header.visible .navigation__info {
		-ms-grid-column: 2;
		grid-column-start: 2;
	}
	.header.visible .navigation__btn {
		display: none;
	}
	.header.visible .navigation__phones {
		-ms-grid-column: 4;
		grid-column-start: 4;
		min-width: -webkit-max-content;
		min-width: -moz-max-content;
		min-width: max-content;
	}
	.header.visible .navigation__phone-header {
		display: none;
	}
	.header.visible .navigation__phone:not(:has(.navigation__phone--main)) {
		display: none;
	}
	.header.visible .navigation__phone-link {
		display: none;
	}
	.header.visible .navigation__phone--main {
		display: block;
		font-size: var(--fs-l);
		font-weight: 700;
	}
	.header.visible .navigation__social {
		-ms-grid-column: 3;
		grid-column-start: 3;
		padding-block: var(--padding);
	}
	.navigation {
		position: static;
		height: auto;
	}
	.navigation[aria-hidden='false'],
	.navigation[aria-hidden='true'] {
		display: block !important;
	}
	.navigation__overlay {
		display: none;
	}
	.navigation__content {
		--grid-column: 14.375rem;
		display: -ms-grid;
		display: grid;
		position: static;
		top: -9.375rem;
		-ms-grid-rows: auto auto;
		grid-template-rows: auto auto;
		grid-auto-columns: -webkit-min-content;
		grid-auto-columns: min-content;
		grid-auto-flow: dense;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-column-gap: 0.625rem;
		-moz-column-gap: 0.625rem;
		column-gap: 0.625rem;
		overflow: visible;
		padding-inline: 0;
		color: var(--clr-header);
		width: 100%;
		height: var(--sz-navigation-large);
		background: 0 0;
		z-index: 1;
		-webkit-animation: none;
		animation: none;
	}
	.navigation__link {
		color: var(--clr-header);
	}
	.navigation__logo {
		-ms-grid-row: 1;
		grid-row-start: 1;
		width: 7.8125rem;
		height: auto;
		max-width: none;
	}
	.navigation__logo > svg {
		fill: var(--clr-header);
	}
	.navigation__btn {
		-ms-grid-row: 1;
		grid-row-start: 1;
		-ms-grid-column: 5;
		grid-column-start: 5;
		border: none;
		background-color: transparent;
		color: var(--clr-header);
		font-weight: 600;
		cursor: pointer;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		padding: 0.625rem;
	}
	.navigation__phones {
		min-width: 17.5rem;
		-ms-grid-row: 1;
		grid-row-start: 1;
		-ms-grid-column: 4;
		grid-column-start: 4;
	}
	.navigation__phones-wrapper {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
	.navigation__phone-header {
		color: var(--clr-header);
		font-weight: 400;
	}
	.navigation__phone-link {
		color: var(--clr-header);
		font-size: var(--fs-m);
		font-weight: 500;
	}
	.navigation__info {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-grid-row: 1;
		grid-row-start: 1;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: var(--space-s);
		min-width: 12.5rem;
	}
	.navigation__social {
		-ms-grid-row: 1;
		grid-row-start: 1;
	}
	.navigation__social-wrapper {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.navigation__social-icon {
		--icon-size: 2rem;
		fill: var(--clr-header);
	}
	.navigation__social-info {
		display: none;
	}
}
@media (width >= 992px) and (width >= 1200px) {
	.header.visible .navigation__content {
		gap: var(--space-l);
	}
	.header.visible .navigation__info {
		display: none;
	}
	.header.visible .navigation__phones {
		padding-block: var(--padding);
	}
}
@media (width >= 1200px) {
	.navigation__btn {
		-ms-grid-column: 6;
		grid-column-start: 6;
	}
	.navigation__phones {
		-ms-grid-column: 5;
		grid-column-start: 5;
	}
	.navigation__adress {
		display: block;
		-ms-grid-row: 1;
		grid-row-start: 1;
		min-width: 11.25rem;
	}
	.navigation__info {
		-ms-grid-row: 1;
		grid-row-start: 1;
	}
	.navigation__info-worktime {
		display: block;
	}
}
@media (width >= 1400px) {
	.navigation__adress {
		min-width: 13.75rem;
	}
}
