@font-face {
    font-family: ACBoucle;
	font-display: swap;
    src: url('/fonts/ACBoucle.woff2');
}

@font-face {
    font-family: Franklin Gothic Book Regular;
	font-display: swap;
    src: url('/fonts/FranklinGothic-Book.woff2');
}

@font-face {
    font-family: Franklin Gothic Demi;
	font-display: swap;
    src: url('/fonts/FranklinGothic-Demi.woff2');
}

@font-face {
    font-family: Swissbi;
	font-display: swap;
    src: url('/fonts/Swiss721BT-BoldItalic.woff2');
}

@font-face {
    font-family: Bicubik;
	font-display: swap;
    src: url('/fonts/Bicubik.woff2');
}

@font-face {
    font-family: Lucida Sans Unicode;
	font-display: swap;
    src: url('/fonts/LucidaSansUnicode.woff2');
}

/* Subset: Cyrillic */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url("/fonts/IBMPlexSans-Light-Cyrillic.woff2") format("woff2");
	unicode-range: U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+0490-04C2, U+04CF-04D9, U+04DC-04E9, U+04EE-04F9, U+0524-0525
}
/* Subset: Greek */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url("/fonts/IBMPlexSans-Light-Greek.woff2") format("woff2");
	unicode-range: U+037E, U+0386-038A, U+038C, U+038E-03A1, U+03A3-03CE
}
/* Subset: Latin1 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url("/fonts/IBMPlexSans-Light-Latin1.woff2") format("woff2");
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+FB01-FB02
}
/* Subset: Latin2 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url("/fonts/IBMPlexSans-Light-Latin2.woff2") format("woff2");
	unicode-range: U+0100-0101, U+0104-0130, U+0132-0151, U+0154-017F, U+018F, U+0192, U+01A0-01A1, U+01AF-01B0, U+01FA-01FF, U+0218-021B, U+0237, U+0259, U+1E80-1E85, U+1E9E, U+20A1, U+20A4, U+20A6, U+20A8-20AA, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BD, U+20BF
}
/* Subset: Latin3 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url("/fonts/IBMPlexSans-Light-Latin3.woff2") format("woff2");
	unicode-range: U+0102-0103, U+01CD-01DC, U+1EA0-1EF9, U+20AB
}
/* Subset: Pi */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url("/fonts/IBMPlexSans-Light-Pi.woff2") format("woff2");
	unicode-range: U+0E3F, U+2000-200D, U+2015, U+2028-2029, U+202F, U+2032-2033, U+2070, U+2074-2079, U+2080-2089, U+2113, U+2116, U+2126, U+212E, U+2150-2151, U+2153-215E, U+2190-2199, U+21A9-21AA, U+21B0-21B3, U+21B6-21B7, U+21BA-21BB, U+21C4, U+21C6, U+2202, U+2206, U+220F, U+2211, U+2215, U+221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+2713, U+274C, U+2B0E-2B11, U+ECE0, U+EFCC, U+FEFF, U+FFFD
}
/* Subset: Cyrillic */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local("IBM Plex Sans"), local("IBMPlexSans"), url("/fonts/IBMPlexSans-Regular-Cyrillic.woff2") format("woff2");
	unicode-range: U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+0490-04C2, U+04CF-04D9, U+04DC-04E9, U+04EE-04F9, U+0524-0525
}
/* Subset: Greek */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local("IBM Plex Sans"), local("IBMPlexSans"), url("/fonts/IBMPlexSans-Regular-Greek.woff2") format("woff2");
	unicode-range: U+037E, U+0386-038A, U+038C, U+038E-03A1, U+03A3-03CE
}
/* Subset: Latin1 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local("IBM Plex Sans"), local("IBMPlexSans"), url("/fonts/IBMPlexSans-Regular-Latin1.woff2") format("woff2");
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+FB01-FB02
}
/* Subset: Latin2 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local("IBM Plex Sans"), local("IBMPlexSans"), url("/fonts/IBMPlexSans-Regular-Latin2.woff2") format("woff2");
	unicode-range: U+0100-0101, U+0104-0130, U+0132-0151, U+0154-017F, U+018F, U+0192, U+01A0-01A1, U+01AF-01B0, U+01FA-01FF, U+0218-021B, U+0237, U+0259, U+1E80-1E85, U+1E9E, U+20A1, U+20A4, U+20A6, U+20A8-20AA, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BD, U+20BF
}
/* Subset: Latin3 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local("IBM Plex Sans"), local("IBMPlexSans"), url("/fonts/IBMPlexSans-Regular-Latin3.woff2") format("woff2");
	unicode-range: U+0102-0103, U+01CD-01DC, U+1EA0-1EF9, U+20AB
}
/* Subset: Pi */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local("IBM Plex Sans"), local("IBMPlexSans"), url("/fonts/IBMPlexSans-Regular-Pi.woff2") format("woff2");
	unicode-range: U+0E3F, U+2000-200D, U+2015, U+2028-2029, U+202F, U+2032-2033, U+2070, U+2074-2079, U+2080-2089, U+2113, U+2116, U+2126, U+212E, U+2150-2151, U+2153-215E, U+2190-2199, U+21A9-21AA, U+21B0-21B3, U+21B6-21B7, U+21BA-21BB, U+21C4, U+21C6, U+2202, U+2206, U+220F, U+2211, U+2215, U+221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+2713, U+274C, U+2B0E-2B11, U+ECE0, U+EFCC, U+FEFF, U+FFFD
} 
/* Subset: Cyrillic */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 450;
	font-display: swap;
	src: local("IBM Plex Sans Text"), local("IBMPlexSans-Text"), url("/fonts/IBMPlexSans-Text-Cyrillic.woff2") format("woff2");
	unicode-range: U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+0490-04C2, U+04CF-04D9, U+04DC-04E9, U+04EE-04F9, U+0524-0525
}
/* Subset: Greek */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 450;
	font-display: swap;
	src: local("IBM Plex Sans Text"), local("IBMPlexSans-Text"), url("/fonts/IBMPlexSans-Text-Greek.woff2") format("woff2");
	unicode-range: U+037E, U+0386-038A, U+038C, U+038E-03A1, U+03A3-03CE
}
/* Subset: Latin1 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 450;
	font-display: swap;
	src: local("IBM Plex Sans Text"), local("IBMPlexSans-Text"), url("/fonts/IBMPlexSans-Text-Latin1.woff2") format("woff2");
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+FB01-FB02
}
/* Subset: Latin2 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 450;
	font-display: swap;
	src: local("IBM Plex Sans Text"), local("IBMPlexSans-Text"), url("/fonts/IBMPlexSans-Text-Latin2.woff2") format("woff2");
	unicode-range: U+0100-0101, U+0104-0130, U+0132-0151, U+0154-017F, U+018F, U+0192, U+01A0-01A1, U+01AF-01B0, U+01FA-01FF, U+0218-021B, U+0237, U+0259, U+1E80-1E85, U+1E9E, U+20A1, U+20A4, U+20A6, U+20A8-20AA, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BD, U+20BF
}
/* Subset: Latin3 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 450;
	font-display: swap;
	src: local("IBM Plex Sans Text"), local("IBMPlexSans-Text"), url("/fonts/IBMPlexSans-Text-Latin3.woff2") format("woff2");
	unicode-range: U+0102-0103, U+01CD-01DC, U+1EA0-1EF9, U+20AB
}
/* Subset: Pi */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 450;
	font-display: swap;
	src: local("IBM Plex Sans Text"), local("IBMPlexSans-Text"), url("/fonts/IBMPlexSans-Text-Pi.woff2") format("woff2");
	unicode-range: U+0E3F, U+2000-200D, U+2015, U+2028-2029, U+202F, U+2032-2033, U+2070, U+2074-2079, U+2080-2089, U+2113, U+2116, U+2126, U+212E, U+2150-2151, U+2153-215E, U+2190-2199, U+21A9-21AA, U+21B0-21B3, U+21B6-21B7, U+21BA-21BB, U+21C4, U+21C6, U+2202, U+2206, U+220F, U+2211, U+2215, U+221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+2713, U+274C, U+2B0E-2B11, U+ECE0, U+EFCC, U+FEFF, U+FFFD
}
/* Subset: Cyrillic */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local("IBM Plex Sans Medm"), local("IBMPlexSans-Medm"), url("/fonts/IBMPlexSans-Medium-Cyrillic.woff2") format("woff2");
	unicode-range: U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+0490-04C2, U+04CF-04D9, U+04DC-04E9, U+04EE-04F9, U+0524-0525
}
/* Subset: Greek */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local("IBM Plex Sans Medm"), local("IBMPlexSans-Medm"), url("/fonts/IBMPlexSans-Medium-Greek.woff2") format("woff2");
	unicode-range: U+037E, U+0386-038A, U+038C, U+038E-03A1, U+03A3-03CE
}
/* Subset: Latin1 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local("IBM Plex Sans Medm"), local("IBMPlexSans-Medm"), url("/fonts/IBMPlexSans-Medium-Latin1.woff2") format("woff2");
	unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+FB01-FB02
}
/* Subset: Latin2 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local("IBM Plex Sans Medm"), local("IBMPlexSans-Medm"), url("/fonts/IBMPlexSans-Medium-Latin2.woff2") format("woff2");
	unicode-range: U+0100-0101, U+0104-0130, U+0132-0151, U+0154-017F, U+018F, U+0192, U+01A0-01A1, U+01AF-01B0, U+01FA-01FF, U+0218-021B, U+0237, U+0259, U+1E80-1E85, U+1E9E, U+20A1, U+20A4, U+20A6, U+20A8-20AA, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BD, U+20BF
}
/* Subset: Latin3 */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local("IBM Plex Sans Medm"), local("IBMPlexSans-Medm"), url("/fonts/IBMPlexSans-Medium-Latin3.woff2") format("woff2");
	unicode-range: U+0102-0103, U+01CD-01DC, U+1EA0-1EF9, U+20AB
}
/* Subset: Pi */
@font-face {
	font-family: 'IBM Plex Sans';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: local("IBM Plex Sans Medm"), local("IBMPlexSans-Medm"), url("/fonts/IBMPlexSans-Medium-Pi.woff2") format("woff2");
	unicode-range: U+0E3F, U+2000-200D, U+2015, U+2028-2029, U+202F, U+2032-2033, U+2070, U+2074-2079, U+2080-2089, U+2113, U+2116, U+2126, U+212E, U+2150-2151, U+2153-215E, U+2190-2199, U+21A9-21AA, U+21B0-21B3, U+21B6-21B7, U+21BA-21BB, U+21C4, U+21C6, U+2202, U+2206, U+220F, U+2211, U+2215, U+221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+2713, U+274C, U+2B0E-2B11, U+ECE0, U+EFCC, U+FEFF, U+FFFD
}

