@import url("https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;700;900&display=swap");
body {
	font-family: Heebo;
	color: #21243d;
}
body._lock {
	overflow: hidden;
}
.wrapper {
	width: 100%;
	min-height: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
._container {
	max-width: 866px;
	margin: 0 auto;
}
.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	background-color: #fff;
	max-height: 80px;
	width: 100%;
	align-items: center;
}
.header__content {
	max-width: 1044px;
	padding: 0px 6px;
	margin: auto;
}
.menu {
}
.menu__list {
	display: flex;
	justify-content: flex-end;
	padding: 10px 0;
	align-items: center;
	list-style-type: none;
}
.menu__list li {
	margin: 0px 0px 0px 33px;
}

.menu__link {
	font-weight: 500;
	font-size: 20px;
	color: black;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}
.menu__link:hover {
	color: #ff6464;
}
.menu__active {
	color: #ff6464;
}
.icon-menu {
	display: none;
}
@media (max-width: 430px) {
	.icon-menu {
		z-index: 50;
		display: block;
		position: relative;
		cursor: pointer;
		width: 30px;
		height: 18px;
		margin-left: auto;
		margin-top: 20px;
		left: 0;
	}
	.icon-menu span,
	.icon-menu::before,
	.icon-menu::after {
		position: absolute;
		left: 0;
		width: 100%;
		height: 10%;
		transition: all 0.3s ease 0s;
		background-color: #21243d;
	}
	.icon-menu::before,
	.icon-menu::after {
		content: "";
	}
	.icon-menu::before {
		top: 0;
	}
	.icon-menu::after {
		bottom: 0;
	}
	.icon-menu span {
		top: 50%;
		transform: scale(1) translate(0px, -50%);
	}
	.icon-menu._active span {
		transform: scale(0) translate(0px, -50%);
	}
	.icon-menu._active::before {
		top: 50%;
		transform: rotate(-45deg) translate(0px, -50%);
	}
	.icon-menu._active::after {
		bottom: 50%;
		transform: rotate(45deg) translate(0px, 50%);
	}
	.menu__body {
		position: fixed;
		top: 0;
		width: 100%;
		height: 100%;
		transition: left 0.3s ease 0s;
		padding: 80px 0 0 0;
		background-color: #fff;
		left: -100%;
		overflow: auto;
	}
	.menu__body._active {
		left: 0;
	}
	.menu__body::before {
		content: "";
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		height: 30px;
		background-color: #fff;
		z-index: 2;
	}
	.menu__list {
		padding: 0;
		flex-direction: column;
	}
	.menu__link {
		font-size: 22px;
	}
}
.page {
	padding: 100px 0 0 0; /*задали отступ сверху для всех страниц сайта*/
}
.hello {
	padding: 38px 0 0 0;
	max-width: 866px;
	margin: auto;
}
.hello__container {
	display: flex;
}
.hello__content {
	flex: 1 1 auto; /*можно увеличиваться и уменьшаться, ширина автоматическая*/
	align-items: flex-start;
	padding: 18px 110px 0 0;
	margin-bottom: 71px;
}
.hello__title {
	margin: 0px 0px 25px 0px; /*  в макете 40px, но с учетом line-height получается больше, это нужно учитывать*/
}
.title {
	font-size: 44px;
	line-height: 136%;
	color: #21243d;
	font-weight: 700;
}
.hello_text {
	margin: 0px 0px 35px 0px;
}
.text {
	font-size: 16px;
	font-weight: 400;
	line-height: 143%;
	color: #21243d;
}

