* {
	box-sizing: border-box;
}
description {
	display: none;
}
body {
	font-family: "Roboto Condensed", sans-serif;
	font-style: normal;
	font-size: 10px;
	line-height: 16px;
}
header {
	position: relative;
	width: 100%;
	/* kostil for image filling */
	padding-bottom: 81%;
	background-image: url("../media/images/header_back.png");
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-repeat: no-repeat;
}
.header__back__fill {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #022a44;
	opacity: 0.8;
	width: 100%;
	height: 100%;
}
.header__back__img {
	max-width: 100%;
}
.header__navbar {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 2em;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
	max-width: 1300px;
	margin: 0 auto;
}
.header__navbar_sub {
	position: absolute;
	width: 100%;
	height: 100%;
}
.header__navbar__container {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.header__logo {
	width: 2em;
	height: 3em;
	cursor: pointer;
}
.header__logo_blue {
	width: 2em;
	height: 3em;
	top: 2em;
	left: 2em;
	cursor: pointer;
}
.header__nav {
	position: absolute;
	display: inline-block;
	width: 100%;
}
.header__nav__link {
	margin-left: 3em;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 0.04em;
	border-bottom: 2px solid rgba(0,0,0,0);
	transition: 0.2s ease-in;
}
.header__nav__link:hover {
	border-bottom: 2px solid;
}
.header__nav__link.active {
	border-bottom: 2px solid;
}
/* DROPDOWN MENU */
.header__nav__dropdown {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: #022a44;
	display: none;
	flex-direction: column;
	z-index: 10;
}
.header__nav__dropdown > a {
	margin: 1em auto;
	font-size: 20px;
}
.header__logo, .header__nav__button {
	z-index: 10;
}
.header__nav__button:before {
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	font-family: "Font Awesome 5 Free", serif;
	font-weight: 900;
	font-size: 3em;
	content: "\f0c9";
	position: relative;
}
.header__nav__phantom-checkbox {
	display: none;
}
.header__nav__phantom-checkbox:checked ~
.header__navbar__container >
.header__nav >
.header__nav__dropdown {
	display: flex;
	justify-content: flex-start;
	padding-top: 10em;
}
.header__nav__phantom-checkbox:checked ~
.header__navbar__container >
.header__nav__button::before {
	content: "\f00d";
}
.header__nav__phantom-checkbox:checked ~
.header__navbar__container >
.header__logo {
	display: block!important;
	position: fixed;
	top: 2em!important;
	left: unset!important;
}
.header__nav__phantom-checkbox:checked ~
.header__navbar__container >
.header__nav__button {
	position: absolute;
	color: #ffffff!important;
	top: 2em;
	right: 2.2em;
}
.header__nav__phantom-checkbox:checked ~
.header__navbar__container >
.header__nav a {
	color: #ffffff;
	margin-bottom: 3em;
}
.header__nav__phantom-checkbox:checked ~
.header__label > .header__label__label {
	opacity: 0;
}
.header__label {}
.header__label__label {
	font-size: 35px;
	margin-bottom: 0.2em;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	line-height: 1.15;
	color: rgba(245, 245, 245, 0.95);
	margin-top: 0.35em;
	opacity: 0.85;
}
.header__button__link {
	width: 100%;
	height: fit-content;
}
.header__button {
	background: #FFFFFF;
	width: 100%;
	height: fit-content;
	text-align: center;
	font-size: 18px;
	margin-bottom: 0.3em;
	padding: 0.7em 1.3em;
	cursor: pointer;
}
.header__button:after {
	display: block;
	content: "";
	height: 2px;
	width: 0;
	margin: 0 auto;
	background-color: #022a44;
	transition: width .2s ease-in-out;
 }
.header__button__link__but:disabled ~
.header__button__link > div {
	background: #bbb;
	cursor: unset;
}
.header__button__link__but:disabled ~
.header__button__link > div:after {
	display: none;
}
.header__button:hover:after {
	width: 100%;
}

main {
	padding: 3em;
	max-width: 1300px;
	margin: 0 auto;
}
.main__dou {
	display: block;
	flex-direction: row;
	justify-content: space-between;
	margin-bottom: 6em;
}
.main__dou__ltext {
	width: 100%;
}
.main__dou__left p {
	margin-bottom: 1.4em;
}
.main__dou__left h1 {
	margin-bottom: 0.9em;
}
.main__dou__right p {
	margin-bottom: 2em;
}
.main__dou__rlink:after {
	content: "→";
	margin-left: 0.5em;
	transition: 0.4s ease-in-out;
}

.main__dou__rlink:hover:after {
	margin-left: 1.5em;
}
.main__stats {
	display: block;
	width: 94%;
	justify-self: center;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 5%;
	justify-content: stretch;
	margin-bottom: 5em;
}
.main__stats h2 {
	width: 100%;
	text-align: left;
	margin: 0.5em 0;
}
.main__stats p {
	width: 100%;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 34px;
	text-transform: uppercase;
	margin-bottom: 2em;
}
.main__teacher {
	width: 100%;
}
.main__teacher__label {
	margin-bottom: 1em;
}
.main__teacher__text {
	margin-bottom: 5em;
	letter-spacing: 0.04em;
}
.main__teacher__info {
	width: 100%;
	flex-direction: row;
	justify-content: space-between;
	padding-bottom: 3em;
}
.info__leftContainer {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.info__rightContainer {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.info__photo {
	width: 70%;
	height: auto;
	margin-bottom: 0.3em;
}
.info__name {
	text-align: center;
	font-weight: bold;
	margin-top: 0.4em;
}
.info__position {
	margin: 0.7em 0 0.5em 0;
	text-transform: uppercase;
}
.info__description {
	margin-bottom: 1.5em;
}
.info__arrows {
	display: flex;
	flex-direction: row;
	font-weight: bold;
	width: fit-content;
	margin: 0 auto;
}
.info__arrows a {
	width: fit-content;
	height: fit-content;
	margin-right: 1em;
}
.info__arrow {
	border: 1px solid rgba(142, 142, 142, 0.35);
	border-radius: 2px;
	background: rgb(233, 234, 235);
	padding: 0.6em;
	transition: 0.2s;
	font-size: 2em;
	cursor: pointer;
}
.info__arrow:hover {
	background-color: #FFFFFF;
}
/* teacher info slider animation */
.info__name,
.info__position,
.info__description,
.info__photo{
	transition-timing-function: ease-in;
	transition-duration: 0.3s;
	transition-property: opacity;
}
.main__salaries {
	display: flex;
	flex-direction: column-reverse;
	justify-content: space-between;
	margin: 4em 0 6em 0;
}
.main__salaries p, h1 {
	width: 100%;
	margin-bottom: 0.7em;
}
.main__contribution {
	margin: 3em 0 7em 0;
}
.main__contribution__title {
	margin-bottom: 1em;
	text-align: left;
	width: 100%;
}
.main__contribution__container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.main__contribution__list {
	width: 100%;
}
.main__contribution__list h3 {
	margin-bottom: 0.4em;
	text-transform: uppercase;
}
.main__contribution__list p {
	margin-bottom: 2em;
}
.main__contribution__photo {
	width: 50%;
	height: 50%;
	display: none;
}
.main__goal {
	margin-bottom: 4em;
}
.main__goal__title {
	margin-bottom: 1em;
}
.main__goal__container {
	display: block;
	flex-direction: row;
	justify-content: space-between;
}
.main__goal__container h1 {
	width: 100%;
}
.main__goal__container p {
	margin-bottom: 0.5em;
}
.main__goal__left, .main__goal__right {
	width: 100%;
}
.main__thanks {
	display: none;
	margin-bottom: 6em;
}
.main__thanks__title {
	margin-bottom: 0.7em;
	text-transform: uppercase;
}
.main__thanks__container {
	display: flex;
	flex-direction: row;
	overflow: hidden;
}
.main__thanks__item {
	margin-right: 3.3em;
}
.main__thanks__item p {
	font-size: 20px;
	font-weight: bold;
	line-height: 27px;
	color: #333333;
	margin-bottom: 0.2em;
}
.main__steps {
	display: block;
	flex-direction: row;
	justify-content: space-between;
	margin-bottom: 6em;
}
.main__steps__left {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.main__steps__left > p {
	margin-bottom: 1.5em;
}
.main__steps__left, .main__steps__right {
	width: 100%;
}
.main__steps__right h3 {
	margin-bottom: 0.3em;
	text-transform: uppercase;
}
.main__steps__right p {
	margin-bottom: 2em;
}
.main__steps__right h3,
.main__steps__right p {
	opacity: 0;
}
.main__donation {
	display: flex;
	width: 100%;
	grid-template-columns: 1fr 1.3fr;
	grid-column-gap: 7%;
}
.main__donation__photo {
	display: none;
	width: 100%;
	height: 100%;
	background-image: url("../media/images/skovoroda.png");
	background-position: center;
	background-size: cover;
}
.main__donation__photo__back {
	width: 100%;
	height: 100%;
	background-image: url("../media/images/bg.png");
	background-position: center;
	background-size: cover;
}
.main__donation__form {
	width: 100%;
}
.main__donation__label {
	width: 100%;
	margin-bottom: 0.5em;
}
.main__donation__form__container {
	display: block;
	grid-template-columns: 1.3fr 1fr;
	grid-column-gap: 4%;
}
.main__donation__checkboxes-container {
	display: block;
	grid-template-columns: 1fr 1.2fr;
	grid-column-gap: 4%;
}
.main__donation fieldset, .main__donation fieldset input {
	width: 100%;
	position: relative;
}
.main__donation fieldset label {
	position: absolute;
	top: 0.7em;
	left: 1.4em;
	padding:0 0.1em 0 0.1em;
	background-color: #FFFFFF;
	color: #013a5f;
	text-decoration-color: #013a5f;
	height: min-content;
	transition: 0.3s ease-out;
}
.main__donation fieldset input {
	margin-bottom: 1.5em;
	font-size: 1.4em;
	line-height: 2.5em;
	border: 1px solid #013a5f;
	padding-left: 1em;
	transition: 0.3s ease-out;
}
.main__donation > .main__donation__button {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	max-width: fit-content;
	font-size: 1.6em;
}
.main__donation > .main__donation__button::after {
	margin-top: 0.2em;
	background-color: #fff;
}
.input__input:disabled,
.input__input:disabled ~ .input__label {
	background-color: #ddd;
}
.input__input:focus:required:invalid +  label {
	transform: translateY(-1.3em);
}
.input__input:valid + label {
	transform: translateY(-1.3em);
}
.g-recaptcha {
	margin-bottom: 1em;
}
.main__donation__button {
	background-color: #013a5f;
	color: #FFFFFF;
	margin: 0 auto;
}
footer {
	width: 100%;
	height: fit-content;
	background-color: #013a5f;
}
.footer__text {
	font-size: 14px;
	padding: 1em 0;
	color: #FFFFFF;
	font-weight: normal;
}

/* ANCHORS */
.people__anchor,
.goal__anchor,
.help__anchor{
	display: block;
	width: 0;
	height: 0;
	position: relative;
	top: -10em;
	visibility: hidden;
}
h1 {
	font-size: 30px;
	line-height: 36px;
	font-weight: bold;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
h2 {
	font-size: 24px;
	line-height: 28px;
	font-weight: bold;
	letter-spacing: 0.04em;
}
h3 {
	font-size: 20px;
	line-height: 26px;
	font-weight: bold;
	letter-spacing: 0.04em;
}
.tC_blue {
	color: #022a44;
	text-decoration: #022a44;
}
.tC_darkblue {
	color: #2b363d;
	text-decoration: #2b363d;
}
.tC_black {
	color: #202427;
	text-decoration: #202427;
}
.tC_gray {
	color: #f5f5f5;
	text-decoration: #f5f5f5;
}
.tC_white {
	color: #FFFFFF;
	text-decoration: #FFFFFF;
}
.link {
	color: #013a5f;
	border-bottom: 1px solid #013a5f;
}
.t_center {
	width: 100%;
	text-align: center;
}
.bodytext {
	font-size: 16px;
	line-height: 20px;
}
.percent:after {
	content: "%";
}
.uah:after {
	content: " ГРН";
}

/*       CONTROLS       */
/*    toggle switch     */
.switch {
	display: inline-block;
	height: 1em;
	position: relative;
	width: 100%;
	margin-bottom: 3em;
	cursor: pointer;
}
.switch input {
	display:none;
}
.switch span {
	margin-left: 65px;
	line-height: 34px;
}
.slider {
	background-color: #aaa;
	bottom: 0;
	cursor: pointer;
	left: 0;
	position: absolute;
	right: 0;
	top: 14px;
	transition: .3s;
	height: 4px;
	width: 40px;
	margin: 0 10px;
}
.slider:before {
	background-color: #aaa;
	bottom: -9px;
	content: "";
	height: 20px;
	position: absolute;
	transition: .4s;
	width: 20px;
	margin-left: -10px;
}
input:checked + .slider:before {
	transform: translateX(40px);
	background-color: #013a5f;
}
.slider.round {
	border-radius: 34px;
}
.slider.round:before {
	border-radius: 50%;
}
/* checkbox */
.checkbox__container {
	display: block;
	position: relative;
	padding-left: 1.9em;
	line-height: 1.6em;
	cursor: pointer;
	margin-bottom: 1em;
}
.checkbox__container input {
	display: none;
}
.checkbox {
	position: absolute;
	top: 0;
	left: 0;
	height: 1.4em;
	width: 1.4em;
	border: 1px solid #013a5f
}
.checkbox:after {
	content: "";
	position: absolute;
	display: none;
}
.checkbox__container input:checked ~ .checkbox:after {
	display: block;
}
.checkbox__container .checkbox:after {
	left: 0.4em;
	top: 0.1em;
	width: 0.3em;
	height: 0.6em;
	border: solid #013a5f;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* UP ARROW */
.arrow-up {
	visibility: hidden;
	opacity: 70%;
	position: fixed;
	right: 2em;
	bottom: 2em;
	transition: 0.3s ease-in;
	transition-property: opacity;
}
.arrow-up:hover {
	opacity: 100%!important;
}
.arrow-up > img {
	width: 6em;
	height: 6em;
}
.arrow-up::before {
	content: "\f062";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #fff;
	width: 100%;
	text-align: center;
	position: absolute;
	font-size: 4em;
	padding-top: 20%;
	line-height: 100%;
}

/* Adaptivity */
/* mobile screens */
@media screen and (min-width: 420px) {}
@media screen and (min-width: 576px) {
	body {
		font-size: 10px;
		line-height: 16px;
	}
	h1 {
		font-size: 36px;
		line-height: 42px;
	}
	h2 {
		font-size: 32px;
		line-height: 37px;
	}
	h3 {
		font-size: 27px;
		line-height: 34px;
	}
	.bodytext {
		font-size: 16px;
		line-height: 20px;
	}
	.header__label__label {
		font-size: 54px;
		margin-bottom: 0.2em;
	}
	.footer__text {
		font-size: 18px;
	}
}
/* desktops, laptops, tablets */
@media screen and (min-width: 680px) {
	body {
		font-size: 10px;
		line-height: 16px;
	}
	h1 {
		font-size: 36px;
		line-height: 42px;
	}
	h2 {
		font-size: 32px;
		line-height: 37px;
	}
	h3 {
		font-size: 27px;
		line-height: 34px;
	}
	.bodytext {
		font-size: 12px;
		line-height: 20px;
	}
	.header__label__label {
		font-size: 40px;
		margin-bottom: 0.2em;
	}
	.footer__text {
		font-size: 18px;
	}
	header {
		width: 100%;
		padding-bottom: 51%;
	}
	.header__navbar {
		padding: 2.6em 4.6em;
		overflow: visible;
	}
	.header__navbar__container {
		flex-direction: row-reverse;
	}
	.header__nav {
		position: relative;
		width: fit-content;
	}
	.header__nav__dropdown {
		display: flex;
		position: relative;
		top: 0;
		left: 0;
		width: fit-content;
		height: fit-content;
		flex-direction: row;
		background-color: unset;
		border-top: unset;
		border-bottom: unset;
	}
	.header__nav__dropdown > a {
		margin: 0 0 0 2.3em;
	}
	.header__nav__button {
		display: none;
	}
	.header__button__link {
		width: fit-content;
	}
	.header__button {
		width: fit-content;
	}
	main {
		padding: 6.3em;
	}
	.info__photo {
		width: 100%;
	}
	.info__arrow {
		margin-bottom: 0.5em;
		padding: 1em;
	}
	.info__position {
		margin: 1.3em 0 0.5em 0;
	}
	.main__stats {
		grid-template-columns: 1fr 1fr 1fr 1fr;
		margin: 0 auto 7em auto;
	}
	.main__stats h2 {
		grid-row-start: 1;
		grid-row-end: 2;
		text-align: left;
	}
	.main__stats p {
		grid-row-start: 2;
		grid-row-end: 3;
		margin-bottom: 0;
	}
	.main__dou {
		display: flex;
	}
	.main__dou__left {
		width: 45%;
	}
	.main__dou__right {
		width: 53%;
	}
	.main__teacher {
		padding: 0 4em;
	}
	.main__teacher__label {
		margin-bottom: 0.4em;
	}
	.main__teacher__info {
		display: flex;
		background-image: linear-gradient(rgba(43, 54, 61, 0.1),rgba(43, 54, 61, 0.1));
		background-repeat: no-repeat;
		background-size: 50% 80%;
		background-position: 50% 60%;
	}
	.info__leftContainer {
		margin-right: 3em;
		width: 40%;
	}
	.info__rightContainer {
		width: 50%;
	}
	.info__name {
		text-align: left;
	}
	.info__arrows {
		margin: 0;
	}
	.info__arrow {
		padding: 0.7em;
	}
	.info__position {
		margin: 1.5em 0 0.5em 0;
	}
	.main__salaries {
		flex-direction: row;
	}
	.main__salaries p, h1 {
		width: 45%;
	}
	.main__goal__container {
		display: flex;
	}
	.main__goal__left, .main__goal__right {
		width: 40%;
	}
	.main__thanks {
		display: block;
	}
	.main__steps {
		display: flex;
	}
	.main__steps__left, .main__steps__right {
		width: 45%;
	}
	.main__donation__button {
		margin: 0;
	}
	.main__stats {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		margin-left: 2em;
	}
	.main__donation fieldset label {
		top: 1em;
	}
	.input__input:focus:required:invalid +  label {
		transform: translateY(-1.8em);
	}
	.input__input:valid + label {
		transform: translateY(-1.8em);
	}
}
@media screen and (min-width: 768px) {
	body {
		font-size: 12px;
		line-height: 18px;
	}
	h1 {
		font-size: 38px;
		line-height: 44px;
	}
	h2 {
		font-size: 32px;
		line-height: 37px;
	}
	h3 {
		font-size: 27px;
		line-height: 34px;
	}
	.bodytext {
		font-size: 14px;
		line-height: 22px;
	}
	.header__label__label {
		font-size: 50px;
		margin-bottom: 0.2em;
	}
	.main__contribution {
		margin: 3em 0 4em 0;
	}
	.info__description {
		margin-bottom: 1em;
	}
	.main__steps__left h1 {
		padding-top: 2em;
	}
	.main__steps__left p {
		padding-bottom: 2em;
	}
	.footer__text {
		font-size: 18px;
	}
	.main__donation__form__container,
	.main__donation__checkboxes-container {
		display: grid;
	}
	.main__donation__photo {
		height: 70%;
	}
}
@media screen and (min-width: 920px) {
	body {
		font-size: 15px;
		line-height: 18px;
	}
	h1 {
		font-size: 42px;
		line-height: 49px;
	}
	h2 {
		font-size: 40px;
		line-height: 47px;
	}
	h3 {
		font-size: 27px;
		line-height: 34px;
	}
	.bodytext {
		font-size: 18px;
		line-height: 30px;
	}
	.header__label__label {
		font-size: 60px;
	}
	.header__button {
		padding: 0.9em 1.5em;
	}
	.footer__text {
		font-size: 20px;
	}
	.checkbox__container .checkbox:after {
		border-width: 0 3px 3px 0;
	}
	.main__donation {
	}
	.main__donation__photo {
		display: block;
		height: 100%;
	}
	.main__contribution__list {
		width: 35%;
	}
	.main__contribution__photo {
		display: block
	}
	.main__contribution__title {
		text-align: center;
	}
	.header__button {
		margin-bottom: 3em;
	}
	.arrow-up {
		right: 2em;
		bottom: 2em;
	}
	.arrow-up > img {
		width: 4em;
		height: 4em;
	}
	.arrow-up::before {
		font-size: 2.4em;
	}
}
@media screen and (min-width: 1200px) {
	body {
		font-size: 18px;
		line-height: 30px;
	}
	h1 {
		font-size: 50px;
		line-height: 57px;
	}
	h2 {
		font-size: 50px;
		line-height: 57px;
	}
	h3 {
		font-size: 27px;
		line-height: 34px;
	}
	.bodytext {
		font-size: 18px;
		line-height: 30px;
	}
	.header__label__label {
		font-size: 80px;
	}
	.main__steps__left h1, .main__steps__left p {
		padding-top: 0;
		padding-bottom: 0;
	}
	.footer__text {
		font-size: 24px;
	}
}
@media screen and (min-width: 1400px) {
	body {
		font-size: 18px;
		line-height: 30px;
	}
	h1 {
		font-size: 60px;
		line-height: 67px;
	}
	h2 {
		font-size: 50px;
		line-height: 57px;
	}
	h3 {
		font-size: 27px;
		line-height: 34px;
	}
	.bodytext {
		font-size: 18px;
		line-height: 30px;
	}
	.header__label__label {
		font-size: 90px;
	}
	.footer__text {
		font-size: 24px;
	}
	header {
		padding-bottom: 800px;
	}
}

/* preload */

body {
    overflow: hidden;
}

body.preloaded {
	overflow: visible;
}

.preloaded .preload {
	visibility: hidden;
	opacity: 0;
}

.preload {
    position: fixed;
    background: #fff;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 999;
	opacity: 1;
    transition: all .4s ease-in-out;
}

.preload img {
    margin: auto;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
}