/* 1500 */
@media (max-width: 1500px) {

.hero-slider .swiper-button-next, 
.hero-slider .swiper-button-prev {
	display: none !important;
	}

.hero-slider .swiper-pagination {
	display: flex !important;
	}

}

/* 1270 */
@media (max-width: 1270px) {
	
.address__text {
	font-size: 14px;
  line-height: 20px;
	}

.mail__text {
	font-size: 14px;
  line-height: 20px;
	}

.messengers__text {
	font-size: 14px;
  line-height: 20px;
	}

.language__text {
	font-size: 12px;
	}

.main-nav ul {
	gap: 0 15px;
	}		

.main-nav li {
	font-size: 16px;
	}

.phone__text small {
	font-size: 14px;
  line-height: 18px;
	}

.phone__icon {
	width: 46px;
	}

.phone__text a {
	font-size: 18px;
  line-height: 20px;
	}

.services-item a {
	padding: 30px;
	}

.services-item__title {
	font-size: 26px;
	line-height: 30px;
	}

.phone-number__text {
	font-size: 14px;
	line-height: 20px;
	}

.copy {
	font-size: 14px;
	line-height: 20px;
	}

.footer__link {
	font-size: 14px;
	line-height: 20px;
	}

.top-section {
	height: 300px;
	}

.top-section__title {
	font-size: 50px;
	line-height: 56px;
	}

.breadcrumbs li {
	padding: 0 15px;
	font-size: 16px;
	line-height: 20px;
	}

.breadcrumbs li:after {
	width: 10px;
	height: 10px;
	right: -5px;
	}

.contacts-col {
	gap: 0 20px;
	}

.phones {
	gap: 0 20px;
	}

.phones__title {
	font-size: 16px;
	}

.phones__number {
	letter-spacing: normal;
	}

}

/* 1100 */
@media (max-width: 1100px) {

.logo {
	gap: 0 10px;
	}	

.logo__icon {
	width: 36px;
	height: 36px;
	}

.logo__text {
	font-size: 34px;
	}

.header__nav-col { 
	gap: 0 30px;
	}

.hero-slider__item {
	padding: 100px 0 200px;
	}

.hero-slider__title {
	font-size: 50px;
  line-height: 60px;
	}

.hero-slider p {
	font-size: 16px;
	line-height: 26px;
	}

.statistics {
	padding: 40px 0;
	}

.statistics__icon {
	width: 70px;
  height: 70px;
	}

.statistics__number {
	margin: 0 0 10px;
	font-size: 40px;
  line-height: 50px;
	}

.statistics__text {
	font-size: 16px;
  line-height: 20px;
	}

.advantages {
	gap: 15px 15px;
	}

.advantages__icon {
	margin: 0 auto 20px;
	width: 60px;
	height: 60px;
	}

.advantages__title {
	font-size: 18px;
	}

.about-section {
	padding: 30px 0 70px;
	}

.about {
	gap: 0 40px;
	}

.about__picture {
	width: 500px;
	height: 460px;
	}

.about__big-img {
	width: 400px;
	height: 270px;
	}

.about__sm-img {
	width: 400px;
	height: 270px;
	}

.subtitle {
	font-size: 14px;
	}

.title {
	font-size: 44px;
  line-height: 50px;
	}

.about p {
	margin: 0 0 25px;
	font-size: 16px;
	line-height: 24px;
	}

.experience {
	padding: 10px;
	width: 250px;
	bottom: 25px;
	}

.experience__info {
	padding: 10px;
	}

.experience__number {
	font-size: 40px;
	line-height: 40px;
	}

.experience__text {
	font-size: 14px;
	line-height: 18px;
	}

.btn {
	font-size: 14px;
	}

.works p {
	font-size: 16px;
  line-height: 28px;
	}

.works__photos {
	gap: 15px 15px;
	}

.news {
	gap: 15px 15px;
	}

.news__description {
	padding: 25px 25px 87px;
	}

.message__in {
	padding: 50px 30px;
	}

.message__icon {
	margin: 0 20px 0 0;
	width: 60px;
	}

.message__title {
	font-size: 40px;
	line-height: 40px;
	}

.message__description p {
	font-size: 18px;
  line-height: 24px;
	}

.gl-arrows {
	gap: 0 10px;
	}

.gl-arrows__prev.swiper-button-prev {
	width: 50px;
  height: 50px;
	}

.gl-arrows__next.swiper-button-next {
	width: 50px;
  height: 50px;
	}

.services_changed {
	grid-template-columns: repeat(2, 1fr);
	gap: 20px 20px;
	}

.works-catalog {
	gap: 15px 15px;
	}

.footer {
	padding: 210px 0 50px;
	}

.footer__nav ul {
	gap: 0 30px;
	}

}

