

/* Start:/bitrix/templates/newurist_copy_main/css/style_main.css?1766794760107746*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

.legacy-style .main-business a{
	color:rgba(255, 255, 255, 1);
}

body {
    font-family: "Roboto", Arial, Helvetica, sans-serif;
    margin: 0;
	padding: 0;
    overflow-x: hidden;
}
.section-callback{
	background-image: linear-gradient(180deg, #056094 0, #40608d 100%);
}
.section-callback .callback-form{
	background-image: none;
}
.main-business {
	margin: 0 auto;

}

.shortcut-nav {
	display: none;
}	

.hero {
    max-width: 1300px;
    width: 100%;
    height: 443px;
    background: url(/images/shopfirm.jpg) no-repeat center center;
    background-position: 0 0;
    margin: 0 auto;
    margin: 21px auto 114px;
    position: relative;
    transition: background-image 1s ease-in-out; /* Smooth background transition */
	touch-action: pan-y; /* вертикальный скролл страницы разрешён, горизонтальный свайп можно обработать самим */
    user-select: none;
	border-radius: 10px;
}

.hero .indicator {
    position: absolute;
    width: 80px;
    background: rgba(80, 99, 116, 1);
    bottom: 20px;
    min-height: 26px;
    left: 50%;
    margin-bottom: 94px;
    transform: translateX(-50%);
    display: flex;
}

.hero .dot {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, 1);
    transition: background-color 0.3s, border-color 0.3s;
    cursor: pointer;
}

