/* Обнуление */
*,
*::before,
*::after {
	padding: 0;
	margin: 0;
	border: 0;
	box-sizing: border-box;
}
a {
	text-decoration: none;
}
ul,
ol,
li {
	list-style: none;
}
img {
	vertical-align: top;
}

html,
body {
	height: 100%;
	line-height: 1;
	background: #fff;
    font-family: Arial, 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: normal;
    color: #555555;
}
body._lock {
	overflow: hidden;
}
.wrapper {
	min-height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: inherit;
	text-transform: uppercase;
	font-weight: 700;
	color: #2b2a29;
}

.color-1 {
	color: #ffe500;
}
.fz-120perc {
	font-size: 120%;
}
/* ------------------ */
/* ------------------ */
/* ------------------ */
/* Контент страницы */

.page__section {
	padding: 60px 0;
	margin: 0px auto;
	font-size: 15px;
	line-height: 150%;
}
.page__section_1 {
	
}
.page__section_2 {
	
}
.page__section_3 {
	
}
.page__section_4 {

}

.page__title {
	display: block;
	position: relative;
	font-size: 40px;
	margin: 0px 0px 30px 0px;
}
.page__title-bg {
	background: #e9e9e9;
    padding: 15px;
	color: #646464;
}
.page__title::after {
	position: absolute;
	bottom: -8px;
	left: 0;
	display: block;
	content: "";
	width: 60px;
	height: 5px;
	background-color: #e31e24;
}
.page__text {
	font-size: 16px;
	line-height: 150%;
}
.page__text p {
	margin: 0px 0px 20px 0px;
}

.page__sub-title {
	font-size: 30px;
	margin: 0px 0px 20px 0px;
}
/* Конец контента страницы */
/* Верхний блок */
.header {
	position: fixed;
	top: 0;
	left: 0;
	padding-top: 20px;
	width: 100%;
	z-index: 10;
}
.header--bgimg {
	padding-top: 0px;
	background: #2b2a29 url(../img/bg-overlay-black.png);
	background-repeat: no-repeat;
    background-size: cover;
	transition: 0.5s;
}
.header__container {
	max-width: 1320px;
	margin: 0px auto;
	display: flex;
	padding: 0 10px;
	align-items: center;
	justify-content: space-between;
	min-height: 70px;
}
.header__logo {
	position: relative;
   z-index: 5;
	max-width: 306px;
}
.menu__icon {
	display: none;
}
.menu__list > li {
	position: relative;
	margin: 0px 0px 0px 25px;
}
.menu__link {
	font-size: 1.3rem;
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
}
.menu__link:hover {
	text-decoration: underline;
}
.menu__arrow {
	display: none;
}


/* Top_content
---------------------------------*/

.top_cont_outer {
	background-color: #c12b23;
    background-image: url(../img/bg-shapka.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding: 20px;
    position: relative;
    padding-top: 165px;
}
.hero_section__img img, .foto-mobile img {
	border: 2px solid #fff;
	border-radius: 30px;
}


.white_pad {
    position: relative;
    right: 0px;
    bottom: 0px;
}

.white_pad img {
    position: absolute;
    right: 0px;
    bottom: 0px;
}

.top_left_cont h1 {
    font-size: 28px;
	font-weight: 400;
    color: #FFF;
    margin: 0 0 26px 0;
    text-align: left;
}

.top_left_cont h2 strong {
    font-weight: 700;
}

.top_left_cont p {
    font-size: 16px;
    margin: 0 0 30px 0;
    line-height: 26px;
}

a.read_more2 {
    display: block;
    font-size: 16px;
    width: 178px;
    height: 46px;
    line-height: 46px;
    border-radius: 30px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 600;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
}

a.read_more2:hover {
    background: #fff;
    color: #2b2a29;
    border: 1px solid #fff;
	text-decoration: none;
}
a.read_more2--red {
	background: #e31e24;
	border-color: #e31e24;
}

/* ----------------------- */
body._touch .menu__list > li {
	display: flex;
	align-items: center;
}
body._touch .menu__link {
	flex: 1 1 auto;
}
body._touch .menu__arrow {
	display: block;
	width: 0;
	height: 0;
	margin: 0px 0px 0px 5px;
	transition: transform 0.3s ease 0s;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 10px solid #fff;
}

body._touch .menu__list > li._active .menu__sub-list {
	opacity: 1;
	visibility: visible;
	transform: translate(0px, 0px);
	pointer-events: all;
}
body._touch .menu__list > li._active .menu__arrow {
	transform: rotate(-180deg);
}

 /* Style buttons */
 .btn {
	background-color: #e31e24;
	border: none;
	color: white;
	padding: 12px 30px;
	cursor: pointer;
	font-size: 20px;
	text-transform: uppercase;
	border-radius: 30px;
  }
  
  /* Darker background on mouse-over */
  .btn:hover {
	background-color: #940b06;
	color: white;
  }
  .btn-thone {
	background: #fff;
    border: 2px solid #dfdcdc;
    color: #000;
    font-size: 130%;
    font-weight: bold;
  }
  .btn-thone:hover {
	background: #fff;	
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 50%, rgba(222, 222, 222, 1) 50%);
	color: #000;
  }