/* 1024 */
@media (max-width: 1024px) {

.main-nav li {
	font-size: 14px;
	}

.phone__text small {
	font-size: 12px;
	line-height: 16px;
	}

.phone__text a {
	font-size: 14px;
	line-height: 18px;
	}

.phone__icon {
	width: 40px;
	}

.services-item {
	height: 400px;
	}

.page-nav {
	gap: 0 10px;
	}

.page-nav ul {
	gap: 0 10px;
	}

.page-nav ul span {
	width: 46px;
  height: 46px;
  line-height: 46px;
	}

.page-nav__btn {
	width: 46px;
  height: 46px;
  line-height: 46px;
	}

.page-nav__btn_prev:before {
	background-size: 14px;
	}

.page-nav__btn_next:before {
	background-size: 14px;
	}

.page-nav ul li {
	font-size: 14px;
	}

.page-nav ul a {
	width: 46px;
  height: 46px;
  line-height: 46px;
	}

}

/* 1023 */
@media (max-width: 1023px) {

.contacts-list {
	width: 310px;
	}

.phones {
	gap: 20px 0;
	grid-template-columns: repeat(1, 1fr);
	}

}

/* 990 */
@media (max-width: 990px) {

.menu-btn {
	display: none;
	}

.phone {
	display: none;
	}

.works__description {
	width: 350px;
	}

.section {
	padding: 50px 0;
	}

.footer__nav li {
	font-size: 14px;
	line-height: 18px;
	}

}

/* 900 */
@media (max-width: 900px) { 

.dec-1,
.dec-2,
.dec-3,
.dec-4 {
	display: none;
	}

.about {
	display: block;
	}

.about__picture {
	margin: 0 0 30px;
	padding: 0;
	width: 100%;
	height: auto;
	}

.about__big-img {
	display: none;
	}

.about__sm-img {
	position: static;
	width: 100%;
	height: 400px;
	}

.statistics {
	display: flex;
  gap: 0 15px;
  margin: 0 -15px;
  padding: 30px 15px;
  max-width: inherit;
  width: auto;
  overflow-x: scroll;
  white-space: nowrap;
  border-radius: 0;
  -ms-overflow-style: none;
  scrollbar-width: none;
	}

.statistics:after {
	display: none;
	}

.statistics__item {
  flex-shrink: 0;
  width: 270px;
  white-space: normal;
	}

.experience {
	right: 25px;
	}

.works-section {
	padding: 50px 0;
	}

.statistics-section {
	margin: 0;
	}

.services-section {
	padding: 50px 0 0;
	}

.works {
	display: block;
	}

.works__description {
	margin: 0 0 30px;
	width: 100%;
	text-align: center;
	}

.works__photos {
	grid-template-columns: repeat(4, 1fr);
	}

.works__photo {
	height: 200px;
	}

.works .title {
	margin: 0 0 15px;
	}

.works p {
	margin: 0;
	}

.works__description .btn {
	display: none;
	}

.news-section {
	padding: 50px 0;
	}

.mob-btn-panel {
	display: flex;
	}

.btn {
	padding: 15px 20px;
	}

.btn_next-arrow {
	padding-right: 45px;
	}

.btn_next-arrow:after {
	right: 15px;
	}

.btn_next-arrow:hover:after {
  right: 12px;
  }

.btn_prev-arrow {
	padding-left: 45px;
	}

.btn_prev-arrow:after {
	left: 15px;
	}

.btn_prev-arrow:hover:after {
  left: 12px;
  }

.news {
	display: flex;
  gap: 0 15px;
  margin: 0 -15px;
  padding: 0 15px;
  max-width: inherit;
  width: auto;
  overflow-x: scroll;
  white-space: nowrap;
  border-radius: 0;
  -ms-overflow-style: none;
  scrollbar-width: none;
	}

.news__item {
	flex-shrink: 0;
  width: 300px;
  white-space: normal;
  box-shadow: none;
	}

.news__title {
	font-size: 20px;
	line-height: 24px;
	}

.message:after {
	width: 300px;
	}

.message__in {
	flex-direction: column;
	align-items: center;
	gap: 30px 0;
	padding: 30px;
	}

.works-catalog {
	grid-template-columns: repeat(2, 1fr);
	}

.news_changed {
	display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin: 0;
  padding: 0;
  gap: 15px 15px;
  overflow: visible;
	}

.news_changed .news__item {
	width: 100%;
	box-shadow: 0px 5px 60px rgba(0, 0, 0, 0.05);
	}

.footer {
	padding: 190px 0 30px;
	}

.footer__top-panel {
	margin: 0 0 50px;
	}

.footer__top-col {
	flex-direction: column;
	gap: 20px 0;
	margin: 0 0 30px;
	}

.footer__top-col .logo {
	position: static;
	transform: inherit;
	}

.footer:before {
	width: 300px;
	}	

.footer:after {
	width: 300px;
	}

.footer__bottom-col {
	flex-direction: column;
	gap: 20px 0;
	}

.footer__bottom-col .social {
	position: static;
	transform: inherit;
	}

.contacts-col {
	margin: 0 0 50px;
	}

}