.hero .dot.active {
    background-color: rgba(236, 239, 244, 1);
    border-color: rgba(255, 255, 255, 1);
}


	
.container-shop {
	max-width: 640px;
	width: 100%;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

.main-business .container-shop h1 {
    position: absolute;
    color: rgba(255, 255, 255, 1);
    font-size: 42px;
    font-weight: 400;
	line-height: 30px;
    width: 462px;
    margin-top: 53px;
    margin-right: 798px;
    margin-bottom: 427px;
    margin-left: 40px;
}

.container-shop p {
    color: rgba(255, 255, 255, 1);
    position: absolute;
    width: 633px;
    font-size: 18px;    
    font-weight: 400;
    line-height: 28px;
    margin-top: 123px;
    margin-right: 625px;
    margin-bottom: 234px;
    margin-left: 42px;
	overflow-wrap: break-word;
    word-wrap: break-word; 
}

.btn-primary-link a,
.btn-secondary-link a {
    position: absolute;
    font-size: 16px;    
	font-weight: 400;
    line-height: 28px;
    color: rgba(255, 255, 255, 1);
}

.btn-primary-link {
	position: absolute;
	margin-top: 238px;
	margin-right: 1062px;
	margin-bottom: 72px;
	margin-left: 40px;
	max-width: 198px;
	width: 100%;
	height: 62px;
    display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 8px 15px 8px 15px;
    background: linear-gradient(to bottom, #DC4F4C, #B73532);
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 4px;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
    font-weight: bold;
    border: none;
    cursor: pointer;
}


.btn-secondary-link {
	position: absolute;
    margin-top: 238px;
    margin-right: 882.5px;
    margin-bottom: 72px; 
    margin-left: 256.5px;
	max-width: 198px;
	width: 100%;
	height: 62px;
    display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 8px 15px 8px 15px;
    background: linear-gradient(to bottom, #017ACB, #046093);
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 4px;
    font-weight: bold;
    border: none;
    cursor: pointer;
}


.categories-flex {
    display: flex;
	gap: 10px;
	margin-top: 370px;
	margin-right: 16px;
	margin-left: 16px;
}

.category-card {
	max-width: 310px;
    width: 100%;
    min-height: 138px;
    border-radius: 10px;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.05);
    background: rgba(255, 255, 255, 1);
}

.category-card h3 {
    color: rgba(1, 122, 203, 1);
    font-size: 16px;
    line-height: 44px;
	font-weight: 700;
    width: 243px;
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-top: 13px;
	margin-bottom: 1px;
	margin-right: 39px;
	margin-left: 28px;
}

.category-card p {
	color: rgba(49, 61, 83, 1);
	font-size: 14px;
	line-height: 21px;
	width: 234px;
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-top: auto;
	margin-bottom: 32px;
	margin-right: auto;
	margin-left: 27px;
}

.quick-services {
	max-width: 1300px;
	width: auto;
    margin: 0 auto;
    padding: 47px 0;
	padding-top: 0;
	padding-bottom: 36px;
}

.quick-services h2 {
    color: rgba(49, 61, 83, 1);
    font-size: 34px;
    line-height: 30px;
    width: 565px;
    margin: 0 auto;
    text-align: center;
}

.quick-services > p {
    color: rgba(80, 99, 116, 1);
    font-size: 16px;
    line-height: 24px;
    width: 940px;
    text-align: center;
    margin: 0 auto;
    margin-top: 11px;
    margin-bottom: 27px;
}

.services-flex {
    display: flex;
    gap: 20px;
    justify-content: flex-start;
}

.service-item {
    max-width: 420px;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid rgba(236, 239, 244, 1);
    border-radius: 6px;
    display: flex;
    flex-direction: column;
}

.service-item img {
   min-height: auto;
}

.service-item h3 {
    color: rgba(1, 122, 203, 1);
    font-size: 22px;
    line-height: 44px;
    margin: 19px 0 15px 25px;
}

.service-item p {
    color: rgba(49, 61, 83, 1);
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 57px 25px;
    text-align: left;
	width: 372px;
}

.list-bugalt {
    color: rgba(49, 61, 83, 1);
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 20px 0;
    padding-left: 20px;
    text-align: left;
	list-style: disc;
	margin-left: 30px;
}



.quick-buttons {
    margin-top: auto;
	margin-left: 25px;
	margin-bottom: 28px;
	width: 207px;
	height: 62px;
}

.quick-buttons a {
    display: inline-block;
    padding: 20px 32px;
    font-size: 15px;
    background: linear-gradient(to bottom, #017ACB, #046093);
    color: rgba(255, 255, 255, 1);
    text-decoration: none;
    border-radius: 4px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

.quick-buttons .btn-sell-company {
   padding: 20px 35px;              
}

a.btn-sell-company {
	max-width: 196px;
	width: 100%;
}

.quick-buttons .btn-detailed {
   padding: 20px 20px;              
}

a.btn-detailed {
    max-width: 154px;
    width: 100%;
}

/* Стили для слайдера */
.services-slider {
  position: relative;
  max-width: 100vw;
  width: 100%;
  margin: 0 auto;
}

.services-wrapper {
  overflow: hidden;
}


.slick-dots {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.slick-dots li {
  margin: 0 10px;
}

.slick-dots li button:before {
  color: #017ACB; /* Цвет точек */
}

/* Стрелки слайдера */
.arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(236, 239, 244, 1);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    font-size: 12px;
    color: rgba(113, 139, 154, 1);
    cursor: pointer;
}

.arrow:hover {
  background-color: #017ACB;
  color: white;
}

.arrow-left {
  left: -40px;
}

.arrow-right {
  right: -40px;
}

 .indicator {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 62px;
    padding: 4px 7px;
    background: rgba(236, 239, 244, 1);
    border-radius: 40px; /* овальная форма */
	margin: auto;
    margin-top: 21px;
  }

  .dot {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 2px solid #c0c8cf;
    background-color: transparent;
    transition: background-color 0.3s;
  }

  .dot.active {
    background-color: #9aa4ac; /* активный (серый) кружок */
    border-color: #9aa4ac;
  }



.stats {
  margin: 0 auto;
}

.stats-flex {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
  flex-wrap: wrap;
  margin: auto;
  margin-bottom: 106px;
  width: 1300px;
}

.stat-item {
  flex: 1;
  min-width: 250px;
  min-height: 195px;
  text-align: center;
  border-radius: 10px;
  padding: 40px 18px;
  box-sizing: border-box;
}

.stat-item h2 {
  color: rgba(1, 122, 203, 1);
  font-size: 34px;
  line-height: 44px;
  font-weight: 700;
  margin-bottom: 23px;
}

.stat-item p {
  color: rgba(49, 61, 83, 1);
  font-size: 16px;
  line-height: 24px;
  margin: auto;
}

/* Цвета карточек */
.stat-item.blue {
  background-color: rgba(240, 246, 253, 1);
}

.stat-item.blue p {
  width: 239px;
  min-height: 48px;
}

.stat-item.green {
  background-color: rgba(238, 251, 243, 1);
}

.stat-item.green p {
  width: 213px;
  min-height: 48px;
}

.stat-item.yellow {
  background-color: rgba(254, 253, 241, 1);
}

.stat-item.yellow p {
  width: 208px;
  min-height: 48px;
}

.stat-item.pink {
  background-color: rgba(252, 243, 252, 1);
}

.stat-item.pink p {
  width: 196px;
  min-height: 48px;
}

.advantages {
  width: auto;
  background-color: rgba(246, 249, 251, 1);
  margin: 0 auto;
  padding-top: 60px;
  padding-bottom: 61px;
}

.advantages h2 {
  text-align: center;
  color: rgba(49, 61, 83, 1);
  font-size: 34px;
  line-height: 30px;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.container-text {
  text-align: center;
  color: rgba(80, 99, 116, 1);
  font-size: 16px;
  line-height: 24px;
  max-width: 940px;
  margin: 0 auto 49px;
  overflow-wrap: break-word;
  word-wrap: break-word; 
}

.advantages-flex {
  display: flex;
  justify-content: center;
  gap: 21px; /* расстояние между двумя колонками */
  max-width: 1300px;
  margin: 0 auto;
}

.column {
  display: flex;
  flex-direction: column;
	gap: 22px;
}

.advantage-item {
  width: 640px;
  padding: 12px 13px;
  display: flex;
  align-items: flex-start;
  gap: 15px;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}


.advantage-item span {
      background-color: #dc4f4c;
    color: #fff;
    font-weight: 400;
    margin-top: 2px;
    font-size: 11px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    padding-top: 5px;
    justify-content: center;
    flex-shrink: 0;
}

.advantages-text {
  max-width: 549px;
  width: 100%;
  color: rgba(80, 99, 116, 1);
  font-size: 16px;
  line-height: 28px;
  margin: 0;
  overflow-wrap: break-word;
  word-wrap: break-word; 
}

.advantages-text b {
  color: rgba(80, 99, 116, 1);
}


.catalog {
  width: auto;
  padding: 50px 0;
  padding-bottom: 29px;
  margin: 0 auto;
  background-color: #fff;
}

.container-gotovih-firm {
	max-width: 1300px;
    width: auto;
    margin: 0 auto;
    padding: 47px 0;
    padding-top: 0;
	padding-bottom: 0;
}

.catalog h2 {
  text-align: center;
  color: #313d53;
  font-size: 28px;
  line-height: 30px;
  margin-bottom: 36px;
  font-weight: 700;
}

/* сетка карточек */
.catalog-grid {
    display: flex;
    gap: 20px;
    justify-content: flex-start;
}

/* Каталог слайдер: обертка и контейнер для карточек */
.catalog-slider {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.catalog-wrapper {
  overflow: hidden;
}



/* карточка компании */
.company-card {
  flex: 0 0 310px;               /* фиксированная ширина в ленте */
  max-width: 310px;
  width: 310px;                  /* можно, чтоб вообще не тянулась */
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: 6px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  padding: 0;
  transition: transform 0.3s ease;
}



/* шапка карточки */
.card-header {
  background-color: rgba(236, 239, 244, 1);
  height: 52px;
  padding: 14px 9px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.card-header h3 {
  font-size: 15px;
  color: rgba(80, 99, 116, 1);
  font-weight: 600;
  margin: 0;
}

.favorite {
  color: #718B9A;
  font-size: 24px;
  cursor: pointer;
}

/* данные компании */
.company-info {
  display: flex;
  justify-content: space-between;
  padding: 0 9px;
  font-size: 14px;
  color: rgba(80, 99, 116, 1);
  margin: 6px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.company-info span {
  font-weight: 700;
  color: rgba(80, 99, 116, 1);
}

/* иконки */
.company-icons {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 20px;
  padding-top: 9px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.company-icons img {
  width: 16px;
  /*min-height: 30px;*/
  background-color: #f4f9f8;
  border-radius: 50%;
  object-fit: contain;
}

/* футер карточки */
.card-footer {
  display: flex;
  justify-content: center;
	gap: 40px;
  align-items: center;
  padding: 12px 15px;
  height: 69px;
}

.company-price {
  font-weight: 700;
  color: rgba(80, 99, 116, 1);
  font-size: 16px;
  display: contents;
}

.btn-order {
  background: linear-gradient(to bottom, #DC4F4C, #B73532);
  color: #FFFFFF;
  border: none;
  border-radius: 4px;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
  padding: 9px 16px;
  cursor: pointer;
  font-weight: 400;
  transition: 0.3s;
  font-size: 14px;
}

.btn-order:hover {
  background-color: #c83c39;
}



.promo-banner {
  max-width: 1300px;
  width: 100%;
  min-height: 114px;
  margin: 0px auto;
  margin-top: 33px;
  margin-bottom: 25px;
  border: 1px solid rgba(1, 122, 203, 0.4);
  border-radius: 6px;
  padding: 28px 0;
  padding-left: 30px;
  padding-right: 20px;
  box-sizing: border-box;
  background-color: #f8fbff;
}

.banner-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.banner-content p {
  color: rgba(1, 122, 203, 1);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  max-width: 880px;
  margin: 0;
  overflow-wrap: break-word;
  word-wrap: break-word; 
}

.btn-go-directory-companies a {
  display: inline-block;
  background: linear-gradient(to bottom, #017ACB, #046093);
  color: rgba(255, 255, 255, 1);
  padding: 17px 33px;
  border-radius: 4px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 400;
  box-sizing: border-box;
  
}

.btn-go-directory-companies a:hover {
  background: rgba(1, 100, 170, 1);
}


.additional-info {
    background-color: #f9fafc;
    padding: 64px 0;
    text-align: center;
}

.additional-info {
    margin: 0 auto;
}

.container-ooo-info h2 {
    color: rgba(49, 61, 83, 1);
    font-size: 28px;
    max-width: 480px;
    width: 100%;
    margin: auto;
    height: 30px;
    line-height: 30px;
    font-weight: 600;
    margin-bottom: 28px;
}

.info-block p {
    line-height: 24px;
	width: 350px;
    height: 48px;
}

.container-ooo-info > p {
	color: rgba(80, 99, 116, 1);
	font-size: 16px;
	line-height: 24px;
	text-align: center;
	margin-bottom: 34px;
}

.info-flexbox {
	width: 1300px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    gap: 20px;
	margin-bottom: 37px;
}

.info-block {
    background-color: #fff;
    border-left: 4px solid rgba(1, 122, 203, 1);
    border-radius: 0px 10px 10px 0px;
    flex: 1;
    padding: 21px;
	padding-bottom: 30px;
    text-align: left;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
	margin-bottom: 37px;
}

.info-block:nth-child(2) {
    border-left-color: undefinedpx solid rgba(1, 122, 203, 1);
}

.info-block:nth-child(3) {
    border-left-color: undefinedpx solid rgba(1, 122, 203, 1);
}

.info-block h3 {
    color: rgba(49, 61, 83, 1);
    font-size: 20px;
	line-height: 24px;
    margin-bottom: 14px;
}

.count {
    color: rgba(220, 79, 76, 1);
    font-size: 32px;
    font-weight: 500;
}

.info-block p {
    color: #718B9A;
    font-size: 15px;
    margin-bottom: 13px;
}

.block-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.block-list li {
    color: #506374;
    font-size: 15px;
    line-height: 30px;
	margin-left: 4px;
    padding-left: 26px;
    position: relative;
}

.block-list li::before {
    content: "→";
    position: absolute;
    left: 0;
	margin-top: -1px;
    color: #506374;
}

/* Синяя карточка “перезвоните” */
.card-call-me-back {
    color: #fff;
    text-align: center;
    width: 1300px;
    margin: 0 auto;
	margin-top: -97px;
}

.callback-form-1 {
    max-width: 1300px;
    width: 100%;
    height: 220px;
    align-items: center;
    gap: 20px;
    padding-top: 29px;
    padding-bottom: 44px;
    background: linear-gradient(180.00deg, rgba(1, 122, 203, 1),rgba(4, 96, 147, 1) 100%);
    color: #fff;
    border-radius: 12px;
    overflow: hidden;
	position:relative;
}

.card-call-me-back h2 {
    font-size: 20px;
	line-height: 26px;
    font-weight: 500;
    margin-bottom: 12px;
}

.card-call-me-back p {
	color: rgba(255, 255, 255, 1);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 25px;
}

.phone-input {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.phone-field {
	max-width: 202px !important;
    width: 100% !important;
    padding: 16px 11px;
	line-height: 100%;
    border: none;
    border-radius: 4px;
    font-size: 16px;
    width: 220px;
	color: black;
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
	margin-right: 13px;
}

.сall-me-back {
	margin-bottom: 1px;
}

.callback-button {
    background: linear-gradient(to bottom, #DC4F4C, #B73532);
    border: none;
    border-radius: 6px;
    padding: 17px 35px;
    font-size: 14px;
    color: #fff;
    cursor: pointer;
    transition: background 0.3s ease;
}

.callback-button:hover {
    background-color: #c23e3b;
}

.legacy-style .main-business .disclaimer,  .legacy-style .main-business .disclaimer a{
    color: rgba(160, 169, 176, 1);
    font-size: 9px;
    margin-top: 8px;
}

.process-sell-firm {
	background-color: #fff;
}

.container-firm {
    max-width: 1400px;
    margin: 0 auto;
    margin-top: 56px;
    padding: 0 70px;
}

        .process-sell-firm h2 {
            color: rgba(49, 61, 83, 1);
            font-size: 28px;
            line-height: 30px;
            text-align: center;
            margin-bottom: 50px;
        }

        .process-steps {
            display: flex;
            gap: 38px;
        }

        .step {
            display: flex;
            align-items: anchor-center;
			margin-bottom: 1px !important;
        }

        .step-number {
			margin-top: -32px;
			height: 141px;
			width: 69px;
            font-size: 120px;
            font-weight: 700;
            color: #bfe4ff;
            -webkit-text-stroke: 2px #017acb;
            line-height: 1;
            min-width: 80px;
        }
		
		.step-numb {
			margin-top: -50px;
            margin-right: 18px;
		}
		

        .step-content {
            flex: 1;
        }

        .step h4 {
			color: rgba(1, 122, 203, 1);
			font-size: 22px;
			font-weight: 700;
			line-height: 22px;
			margin-bottom: 15px;
			margin-top: 0;
        }

        .step p {
			width: 310px;
            color: #506374;
            font-size: 14px;
            font-weight: 400;
            line-height: 22px;
			text-align: left;
            margin: 0;
        }

.verified-companies {
  background-color: rgba(246, 249, 251, 1);
  min-height: 544px;
  padding-top: 55px;
  text-align: center;
  margin-top: 80px;
}
.container-companies {
  max-width: 1300px;
  margin: 0 auto;
}
.verified-companies h2 {
  color: rgba(49, 61, 83, 1);
  font-size: 28px;
  line-height: 30px;
  margin-bottom: 28px;
}

.verified-companies .subtitle {
  color: rgba(80, 99, 116, 1);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 55px;
}

.features-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 100px;
}

.feature-item {
  display: flex;
  flex-direction: column;
  width: 230px;
  text-align: left;
}

.icon-circle {
  width: 100px;
  height: 100px;
  border-radius: 200px;
  background-color: rgba(255, 255, 255, 1);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 37px;
}

.icon-circle img {
  width: 32px;
  height: 32px;
}

.icon-circle img.large-icon {
  width: 48px;
  height: 48px;
}

.feature-text {
  color: rgba(80, 99, 116, 1);
  font-size: 16px;
  line-height: 26px;
  width: 310px;
  min-height: 52px;
  margin-bottom: 45px;
}


.company-buyout {
	background: linear-gradient(180deg, rgba(1, 122, 203, 1), rgba(4, 96, 147, 1) 100%);
	padding-top: 64px;
	padding-bottom: 23px;
	text-align: center;
	margin-top: 63px; 
}

.form-company-buyout {
	width: 1300px;
	margin: 0 auto;
}

.company-buyout h2 {
	color: rgba(255, 255, 255, 1);
	font-size: 28px;
	line-height: 30px;
	margin-bottom: 28px;
}

.company-buyout-text {
	color: rgba(255, 255, 255, 1);
	font-size: 16px;
	line-height: 24px;
	max-width: 684px;
	margin: 0 auto 34px;
	overflow-wrap: break-word;  /* Перенос длинных слов */
    word-wrap: break-word; 
}

.features {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 20px;
	margin-bottom: 30px;
	flex-wrap: wrap;
}

.feature {
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 32px 27px 28px;
	max-width: 420px;
	min-height: 266px;
	flex: 1 1 300px;
	align-items: center;
	text-align: left;
}

.icon-feature {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  box-sizing: border-box;
  border: 1px solid rgba(220, 79, 76, 0.5);
  background-color: rgba(220, 79, 76, 0.1);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 33px;
}

.feature img {
	width: 32px;
	height: 32px;

}

.feature h3 {
	color: rgba(49, 61, 83, 1);
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 22px;
}

.feature p {
	color: rgba(80, 99, 116, 1);
    font-size: 16px;
    line-height: 24px;
    margin: 0;
    overflow-wrap: break-word;
}

.actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}

.butn-primary-link {
	background: linear-gradient(to bottom, #DC4F4C, #B73532);
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
	color: rgba(255, 255, 255, 1) !important;
	padding: 19px 39px;
	border-radius: 4px;
	text-decoration: none;
	font-size: 16px;
    line-height: 24px;
	transition: background-color 0.2s ease;
	margin-bottom: 15px;
}

.butn-secondary-link {
	color: rgba(255, 255, 255, 1) !important;
	font-size: 14px;
	line-height: 14px;	
	font-weight: 400;
	text-decoration: underline;
	opacity: 0.9;
}

.reviews {
	height: 1000px;
	background: rgba(246, 249, 251, 1);
	margin: 0 auto;
	margin-bottom: 164px;
}

.reviews h2 {
	color: rgba(49, 61, 83, 1);
	font-size: 28px;
	line-height: 30px;
	text-align: center;
	padding-top: 41px;
    padding-bottom: 28px;
    margin: 0;
}

.reviews p {
	color: rgba(80, 99, 116, 1);
	font-size: 16px;
	line-height: 24px;
	text-align: center;
	max-width: 815px;
	margin: auto;
}

.faq {
  background: #f6f9fb;
  padding-top: 32px;
  padding-bottom: 60px;
  margin-top: 51px;
  margin-bottom: 46px;
}

.container-faq {
  max-width: 1150px;
  width: 100%;
  margin: 0 auto;
  padding: 13px 0 0 34px;
}

.faq h2 {
  color: #313d53;
  font-size: 28px;
  line-height: 30px;
  margin-bottom: 36px;
}

.faq p {
  color: #506374;
  font-size: 16px;
  line-height: 26px;
  max-width: 860px;
  margin-bottom: 36px;
}

.faq-content {
  display: flex;
  gap: 20px;
}

/* === Левая форма === */
.question-form {
  max-width: 420px;
  width: 100%;
  height: 382px;
  background: rgba(255, 255, 255, 1);
  border-radius: 8px;
  padding: 22px 40px 17px 40px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  position:relative;
}

.question-form_title {
  color: rgba(49, 61, 83, 1);
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 23px;
  margin-bottom: 16px;
}

.question-form__input {
  border: 1px solid #d9e0e6;
  border-radius: 4px;
  padding: 15px 16px;
  font-size: 14px;
  margin-bottom: 12px;
  width: 100%;
  resize: none;
  box-sizing: border-box;
}

.question-form__textarea {
  width: 340px;
  height: 122px;
  border: 1px solid #d9e0e6;
  border-radius: 4px;
  padding: 8px 16px 8px 16px;
  font-size: 14px;
  margin-bottom: 8px;
  width: 100%;
  resize: none;
  box-sizing: border-box;
}

.question-form__submit {
  width: 168px;
  height: 57px;
  background: linear-gradient(to bottom, #017ACB, #046093);
  color: rgba(247, 248, 250, 1);
  border: none;
  font-weight: 400;
  border-radius: 4px;
  padding: 16px 24px;
  cursor: pointer;
  font-size: 17px;
  line-height: 22px;
  margin: 0 86px 0 86px;
  transition: background 0.3s;
}

.question-form__notice small{
  width: 278px;
  height: 36px;
  text-align: center;
  color: rgba(160, 169, 176, 1);
  font-size: 10px;
  line-height: 18px;
  display: block;
  margin: auto;
  margin-top: 11px;
  margin-top: 8px;
}
.legacy-style .main-business .question-form__notice small a{
  color: rgba(160, 169, 176, 1);
}
/* === Правая колонка с вопросами === */
.faq-list-text {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 640px;
}

.faq-item-text {
  width: 640px;
  height: 76px;
  background: #fff;
  border-radius: 8px;
  padding: 12px 16px 12px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: transform 0.2s ease;
}

.faq-item-text-list {
    max-width: 640px;
    height: 60px;
    background: #fff;
    border-radius: 8px;
    padding: 10px 16px 13px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    transition: transform 0.2s 
ease;
}

.faq-item-text:hover,
.faq-item-text-list:hover {
  transform: translateY(-2px);
}


.faq-item-text h4 {
  width: 556px;
  color: rgba(49, 61, 83, 1);
  font-size: 18px;
  line-height: 21px;
  font-weight: 400;
  text-align: left;
  margin: 0;
  overflow-wrap: break-word;
}

.faq-item-text-list h4 {
  width: 556px;
  color: rgba(49, 61, 83, 1);
  font-size: 18px;
  line-height: 21px;
  font-weight: 400;
  text-align: left;
  margin: 0;
}

.faq-plus {
  padding: 14px;
  font-size: 40px;
  color: #A0A9B0;
  font-weight: 100;
  
}

.blog-article {
  text-align: center;
}

.blog-article h2 {
  color: rgba(49, 61, 83, 1);
  font-size: 28px;
  line-height: 30px;
  margin-bottom: 10px;
}

.blog-description p {
  color: rgba(80, 99, 116, 1);
    font-size: 16px;
    line-height: 24px;
    max-width: 549px;
    margin: 0 auto 56px;
    margin-top: 18px;
}

/* === Сетка === */
.article-grid {
  width: 1300px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 420px);
  grid-template-rows: 439px 237px;
  column-gap: 20px;
  row-gap: 24px;
  justify-content: center;
  margin-bottom: 61px;
}

/* === Общие стили карточек === */
.article-card {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  color: #fff;
  display: flex;
  align-items: flex-end;
  transition: all 0.3s ease;
}

.article-card.blue {
  background-color: #0071e3;
}

.card-content {
  position: relative;
  padding: 26px;
  text-align: left;
  z-index: 2;
}

.card-content h3 {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 30px;
  font-weight: 600;
  max-width: 346px;  /* Ограничиваем ширину */
  width: 100%;
  min-height: 60px;
  overflow-wrap: break-word;  /* Перенос длинных слов */
  word-wrap: break-word;      /* Для старых браузеров */
}

.date-time {
  font-size: 16px;
  font-weight: 400;
  line-height: 30px;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
}

.article-card.blue .card-content {
  padding: 30px;
  padding-bottom: 18px;
}

.article-card.blue .date-time {
  margin-bottom: 4px;
}


/* === Градиент === */
.overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.55), transparent 60%);
}

/* === Индивидуальная раскладка === */

/* Левая колонка */
.card-1 {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  height: 439px;
  background-image: url('/images/handshake.png');
}

.card-4 {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  height: 237px;
  background-color: #0071e3;
}

/* Средняя колонка */
.card-2 {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  height: 237px;
  background-color: #0071e3;
}

.card-5 {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  height: 439px;
  background-image: url('/images/phone.png');
  position: relative;
  top: -202px; /* ← поднимаем вверх */
}

/* Правая колонка (высокая) */
.card-3 {
  grid-column: 3 / 4;
  grid-row: 1 / 3;
  min-height: auto;
  background-image: url('/images/phone_s.png');
}

/* === Hover эффект === */
.article-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.callback-form {
	width: 1300px;
	margin: auto;
}

.callback-form__agreement {
	font-size: 10px;
}

.btn-rd {
	padding: 12px 28px;
}

/* Скрываем кнопку по умолчанию */
.scroll-to-top {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    background-color: #017ACB;
    color: white;
    border: none;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 24px;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.faq-answer {
  display: none; /* Скрываем ответ по умолчанию */
  padding: 10px 20px;
  background-color: #f9f9f9;
  margin-top: 10px;
  border-radius: 5px;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
  max-height: 0; /* Скрытие контента */
  overflow: hidden; /* Скрытие всего, что выходит за пределы */
  transition: max-height 0.3s ease-out, padding 0.3s ease-out;
}

.faq-item-text.open .faq-answer, .faq-item-text-list.open .faq-answer {
  display: block; /* Показываем ответ */
  max-height: 200px; /* Максимальная высота, которую может занять ответ */
  padding: 10px 20px; /* Восстанавливаем отступы */
}

/* FIX: чтобы ответ не уходил вправо, а вставал снизу */
.faq-item-text,
.faq-item-text-list {
  flex-wrap: wrap;              /* разрешаем перенос на следующую строку */
}

.faq-item-text-list,
.faq-plus {
	padding-top: 10px;
}

.faq-plus {
    line-height: 0.5;
    display: flex;
}


.faq-answer {
  flex: 0 0 100%;               /* ответ = целая строка */
  width: 100%;
}

/* FIX: у тебя карточки с фиксированной высотой, при open делаем авто */
.faq-item-text.open,
.faq-item-text-list.open {
  height: auto !important;
}

@media (max-width: 420px) {

  /* карточка = якорь для абсолютного плюса */
  .faq-item-text,
  .faq-item-text-list {
    position: relative;
  }
  /* плюс всегда справа и по центру по высоте */
  .faq-plus {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);

    width: 44px;
    height: 44px;
    padding: 0;          /* убираем большой padding на мобилке */
    line-height: 44px;
    text-align: center;

    display: flex;
    align-items: center;
    justify-content: center;
  }
}






/* Показываем кнопку только на десктопах */
@media (min-width: 1024px) {
    .scroll-to-top {
        display: block;
    }
}


/* =======================
   📱 Адаптация под 393px
   ======================= */
@media (max-width: 393px) {

.page-header__mobile-row {
    padding: 10px 0;
}

  /* HERO */
  .hero {
    height: auto;
	margin-top: 0;
	margin-bottom: 29px;
	border-radius: 0px;
  }
  
  .hero .indicator{
    margin-bottom: -350px;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
	display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
	max-width: 60px;
	min-height: 20px;
  }

    .hero .dot {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background-color: transparent;
        border: 1px solid rgba(255, 255, 255, 1);
        cursor: pointer;
    }

    .hero .dot.active {
        background-color: rgba(236, 239, 244, 1);
        border-color: rgba(255, 255, 255, 1);
    }
	
    .services-indicator {
		   margin-top: 8px;
	}

  .container-shop {
    width: 100%;
    position: relative;
    padding: 0;
  }
  
  .container-shop a {
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
  }

  .main-business .container-shop h1 {
    color: rgba(255, 255, 255, 1);
	font-size: 24px !important;
    line-height: 30px !important;
	font-weight: 400;
	text-align: left;
    margin-bottom: 12px;
	margin-top: 32px;
	margin-left: 14px;
  }

  .container-shop p {
    color: rgba(255, 255, 255, 1);
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    text-align: left;
	margin-bottom: 27px;
	max-width: 363px;
    min-height: 88px;
    margin-top: 88px;
	margin-left: 14px;
	overflow-wrap: break-word: 
  }

  .btn-primary-link {
    width: 154px;
    height: 51px;
    display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 8px 15px 8px 15px;
    font-size: 16px;
	margin-left: 14px;
    margin-top: 200px;
  }
  
  .btn-secondary-link {
	width: 167px;
	height: 51px;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 8px 15px 8px 15px;
	font-size: 16px;
	margin-top: 200px;
    margin-left: 174px;
  }

  /* Категории */
  .categories-flex {
    flex-direction: row;
    align-items: center;
    gap: 10px;
	margin-left: 14px;
	overflow-x: auto;
  }
   

  .category-card {
     padding: 13px 27px;
     padding-bottom: 32px;
     text-align: center;
  }

  .category-card h3 {
	  margin: 0;
	  
  }

  .category-card p {
	  margin: 0;
	  text-align: left;
	  min-height: 52px;
      
  }
  /* Услуги */
  .quick-services {
       padding: 0;
       padding-left: 11px;
       padding-right: 11px;
       margin-bottom: 34px;
  }
  
      .quick-services h2 {
        margin: 0;
        color: rgba(49, 61, 83, 1);
        font-size: 20px;
        font-weight: 600;
        line-height: 30px;
        text-align: center;
        max-width: 331px;
        min-height: 30px;
        flex-direction: row;
        align-items: center;
        margin-left: 16px;
    }
	
	.quick-services > p {
        color: rgba(80, 99, 116, 1);
        font-size: 14px;
        font-weight: 400;
        line-height: 24px;
        text-align: center;
        width: 318px;
        margin: 0;
        margin-left: 22px;
		margin-bottom: 13px;
	}
	
	 .service-item h3 {
		margin: 19px 0 11px 16px;
	 }
	
	  .service-item p {
		max-width: 80vw;
		margin-left: 16px;
		margin-bottom: -30px;
		min-height: 120px;
	  }
	
	.quick-buttons a {
        margin: 0 -10px;
	}
	
	.catalog-indicator {
		margin-top: 15px;
	}
	
  .services-wrapper {
    overflow-x: hidden;
  }

  .catalog-wrapper {
    overflow-x: hidden;
  }


.services-flex {
    gap: 20px;
    justify-content: flex-start;
    width: auto;        /* убираем жёсткую ширину */
}


	
/* Статистика */
.stats-flex {
  flex-direction: column;
  gap: 18px;
  width: 100%;          /* вместо 371px */
  max-width: 371px;     /* если нужно ограничение по ширине */
  margin: 0 auto 30px;  /* центрируем блок */
}

.stat-item {
  width: 100%;          /* карточка занимает всю доступную ширину */
  text-align: center;
}

/* общий стиль для текста во всех карточках */
.stat-item p {
  margin: 0 auto;
  width: 100%;          /* одинаковая ширина */
  max-width: 286px;     /* если нужен максимум как у синей */
  min-height: 48px;     /* делаем одинаковую высоту текстового блока */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* отступы для заголовков (можешь оставить как есть) */
.stat-item.blue h2 {
  margin-bottom: 23px;
}

.stat-item.green h2,
.stat-item.yellow h2,
.stat-item.pink h2 {
  margin-bottom: 1px;
}

.stat-item.blue p {
     width: 100%;
}



.stat-item.green p {
      width: 100%;

}

.stat-item.green {
	 padding-top: 50px;
}

.stat-item.yellow p {
      width: 100%;
}

.stat-item.yellow {
	padding-top: 52px;
}

.stat-item.pink p {
      width: 100%;
}

.stat-item.pink {
	    padding-top: 50px;
}
  /* Преимущества */
  
  .advantages {
	  padding-top: 36px;
	  padding-bottom: 28px;
  }
  
  .advantages h2 {
	color: rgba(49, 61, 83, 1);
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
    text-align: center;
	margin-bottom: 7px;
	padding-bottom: 0;
  }
  
  .container-text {
        font-size: 14px;
        width: 371px;
        height: 96px;
        margin-bottom: 27px;
  }
  
/* Преимущества — мобилка */
.advantages-flex {
  flex-direction: column;
}

.advantages .column {
  width: 100%;
  margin-left: -5px;
}

.advantage-item {
  max-width: 371px;
  width: 100%;
  /* min-height: 98px;  ← убираем */
  padding: 12px 13px 18px;
}

.advantage-item span {
  margin-top: 5px;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  padding-top: 1px;
  flex-shrink: 0;
}

.advantages-text {
  line-height: 24px !important;
}

.advantages .column {
  gap: 25px;
}

  /* Каталог */
  
  .catalog {
	  padding-top: 23px;
	  padding-bottom: 30px;
	  padding-left: 11px;
	  padding-right: 11px;
  }
  
  .catalog h2 {
	color: rgba(49, 61, 83, 1);
	font-size: 22px;
	font-weight: 600;
	line-height: 30px;
	text-align: center;
	width: 329px;
	height: 60px;
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-left: 21px;
	margin-bottom: 45px;
  }
  
  .container-gotovih-firm {
	  max-width: 100vw;
	  width: 100%;
	  margin: 0 auto;
	  margin-bottom: 15px;
  }
  
   .catalog-wrapper {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
  }

  .catalog-grid {
    flex-wrap: nowrap !important;
  }

  .company-card {
    flex: 0 0 100%;
  }
  
  .company-info {
	  margin-top: 5px;
	  margin-bottom: 0;
  }
  
  .company-info span {
	  padding-top: 4px;
  }
  
  .company-info p {
	  margin: 3px;
  }
  
  .company-icons {
	  padding: 12px 12px;
  }
  
  .promo-banner {
	width: 371px;
	min-height: 220px;
    padding: 16px;
    margin-bottom: 0;
	margin-top: 0;
  }
  
  .banner-content {
    display: block;
    align-items: center;
}

  .banner-content p {
	width: 295px;
    color: rgba(1, 122, 203, 1);
    font-size: 13px;
    font-weight: 400;
    line-height: 24px;
    margin: 0;
    margin-bottom: 14px;
}

	.btn-go-directory-companies a {
		display: inline-block;
		background: linear-gradient(to bottom, #017ACB, #046093);
		color: rgba(255, 255, 255, 1);
		padding: 17px 33px;
		border-radius: 4px;
		width: 228px;
		text-decoration: none;
		font-size: 14px;
		font-weight: 400;
		box-sizing: border-box;
}

  /* Информация */
  
  .additional-info {
	 min-height: 1420px;
	 margin-bottom: 51px;
     padding: 0;
  }
  
  .container-ooo-info {
	  padding-top: 35px;
	  padding-left: 10px;
      padding-right: 11px;
  }
  
  .container-ooo-info h2 {
	  color: rgba(49, 61, 83, 1);
      font-size: 22px;
      font-weight: 600;
      line-height: 30px;
      text-align: center;
      width: 209px;
      height: 60px;
	  margin: 0 auto;
	  margin-bottom: 14px;
  }
  
  .container-ooo-info > p {
        font-size: 14px;
        font-weight: 400;
        width: 374px;
        height: 72px;
        margin: 0 auto;
        margin-bottom: 38px;
}
  
  .info-flexbox {
    flex-direction: column;
    gap: 30px;
  }
  .info-block {
    width: 371px;
	margin: 0;
	padding: 25px 26px 27px;
  }
  
  .info-block h3 {
	 width: 235px;
     height: 24px;
  }
  
  .info-block p {
	  color: rgba(113, 139, 154, 1);
	  font-size: 16px;
	  font-weight: 400;
	  line-height: 24px;
	  text-align: left;
	  width: 322px;
      height: 72px;
  }
  
  .block-list li::before {
	  margin-top: -2px;
  }

  /* Форма “перезвоните” */
  .card-call-me-back {
    width: 393px;
  }

  .callback-form-1 {
        max-width: 393px;
        width: 100%;
        height: 270px;
        padding: 31px 7px 22px 10px;
        border-radius: 1px;
        overflow: hidden;
  }
  
  .card-call-me-back h2 {
	width: 301px;
    height: 52px;
	color: rgba(255, 255, 255, 1);
	font-size: 20px;
	font-weight: 500;
	line-height: 26px;
	text-align: center;
	margin: 0 38px 0 37px;
	text-transform: uppercase;
	margin-bottom: 16px;
  }
  
  .card-call-me-back p {
	width: 376px;
    height: 44px;
	color: rgba(255, 255, 255, 1);
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	text-align: center;
	margin-bottom: 29px;
  }
  
  .phone-field {
	width: 202px !important;
	height: 50px;
	padding: 17px 11px;
    line-height: 100%;
    border: none;
    border-radius: 4px;
    font-size: 16px;
    width: 220px;
    color: black;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
    margin-right: 13px;
  }

  .callback-button {
    width: 155px;
    height: 50px;
    font-size: 14px;
	padding: 17px 35px;
  }

  /* Процесс */
  
  .container-firm {
	margin-top: 31px; 
    padding: 0;	
  }
  
  .container-firm h2 {
	  width: 327px;
	  height: 60px;
	  display: flex;
	  flex-direction: row;
	  align-items: center;
	  font-size: 22px;
      line-height: 30px;
	  margin: 0 auto;
	  margin-bottom: 43px;
  }
  
  .process-steps {
    flex-direction: column;
    gap: 1px;
  }

  .step {
	display: flex;
    gap: 5px;
    align-items: center;
    text-align: center;
	margin-bottom: 36px !important;
  }
  
  
  .step h4 {
	width: auto;
	height: 44px;
	font-size: 20px;
	font-weight: 700;
	line-height: 44px;
	text-align: left;
	margin-bottom: 1px;
	padding-top: 5px;
  }
  
  .step p {
	width: 274px;
	height: 126px;
	font-size: 14px;
	font-weight: 400;
	line-height: 21px;
	text-align: left;
  }
  
  .step-numb {
	margin-right: 5px;
    padding-left: 6px;
  }
  
  .process-steps {
	margin-left: 5px;
  }
  
  /* Проверенные компании */
  .features-flex {
    flex-direction: column;
    gap: 49px;
    margin-left: 19px;
  }

  .verified-companies {
	  padding-top: 39px;
	  min-height: 982px;
	  margin-top: 0;
	  margin-bottom: 40px;
  }
  
  .verified-companies h2 {
	width: 328px;
	height: 30px;
	font-size: 22px;
	line-height: 30px;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 14px;
  }
  
  .subtitle {
	width: 336px;
	height: 48px;
	font-size: 14px !important;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 36px !important;
  }
  
  .feature-item {
    width: 310px;
  }
  
  .icon-circle {
	  margin-bottom: 7px;
  }
  
  .feature-text {
	 margin-bottom: -20px;
  }

	.disclaimer {
		margin-top: 8px;
        font-size: 9px;
        text-align: left;
	}
	
	
  /* Выкуп компании */
  .company-buyout {
	height: 1184px;
	margin-top: 31px;
	padding-top: 30px;
    padding-bottom: 41px;
  }
  
  .company-buyout h2 {
	font-size: 22px;
	line-height: 30px;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 22px;
  }
  
  .company-buyout-text {
	width: 345px;
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	margin-bottom: 27px;
  }
  
  .reviews h2 {
	width: 296px;
	font-size: 22px;
	font-weight: 600;
	line-height: 30px;
	text-align: center;
	margin: 0 auto;
    padding-bottom: 12px;
  }
  
  .reviews p {
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	width: 356px;
  }
  
  .form-company-buyout {
    padding-right: 12px;
	padding-left: 10px;
    text-align: center;
	width: 393px;
  }
  
  .icon-feature {
	  margin-bottom: 23px;
  }
  .feature {
	  width: 371px;
	  min-height: 210px;
	  flex: 1;
	  padding-bottom: 16px;
  }
  
   .feature h3 {
	   margin-top: 0;
   }

  .features {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }

  .actions {
    flex-direction: column;
    gap: 12px;
  }

  .butn-primary-link {
    display: block;
  }
  
  .butn-secondary-link {
	width: 156px;
	height: 24px;
	font-size: 14px;
  }
  
  .reviews {
	  height: auto;
	  margin-bottom: 100px;
  }
  
  /* FAQ */
  
   .faq {
	  margin-top: 0px;
	  padding-top: 31px;
	  padding-left: 11px;
	  padding-bottom: 34px;
	  padding-right: 12px;
  }
  
  .container-faq {
	  padding: 0;	
  }
  
  .faq h2 {
	font-size: 22px;
	line-height: 30px;
	text-align: center;
	margin: 0 auto;
    margin-bottom: 29px;
  }
  
  .faq p {
	width: 335px;
    height: 132px;
	font-weight: 400;
	line-height: 22px;
	text-align: center;
	margin: 0 auto;
    margin-bottom: 45px;
  }
  
  .faq-item-text {
	  width: 370px;
	height: 78px;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 12px 16px 12px 16px;
  }
  
  .faq-item-text-list {
	width: 370px;
    height: 61px;
  }
  
  .faq-content {
    flex-direction: column-reverse;
    align-items: center;
	margin-left: -18px;
	gap: 30px;
  }
  
  .faq-item-text h4,
.faq-item-text-list h4  {
	font-size: 16px;
	font-weight: 400;
	line-height: 19px;
	text-align: left;
  }


  
  .faq-list-text {
    width: 370px;
  }
  
  .question-form {
	  width: 370px;
  }

  .question-form__input,
  .question-form__textarea {
    width: 100%;
  }

	.question-form__submit {
		margin: 0 61px 0 61px;
	}
	
	.question-form__notice small {
		width: 278px;
		height: 36px;
		font-size: 10px;
		font-weight: 400;
		line-height: 18px;
		text-align: center;
		margin: 11px 6px 0 6px;
	}
  /* Блог */
  
  .blog-article h2 {
	width: 224px;
	height: 60px;
	display: flex;
	flex-direction: row;
	align-items: center;
	font-size: 22px;
	font-weight: 600;
	line-height: 30px;
	text-align: center;
	margin: auto;
	margin-bottom: 16px;
  }
  
  /*.article-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    width: 90%;
    margin: 0 auto;
  }*/
  
  .blog-description p {
	width: 301px;
    height: 110px;
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	margin: auto;
	margin-bottom: 106px;
  }


  /* Сетка 2 колонки */
  .article-grid {
    width: 100%;
    height: 535px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 178px);
    grid-auto-rows: 163px;
    justify-content: center;
    gap: 16px;
  }

  /* Все карточки по умолчанию */
  .article-card {
    width: 178px;
    height: 163px;
    border-radius: 6px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: flex-end;
  }

  /* Сброс всех старых позиций */
  .card-1,
  .card-2,
  .card-3,
  .card-4,
  .card-5 {
    grid-column: auto !important;
    grid-row: auto !important;
    top: 0 !important;
  }

  /* === 👇 Главная часть: card-5 две колонки + 370px === */
  .card-5 {
    width: 370px !important;
    height: 163px !important;
    grid-column: span 2 !important; /* занимает 2 колонки */
    background-image: url('/images/phone_adaptive.png');
    background-size: cover;
    background-position: center;
	margin-top: -357px;
	
  }

  /* Остальные карточки */
  .card-1,
  .card-3 {
    background-image: url('/images/handshake.png');
  }

  .card-2,
  .card-4 {
    background-color: rgba(1, 122, 203, 1);
  }
  
  /* === Правильная перестановка === */
.card-4 {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin-top: -280px;
}

.card-3 {
  grid-column: 2 !important;
  grid-row: 2 !important;
  margin-top: -280px;
}

  /* Контент */
  .card-content {
    padding: 10px 12px;
    z-index: 2;
  }
  
      .cart3 {
	    padding: 0;
        padding-bottom: 15px;
        padding-left: 7px;
	  } 
	  
	  .cart5 {
		padding: 0;
        padding-bottom: 16px;
        padding-left: 17px;	
	  }
	  
 
  .card-content h3 {
    font-size: 14px;
    line-height: 17px;
    margin: 0 0 4px 0;
    width: 167px;
    height: auto;
    min-height: 0;
  }
  
  .card-5 h3 {
	  width: 282px;
	  margin-bottom: 6px;	
  }

  .date-time {
    font-size: 12px;
    line-height: 16px;
    opacity: 0.85;
  }

  .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.55), transparent 70%);
    z-index: 1;
  }

  .callback-form {
	gap: 29px;
    width: 100%;
	background: linear-gradient(to bottom, #017ACB, #046093);
  }
  
  .section-callback__agreement {
        display: none;
    }
	
	
			.callback-form__subtitle {
		font-size: 10px;
	}
	
.callback-form__rows .btn-rd {
	   width: 187px;
}

    .field__input {
		width: 187px;
	}

.callback-form__rows .field {
	margin-right:15px;
}

.field--size--lg .field__input {
	padding: 12px 13px;
}



  /*.article-card {
    height: auto;
    min-height: 220px;
  }*/

  h2 {
    font-size: 22px;
  }

  h3 {
    font-size: 18px;
  }

  p {
    font-size: 14px;
    line-height: 22px;
  }
}



/* Фикс маленького горизонтального скролла */
@media (max-width: 393px) {
  /* Глобально — всё в пределах экрана */
  html, body {
    max-width: 100vw;
    overflow-x: hidden;
  }

  /* Убираем опасные фиксированные ширины */
  .card-call-me-back,
  .form-company-buyout,
  .company-card {
    max-width: 100vw;
    width: 100%;
    margin-right: 0;
  }

  /* Карточки в каталоге — одна под другой */
  .catalog-grid {
     display: flex;
     justify-content: flex-start;
  }



  /* Убираем отрицательные отступы, которые растягивают страницу */
  .advantages .column,
  .faq-content {
    margin-left: 0;
  }
  
  .article-card.blue .card-content {
	  padding: 8px;
  }
}



/* 📱 320-392px - Автоматическое уменьшение */
@media (min-width: 320px) and (max-width: 392px) {
  .hero {
    height: auto;
    min-height: 400px;
	border-radius:0px;
  }

  .container-shop {
    padding: 0 10px;
  }

  .main-business .container-shop h1 {
    font-size: 22px !important;
    max-width: 100vw;
    width: 100%;
    margin-top: 25px;
    margin-left: 10px;
    line-height: 28px;
  }

  .container-shop p {
    font-size: 13px;
    max-width: 320px;
    width: 100%;
    margin-top: 80px;
    margin-left: 10px;
    line-height: 20px;
  }

  .btn-primary-link,
  .btn-secondary-link {
    height: 48px;
    margin-top: 180px;
    font-size: 14px;
  }

  .btn-primary-link {
    width: 145px;
    margin-left: 10px;
  }

  .btn-secondary-link {
    width: 155px;
    margin-left: 165px;
  }

    /* Услуги */
  .quick-services {
       padding: 0;
       padding-left: 11px;
       padding-right: 11px;
       margin-bottom: 34px;
  }
  
      .quick-services h2 {
        margin: 0 auto;
        color: rgba(49, 61, 83, 1);
        font-size: 18px;
        font-weight: 600;
        line-height: 32px;
        text-align: center;
        width: 100%;
        height: auto;
        margin-bottom: 10px;
    }
	
	.quick-services > p {
        color: rgba(80, 99, 116, 1);
        font-size: 14px;
        font-weight: 400;
        line-height: 24px;
        text-align: center;
        width: auto;
        margin: 0 auto;
		margin-bottom: 13px;	
	}
	
	  .service-item p {
		max-width: 80vw;
		margin-bottom: 21px;
		min-height: 120px;
	  }
	
	
  .services-wrapper {
    overflow-x: hidden;
  }
  
  .service-item {
    flex: 0 0 45vw;        /* ширина карточки относительно экрана */
  }

    .stats-flex {
        flex-direction: column;
        gap: 20px;
        width: 100%;
        padding: 0 20px;
        margin-bottom: 40px;
    }



  .list-bugalt {
    margin-left: 30px;
    font-size: 13px;
  }

  .quick-buttons {
    margin-left: 15px;
    margin-bottom: 20px;
  }

  /* Статистика */
  .stats-flex {
	max-width: 100vw;
    width: 100%;
    gap: 12px;
    padding: 0 10px;
    margin-bottom: 40px;
  }

	 
  .stat-item {
	margin: 0 auto;
	max-width: 100vw;
    width: 100%;
    height: 130px;
    padding: 20px 1px;
  }
  
  .stat-item.blue {
	  padding-left: 20px;
	  padding-right: 20px;
	  padding-top: 40px;
  }

  .stat-item h2 {
    font-size: 28px;
    margin-bottom: 12px;
	max-width: 100vw;
    width: 100%;
  }

  .stat-item p {
    font-size: 13px;
    line-height: 16px;
	max-width: 100vw;
    width: 100%;
  }

  /* Преимущества */
  .advantages {
    padding: 30px 10px;
  }

  .advantages h2 {
    font-size: 22px;
    margin-bottom: 12px;
  }

  .container-text {
	width: auto;
    font-size: 13px;
    margin-bottom: 35px;
  }

  .advantages-flex {
    gap: 12px;
  }

 .advantage-item {
    width: auto;       
    padding: 12px;
  }

  .advantages-text {
    font-size: 13px;
    line-height: 18px;
  }

  /* Каталог */
  .catalog {
    padding: 25px 10px;
  }

  .catalog h2 {
        font-size: 20px;
        padding-right: 25px;
        text-align: center;
        margin-left: 0;
        margin-bottom: 20px;
  }

  .catalog-grid {
    gap: 12px;
    margin-bottom: 30px;
  }

  .company-card {
     max-width: 313px;
	 width: 100%;
  }

  .promo-banner {
	max-width: 100vw;
    width: 95%;
    height: auto;
    min-height: 120px;
    padding: 15px;
  }

  .banner-content p {
	width: auto;
    font-size: 12px;
    margin-bottom: 10px;
  }

  /* Дополнительная информация */
  .additional-info {
    padding: 30px 10px;
  }

  .container-ooo-info h2 {
    font-size: 20px;
    width: 280px;
  }

  .container-ooo-info > p {
	width: auto;
    font-size: 13px;
  }

  .info-flexbox {
    gap: 15px;
    margin: 0 auto;
    width: 100%;
  }

  .info-block {
    max-width: 320px;
    width: 100%;
    padding: 20px;
  }
  
  .info-block p {
	  width: auto;	
	  margin-bottom: 30px;
  }

  /* Форма обратного звонка */
  .card-call-me-back {
    margin-top: -60px;
  }

  .callback-form-1 {
	max-width: 100vw;
    width: 100%;
    height: auto;
    padding: 20px 15px;
  }

  .card-call-me-back h2 {
	width: auto;
    font-size: 19px;
    margin: 0 0 12px;
  }

  .card-call-me-back p {
	width: auto;
    font-size: 13px;
    margin-bottom: 35px;
  }

  .phone-field {
    width: 130px !important;
    padding: 15px 10px;
    font-size: 14px;
  }

  .callback-button {
    width: 140px;
    font-size: 12px;
    padding: 17px 25px;
  }

  .disclaimer {
	width: auto;
    text-align: center;
    font-size: 9px;
  }

  /* Процесс */
  .container-firm {
    margin-top: 30px;
    padding: 0 10px;
  }

  .process-sell-firm h2 {
	max-width: 100vw;
    width: 100%;
    font-size: 20px;
    margin-bottom: 25px;
  }

  .process-steps {
    gap: 20px;
  }

  .step h4 {
        max-width: 100vw;
        width: 100%;
        height: auto;
        font-size: 18px;
        line-height: normal;
        margin-bottom: 10px;
  }

  .step p {
	max-width: 100vw;
    width: 100%;
    font-size: 13px;
    line-height: 18px;
  }

  /* Проверенные компании */
  .verified-companies {
	height: auto;
    padding: 30px 10px;
    margin-top: 30px;
  }

  .verified-companies h2 {
    max-width: 100vw;
    width: 100%;
    font-size: 20px;
  }

  .verified-companies .subtitle {
	max-width: 100vw;
    width: 100%;
    font-size: 13px !important;
  }

  .features-flex {
    gap: 65px;
	margin-bottom: 40px;
  }

  .feature-text {
    font-size: 13px;
    line-height: 20px;
  }

  /* Выкуп компании */
  .company-buyout {
    margin-top: 30px;
    padding: 30px 10px;
  }

.form-company-buyout {
   max-width: 100vw;
   width: 100%;
   padding: 0;
}
  
  .company-buyout h2 {
	max-width: 100vw;
    width: 100%;
    font-size: 20px;
  }

  .company-buyout-text {
	max-width: 100vw;
    width: 100%;
    font-size: 13px;
  }

  .feature {
	max-width: 100vw;
    width: 100%;
    padding: 25px 20px;
  }
  
  .butn-primary-link {
	  max-width: 100vw;
    width: 100%;
  }
  
  /* Нас рекомендуют */
  
  .reviews h2 {
	max-width: 100vw;
    width: 100%;
  }
  
 .reviews p {
    max-width: 100vw;
    width: 100%;
 }

  /* FAQ */
  .faq {
    padding: 25px 10px;
  }

  .faq h2 {
	max-width: 100vw;
    width: 100%;
    font-size: 20px;
  }

  .faq p {
	max-width: 100vw;
    width: 100%;
    font-size: 13px;
	margin-bottom: 25px;
  }

  .faq-content {
    gap: 20px;
  }
  
  .faq-list-text {
	  max-width: 100vw;
      width: 100%;
  }
  
  .faq-item-text-list {
	  max-width: 100vw;
      width: 100%;
  }
  
 
  
   .faq-item-text {
	  max-width: 100vw;
      width: 100%;
   }

  .faq-item-text h4,
  .faq-item-text-list h4 {
    font-size: 14px;
  }
    
  .question-form {
	  max-width: 100vw;
      width: 100%;
  }	
  
 .question-form__submit {
    margin: auto;
    margin-left: 40px;	 
 }
 
  .question-form__notice small {
	  max-width: 100vw;
      width: 100%;
	  margin: 0 auto;
	  margin-top: 10px;
  }
  
  /* Блог */
.blog-article h2 {
    width: 224px;
    height: 60px;
    font-size: 22px;
    line-height: 30px;
    margin-bottom: 16px;
  }
  
  .blog-description p {
    width: 301px;
    height: 110px;
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 106px;
  }

 /* Сетка блога - 2 колонки с увеличенными размерами */
  .article-grid {
    width: 100%;
    max-width: 420px;
    height: 600px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 180px;
    justify-content: center;
    gap: 15px;
  }

  .article-card {
    width: 100%;
    height: 180px;
    border-radius: 10px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: flex-end;
  }

  /* Сброс всех старых позиций */
  .card-1,
  .card-2,
  .card-3,
  .card-4,
  .card-5 {
    grid-column: auto !important;
    grid-row: auto !important;
    top: 0 !important;
  }

  /* card-5 - две колонки */
  .card-5 {
    width: 100% !important;
    height: 180px !important;
    grid-column: span 2 !important;
    background-image: url('/images/phone_adaptive.png');
    background-size: cover;
    background-position: center;
    margin-top: -320px;
  }

  /* Остальные карточки */
  .card-1,
  .card-3 {
    background-image: url('/images/handshake.png');
    background-size: cover;
    background-position: center;
  }

  .card-2,
  .card-4 {
    background-color: rgba(1, 122, 203, 1);
  }
  
  /* Правильная перестановка */
  .card-4 {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin-top: -260px;
  }

  .card-3 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-top: -260px;
  }

  .card-content {
    padding: 12px 15px;
    z-index: 2;
  }

  .card-content h3 {
    font-size: 12px;
    line-height: 20px;
    margin: 0 0 6px 0;
    width: 100%;
    height: auto;
  }
  
  .card-5 h3 {
    width: 100%;
    max-width: 300px;
  }

  .date-time {
    font-size: 12px;
    line-height: 18px;
    opacity: 0.85;
  }

  .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.55), transparent 70%);
    z-index: 1;
  }

  .callback-form {
    background: linear-gradient(to bottom, #017ACB, #046093);
	max-width: 100vw;
    width: 100%;
    display: grid;
    grid-auto-flow: column;
	gap: 3px;
  }
  
  .section-callback__agreement {
    display: none;
  }
  
    .callback-form__header-top,
.callback-form__header  {
	  gap: 5px;
  }
  
  .callback-form__phones a {
	 margin-bottom: 10px;
  }
  
  .callback-form__title {
	  font-size: 11px;
  }
  
  .callback-form__subtitle {
	  font-size: 8px;
  }

}

/* 📱 280-319px - Еще большее уменьшение */
@media (max-width: 319px) {
  .main-business .container-shop h1 {
    font-size: 20px !important;
    width: 260px;
    margin-top: 20px;
    line-height: 24px;
  }
  
  

  .container-shop p {
    font-size: 12px;
    width: 280px;
    margin-top: 70px;
    line-height: 18px;
  }

  .btn-primary-link,
  .btn-secondary-link {
    height: 45px;
    margin-top: 160px;
    font-size: 13px;
  }

  .btn-primary-link {
    width: 130px;
  }

  .btn-secondary-link {
    width: 140px;
    margin-left: 140px;
  }

  .categories-flex {
    margin: 280px 5px 0;
  }

  .category-card {
    flex: 0 0 240px;
    min-width: 240px;
    height: 120px;
  }
  
  .hero .indicator {
        margin-bottom: -250px;
        bottom: 1px;
        display: flex;
        justify-content: center;
        gap: 5px;
        padding: 1px 1px;
        max-width: 60px;
        min-height: 20px;
    }

    .hero .dot {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background-color: transparent;
        border: 1px solid rgba(255, 255, 255, 1);
        cursor: pointer;
    }

    .hero .dot.active {
        background-color: rgba(236, 239, 244, 1);
        border-color: rgba(255, 255, 255, 1);
    }
	
    .indicator {
		margin-top: 11px;
	}

  .quick-services h2 {
    font-size: 18px;
    width: 260px;
  }

  .quick-services > p {
    font-size: 12px;
    width: 260px;
  }

  .stat-item {
    height: 120px;
    padding: 15px 10px;
  }

  .stat-item h2 {
    font-size: 24px;
  }

  .phone-field {
    width: 160px !important;
  }

  .callback-button {
    width: 120px;
  }
}


/* Улучшения для очень маленьких экранов */
@media (max-width: 392px) {
  /* Уменьшаем отступы и размеры для очень маленьких экранов */
  .container-shop,
  .quick-services,
  .catalog,
  .additional-info,
  .container-firm,
  .verified-companies,
  .company-buyout,
  .faq,
  .blog-article {
    padding-left: 8px;
    padding-right: 8px;
  }
  
  /* Уменьшаем размеры иконок */
  .company-icons img {
    width: 25px;
    height: 25px;
  }
  
  .icon-circle {
    width: 80px;
    height: 80px;
  }
  
  .icon-circle img {
    width: 25px;
    height: 25px;
  }
  
  /* Улучшаем читаемость текста */
  .company-info,
  .block-list li,
  .feature p {
    font-size: 13px;
  }
}

/* Плавные переходы между брейкпоинтами */
/* 📱 Адаптация для 394px - 480px */
@media (min-width: 394px) and (max-width: 480px) {
  /* HERO */
  .hero {
    height: auto;
    margin-top: 0;
	border-radius:0px;
  }

  .container-shop {
    width: 100%;
    position: relative;
    padding: 0;
  }
  
  .container-shop a {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
  }

  .main-business .container-shop h1 {
    color: rgba(255, 255, 255, 1);
    font-size: 26px !important;
    line-height: 32px !important;
    font-weight: 400;
    text-align: left;
    margin-bottom: 12px;
    margin-top: 35px;
    margin-left: 20px;
    width: 350px;
  }

  .container-shop p {
    color: rgba(255, 255, 255, 1);
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    text-align: left;
    margin-bottom: 27px;
    width: 380px;
    height: auto;
    margin-top: 95px;
    margin-left: 20px;
  }

  .btn-primary-link {
    width: 170px;
    height: 54px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 8px 15px;
    font-size: 16px;
    margin-left: 20px;
    margin-top: 210px;
  }
  
  .btn-secondary-link {
    width: 180px;
    height: 54px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 8px 15px;
    font-size: 16px;
    margin-top: 210px;
    margin-left: 200px;
  }

.hero .indicator {
        margin-bottom: -350px;
        bottom: 1px;
        display: flex;
        justify-content: center;
        gap: 5px;
        padding: 1px 1px;
        max-width: 60px;
        min-height: 20px;
    }

    .hero .dot {	
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background-color: transparent;
        border: 1px solid rgba(255, 255, 255, 1);
        cursor: pointer;
    }

    .hero .dot.active {
        background-color: rgba(236, 239, 244, 1);
        border-color: rgba(255, 255, 255, 1);
    }
	
    .indicator {
		margin-top: 11px;
	}

  /* Категории */
  .categories-flex {
    flex-direction: row;
    align-items: center;
    gap: 12px;
    margin-left: 20px;
    margin-right: 20px;
    overflow: auto;
    margin-top: 380px;
  }
   
  .category-card {
    padding: 15px 20px;
    padding-bottom: 25px;
    text-align: center;
    min-width: 280px;
  }

  .category-card h3 {
    margin: 0;
    font-size: 16px;
  }

  .category-card p {
    margin: 0;
    text-align: left;
    height: auto;
    font-size: 14px;
  }

  /* Услуги */
  .quick-services {
    padding: 0 20px;
    margin-bottom: 65px;
  }
  
  .quick-services h2 {
    margin: 0;
    color: rgba(49, 61, 83, 1);
    font-size: 22px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
  }
  
  .services-slider {
    width: 100%;
    max-width: 100%;
    margin: 0; /* чтобы прижать к краям, если нужно */
  }
  
  
  .services-wrapper {
    overflow-x: auto;      /* включаем горизонтальный скролл */
    overflow-y: visible;
  }
  
  .quick-services > p  {
	 max-width: 100vw;
     width: 100%;
  }
  
  .service-item p {
    width: auto;
    margin-right: 15px;
  }
  
   .services-flex {
	min-width: 1300px;
    gap: 16px;
  }
  
  .service-item {
    flex: 0 0 45vw;        /* ширина карточки относительно экрана */
  }

    .stats-flex {
        flex-direction: column;
        gap: 20px;
        width: 100%;
        padding: 0 20px;
        margin-bottom: 40px;
    }
  
  .service-item h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 44px;
    text-align: left;
    width: 100%;
    height: auto;
    margin-left: 20px;
  }
  
  .service-item p {
    font-weight: 400;
    width: 90%;
    height: auto;
    margin-left: 20px;
    margin-bottom: 20px;
  }
  
  .indicator {
    margin: 20px auto;
  }
  
  .quick-buttons {
    margin-bottom: 27px;
    margin-left: 20px;
  }
  
  /* Статистика */
  .stats-flex {
    flex-direction: column;
    gap: 20px;
    width: 100%;
    padding: 0 20px;
    margin-bottom: 40px;
  }

  .stat-item {
    width: 100%;
    max-width: 420px;
    text-align: center;
    height: 180px;
  }
  
  .stat-item p {
    margin: auto;
    font-size: 15px;
  }
  
  .stat-item h2 {
    margin-bottom: 15px;
    font-size: 32px;
  }

  /* Преимущества */
  .advantages {
    padding-top: 40px;
    padding-bottom: 35px;
  }
  
  .advantages h2 {
    color: rgba(49, 61, 83, 1);
    font-size: 22px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    margin-bottom: 15px;
    padding-bottom: 0;
  }
  
  .container-text {
    font-size: 15px;
    width: 90%;
    height: auto;
    margin-bottom: 30px;
  }
  
  .advantages-flex {
    flex-direction: column;
    padding: 0 20px;
  }

  .advantages .column {
    width: 100%;
  }

  .advantage-item {
    max-width: 100%;
    height: auto;
    min-height: 90px;
    padding: 15px;
  }
  

  
  .advantage-item span {
    padding-bottom: 5px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .advantages-text {
    line-height: 22px;
    font-size: 15px;
  }

  /* Каталог */
  .catalog {
    padding: 30px 20px;
  }
  
  .catalog h2 {
    color: rgba(49, 61, 83, 1);
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 30px;
  }
  
    .catalog-grid {
        display: flex;
        justify-content: flex-start;
    }

.company-card {
        flex: 0 0 100%;
    }
  
  .promo-banner {
    width: 100%;
    max-width: 100vw;
    height: auto;
    padding: 20px;
    margin: 30px auto;
  }
  
  .banner-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .banner-content p {
	text-align: left;
    width: 100%;
    color: rgba(1, 122, 203, 1);
    font-size: 15px;
    font-weight: 400;
    line-height: 24px;
    margin: 0;
    margin-bottom: 15px;
  }

  .btn-go-directory-companies a {
    display: inline-block;
    background: linear-gradient(to bottom, #017ACB, #046093);
    color: rgba(255, 255, 255, 1);
    padding: 17px 33px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 400;
    box-sizing: border-box;
    width: auto;
  }

  /* Информация */
  .additional-info {
    height: auto;
    margin-bottom: 50px;
    padding: 40px 20px;
  }
  
  .container-ooo-info {
    padding-top: 0;
  }
  
  .container-ooo-info h2 {
    color: rgba(49, 61, 83, 1);
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
  }
  
  .container-ooo-info > p {
    font-size: 15px;
    font-weight: 400;
    width: 100%;
    height: auto;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  
  .info-flexbox {
    flex-direction: column;
    gap: 25px;
    width: 100%;
  }

  .info-block {
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    padding: 25px;
  }
  
  .info-block h3 {
    width: 100%;
    height: auto;
    font-size: 20px;
  }
  
  .info-block p {
    color: rgba(113, 139, 154, 1);
    font-size: 15px;
    font-weight: 400;
    line-height: 24px;
    text-align: left;
    width: 100%;
    height: auto;
  }
  
  .block-list li::before {
    margin-top: -2px;
  }

  /* Форма "перезвоните" */
  .card-call-me-back {
    width: 100%;
    max-width: 100vw;
    margin: 0 auto;
    margin-top: -70px;
  }

  .callback-form-1 {
    max-width: 100vw;
    width: 100%;
    height: auto;
    padding: 30px 20px;
    border-radius: 0;
  }
  
  .card-call-me-back h2 {
    width: 100%;
    height: auto;
    color: rgba(255, 255, 255, 1);
    font-size: 22px;
    font-weight: 500;
    line-height: 28px;
    text-align: center;
    margin: 0 0 15px 0;
    text-transform: uppercase;
  }
  
  .card-call-me-back p {
    width: 100%;
    height: auto;
    color: rgba(255, 255, 255, 1);
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    text-align: center;
    margin-bottom: 25px;
  }
  
  .phone-field {
    max-width: 150px !important;
    width: 100% !important;
    height: 52px;
    padding: 17px 11px;
    line-height: 100%;
    border: none;
    border-radius: 4px;
    font-size: 16px;
    color: black;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
    margin-right: 10px;
  }

  .callback-button {
    width: 160px;
    height: 52px;
    font-size: 15px;
    padding: 17px 25px;
  }

  /* Процесс */
  .container-firm {
    margin-top: 40px;
    padding: 0 20px;
	min-height: 700px;
  }
  
  .container-firm h2 {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 24px;
    line-height: 32px;
    margin: 0 auto;
    margin-bottom: 40px;
    text-align: center;
  }
  
  .process-steps {
    flex-direction: column;
    gap: 30px;
  }

  .step {
    display: flex;
    gap: 15px;
    align-items: flex-start;
    text-align: left;
  }
  
  .step h4 {
    width: 100%;
    height: auto;
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    text-align: left;
    margin-bottom: 10px;
  }
  
  .step p {
    width: 100%;
    height: auto;
    font-size: 15px;
    font-weight: 400;
    line-height: 22px;
    text-align: left;
  }
  
  .step-numb {
	margin-top: -20px;	
    flex-shrink: 0;
  }

  /* Проверенные компании */
  .features-flex {
    flex-direction: column;
    gap: 40px;
    padding: 0 20px;
  }

  .verified-companies {
    padding-top: 40px;
    min-height: 1000px;
    margin-top: 0;
    margin-bottom: 50px;
  }
  
  .verified-companies h2 {
    width: 100%;
    height: auto;
    font-size: 24px;
    line-height: 32px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
  }
  
  .subtitle {
    width: 100%;
    height: auto;
    font-size: 15px !important;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 40px !important;
  }
  
  .feature-item {
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
  }
  
  .icon-circle {
    margin-bottom: 15px;
  }
  
  .feature-text {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 24px;
  }

  .disclaimer {
    margin-top: 10px;
    font-size: 11px;
    text-align: center;
  }
  
  /* Выкуп компании */
  .company-buyout {
    height: auto;
    margin-top: 40px;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  
  .company-buyout h2 {
    font-size: 24px;
    line-height: 32px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 25px;
    padding: 0 20px;
  }
  
  .company-buyout-text {
    width: 100%;
    max-width: 400px;
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    margin: 0 auto 30px;
  }
  
  .reviews h2 {
    width: 100%;
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    margin: 0 auto;
    padding-bottom: 15px;
  }
  
  .reviews p {
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    width: 100%;
    max-width: 400px;
  }
  
  .form-company-buyout {
    padding: 0 20px;
    width: 100%;
    max-width: 420px;
    text-align: center;
  }
  
  .icon-feature {
    margin-bottom: 25px;
  }
  
  .feature {
    width: 100%;
    max-width: 420px;
    height: auto;
    min-height: 240px;
    flex: 1;
    padding: 25px;
  }
  
  .feature h3 {
    margin-top: 0;
    font-size: 20px;
  }

  .features {
    flex-direction: column;
    align-items: center;
    gap: 25px;
  }

  .actions {
    flex-direction: column;
    gap: 15px;
  }

  .butn-primary-link {
    display: block;
    font-size: 15px;
  }
  
  .butn-secondary-link {
    width: auto;
    height: auto;
    font-size: 15px;
  }
  
  .reviews {
    height: auto;
    padding: 40px 20px;
    margin-bottom: 80px;
  }
  
  /* FAQ */
  .faq {
    margin-top: 0;
    padding: 40px 20px;
  }
  
  .container-faq {
    padding: 0;
  }
  
  .faq h2 {
    font-size: 24px;
    line-height: 32px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 25px;
  }
  
  .faq p {
    width: 100%;
    height: auto;
    font-weight: 400;
    line-height: 23px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 35px;
    font-size: 15px;
  }
  
  .faq-item-text {
    max-width: 100vw;
    width: 100%;
    height: 78px;
    min-height: 80px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
  }
  
  .faq-item-text-list {
    width: 100%;
    height: 61px;
    min-height: 70px;
  }
  
  .faq-content {
    flex-direction: column-reverse;
    align-items: center;
    gap: 30px;
  }
  
  .faq-item-text h4,
  .faq-item-text-list h4 {
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    text-align: left;
    width: 85%;
  }

  .faq-list-text {
    width: 100%;
  }
  
  .question-form {
    width: 100%;
    max-width: 420px;
  }

  .question-form__input,
  .question-form__textarea {
    width: 100%;
  }

  .question-form__submit {
    margin: 0 auto;
    display: block;
  }
  
  .question-form__notice small {
    width: 100%;
    height: auto;
    font-size: 11px;
    font-weight: 400;
    line-height: 18px;
    text-align: center;
    margin: 15px auto 0;
  }
  
  /* Блог */
  .blog-article {
	  padding: 0 10px;
  }
  
  .blog-article h2 {
	max-width: 100vw;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    margin: auto;
    margin-bottom: 20px;
  }
  
  .blog-description p {
    width: 100%;
    max-width: 400px;
    height: auto;
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    margin: auto;
    margin-bottom: 50px;
  }

  /* Сетка блога - 2 колонки с увеличенными размерами */
  .article-grid {
    width: 100%;
    max-width: 420px;
    height: 600px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 180px;
    justify-content: center;
    gap: 15px;
  }

    .article-card.blue .card-content {
		padding: 12px 15px;
        z-index: 2;
	}

  .article-card {
    width: 100%;
    height: 180px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: flex-end;
  }

  /* Сброс всех старых позиций */
  .card-1,
  .card-2,
  .card-3,
  .card-4,
  .card-5 {
    grid-column: auto !important;
    grid-row: auto !important;
    top: 0 !important;
  }

  /* card-5 - две колонки */
  .card-5 {
    width: 100% !important;
    height: 180px !important;
    grid-column: span 2 !important;
    background-image: url('/images/phone_adaptive.png');
    background-size: cover;
    background-position: center;
    margin-top: -320px;
  }

  /* Остальные карточки */
  .card-1,
  .card-3 {
    background-image: url('/images/handshake.png');
    background-size: cover;
    background-position: center;
  }

  .card-2,
  .card-4 {
    background-color: rgba(1, 122, 203, 1);
  }
  
  /* Правильная перестановка */
  .card-4 {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin-top: -260px;
  }

  .card-3 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-top: -260px;
  }

  .card-content {
    padding: 12px 15px;
    z-index: 2;
  }

  .card-content h3 {
    font-size: 16px;
    line-height: 20px;
    margin: 0 0 6px 0;
    width: 100%;
    height: auto;
  }
  
  .card-5 h3 {
    width: 100%;
    max-width: 300px;
	margin-bottom: -10px;
  }

  .date-time {
    font-size: 14px;
    line-height: 18px;
    opacity: 0.85;
  }

  .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.55), transparent 70%);
    z-index: 1;
  }

  .callback-form {
    width: 100%;
  }
  
  .section-callback__agreement {
    display: none;
  }



  /* Общие улучшения для текста */
  h2 {
    font-size: 24px;
  }

  h3 {
    font-size: 20px;
  }

  p {
    font-size: 15px;
    line-height: 23px;
  }
}

/* Плавные переходы */
@media (min-width: 394px) and (max-width: 480px) {
  .hero,
  .container-shop h1,
  .container-shop p,
  .btn-primary-link,
  .btn-secondary-link,
  .category-card,
  .service-item,
  .stat-item,
  .advantage-item,
  .company-card,
  .info-block,
  .feature {
    transition: all 0.2s ease-in-out;
  }
}

@media (min-width: 481px) and (max-width: 767px) {
  .main-business {
    margin: 0 auto;
    max-width: 767px;
  }

  .hero {
    height: 400px;
    margin: 15px auto;
	margin-top: 0;
    margin-bottom: 100px;
	border-radius:0px;
  }

  .container-shop {
    max-width: 100vw;
	width: 100%;	
    margin: 0 auto;
  }

  .main-business .container-shop h1 {
	max-width: 100vw;
    width: 100%;
    margin-top: 40px;
    margin-left: 30px;
  }

  .container-shop p {
	max-width: 450px;
    width: 100%;
    font-size: 16px;
    line-height: 24px;
    margin-top: 100px;
    margin-left: 30px;
  }

  .btn-primary-link,
  .btn-secondary-link {
    height: 55px;
    margin-top: 220px;
    font-size: 16px;
  }

  .btn-primary-link {
    width: 180px;
    margin-left: 30px;
  }

  .btn-secondary-link {
    width: 180px;
    margin-left: 220px;
  }

  .categories-flex {
    margin-top: 350px;
    margin-left: 30px;
    margin-right: 30px;
    overflow: auto;
  }

  .category-card {
    max-width: 100vw;
    width: 100%;
    height: 150px;
  }
	
  .hero .indicator {
	  margin-bottom: 50px;
  }

  .quick-services {
    padding: 30px 20px;
		margin-bottom: 70px;
  }

  .quick-services h2 {
    font-size: 28px;
    width: 100%;
    margin-bottom: 15px;
  }	

  .quick-services > p {
    font-size: 16px;
    width: 90%;
    margin-bottom: 25px;
  }



  .services-slider {
    width: 100%;
    max-width: 100%;
    margin: 0; /* чтобы прижать к краям, если нужно */
  }
  
  
  .services-wrapper {
    overflow-x: auto;      /* включаем горизонтальный скролл */
    overflow-y: visible;
  }
  
  .quick-services > p  {
	 max-width: 100vw;
     width: 100%;
  }
  
  .service-item p {
    width: auto;
    margin-right: 15px;
  }
  
   .services-flex {
	min-width: 1300px;
    gap: 16px;
  }
  
  .service-item {
    flex: 0 0 45vw;        /* ширина карточки относительно экрана */
  }

    .stats-flex {
        gap: 20px;
        width: 100%;
        padding: 0 20px;
        margin-bottom: 40px;
    }

  .stat-item {
	max-width: 100vw;
    width: 100%;
    height: 180px;
  }
  
  .stat-item h2 {
	 margin: 0;
     font-size: 27px;
  }
  
  .stat-item p {
	  max-width: 100vw;
	  width: 100%;	
  }
  
  .stat-item.blue p {
	   margin: 0 auto;
       max-width: 100vw;
       width: 100%;
  }

  .advantages {
    padding: 40px 20px;
  }

  .advantages h2 {
    font-size: 28px;
  }

  .container-text {
    width: 90%;
    font-size: 16px;
  }

  .advantages-flex {
    flex-direction: column;
    align-items: center;
  }

  .advantage-item {
    width: 100%;
    max-width: 550px;
    height: 100px;
    min-height: 80px;
  }
  
  .column:last-child .advantage-item:nth-last-child(-n + 1	) {
      height: 135px;
  }

  .catalog {
    padding: 40px 20px;
  }

  .catalog h2 {
    font-size: 28px;
  }




  .promo-banner {
    width: 100%;
    height: auto;
    padding: 25px;
    margin: 30px auto;
  }

  .banner-content {
    display: block;
    align-items: center;
  }

  .banner-content p {
    width: 100%;
    text-align: left;
	margin-bottom: 20px;
  }

  .additional-info {
    padding: 40px 20px;
    margin-bottom: 30px;
  }

  .container-ooo-info h2 {
    font-size: 28px;
	max-width: 100vw;
    width: 100%;
	margin-bottom: 50px;
  }

  .info-flexbox {
    max-width: 100vw;
    width: 100%;
    flex-wrap: wrap;
    gap: 25px;
  }

  .info-block {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }

  .card-call-me-back {
    width: 100%;
    margin-top: -70px;
  }

  .callback-form-1 {
    max-width: 100vw;
    width: 100%;
    height: auto;
    padding: 30px 20px;
	border-radius: 0;
  }

  .phone-field {
    display: flex;
    justify-content: center;
    gap: 15px;
	max-width: 192px;
  }

  .container-firm {
    padding: 0 30px;
  }

  .process-steps {
	  display: flex;
      flex-flow: column;
      max-width: fit-content;
      width: 100%;
      margin: 0 auto;
  }


  .step-content {
    flex: 1;
  }

  .verified-companies {
    padding: 40px 20px;
    min-height: 800px;
  }

  .features-flex {
    justify-content: center;
    gap: 40px;
  }
  
  .feature-text {
	  max-width: 100vw;
	  width: 100%;
  }
  
  .feature-item {
    width: 45%;
    min-width: 200px;
  }

  .company-buyout {
    padding: 40px 20px;
  }

  .form-company-buyout {
    width: 100%;
  }

  .features {
    flex-wrap: wrap;
  }

  .feature {
    width: 45%;
    min-width: 250px;
  }

  .faq {
    padding: 40px 20px;
  }

  .faq-content {
    flex-direction: column-reverse;
  }

  .question-form {
     max-width: 100vw;
     width: 100%;
  }
	

	
	.question-form__submit {
		max-width: 100vw;
    padding: 10px;
    display: block;
    margin: 0 auto;
	}
	

	
	.container-faq {
		padding: 0;
	}

  .faq-list-text {
	max-width: 100vw;
    width: 100%;
  }
  
    /* Блог */
  .blog-article {
	 min-height: 1000px;
	 padding: 0 10px;
  }
		
  .blog-article h2 {
	max-width: 100vw;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    margin: auto;
    margin-bottom: 20px;
  }
  
  .blog-description p {
    width: 100%;
    max-width: 400px;
    height: auto;
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    margin: auto;
    margin-bottom: 50px;
  }

  /* Сетка блога - 2 колонки с увеличенными размерами */
  .article-grid {
    width: 100%;
    max-width: 5700px;
    height: 600px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 180px;
    justify-content: center;
    gap: 15px;
  }

  .article-card {
    width: 100%;
    height: 220px;
    border-radius: 10px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: flex-end;
  }

  /* Сброс всех старых позиций */
  .card-1,
  .card-2,
  .card-3,
  .card-4,
  .card-5 {
    grid-column: auto !important;
    grid-row: auto !important;
    top: 0 !important;
  }

  /* card-5 - две колонки */
  .card-5 {
    width: 100% !important;
    height: 280px !important;
    grid-column: span 2 !important;
    background-image: url('/images/phone_adaptive.png');
    background-size: cover;
    background-position: center;
    margin-top: -210px;
  }

  /* Остальные карточки */
  .card-1,
  .card-3 {
    background-image: url('/images/handshake.png');
    background-size: cover;
    background-position: center;
  }

  .card-2,
  .card-4 {
    background-color: rgba(1, 122, 203, 1);
  }
  
  /* Правильная перестановка */
  .card-4 {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin-top: -210px;
  }

  .card-3 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-top: -210px;
  }

  .card-content {
    padding: 12px 15px;
    z-index: 2;
  }

  .card-content h3 {
    font-size: 16px;
    line-height: 20px;
    margin: 0 0 6px 0;
    width: 100%;
    height: auto;
  }
  
  .card-5 h3 {
    width: 100%;
    max-width: 300px;
  }

  .date-time {
    font-size: 14px;
    line-height: 18px;
    opacity: 0.85;
  }

  .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.55), transparent 70%);
    z-index: 1;
  }

  .callback-form {
    width: 100%;
	border-radius: 1px;
  }
  
  .section-callback__agreement {
    display: none;
  }
  
}
@media (max-width: 576px) {
	  .callback-form {
	    width: 100%;
		border-radius: 1px;
		margin:0px !important;
	  }

}
/* Фикс горизонтального скролла 481–767px, НЕ ломая твой дизайн */
@media (min-width: 481px) and (max-width: 767px) {

  /* на всякий случай */
  html, body {
    max-width: 100vw;
    overflow-x: hidden;
  }

  /* каталожная сетка — чтобы не растягивала страницу */
  .catalog-grid {
        max-width: 100vw;
        width: 100%;
        justify-content: flex-start;
        gap: 20px;
        margin-bottom: 40px;
  }

  .company-card {
      flex: 0 0 70%;
  }

  /* баннеры и формы: 100% вместе с паддингами */
  .promo-banner,
  .callback-form-1,
  .form-company-buyout,
  .card-call-me-back {
    max-width: 100vw;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box; /* чтобы padding не добавлял ширину */
  }

  /* блок с информацией, чтобы не вылазил */
  .additional-info,
  .container-ooo-info,
  .info-flexbox {
    max-width: 100vw;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .info-flexbox {
    flex-wrap: wrap;
  }

  /* сетка блога — убираем max-width: 5700px */
  .article-grid {
    max-width: 100vw;
    width: 100%;
    height: auto;
  }
}

/* Доп. фикс для 481–550px (чтобы ничего не распирало) */
@media (min-width: 481px) and (max-width: 550px) {

  .features-flex {
    max-width: 100vw;
    width: 100%;
    margin: 0 auto;
  }

  .feature-text {
    max-width: 100%;
    width: 100%;   /* вместо width: 200% */
  }
}






/* 📱 768px */
@media (min-width: 768px) and (max-width: 999px) {
  .hero {
    height: 500px;
	border-radius:0px;
	border-radius: 0px;
  }
  
  .container-shop {
    max-width: 700px;
  }
  
 .hero .indicator {
  margin-bottom: 130px;
 } 
  
  .categories-flex {
    justify-content: space-between;
    gap: 15px;
    overflow: auto;
  }
  
  .category-card {
     width: 100%;
  }
  
  .services-slider {
    width: 100%;
    max-width: 100%;
    margin: 0;
  }

  .services-wrapper {
    overflow-x: auto;
  }
  

  .services-flex {
    display: flex;
    flex-wrap: nowrap;   /* в одну линию */
    gap: 16px;
    /* ВАЖНО: без width !!! */
  }

.service-item {
  flex: 0 0 min(80vw, 380px);
}


  .service-item p {
    width: auto;
    margin-right: 15px;
  }

  .quick-services > p  {
    max-width: 100vw;
    width: 100%;
  }
  
  .service-item {
    flex: 0 0 45vw;        /* ширина карточки относительно экрана */
  }
  
  .stats {
	    padding-left: 20px;
        padding-right: 20px;
  }
  
    .stats-flex {
         max-width: 100vw;
        width: 100%;
        flex-wrap: nowrap;
        justify-content: flex-start;
        margin-bottom: 60px;
        overflow: auto;
        gap: 15px;
  }
  
  .stat-item {
	  max-width: 100vw;
	  width: 100%;
      min-width: 310px;
  }
  
  .stat-item h2 {
	 font-size: 27px;
  }
  
  .advantages-flex {
    gap: 15px;
  }
  
  .advantage-item {
    min-height: 130px;
    width: 100%;
    max-width: 100vw;
  }
  
  .catalog {
    padding: 30px 0;
  }

    .catalog-grid {
        max-width: 100vw;
        width: 100%;
        justify-content: flex-start;
        gap: 20px;
        margin-bottom: 40px;
    }

  .company-card {
    flex: 0 0 30vw;            /* ширина карточки */
    scroll-snap-align: start;
  }
  

  /* чтобы внутри ничего не вылезало за край */
  .card-header,
  .company-info,
  .company-icons,
  .card-footer {
    padding-left: 10px;
    padding-right: 10px;
  }

  .company-icons {
    justify-content: space-between;
  }

  .card-footer {
    gap: 15px;
  }

  .company-price {
    font-size: 15px;
  }

  .btn-order {
    font-size: 13px;
    white-space: nowrap;
  }
  
  .promo-banner {
	  height: auto;
  }
  
  .banner-content {
	  display: block;
  } 
  
  .banner-content p {
	  font-size: 15px;
	  margin-bottom: 15px;
  }
  
  .btn-go-directory-companies a {
	  padding: 17px 33px;
      font-size: 14px;
  }
  
  .additional-info {
	  padding-left: 10px;
	  padding-right: 10px;
  }
  
  .info-flexbox {
	max-width: 100vw;
    width: 100%;
    gap: 20px;
	overflow: auto;
  }
  
  .info-block {
    flex: 1;
    min-width: 370px;
  }
  
  .callback-form-1 {
    max-width: 100vw;
	border-radius: 1px;
	height: 240px;
  }
  
  .process-sell-firm {
	  min-height: 650px;	
  }
  
  .container-firm {
    max-width: 100%;
    padding: 0 20px; /* поменьше отступы */
  }

  .process-steps {
    display: flex;             /* включаем флекс */
    flex-direction: column;    /* шаги в колонку */
    max-width: fit-content;
    justify-content: center;   /* центрируем по вертикали (если нужно) */
    gap: 30px;
    text-align: center;        /* чтобы текст тоже центрировался */
    margin: 0 auto;
    width: 100%;
  }

  .step {
    max-width: 500px;          /* чтобы очень широкие шаги не растягивались */
    width: 100%;
  }
  
  .step-content h4 {
    text-align: left;
  }
  
  .verified-companies {
	   min-height: 820px;
  }
  
  .features-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 40px;
    justify-content: center;
}

   .feature-item {
    flex: 0 1 calc(50% - 40px);
    max-width: 330px;
    text-align: center;
}
    
	.feature-text {
	    text-align: left;
	}
	
	  .company-buyout {
    padding: 40px 20px;
  }

  .form-company-buyout {
    width: 100%;
  }

  .features {
    flex-wrap: wrap;
  }

  .feature {
    width: 45%;
    min-width: 250px;
  }
	
  .faq {
    padding: 40px 20px;
  }

  .faq-content {
    flex-direction: column-reverse;
  }

  .question-form {
     max-width: 100vw;
     width: 100%;
  }
	
	.faq-item-text {
		max-width: 100vw;
        width: 100%;
	}
	
	.question-form__submit {
		max-width: 100vw;
    padding: 10px;
    display: block;
    margin: 0 auto;
	}
	
	.faq-item-text-list {
		max-width: 100vw;
        width: 100%;
	}
	
	.container-faq {
		padding: 0;
	}

  .faq-list-text {
	max-width: 100vw;
    width: 100%;
  }
  
  .blog-article {
	  min-height: 1000px;
	  padding: 0 10px;
  }
  
   .blog-article h2 {
	max-width: 100vw;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
    text-align: center;
    margin: auto;
    margin-bottom: 20px;
  }
  
  .blog-description p {
    width: 100%;
    max-width: 400px;
    height: auto;
    font-size: 15px;
    font-weight: 400;
    line-height: 23px;
    margin: auto;
    margin-bottom: 50px;
  }

  /* Сетка блога - 2 колонки с увеличенными размерами */
  .article-grid {
    width: 100%;
    max-width: 5700px;
    height: 600px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 180px;
    justify-content: center;
    gap: 15px;
  }

  .article-card {
    width: 100%;
    height: 220px;
    border-radius: 10px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: flex-end;
  }

  /* Сброс всех старых позиций */
  .card-1,
  .card-2,
  .card-3,
  .card-4,
  .card-5 {
    grid-column: auto !important;
    grid-row: auto !important;
    top: 0 !important;
  }

  /* card-5 - две колонки */
  .card-5 {
    width: 100% !important;
    height: 280px !important;
    grid-column: span 2 !important;
    background-image: url('/images/phone_adaptive.png');
    background-size: cover;
    background-position: center;
    margin-top: -210px;
  }

  /* Остальные карточки */
  .card-1,
  .card-3 {
    background-image: url('/images/handshake.png');
    background-size: cover;
    background-position: center;
  }

  .card-2,
  .card-4 {
    background-color: rgba(1, 122, 203, 1);
  }
  
  /* Правильная перестановка */
  .card-4 {
    grid-column: 1 !important;
    grid-row: 2 !important;
    margin-top: -210px;
  }

  .card-3 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-top: -210px;
  }

  .card-content {
    padding: 12px 15px;
    z-index: 2;
  }

  .card-content h3 {
    font-size: 16px;
    line-height: 20px;
    margin: 0 0 6px 0;
    width: 100%;
    height: auto;
  }
  
  .card-5 h3 {
    width: 100%;
    max-width: 300px;
  }

  .date-time {
    font-size: 14px;
    line-height: 18px;
    opacity: 0.85;
  }

  .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.55), transparent 70%);
    z-index: 1;
  }

  .callback-form {
    width: 100%;
	border-radius: 1px;
  }
  
  .section-callback__agreement {
    display: none;
  }
  
}