/* Адаптивное видео */
  .thumb-wrap {
	position: relative;
	padding-bottom: 56.25%; /* задаёт высоту контейнера для 16:9 (если 4:3 — поставьте 75%) */
	height: 0;
	overflow: hidden;
  }

  .thumb-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-width: 0;
	outline-width: 0;
  }

  .uslugi-icons-title span {
	display: block;
	color: #e31e24;
	font-size: 110%;
	font-weight: 800;
  }


  .uslugi-icons {
	padding-top: 30px;
	text-align: center;
  }

  .uslugi-icons-text {
	padding: 20px;
	color: #000;
  }

  .uslugi-icons-img img {
	border-radius: 30px;
  }


  .to-action {
	margin-top: 100px;
  }
.call-to-action {
	position: relative;
	background-color: #dedede;
	/* background-image: url(../img/bg-shapka.jpg);
    background-repeat: no-repeat;
    background-size: cover; */
	padding: 40px;
	border-radius: 30px;
	font-size: 120%;
	color: #393838;
}

.call-to-action__img {
	position: absolute;
	bottom: 0;
}



/* advantages */
.advantages-item {
	position: relative;
	padding: 20px;
	background:#ffe500;
	border-radius: 30px;
	text-align: center;
}
.advantages-item__icon {
	position: absolute;
	width: 100px;
	height: 100px;
	padding: 15px;
	border-radius: 50px;
	background: #ffe500;
}
.advantages-item__text h3 {
	margin-bottom: 0;
	font-size: 20px;
}

/* our-work */
.our-work{
	background-color: #272727;
    background-image: url(../img/bg-shapka.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    position: relative;
}
.our-work h2 {
	color: #ffe500;
}

.our-work__item img {
	border: 1px solid #fff;
	border-radius: 30px;
}

.our-work__action h3 {
	color: #afafaf;
	margin-bottom: 0;
}


/* contact */
.contact-block {
	align-items: center;
	gap: 10px;
}
.contact-block__icone {
	width: 80px;
}

.contact-block__text {
	font-size: 40px;
	font-weight: 500;
}
.contact-block__text a {
	color: #000;
}
.contact-block.whatsapp {
	align-items: stretch;
	gap: 0;
}
.contact-block.whatsapp .contact-block__text {
	display: flex;
	align-items: center;
	margin-left: -10px;
	padding: 0 20px;
	background: #29a71a;
	color: #fff;
	text-transform: uppercase;
	font-size: 30px;
	-webkit-border-top-right-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-topright: 10px;
	-moz-border-radius-bottomright: 10px;
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
}
.contact-block.mail a{
	color: #e31c23;
}
.contact-block.mail svg {
	fill: #e31c23;
}

.contact-map {
	position: relative;
	min-height: 400px;
	border: 2px solid #ddd;
	border-radius: 30px;
}
.contact-map iframe{
	border-radius: 30px;
}
.contact-map__adres {
	position: absolute;
	top: -50px;
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 15px;
	background: #ffe500;
	border-radius: 30px;
}
.contact-map__adres__icon {
	width: 60px;
}
.contact-map__adres__text {
	font-size: 20px;
	color: #000;
}


/* ----------------------- */
@media (max-width: 1199px) {
	.top_left_cont h1 {
		font-size: 28px;
	}

	.container-nagrad .num h3 span {
		display: block;
	}
	
.to-action {
	margin-top: 0;
}

.advantages-item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 152px;
	padding-top: 60px;
	margin-top: 70px;
}
.advantages-item__icon {
	top: -50px;
	left: calc(50% - 50px);
	border: 2px solid #fff;
}
}

@media (max-width: 991px) {

.top_cont_outer {
    padding-top: 120px;
	padding-bottom: 40px;
}
.call-to-action {
	padding-top: 100px;
}
.call-to-action__img {
	top: -100px;
	height: 200px;
	width: auto;
	left: calc(50% - 80px);
	border-radius: 50%;
}
.contact-map {
	margin-top: 70px;
}
}

@media (max-width: 980px) {
	.menu__link {
		font-size: 1rem;
	}
}

