*{
	margin: 0;
	padding: 0;
}
*::before,
*::after {
	box-sizing: border-box;
}
a[href^=tel] {
    color: inherit;
    text-decoration: none;
}
button{
	color: inherit;
    text-decoration: none;
}
html{
	width: 100%;
}
body{
	background-color: #E5E2E5;
}
ul {
	list-style-type: none;
}
.section {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.section.show {
    opacity: 1;
    transform: translateY(0);
}
@font-face {
	font-family: "Open-Sans-Light";
	src: url("./assets/fonts/OpenSans-Light.ttf") format("truetype");
}
@font-face {
	font-family: "Open-Sans-Regular";
	src: url("./assets//fonts/OpenSans-Regular.woff") format("woff");
}
@font-face {
	font-family: "Open-Sans-Semibold";
	src: url("./assets/fonts/OpenSans-SemiBold.woff") format("woff");
}
@font-face {
	font-family: "Bebas";
	src: url("./assets/fonts/Bebas_Neue_Cyrillic.ttf") format("truetype");
}
.navigation_wrapper{
	width: 100vw;
	height: 70px;
	position: fixed;
	z-index: 10;
	overflow: hidden;
	background-color: #E5E2E5;
	border-bottom-left-radius: 25px;
	border-bottom-right-radius: 25px;
}
.navigation{
	height: 100%;
	margin-right: 2%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 30px;
}
.navigation_item{
	font-family: "Open-Sans-Semibold", sans-serif;
	color: #1F1E1E;
	text-decoration: none;
}
.navigation_item:hover{
	transition: 0.3s;
	color: #ff0000;
}

.banner{
	position: relative;
	height: 100vh;
	width: 100%;
	background: url(./assets/img/rep-9.webp) no-repeat center;
	background-size: cover;
}
.banner::before{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background:rgba(11, 11, 11, 0.59) ;
}

.banner_content {
	height: 100%;
	margin-left: 10.4%;
	position: relative;
	z-index: 2;
	width: 495px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.banner_content_title,
.banner_content_subtitle,
.description_text {
	color: #FFF;
}
.banner_content_title{
	font-family: "Bebas";
	font-size: 128px;
	font-weight: 400;
	line-height: 0.85;
}
.banner_content_subtitle{
	font-family: "Bebas";
	font-size: 27px;
	font-weight: 400;
}
.banner_content_description{
	margin-top: 30px;
}
.description_text{

	font-family: "Open-Sans-Regular", sans-serif;
	font-size: 16px;
	line-height: 21.79px;
}
.banner_content_button{
	height: 90px;
	width: 300px;
	margin-top: 60px;
	font-family: "Open-Sans-Light", sans-serif;
	font-size: 25px;
	color: #fff;
	background: #817F7F;
	border: 0.5px solid #fff;
	border-radius: 25px;
}
.banner_content_button:hover{
	cursor: pointer;
	transition: 0.5s;
	background: #9e9e9e;
}

.services{
	width: 100%;
	position: relative;
	padding-top: 80px;
	background-color: #E5E2E5;
}

.section_title{
	font-family: "Bebas", sans-serif;
	font-weight: 400;
	font-size: 96px;
	text-align: center;
	color: rgba(0, 0, 0, 1);
}

.services_container{
	width: 100%;
	padding-top: 44px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 3em;
}

.services_card{
	max-width: 470px;
	height: auto;
	z-index: 2;
	padding: 30px 10px 30px 10px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	background-color: #fff;
	border-radius: 30px;
	box-shadow: 5px 30px 40px 0px rgba(0, 0, 0, 0.2);
}

.card_image{
    max-width: 90%;
    height: auto;
    object-fit: cover;
    border-radius: 25px;
}

.card_name{
	width: 305;
	margin-top: 18px;
	font-family: 'Bebas';
	font-weight: 400;
	font-size: 25px;
	color: rgba(31, 30, 30, 1);
	text-align: center;
	line-height: 1;
}
.card_subname{
	line-height: 1;
	font-family: "Open-Sans-Light";
	font-size: 15px;
	color: rgba(0, 0, 0, 1);
}
.details_button{
	color: inherit;
	text-decoration: none;
}
.card_price{
	width: 175px;
	height: 50px;
	margin-top: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "Open-Sans-Regular";
	font-size: 15px;
	background-color: rgba(249, 203, 6, 1);
	border: none;
	border-radius: 4px;
	-webkit-appearance: none;
}
.services_card button:hover{
	cursor: pointer;
	transition: 0.5s;
	background-color: rgba(249, 204, 6, 0.548);

}
.services_ellipse_right{
	z-index: -1;
	position: absolute;
	bottom: 0;
	right: 0;
}
.services_ellipse_left{
	z-index: -1;
	position: absolute;
	bottom: 0;
	left: 0;
}
.photos{
	z-index: 2;
	margin-top: 65px;
	background-color: rgba(229, 226, 229, 1);
}
.carousel{
	position: relative;
	width: 100%;
	margin: auto;
	overflow-x: hidden;
}
.carousel_track{
	display: flex;
	transition: transform 0.2s ease-in-out;
}
.carousel_item{
	position: relative;
	flex: 0 0 100%;
}
.carousel_image{
	height: 93vh;
	width: 100%;
	object-fit:cover;
	flex: 0 0 100%;
}
.carousel_item::before{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background:rgba(0, 0, 0, 0.473) ;
}
.carousel_caption{
	position: absolute;
	z-index: 2;
	bottom: 33px;
	left: 40px;
	font-family: "Open-Sans-Regular";
	font-size: 32px;
	color: #fff;
}
.carousel_btn{
	width: 100px;
	position: absolute;
	z-index: 2;
    bottom: 45%;
    background: rgba(0, 0, 0, 0.6);
    border: none;
    padding: 10px;
    cursor: pointer;
}
.prev{
	display: none;
	transform: scale(-1);
	left: 0;
}
.next{
	right: 0;
}
.prev, .next {
	bottom: 40%;
	padding: 5px 50px 5px 5px;
}
.team{
	padding-top: 100px;
	padding-bottom: 20px;
	position: relative;
	background-color: rgba(229, 226, 229, 1);
}
.houston_container{
	font-family: "Open-Sans-Semibold";
	font-size: 300px;
	text-align: center;
	line-height: 0.85;
	letter-spacing: 4%;
	color: rgba(255, 255, 255, 0.59);
	background: rgba(123, 89, 52, 1);
	border-bottom-left-radius: 25px;
	border-bottom-right-radius: 25px;
}

.team_container{
	display: flex;
	justify-content: center;
	gap: 60px;
	margin-top: -100px;
}
.team_employee{
	width: 250px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.employee_position_bottom{
	margin-top: auto;
}
.employee_photo{
	height: 400px;
	width: 250px;
	object-fit: cover;
	border-radius: 5px;
}
.employee_name{
	font-family: "Bebas";
	font-size: 24px;
	text-align: center;
}
.employee_role{
	font-family: "Open-Sans-Regular";
	font-size: 15px;
	text-align: center;	
}
.values{
	display: flex;
	padding-top: 5%;
	background-color: rgba(229, 226, 229, 1);
}
.values_ellipse_left{
	z-index: 2;
	position: absolute;
	bottom: 0;
	left: 0;
}
.section_title_wrapper{
	margin-left: 5%;
}
.section_title_wrapper .section_title{
	text-align: left;
	line-height: 0.9;
}
.section_subtitle{
	max-width: 300px;
	font-family: "Open-Sans-Regular";
	font-size: 20px;
}
.values_items{
	display: flex;
	gap: 90px;
	height: 840px;
	margin-top: 45px;
}
.values_items_column{
	display: flex;
	flex-direction: column;
	gap: 80px;
}
.first_column{
	margin-top: auto;
}
.values_item{
	height: 200px;
	position: relative;
}
.values_item_border{
	width: 100%;
	height: 100%;
}
.values_item_icon{
	position: absolute;
	top: 50px;
	left: -50px;
}
.values_item_text_container{
	width: 88%;
	position: absolute;
	top: 25px;
	left: 54px;	
}
.values_item_title{
	font-family: "Bebas", sans-serif;
	font-size: 25px;
	font-weight: 400;
}
.values_item_text{
	font-family: "Open-Sans-Regular";
	font-size: 20px;
}
.contact_us_container{
	display: flex;
	padding: 200px;
	background-color: rgba(229, 226, 229, 1);
}
.contact_us_btn{
	margin: 0 auto;

	width: 583px;
	height: 148px;

	font-family: "Open-Sans-Light";
	font-size: 40px;
	text-align: center;
	color: rgba(255, 255, 255, 1);

	background: rgba(31, 30, 30, 1);
	border: none;
	border-radius: 25px;
}
.contact_us_btn:hover{
	cursor: pointer;
	transition: 0.5s;
	background: rgba(31, 30, 30, 0.658);
}
footer{
	background: rgba(217, 217, 217, 1);
}
.contacts{
	height: 100vh;
	padding: 0 150px 0 150px;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	align-items: center;
	background: rgba(217, 217, 217, 1);
}
.contacts_container{
	width: 520px;
	height: 520px;
	padding: 40px;
	display: flex;
	flex-direction: column;
	background: rgba(31, 30, 30, 0.5);
	border-radius: 25px;
}
.contacts_title{
	margin-top: 15px;
	font-family: "Bebas", sans-serif;
	font-size: 45px;
	font-weight: 400;
	color: #fff;
	text-align: center;
}
.contacts_text_container{
	width: 67%;
	margin-top: 49px;

	display: flex;
	flex-direction: column;
	gap: 33px;
}
.contacts_text_yellow,
.contacts_text_white{
	font-size: 20px;
	line-height: 27.24px;
}
.phone_number{
	color: inherit;
	text-decoration: none;
}
.contacts_text_yellow{
	font-family: "Open-Sans-Semibold";
	color: rgba(249, 203, 6, 1);
	-webkit-text-size-adjust: 100%;
}
.contacts_text_white{
	font-family: "Open-Sans-Regular";
	color: #fff;
}
.contacts_links{
	margin-top: auto;
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.contacts_links_container{
	display: flex;
	gap: 45px;
}
.contacts_location{
	border-radius: 25px;
}

@media screen and (max-width: 1600px) {
	.services_container {
        gap: 2em;
    }
	.services_card {
		width: 450px;
		padding: 20px 0 20px 0;
	}
	.card_image {
		max-width: 90%;
	}
	.section_title_wrapper{
		margin-left: 3%;
	}
	.houston_container{
		font-size: 250px;
	}
	.values_item_text_container{
		top: 35px;
	}
	.values_item_text{
		font-size: 18px;
	}
	.values_item_icon{
		width: 80px;
		top: 60px;
		left: -35px;
	}
	.contacts_text_container{
		width: 100%;
	}
}

@media screen and (max-width: 1440px) {
	.services_container {
        gap: 2em;
    }
	.services_card {
		width: 400px;
		padding: 20px 0 20px 0;
	}
	.card_image {
		max-width: 90%;
	}
	.card_name{
		font-size: 20px;
	}
	.services_ellipse_left,
	.services_ellipse_right{
		width: 250px;
	}
	.carousel_image {
        height: 800px;
    }
    .carousel_caption {
        font-size: 28px;
        bottom: 25px;
        left: 30px;
    }
	.values {
		margin-top: 60px;
		padding: 8px;
		flex-direction: column;
		align-items: center;
	}
	.values_items{
		padding-left: 30px;
	}
	.section_title_wrapper .section_title{
		text-align: center;
	}
	.section_subtitle{
		max-width: 100%;
	}
	.first_column{
		margin: 0;
	}
	.values_ellipse_left{
		display: none;
	}
	.contacts{
		padding: 0 50px 0 50px;
	}
}

@media screen and (max-width: 1280px) {
	.services_ellipse_left,
	.services_ellipse_right{
		width: 220px;
	}
	.houston_container{
		font-size: 200px;
		letter-spacing: 1%;
	}
	.team_container{
		gap: 30px;
	}
	.employee_photo{
		height: 350px;
		width: auto;
	}
	.contacts{
		padding: 0 20px 0 20px;
	}
}

@media screen and (max-width: 1024px) {
    .services_container {
        gap: 40px;
    }
    .services_card {
        padding: 15px;
    }
    .card_name {
        font-size: 20px;
    }
    .card_price {
        width: 140px;
        height: 40px;
        font-size: 13px;
    }
	.services_yellow_ellipse_right,
	.services_yellow_ellipse_left {
		display: none;
	}
	.carousel_image {
        height: 600px;
    }
	.carousel_caption {
        font-size: 22px;
        bottom: 15px;
        left: 20px;
    }
    .prev {
        left: 0;
    }
    .next {
        right: 0;
    }
	.employee_photo{
		height: 300px;
		width: auto;
	}
	.values_item_text_container{
		left: 45;
		width: 87%;
	}
	.values_item_icon {
		width: 70px;
		left: -30;
	}
	.values_item_text{
		font-size: 16px;
	}
	.contacts {
		height: auto;
		padding: 0;
		flex-direction: column;
	}
	.contacts_container{
		width: auto;
		height: auto;
		background: #1F1E1E;
		border-radius: 0;
	}
	.contacts_text_container{
		width: 80%;
	}
	.contacts_location{
		width: 100%;
		height: 520px;
		border-radius: 0;
	}
}
@media screen and (max-width: 900px) {
	.banner{
		display: flex;
		justify-content: center;
	}
	.navigation_wrapper{
		display: none;
	}
	.banner{
		background-size: cover;
	}
	.banner::before{
		background:rgba(11, 11, 11, 0.733) ;
	}
	.banner_content {
		margin-left: 0;
		width: 500px;
		align-items: center;
		justify-content: flex-start;
	}
	.banner_content_title{
		text-align: center;
		margin-top: 100px;
		color: rgba(249, 203, 6, 1);
		font-size: 150px;
	}
	.banner_content_subtitle{
		text-align: center;
		font-size: 50px;
	}
	.description_text{
		text-align: center;
		font-size: 20px;
		line-height: 1.3;
	}
	.banner_content_button{
		width: 350px;
		border: none;
		font-size: 28px;
	}
	.services_container {
        gap: 25px;
    }
	.services_card{
		width: 340px;
	}
	.services_ellipse_left,
	.services_ellipse_right{
		display: none;
	}
	.houston_container{
		display: none;
	}
	.team_container{
		width: 100%;
		margin-top: 40px;
		flex-direction: column;
		justify-content: space-around;
		gap: 30px;
	}
	.team_employee{
		width: 500px;
		margin: 0 auto;
		flex-direction: row;
		gap: 20px;
	}
	.employee_name{
		text-align: left;
		font-size: 50px;
	}
	.employee_role{
		text-align: left;
		font-size: 16px;
	}
	.employee_position_bottom{
		margin-top: 0;
		flex-direction: row-reverse;
	}
	.values_items{
		height: auto;
		gap: 40px;
	}
	.values_item{
		height: auto;
	}
	.values_item_border{
		height: 170px;
	}
	.values_item_text_container{
		top: 20;
	}
	.values_item_icon{
		top: 50;
	}
	.values_item_text{
		width: 280px;
		font-size: 14px;
	}
}
@media screen and (max-width: 768px) {
	.navigation_wrapper{
		display: none;
	}
	.banner{
		background-size: cover;
	}
	.banner::before{
		background:rgba(11, 11, 11, 0.733) ;
	}
	.banner_content {
		width: 350px;
		margin: 0 auto;
		align-items: center;
		justify-content: flex-start;
	}
	.banner_content_title{
		margin-top: 70px;
		color: rgba(249, 203, 6, 1);
		font-size: 130px;
	}
	.banner_content_subtitle{
		text-align: center;
		font-size: 35px;
	}
	.banner_content_description{
		margin-top: 100px;
		margin-bottom: 30px;
	}
	.description_text{
		text-align: center;
		font-size: 16px;
		line-height: 1.5;
	}
	.banner_content_button{
		width: 300px;
		margin: 0 auto;
		border: none
	}
	.section_title{
		font-size: 64px;
	}

	.services_container{
		margin: 0 auto;
	}
    .services_card {
		width: 100%;
		margin: 0 auto;
        padding: 10px;
		background: none;
		box-shadow: none;
    }
	.card_image {
		width: auto;
		height: 300px;
		border-radius: 10px;
	}
    .card_name {
        font-size: 18px;
    }
    .card_price {
        width: 130px;
        height: 38px;
        font-size: 12px;
    }
	.photos{
		padding-top: 20px;
	}
	.carousel_image {
        height: 500px;
    }
    .carousel_caption {
        font-size: 18px;
        bottom: 10px;
        left: 15px;
    }
	.carousel_btn{
		width: 50px;
	}
	.arrow{
		height: 50px;
		width: 50px;
	}
    .prev, .next {
        bottom: 40%;
        padding: 5px 50px 5px 5px;
    }
	.houston_container{
		display: none;
	}
	.team_container{
		flex-direction: column;
		gap: 20px;
	}
	.employee_position_bottom{
		margin-top: 0;
		flex-direction: row-reverse;
	}
	.team_employee{
		width: 350px;
		display: flex;
		align-items: center;
		gap: 10px;
	}
	.employee_photo{
		width: 180px;
		height: 290px;
	}
	.employee_text{
		display: flex;
		flex-direction: column;
		gap: 20px;
	}
	.employee_name{
		text-align: left;
		font-size: 28px;
	}
	.employee_role{
		text-align: left;
		font-size: 14px;
	}
	.values {
		flex-direction: column;
	}
	.values_ellipse_left{
		display: none;
	}
	.section_title_wrapper{
		margin: 0;
		text-align: center;
	}
	.section_title_wrapper .section_title{
		text-align: center;
	}
	.section_subtitle{
		margin: 0 auto;
		width: 300px;
		font-size: 16px;
	}
	.values_items_column{
		gap: 40px;
	}
	.values_items{
		height: auto;
		padding-left: 15px;
		flex-direction: column;
		align-items: center;
	}
	.values_item{
		width: 350px;
		height: 170px;
	}
	.values_item_icon {
		width: 65px;
		left: -20;
	}
	.values_item_text{
		width: 290px;
		font-size: 14px;
	}
	.contact_us_container{
		margin: 100px 0 100px 0;
		padding: 0;
	}
	.contact_us_btn{
		width: 80%;
		height: 100px;

		font-size: 28px;
	}
	.contacts {
		height: auto;
		padding: 0;
		flex-direction: column;
	}
	.contacts_container{
		width: auto;
		height: auto;
		background: #1F1E1E;
		border-radius: 0;
	}
	.contacts_text_container{
		width: 100%;
	}
	.contacts_links_container{
		justify-content: space-between;
	}
	.link_icon{
		height: 45px;
		width: 45px;
	}
	.contacts_location{
		width: 100%;
		height: 520px;
		border-radius: 0;
	}
}