@media (min-width: 768px) and (max-width: 999px) {

  /* Отключаем горизонтальный скролл */
  body, html {
    overflow-x: hidden !important;
  }

  /* Любой элемент, который шире — заставляем ужаться */

  /* Основные кандидаты, которые обычно вылезают */
  .hero,
  .container-shop,
  .hero-content,
  .company-cards,
  .cards-slider,
  .advantages-flex,
  .stats-flex,
  .verified-companies,
  .company-buyout,
  .reviews {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto !important;
  }
  
  .stats-flex {
	  margin-bottom: 30px !important;
  }
  
  .company-buyout {
	  margin-top: 31px !important;
  }

	.services-flex {
        min-width: 1300px;
        gap: 16px;
    }

  /* Карточки в flex не должны быть больше экрана */
  .card-item,
  .company-card,
  .review-item {
    max-width: 100% !important;
  }
  
      .service-item {
        flex: 0 0 45vw;
    }
  
	
}


/* 💻 1024px */
@media (min-width: 1000px) and (max-width: 1199px) {
  .hero {
    max-width: 100vw;
	border-radius: 0px;
  }
  
  .container-shop {
    max-width: 900px;
  }
  
  .categories-flex {
	  overflow: scroll;
  }
  
  .quick-services {
	  padding-left: 10px;
	  padding-right: 10px;
  }

.services-slider {
    width: 100%;
    max-width: 100%;
    margin: 0; /* чтобы прижать к краям, если нужно */
  }
  
  
  .services-wrapper {
    overflow-x: auto;      /* включаем горизонтальный скролл */
    overflow-y: visible;
  }

.services-flex {
	min-width: 130vw;
    gap: 16px;
  }
  
  .service-item {
     flex: 0 0 40vw;        /* ширина карточки относительно экрана */
  }
  
.stats-flex {
    width: 100%;
    max-width: 1000px;     /* как ты хотел */
    margin: 0 auto;
    justify-content: center;
    gap: 20px;
	margin-bottom: 106px;
  }

  .stat-item {
    flex: 0 1 calc(50% - 20px);  /* Две карточки в строке */
    max-width: calc(50% - 20px);
    height: auto;                /* пусть высота сама подстраивается */
  }

  /* Последняя карточка (розовая) — на всю ширину */
  .stat-item.pink {
    max-width: 100%;
  }
  
  .advantages-flex {
    max-width: 1000px;
  }
  
  .advantage-item {
    width: 480px;
	height: 105px;
  }
  
  .catalog {
	  padding-left: 10px;
	  padding-right: 10px;
  }
  
  .catalog-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    justify-content: flex-start;
  }
  
	.promo-banner {
		height: auto;
	}
	
	.btn-go-directory-companies {
		height: 50px;
	}
  
  .banner-content {
	   display: block;
  }
  
  .banner-content p {
	  margin-bottom: 10px;
  }
  
  .additional-info {
	  padding-left: 10px;
	  padding-right: 10px;
  }
  
  .info-flexbox {
    max-width: 100vw;
	width: 100%;
	overflow: scroll;
  }
  
  .card-call-me-back {
    max-width: 1000px;
  }
  
      .features {
        flex-wrap: wrap;
    }
  
   .feature {
        width: 45%;
        min-width: 250px;
    }
  
  .company-buyout {
	  padding-left: 10px;
	  padding-right: 10px;
  }
  
    .container-firm {
    max-width: 100%;
    padding: 0 20px; /* поменьше отступы */
  }

  .process-steps {
    display: flex;             /* включаем флекс */
    align-items: center;       /* центрируем по горизонтали */
    justify-content: center;   /* центрируем по вертикали (если нужно) */
    gap: 30px;
    text-align: center;        /* чтобы текст тоже центрировался */
    margin: 0 auto;
    width: 100%;
  }

  .step {
    max-width: 500px;          /* чтобы очень широкие шаги не растягивались */
    width: 100%;
  }
  
  .step-content h4 {
	overflow-wrap: break-word;
    text-align: left;
	font-size: 18px;
  }
  
  .step p {
        max-width: 100vw;
        width: 100%;
    }
 
 .step-numb {
	 margin: auto;
     margin-top: -20px;
     margin-right: 10px;
     display: block;
 }
  
  .verified-companies {
	   min-height: 820px;
  }
  
  .features-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 40px;
    justify-content: center;
}

   .feature-item {
    flex: 0 1 calc(50% - 40px);
    max-width: 330px;
    text-align: center;
}
    
	.feature-text {
	    text-align: left;
	}
	
  .faq {
    padding: 40px 20px;
  }

  .faq-content {
    flex-direction: column-reverse;
  }

  .question-form {
     max-width: 100vw;
     width: 100%;
  }
	
	.faq-item-text {
		max-width: 100vw;
        width: 100%;
	}
	
	.question-form__submit {
		max-width: 100vw;
    padding: 10px;
    display: block;
    margin: 0 auto;
	}
	
	.faq-item-text-list {
		max-width: 100vw;
        width: 100%;
	}
	
	.container-faq {
		padding: 0;
	}

  .faq-list-text {
	max-width: 100vw;
    width: 100%;
  }


  
  .verified-companies .container-companies {
    max-width: 1000px;
  }
  
  .form-company-buyout {
    width: 1000px;
  }
  
  .container-faq {
    max-width: 1000px;
  }
  
  .article-grid {
    width: 1000px;
    grid-template-columns: repeat(3, 320px);
    gap: 15px;
  }
  
  .card-content h3 {
	  max-width: 100vw;
	  width: 100%;
  }
  
  .card-5 {

  }
  
    .callback-form {
      width: 1000px;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
	.banner-content {
        display: flex;
    }
	.btn-go-directory-companies a {
		padding: 13px 30px;
	    display: ruby-text;
	}
}
	