@media (max-width: 768px) {
	.header__logo {
		max-width: 250px;
	}
	.menu__icon {
		z-index: 5;
		display: block;
		position: relative;
		width: 30px;
		height: 18px;
		cursor: pointer;
	}
	.menu__icon span,
	.menu__icon::before,
	.menu__icon::after {
		left: 0;
		position: absolute;
		height: 10%;
		width: 100%;
		transition: all 0.3s ease 0s;
		background-color: #fff;
	}
	.menu__icon::before,
	.menu__icon::after {
		content: "";
	}
	.menu__icon::before {
		top: 0;
	}
	.menu__icon::after {
		bottom: 0;
	}
	.menu__icon span {
		top: 50%;
		transform: scale(1) translate(0px, -50%);
	}

	.menu__icon._active span {
		transform: scale(0) translate(0px, -50%);
	}
	.menu__icon._active::before {
		top: 50%;
		transform: rotate(-45deg) translate(0px, -50%);
	}
	.menu__icon._active::after {
		bottom: 50%;
		transform: rotate(45deg) translate(0px, 50%);
	}

	.menu__body {
		position: fixed;
		top: 0;
		left: -100%;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.9);
		padding: 100px 30px 30px 30px;
		transition: left 0.3s ease 0s;
		overflow: auto;
	}
	.menu__body._active {
		left: 0;
	}

	.menu__body::before {
		content: "";
		position: fixed;
		width: 100%;
		top: 0;
		left: 0;
		height: 70px;
		z-index: 2;
	}

	.menu__list > li {
		flex-wrap: wrap;
		margin: 0px 0px 30px 0px;
	}
	.menu__list > li:last-child {
		margin-bottom: 0;
	}
	.menu__link {
		font-size: 24px;
	}
	
}

@media (max-width: 767px) {
	.hero_section__img {
		display: none;
	}

	.top_cont_outer {
        padding-bottom: 160px;
		margin-bottom: -120px;
    }

	.foto-mobile {
		position: relative;
		z-index: 1;
	}
	.page__title  {
		font-size: 25px;
		text-align: center;
	}
	.page__title::after {
		left: calc(50% - 30px);
	}

	.gradient-list span {
		display: block;
		padding: 15px 0;
	}
	.uslugi-icons-img img {
		max-width: 250px;
	}
	.call-to-action__btn-tel,
	.call-to-action__btn-form {
		width: 100%;
		margin-top: 20px;
	}

	.our-work__action {
		text-align: center;
	}

	.contact-map__adres {
		top: -30px;
	}
	.contact-map__adres__icon {
		width: 30px;
	}
	.contact-map__adres__text {
		font-size: 16px;
	}
}

@media (max-width: 575px) {
	
	.contact-block__text {
		font-size: 30px;
	}
	.contact-block.whatsapp .contact-block__text {
		font-size: 20px;
	}
	.contact-map__adres {
		justify-content: center;
        top: -75px;
        width: 100%;
    }
}

@media (max-width: 425px) {
	.top_cont_outer h1 {
		font-size: 22px;
	}
	.header__container {
		min-height: 50px;
	}
	.header__logo {
		max-width: 200px;
	}
	.menu__body::before {
		height: 50px;
	}
	.hero_section__btn {
		width: 100%;
		margin-bottom: 20px;
	}
	.hero_section__btn a {
		display: block;
		width: 100%;
	}

	.page .container-nagrad .list .num h3 {
		font-size: 16px;
	}


	.call-to-action {
		padding: 20px;
		padding-top: 100px;
	}
	.call-to-action__btn-form,
	.call-to-action__btn-tel {
		font-size: 18px;
	}

	.contact-block__icone {
		width: 60px;
	}
	
	.contact-block__text {
		font-size: 20px;
	}
	.contact-block.whatsapp .contact-block__text {
		font-size: 16px;
	}
}


@media (min-width: 576px) {
	.uslugi-icons-title {
		height: 73px;
	}
}

@media (min-width: 768px) {
	.menu__list {
		display: flex;
		align-items: center;
	}
	.menu__list > li {
		padding: 10px 0;
	}
	.foto-mobile {
		display: none;
	}
	.call-to-action__btn-tel,
	.call-to-action__btn-form {
		position: absolute;
	}
	.call-to-action__btn-form {
		bottom: -27px;
	}
	.call-to-action__btn-tel {
		bottom: -32px;
		right: 40px;
	}
}

@media (min-width: 769px) {
	.header__container {
		padding: 15px 10px;
	}
}

@media (min-width: 992px) {
	.uslugi-icons-img img {
		max-width: 250px;
	}
	.call-to-action__img {
		max-width: 290px;
        left: -20px;
	}
}

@media (min-width: 1200px)  {
	.call-to-action__img {
		max-width: 400px;
        left: -35px;
	}
.call-to-action__btn-tel {
	right: 80px;
}

	.advantages-item {
		display: flex;
		align-items: center;
		min-height: 130px;
		padding-left: 120px;
		margin-top: 20px;
		text-align: left;
	}

	.advantages-item__icon {
		top: calc(50% - 50px);
		left: 0px;
		border-right: 1px solid #fff;
		-webkit-border-radius: 30px;
		-webkit-border-top-right-radius: 0px;
		-webkit-border-bottom-right-radius: 0px;
		-moz-border-radius: 30px;
		-moz-border-radius-topright: 0px;
		-moz-border-radius-bottomright: 0px;
		border-radius: 30px;
		border-top-right-radius: 0px;
		border-bottom-right-radius: 0px;
	}
}


@media (min-width: 1400px) {

.call-to-action__btn-tel {
	right: 200px;
}
}






 