/* 820 */
@media (max-width: 820px) {

.language__top-panel {
	gap: 0 5px;
	}

.header__left-col {
	gap: 0 15px;
	}

.address__icon {
	width: 18px;
	}

.address__text {
	font-size: 12px;
	line-height: 18px;
	}

.mail {
	gap: 0 5px;
	}

.mail__icon {
	width: 18px;
	}

.mail__text {
	font-size: 12px;
  line-height: 18px;
	}

.phone-number {
	gap: 0 5px;
	}

.phone-number__icon {
	width: 18px;
	}

.phone-number__text {
	font-size: 12px;
  line-height: 18px;
	}

.messengers__item {
	width: 16px;
	height: 16px;
	}

.messengers {
	gap: 0 5px;
	}	

.messengers__text {
	font-size: 12px;
  line-height: 18px;
	}

.language__icon {
	width: 16px;
	}

.language__dropdown {
	padding: 7px;
	width: 60px;
	top: 30px;
	left: auto;
	right: 0;
	}

.language__dropdown a {
	font-size: 12px;
	}

.hero-slider__item {
	padding: 100px 0;
	}

.hero-slider .swiper-pagination {
	bottom: 25px !important;
	}

.about__sm-img {
	height: 350px;
	}

.advantages-section {
	margin: 0;
	padding: 48px 0 0;
	}

.advantages {
	display: flex;
  gap: 0 15px;
  margin: 0 -15px;
  padding: 0 15px;
  max-width: inherit;
  width: auto;
  overflow-x: scroll;
  white-space: nowrap;
  -ms-overflow-style: none;
  scrollbar-width: none;
	}

.advantages__item {
  flex-shrink: 0;
  width: 270px;
  white-space: normal;
  border: 1px solid var(--primary-border-color);
  box-shadow: none;
	}

.advantages__title {
	font-size: 16px;
	line-height: 20px;
	}

.title {
	margin: 0 0 20px;
	}

}

/* 809 */
@media (max-width: 809px) {

.footer:before,
.footer:after {
	display: none;
	}

}