/* 🖥️ 1200px - 1300px */
@media (min-width: 1200px) and (max-width: 1320px) {
  
  .additional-info {
	  padding-left: 10px;
	  padding-right: 10px;
  }
  
  .hero {
      max-width: 100vw;/* Максимальная ширина hero */
	  border-radius: 0px;
  }

  .container-shop {
    max-width: 900px;
  }

  .categories-flex {
    overflow: scroll; /* Прокрутка для категорий */
  }

  .quick-services {
	  padding-left: 10px;
	  padding-right: 10px;
  }

  .services-slider {
    width: 100%;
    max-width: 100%;
    margin: 0; /* Чтобы прижать к краям */
  }

  .services-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
  }

  .services-flex {
     gap: 11px;
  }

  .service-item {
    max-width: 410px;
  }

  .stats-flex {
    width: 100%;
    max-width: 1000px; /* Как в твоем примере */
    margin: 0 auto;
    justify-content: center;
    gap: 20px;
    margin-bottom: 106px;
  }

  .stat-item {
    flex: 0 1 calc(50% - 20px);  /* Две карточки в строке */
    max-width: calc(50% - 20px);
    height: auto;                /* Пусть высота сама подстраивается */
  }

  /* Последняя карточка (розовая) — на всю ширину */
  .stat-item.pink {
    max-width: 100%;
  }

  .advantages-flex {
    max-width: 1000px;
  }

  .advantage-item {
    max-width: 47vw;
    min-height: 105px;
  }

  .catalog {
	 padding: 50px 10px;
  }

  .catalog-grid {
    grid-template-columns: repeat(4, 1fr); /* 4 колонки */
    gap: 14px;
  }
  
  .company-card {
      flex: 0 0 303px;
  }

  .promo-banner {
    height: auto;
  }

  .banner-content {
    display: flex;
  }

  .banner-content p {
    margin-bottom: 10px;
  }

  .info-flexbox {
    max-width: 100vw;
    width: 100%;
    overflow: scroll;
  }

  .card-call-me-back {
    width: 1000px;
  }

  .container-firm {
    max-width: 100%;
    padding: 0 20px; /* Меньше отступы */
  }

    .process-steps {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 30px;
        text-align: center;
        margin: 0 auto;
        width: 100%;
    }

    .step p {
        max-width: 100vw;
        width: 100%;
    }

  .step {
    max-width: 500px; /* Шаги не растягиваются */
    width: 100%;
  }

  .step-content h4 {
    text-align: left;
	font-size: 20px;
  }

  .verified-companies {
    min-height: 820px;
  }

  

  .features-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 40px;
    justify-content: center;
  }

  .feature-item {
    flex: 0 1 calc(50% - 40px);
    max-width: 330px;
    text-align: center;
  }

  .feature-text {
    text-align: left;
  }




  .question-form {
    max-width: 100vw;
    width: 100%;
  }



  .question-form__submit {
    max-width: 100vw;
    padding: 10px;
    display: block;
    margin: 0 auto;
  }



  .verified-companies .container-companies {
    max-width: 1000px;
  }

  .form-company-buyout {
    width: 1000px;
  }



  .article-grid {
    width: 1000px;
    grid-template-columns: repeat(3, 320px);
    gap: 15px;
  }

	.card-content h3 {
        max-width: 100vw;
        width: 100%;
    }

  .callback-form {
    width: 1000px;
  }
  
  .callback-form__subtitle {
	  font-size: 14px;
  } 
}