.btn {
	background-color: #ff6464;
	border-radius: 2px;
	display: inline-flex;
	padding: 0 20px;
	height: 47px;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 500;
	font-size: 20px;
	line-height: 145%; /* ! высота линии посчитана в процентах высота линии/ размер шрифта * 100%, чтобы при изменении размера шрифта, высота менялась автоматически*/
	color: #ffffff;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}
.btn:hover {
	background-color: #b92626;
}
.hello__avatar {
	flex: 0 0 243px; /*возможность уменьшаться, возможность увеличиваться и базовая ширина - flex basis*/
	height: 243px;
	border-radius: 50%;
	box-shadow: -5px 13px 0 0 #edf7fa;
	overflow: hidden;
}
.hello__avatar img {
	max-width: 100%;
}
@media (max-width: 425px) {
	.page {
		padding: 0;
	}
	.hello {
		padding: 42px 0 0 0;
	}
	.hello__container {
		flex-direction: column-reverse;
		align-items: center;
	}
	.hello__avatar {
		margin: 0px 0px 34px 0px;
	}
	.hello__content {
		padding: 0;
		text-align: center;
	}
	.text {
		max-width: 328px;
		margin: 0 auto;
	}
	.btn {
		margin: 26px 0px 0px 0px;
	}
}

.recent-posts {
	background-color: #edf7fa;
	padding: 25px 0px 30px 0px;
}
.recent-posts__header {
	display: flex;
	margin-bottom: 23px;
}
.recent-posts__title {
	flex: 1 1 auto;
	padding-right: 20px;
}
.title-posts {
	font-size: 22px;
}
.recent-posts__view-all {
	font-size: 16px;
	color: #00a8cc;
	text-decoration: none;
	line-height: 23px;
	flex: 0 0 auto;
}
.recent-posts__items {
	display: flex;
	margin: 0 -10px;
}
.recent-posts__column {
	flex: 0 1 50%;
	padding: 0 10px;
}
.recent-post {
	background-color: #ffffff;
	box-shadow: 0px 4px 10px rgba(187, 225, 250, 0.25);
	border-radius: 4px;
	padding: 20px;
	box-sizing: border-box;
	height: 100%;
}

.recent-post__title {
	display: inline-block;
	margin: 0 0 17px 0;
	font-size: 26px;
	font-weight: 700;
	text-decoration: none;
	color: inherit;
	line-height: 146%;
	transition: all 0.3s ease 0s;
}
.recent-post__title:hover {
	color: #ff6464;
}
.recent-post__info {
	font-size: 18px;
	line-height: 144%;
	margin: 0 0 11px 0;
}
.recent-post__info span {
	margin: 0px 10px;
}
@media (max-width: 430px) {
	.title-posts {
		font-size: 18px;
		text-align: center;
	}
	.recent-posts__view-all {
		display: none;
	}
	.recent-posts__items {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		margin: 0;
	}

	.recent-posts__column:first-child {
		margin: 0px 0px 15px 0px;
	}

	.recent-post__title {
		font-size: 22px;
	}
	.recent-post__info {
		font-size: 16px;
	}
}

.featured-works {
	padding: 30px 0px 80px 0px;
}

.featured-works__title {
	margin: 0px 0px 45px 0px;
}

.works {
}
.works__item {
	display: flex;
	align-items: flex-start;
	padding: 0 0 30px 0;
	margin: 0 0 30px 0;
	border-bottom: 1px solid #e0e0e0;
}
.works__image {
	flex: 0 0 246px;
	border-radius: 6px;
	min-height: 180px;
	transition: all 0.3s ease 0s;
}
.works__image:hover {
	opacity: 0.5;
}
._ibg {
	position: relative;
}
._ibg img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
	z-index: -2;
}
.works__body {
	flex: 1 1 auto;
	padding: 0 0 0 18px;
}
.works__title {
	font-size: 30px;
	font-weight: 700;
	line-height: 147%;
	color: inherit;
	margin: 0 0 16px 0;
	text-decoration: none;
	transition: all 0.3s ease 0s;
}
.works__title:hover {
	color: #ff6464;
}
.works__info {
	display: flex;
	align-items: center;
	margin: 0 0 16px 0;
}
.works__year {
	display: inline-flex;
	font-size: 18px;
	font-weight: 900;
	color: #ffffff;
	background-color: #142850;
	border-radius: 16px;
	padding: 0 10px;
	height: 25px;
	justify-content: center;
	align-items: center;
}
.works__category {
	font-size: 20px;
	color: #8695a4;
	margin: 0 0 0 26px;
}
@media (max-width: 430px) {
	.featured-works__title {
		margin: 0px 0px 20px 0px;
	}
	.works__item-hidden {
		display: none;
	}
	.works__item {
		flex-direction: column;
	}
	.works__image {
		width: 100%;
		border-radius: 6px;
		margin: 0px 0px 16px 0px;
	}
	.works__image img {
		max-width: 100%;
		border-radius: 6px;
	}
	.works__title {
		font-size: 24px;
	}
	.works__year {
		font-size: 16px;
	}
	.works__category {
		font-size: 16px;
	}
	.works__info {
		margin: 16px 0 16px 0;
	}
}
.footer {
	text-align: center;
	padding: 50px 0;
}
.footer__content {
}

.footer__social {
	margin: 0 0 26px 0;
}
.social {
	display: flex;
	justify-content: center;
	align-items: center;
}
.social__item {
	font-size: 30px;
	color: inherit;
	text-decoration: none;
	margin: 0px 35px 0px 0px;
	transition: all 0.3s ease 0s;
}
.social__item:hover {
	color: #ff6464;
}
._icon-fb {
}
._icon-insta {
}
._icon-twitter {
}
._icon-Linkedin {
}
.footer__copy {
	font-size: 14px;
	color: #21243d;
}