/* 767 */
@media (max-width: 767px) {

.m-overlay {
	display: block;
	opacity: 0;
	visibility: hidden;
	transition: .3s all;
	}

.m-overlay.show {
	right: 240px;
	opacity: 1;
	visibility: visible;
	}

.menu-btn {
	display: block;
	}

.header__nav-col {
	position: fixed;
	flex-direction: column;
	align-items: flex-start;
	padding: 30px;
	width: 240px;
	height: 100%;
	top: 0;
	right: -240px;
	overflow-y: scroll;
	background: var(--tertiary-background-color);
	z-index: 99;
	transition: .3s right;
	}

.header__nav-col.show {
	right: 0;
	}

.close-btn {
	position: absolute;
	display: block;
	top: 15px;
	right: 15px;
	}

.main-nav {
	margin: 0 0 20px;
	width: 100%;
	}

.main-nav ul {
	display: block;
	text-align: center;
	}

.main-nav li {
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

.main-nav li:before {
	bottom: -1px;
	}	

.main-nav a,
.main-nav span {
	display: block;
	padding: 10px 0;
	color: rgba(255, 255, 255, 0.8);
	}

.main-nav .active a,
.main-nav .active span {
	color: var(--quaternary-text-color);
	}

.phone {
	display: flex;
	gap: 0 10px;
	}

.hero-slider__item {
	padding: 50px 0 70px;
	}

.hero-slider__sub-title {
	max-width: 215px;
	font-size: 12px;
	line-height: 18px;
	}

.hero-slider__title {
	margin: 0 0 20px;
	font-size: 40px;
	line-height: 50px;
	}

.hero-slider .swiper-pagination {
	gap: 0 7px;
	}

.hero-slider .swiper-pagination-bullet {
	width: 12px;
  height: 12px;
	}

.about_indent-bt {
	margin: 0 0 50px;
	}

.top-section {
	height: 250px;
	}

.top-section__title {
	font-size: 34px;
	line-height: 38px;
	}

.article__photo {
	height: 350px;
	}

.gallery {
	gap: 0 15px;
	}

.gallery__item {
	height: 200px;
	}

.works-catalog__title {
	display: none;
	}

.gl-content__title-big {
	font-size: 26px;
  line-height: 34px;
	}

.gl-content__title-sm {
	margin: 0 0 15px;
	font-size: 20px;
  line-height: 26px;
	}

.footer {
	padding: 170px 0 30px;
	}

.footer__nav ul {
	gap: 0 20px;
	}

.contacts-col {
	flex-direction: column;
	gap: 30px 0;
	}

.map {
	height: 300px;
	}

.contacts-list {
	width: 100%;
	order: 1;
	}

.error-section {
	padding: 50px 0 320px;
	}

.error-404__name {
	font-size: 100px;
	line-height: 100px;
	}

.error-404__title {
	font-size: 30px;
	line-height: 36px;
	}

.support {
	display: none;
	}

}

/* 680 */
@media (max-width: 680px) {

p {
	margin: 0 0 15px;
	font-size: 14px;
	line-height: 22px;
	}

.list li {
	font-size: 14px;
	line-height: 22px;
	}

.header .address {
	display: none;
	}

.about__sm-img {
	height: 300px;
	}

.experience {
	right: 10px;
	bottom: 10px;
	}

.experience__info {
	gap: 0 7px;
	}

.advantages__item {
	width: 200px;
	}

.statistics__item {
	width: 220px;
	}

.message__left-col {
	display: block;
	}

.message__icon {
	margin: 0 auto 20px;
	}

.message__description {
	text-align: center;
	}

.message__title {
	font-size: 30px;
  line-height: 34px;
	}

.message__description p {
	font-size: 14px;
	line-height: 18px;
	}

.services-item {
	height: 350px;
	}

.subtitle {
	margin: 0 0 10px;
	font-size: 12px;
	}

.title {
	font-size: 34px;
	line-height: 40px;
	}

.sm-title {
	font-size: 24px;
	line-height: 30px;
	}

.services-item a {
	padding: 20px;
	}

.services-item__title {
	font-size: 20px;
  line-height: 24px;
	}

.services-item__sub-title {
	font-size: 12px;
	line-height: 18px;
	}

.services-item__sub-title:before {
	width: 10px;
	}

.services-item__more-btn {
	width: 30px;
	height: 30px;
	}

.services-item__more-btn:before {
	background-size: 12px;
	}

.works__photos {
	display: flex;
  gap: 0 15px;
  margin: 0 -15px;
  padding: 0 15px;
  max-width: inherit;
  width: auto;
  overflow-x: scroll;
  white-space: nowrap;
  -ms-overflow-style: none;
  scrollbar-width: none;
	}

.works__photo {
	flex-shrink: 0;
  white-space: normal;
	width: 200px;
	}

.works p {
	font-size: 14px;
  line-height: 20px;
	}

.gl-arrows__prev.swiper-button-prev {
	width: 36px;
  height: 36px;
	}

.gl-arrows__prev.swiper-button-prev:before {
	background-size: 12px;
	}

.gl-arrows__next.swiper-button-next {
	width: 36px;
  height: 36px;
	}

.gl-arrows {
	gap: 0 5px;
	}

.gl-arrows__next.swiper-button-next:before {
	background-size: 12px;
	}

.top-panel {
	margin: 0 0 30px;
	}

.services_changed {
	gap: 15px 15px;
	}

.footer__nav ul {
	flex-wrap: wrap;
	gap: 20px 20px;
	}

}

/* 580 */
@media (max-width: 580px) { 

.news_changed {
	grid-template-columns: repeat(1, 1fr);
	}

.page-nav {
	gap: 0 5px;
	}

.page-nav ul {
	gap: 0 5px;
	}

.page-nav ul span {
	width: 40px;
  height: 40px;
  line-height: 40px;
	}

.page-nav__btn {
	width: 40px;
  height: 40px;
  line-height: 40px;
	}

.page-nav__btn_prev:before {
	background-size: 12px;
	}

.page-nav__btn_next:before {
	background-size: 12px;
	}

.page-nav ul li {
	font-size: 12px;
	}

.page-nav ul a {
	width: 40px;
  height: 40px;
  line-height: 40px;
	}

}

/* 480 */
@media (max-width: 480px) { 

.hero-slider__photo img {
	filter: blur(4px);
	}

.hero-slider__title {
	font-size: 32px;
  line-height: 40px;
	}

.hero-slider p {
	font-size: 14px;
	line-height: 22px;
	}

.experience {
	width: auto;
	left: 10px;
	}

.about p {
	font-size: 14px;
	line-height: 22px;
	}

.title {
	font-size: 30px;
	line-height: 36px;
	}

.services-item {
	height: 300px;
	}

.message:after {
	width: 200px;
	}

.services_changed {
	grid-template-columns: repeat(1, 1fr);
	}

.works-catalog__item {
	height: 200px;
	}

.btn-panel {
	padding: 30px 0 0;
	}

.article-panel {
	gap: 0 15px;
	}

.article-panel__item {
	gap: 0 7px;
	}

.article-panel__icon {
	width: 20px;
	}

.article-panel__item span {
	font-size: 14px;
	}

.message__title {
	margin: 0 0 10px;
	font-size: 26px;
	}

.footer__right-col {
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px 20px;
	}

.fancybox__caption {
	font-size: 12px;
	line-height: 18px;
	}

.error-404__title {
	font-size: 26px;
	line-height: 30px;
	}

.error-404 p br {
	display: none;
	}

}

/* 430 */
@media (max-width: 430px) { 

.article__photo {
	height: 280px;
	}

.btn {
	width: 100%;
	}

.partners-section {
	margin: 0 -15px;
	}

.top-section__title {
	font-size: 30px;
	line-height: 36px;
	}

.contacts-list__item {
	padding: 20px;
	}

.contacts-list__info dd {
	font-size: 15px;
	line-height: 20px;
	}

.phones__item {
	padding: 25px 20px;
	}

}

/* 420 */
@media (max-width: 420px) { 

.top-panel__left-col {
	width: 100%;
	text-align: center;
	}

.gl-arrows {
	display: none !important;
	}

.news__top-panel {
	gap: 0 15px;
	}

.news__date {
	font-size: 12px;
	}

.news__description {
	padding: 20px;
	}

.news__item .btn {
	position: static;
	}

.gallery {
	grid-template-columns: repeat(1, 1fr);
	gap: 15px 0;
	}

.gallery_two-col {
	grid-template-columns: repeat(1, 1fr);
	gap: 15px 0;
	}

.page-nav {
	gap: 0 5px;
	}

.page-nav ul {
	gap: 0 5px;
	}

.page-nav ul span {
	width: 40px;
  height: 40px;
  line-height: 40px;
	}

.page-nav__btn {
	width: 40px;
  height: 40px;
  line-height: 40px;
	}

.page-nav__btn_prev:before {
	background-size: 12px;
	}

.page-nav__btn_next:before {
	background-size: 12px;
	}

.page-nav ul li {
	font-size: 12px;
	}

.page-nav ul a {
	width: 40px;
  height: 40px;
  line-height: 40px;
	}

.page-nav {
	gap: 0 3px;
	}

.page-nav ul {
	gap: 0 3px;
	}

.page-nav ul span {
	width: 36px;
  height: 36px;
  line-height: 36px;
	}

.page-nav__btn {
	width: 36px;
  height: 36px;
  line-height: 36px;
	}

.page-nav__btn_prev:before {
	background-size: 10px;
	}

.page-nav__btn_next:before {
	background-size: 10px;
	}

.page-nav ul li {
	font-size: 10px;
	}

.page-nav ul a {
	width: 36px;
  height: 36px;
  line-height: 36px;
	}

}

/* 365 */
@media (max-width: 365px) { 

.news__item {
	width: 260px;
	}

.header__left-col {
	display: none;
	}

.phones__title {
	font-size: 14px;
	}

.phones__number {
	font-size: 22px;
	}

.footer__nav ul {
	gap: 15px 15px;
	}

}