@media (min-width: 1321px) and (max-width: 1400px) {
	.step-content {
		max-width: 100vw;
		width: 100%;
	}
	
	.process-steps {
		gap: 0px;
	}
	
	.card-content h3 {
        max-width: 100vw;
        width: 100%;
    }
	
	.quick-services {
		padding-left: 10px; 
		padding-right: 10px;
	}
	
	.advantages-flex {
	    max-width: 1000px;
	}
	
	.advantage-item {
		max-width: 90vw;
	}
	
	.arrow-left {
    left: -31px;
     }
	 
	.arrow-right {
      right: -31px;
    }
	
	.arrow  {
		width: 28px;
        height: 28px;
	}
	
	.blog-article {
		padding: 0 10px;
	}

}


/* Улучшения для планшетов */
@media (min-width: 768px) and (max-width: 1023px) {
  .hero {
    margin-bottom: 30px !important;
	border-radius: 0px;
  }
  
  .quick-services {
    padding: 30px 20px;
	margin-bottom: 65px;
  }
  
  .catalog {
    padding: 40px 20px;
  }
}
  

}

/* Исправления для очень маленьких экранов */
@media (max-width: 320px) {
  .main-business .container-shop h1 {
    font-size: 22px;
    width: 280px;
    margin-left: 10px;
  }
  
  .container-shop p {
    max-width: 300px;
    margin-left: 10px;
  }
  
  .btn-primary-link,
  .btn-secondary-link {
	margin-top: 200px;
    margin-left: 10px;
    width: 140px;
  }
  
  .btn-secondary-link {
    margin-left: 160px;
  }
  
  .category-card {
    min-width: 280px;
  }
}