@keyframes fade-in {
	from {opacity:0;}
	to {opacity:1;}
}

@keyframes slide-left {
	0% {
		left: var(--start);
		opacity: 0;
	}
	100% {
		left: var(--end);
		opacity: 1;
	}
}

@keyframes slide-right {
	0% {
		right: var(--start);
		opacity: 0;
	}
	100% {
		right: var(--end);
		opacity: 1;
	}
}

@keyframes slide-down {
	0% {
		top: var(--start);
	}
	100% {
		top: var(--end);
	}
}

@keyframes running-string {
	0% {
		margin-left: var(--start);
	}
	100% {
		margin-left: var(--end);
	}
}

html {
	font-family: ACBoucle;
}

html, body {
	height: 100%; 
	margin: 0;
}

body {
	-webkit-text-size-adjust:none;
	width: 100%;
	height: 100%;
}

app {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.container {
	min-height: 100%;
}

.block {
	position: relative;
	width: 100vw;
}


.container.light {
	background-color: rgb(233, 234, 223);
}

.block.light {
	background-color: rgb(233, 234, 223);
}

.light {
	color: rgb(233, 234, 223);
}

textarea.light {
	padding: 8px;
	color: rgb(191, 25, 25);
	background-color: rgb(233, 234, 223);
	border-color: rgb(191, 25, 25);
}

textarea.light::placeholder {
	color: rgb(191, 25, 25);
	font-family: IBM Plex Sans;
	font-size: 12.5px;
}

.container.red {
	background-color: rgb(191, 25, 25);
}

.block.red {
	background-color: rgb(191, 25, 25);
}

.red {
	color: rgb(191, 25, 25);
}

input.red {
	padding-left: 8px;
	color: rgb(233, 234, 223);
	background-color: rgb(191, 25, 25);
	border: 0;
}

input.red::placeholder {
	color: rgb(233, 234, 223);
	font-family: IBM Plex Sans;
	font-size: 12.5px;
}


.container.black {
	background-color: black;
}

.block.black {
	background-color: black;
}

.black {
	color: black;
}


.container.white {
	background-color: white;
}

.block.white {
	background-color: white;
}

.white {
	color: white;
}





header {
	flex: 1 1 140px;
	padding-left: 23px;
	padding-right: 23px;
	background: black;
	display: flex;
    flex-direction: row;	
	justify-content: center; 
	align-items: center; 
	color: white;
}

.menu-item {
	position: relative;
	cursor: pointer;
}

	.menu-item div {
		text-align: center;
		color: gray;
	}
	
	.menu-item div.active, .menu-item div.hover {
		color: white
	}
			
	.menu-children {
		position: absolute;
		width: 177px;
		left: 0;
		right: 0;
		cursor: pointer;
		background-color: black;
		z-index: 10;
		padding-top: 10px;
		padding-bottom: 10px;
	}
		
		.menu-item .menu-children .menu-child-link {
			height: 60px;
		}
		
			.menu-item .menu-children .menu-child-link .gothic {
				font-size: 26px;
				font-family: IBM Plex Sans;
				font-weight: 300;
			}

	header .menu {
		flex: 1;
		height: 100%;
		display: flex;
		flex-direction: column;	
		justify-content: center;
		font-size: 26.43px;
		line-height: 1.5;
		color: white;
	}
	
		header .menu .row {
			margin-left: 4.3vw;
			display: flex;
			flex-direction: row;
		}
		
			header .menu .row .middle {
				margin-left: 1vw;
				margin-right: 1vw;
				color: gray;
			}
			
	
		header .menu .burger {
			width: 22px;
			aspect-ratio: 165 / 92;
			background-image: url("/images/burger.png");
			background-size: contain;
			background-repeat: no-repeat;
		}
		
		@supports (background-image: url('/images/burger.avif')) {
			header .menu .burger {
				background-image: url("/images/burger.avif");
			}
		}
		
	header .logo {
		flex: 1;
		height: 100%;
		display: flex;
		flex-direction: row;	
		justify-content: center; 
		align-items: center; 
	}
	
		header .logo .image {
			width: 170px;
			height: 100%;
			background-image: url("/images/logo.svg");
			background-size: 100% 100%;
			background-repeat: no-repeat;
		}


	header .language {
		flex: 1;
		display: flex;
		justify-content: flex-end;
	}
	
		header .language .wrapper {
			position: relative;
			width: 6vw;
			display: flex;
			flex-direction: row;
			justify-content: center; 
			align-items: center;
		}
		
			header .language .wrapper span {
				font-size: 33px;
			}
		
			header .language .custom-select {
				font-size: 26.43px;
				background-color: black;
			}
					
			header .language .custom-options {
				width: 6vw;
				background-color: black;
			}
			

@media only screen and (pointer: coarse) and (hover: none) {	
	header {
		flex: 1 1 60px;
		padding-left: 0;
		padding-right: 0;
		padding-top: 35px;
	}
	
		header .menu {
			align-items: center;
		}
			
			header .menu .menu-expanded {
				position: fixed;
				width: 200px;
				left: 0;
				top: 117.5px;
				z-index: 100;
				background-color: black;
			}
			
				header .menu .menu-expanded .menu-item .menu-link {
					display: flex;
					justify-content: center;
					align-items: center;
					height: 50px;
				}
		
			
			header .menu .menu-expanded.closed {
				display: none;
			}
			
			header .menu .menu-expanded.opened {
				display: block;
			}

		header .logo {
			flex: 4;
		}
		
			header .logo .image {
				width: 85px;
			}
			
			header .language .wrapper {
				width: 70px;
			}
			
			header .language .custom-options {
				position: fixed;
				width: 70px;
				left: unset;
				right: 0;
				top: 117.5px;
				z-index: 100;
				background-color: black;
			}
			
			header .language .custom-select {
				background-color: black;
				text-decoration: underline;
				font-size: 18.43px;
			}
}

.custom-select {
	cursor: pointer;
}

.custom-select .selected {
	color: white;
}
			
.custom-options {
	position: absolute;
	left: 0;
	right: 0;
	cursor: pointer;
	background-color: black;
	z-index: 10;
}

.custom-option {
	height: 40px;
	cursor: pointer;
	white-space: nowrap;
	text-align: center;
	color: gray;
	display: flex;
	justify-content: center;
	align-items: center;
}

.custom-option.active, .custom-option.hover {
	color: white;
}

@media (max-width: 479px) {
	.custom-option {
		height: 30px;
	}
}

.prev {
	width: 27px;
	aspect-ratio: 1;
	border-top: 2px solid darkgray;
	border-left: 2px solid darkgray;
	border-radius: 1px;
	display: block;
	cursor: pointer;
	-webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.next {
	width: 27px;
	aspect-ratio: 1;
	border-top: 2px solid darkgray;
	border-right: 2px solid darkgray;
	border-radius: 1px;
	display: block;
	cursor: pointer;
	-webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	
}

.close {
	margin-right: 10px;
	cursor: pointer;
	text-decoration: none;
	font-size: 48px;
	font-weight: bold;
	color: darkgray;
}

.dot {
	width: 0.6vw;
	height: 0.6vw;
	margin: 0 2px;
	border-radius: 50%;
	display: inline-block;
	cursor: pointer;
	background-color: #bbb;
	transition: background-color 0.6s ease;
}

.dot.active, .dot:hover {
	background-color: #717171;
}