/* Скрыть стрелки на всех экранах меньше 1380px */
@media (max-width: 1360px) {
  .arrow, .arrow-left, .arrow-right {
    display: none !important; /* Скрываем стрелки */
  }
  
}

@media (max-width: 1350px) {
  .services-wrapper,
  .catalog-wrapper {
    overflow-x: auto; 
  }
 
}

@media (max-width: 393px) {
    .callback-form__rows .field {
         margin-right: 0px !important; 
    }
}

@media (max-width: 420px) {
    .callback-form__main {
        max-width: 148px !important;
        margin-bottom: 0;
    }
}
@media (max-width: 768px) {
    .section-callback__agreement {
        display: none !important;
    }
}
@media (max-width: 576px) {
    .section-callback__agreement {
        display: block !important;
    }
}
.faq-content .form-success .form-success__title{
	text-align:center;
}

	


/* End */


/* Start:/bitrix/templates/newurist_copy_main/components/bitrix/catalog.section/catalog_on__main/style.min.css?1766794759161*/
.icon-badge{width:30px !important;height:30px !important}.icon-badge svg,.select__option-box{width:20px !important;height:20px !important;padding:2px !important}
/* End */
/* /bitrix/templates/newurist_copy_main/css/style_main.css?1766794760107746 */
/* /bitrix/templates/newurist_copy_main/components/bitrix/catalog.section/catalog_on__main/style.min.css?1766794759161 */
