
/* Оставить только .top-infobar (контакты) и .header-mainbar (лого+меню) */
#logo img,
.header-logo img {
    max-height: 50px;
    height: auto;
    width: auto;
    display: block;
    margin: 0;
    padding: 0;
}

#logo {
  min-width: 80px;
  margin-right: 18px;
  align-items: center;
  display: flex;
}

/* ОБЁРТКА ДЛЯ ВЕРХНЕЙ СТРОКИ */
.container.heade {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none !important;
  min-height: 56px;
  flex-wrap: wrap;
}

/* ВЕРХНЯЯ СТРОКА */
.top-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin: 0;
  padding: 0;
  border-bottom: none !important;
  background: none !important;
  flex-wrap: wrap;
  gap: 10px; /* вот это добавь! */
}

/* КОЛОНКИ В ВЕРХНЕЙ СТРОКЕ */
.th-col {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  min-width: 0;
}

.th-phone .main-phone a {
  color: #222;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: 0.5px;
}

.th-phone .reg-phones {
  font-size: 12px;
  color: #aaa;
  margin-left: 10px;
}

.th-phone .reg-phones a {
  color: #aaa;
  text-decoration: none;
  transition: color .15s;
}
.th-phone .reg-phones a:hover {
  color: #d10000;
  text-decoration: underline;
}
.th-phone .sep {
  margin: 0 8px;
  color: #ccc;
}

.th-email a {
  color: #222;
  font-weight: 500;
  text-decoration: none;
}
.th-email a:hover {
  color: #d10000;
  text-decoration: underline;
}

.th-time {
  color: #d10000;
  font-weight: 500;
  margin-left: 0;
}

/* Мобильная адаптация */
@media (max-width: 900px) {
  .buh2-block { padding: 13px 0 7px 0; border-radius: 0; }
  .buh2-title { font-size: 1.15rem; }
  .buh2-desc { font-size: 1.02rem; }
  .buh2-grid-top { flex-direction: column; gap: 11px; align-items: center; }
  .buh2-card { min-width: 0; width: 96vw; max-width: 400px; padding: 13px 2vw 11px 2vw; }
  .buh2-cloud { max-width: 99vw; border-radius: 10px; padding: 7px 2vw 6px 2vw; }
  .buh2-bottom-row { flex-direction: column; gap: 14px; margin-top: 17px; }
  .buh2-features, .buh2-form-wrap { max-width: 98vw; }
  .buh2-form-wrap { padding: 13px 2vw 9px 2vw; }
}

@media (max-width: 700px) {
  .buh2-faq { padding: 19px 3vw 15px 3vw; border-radius: 12px; }
  .buh2-faq-title { font-size: 1.1rem; }
  .buh2-faq-list { gap: 13px; }
  .buh2-faq-item { padding: 10px 7px 7px 7px; }
  .buh2-faq-q { font-size: 1em; padding-right: 28px; }
  .buh2-faq-a { font-size: 0.97em; }
}

@media (max-width: 800px) {
  .buh2-compare { padding: 18px 2vw 13px 2vw; }
  .buh2-compare-title { font-size: 1.1rem; }
  .buh2-compare-row, .buh2-compare-header { font-size: 0.99em; }
}
@media (max-width: 600px) {
  .buh2-compare { padding: 9px 0 6px 0; border-radius: 8px; }
  .buh2-compare-row > div { font-size: 0.95em; min-width: 70px; padding: 0 1px; }
}

@media (max-width: 900px) {
  .buh2-reviews-cards { flex-direction: column; gap: 12px; align-items: center; }
  .buh2-review-card { max-width: 99vw; min-width: 0; }
}

@media (max-width: 980px) {
  .buh2-process-steps { flex-direction: column; gap: 10px; align-items: center; }
  .buh2-process-arrow { display: none; }
  .buh2-process-step { max-width: 98vw; min-width: 0; margin-bottom: 10px; }
}

@media (max-width: 1300px) {
  .buh2-process {
    max-width: 97vw;
    padding: 23px 2vw 18px 2vw;
  }
  .buh2-process-step {
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    padding: 24px 7px 15px 7px;
    font-size: 0.97em;
    height: 325px;
    min-height: 325px;
    max-height: 325px;
  }
  .buh2-process-title { font-size: 1.05rem; }
	
  .buh2-process-step-title { font-size: 0.97em; }
}

@media (max-width: 1050px) {
  .buh2-process-steps {
    flex-wrap: wrap;
    gap: 22px 7vw;
    justify-content: center;
  }
  .buh2-process-step {
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    flex: 1 1 210px;
    margin-bottom: 0;
    height: 285px;
    min-height: 285px;
    max-height: 285px;
  }
  .buh2-process-arrow {
    display: none;
  }
}

@media (max-width: 900px) {
  .buh2-process { max-width: 99vw; padding: 11px 1vw 7px 1vw; }
  .buh2-process-title { font-size: 0.97rem; }
  .buh2-process-steps { flex-direction: column; gap: 12px; }
  .buh2-process-step {
    width: auto;
    min-width: 0;
    max-width: 98vw;
    padding: 13px 3vw 12px 3vw;
    height: auto;
    min-height: 0;
    max-height: unset;
  }
}
.menu,
.menu li,
.menu li a {
  box-shadow: none !important;
  background: none !important;
}

@media (max-width: 900px) {
  .top-header { font-size: 14px; }
  #logo img { max-height: 26px !important; }
}

.menu,
.nav {
  box-shadow: none !important;
}

@media (max-width: 1000px) {
  .container.heade {
    min-height: 0;
  }
  #logo { margin-right: 0; min-width: 0; }
}

/* Мобильная адаптация */
@media (max-width: 900px) {
  .buh2-block { padding: 13px 0 7px 0; border-radius: 0; }
  .buh2-title { font-size: 1.15rem; }
  .buh2-desc { font-size: 1.02rem; }
  .buh2-grid-top { flex-direction: column; gap: 11px; align-items: center; }
  .buh2-card { min-width: 0; width: 96vw; max-width: 400px; padding: 13px 2vw 11px 2vw; }
  .buh2-cloud { max-width: 99vw; border-radius: 10px; padding: 7px 2vw 6px 2vw; }
  .buh2-bottom-row { flex-direction: column; gap: 14px; margin-top: 17px; }
  .buh2-features, .buh2-form-wrap { max-width: 98vw; }
  .buh2-form-wrap { padding: 13px 2vw 9px 2vw; }
}

@media (max-width: 700px) {
  .buh2-faq { padding: 19px 3vw 15px 3vw; border-radius: 12px; }
  .buh2-faq-title { font-size: 1.1rem; }
  .buh2-faq-list { gap: 13px; }
  .buh2-faq-item { padding: 10px 7px 7px 7px; }
  .buh2-faq-q { font-size: 1em; padding-right: 28px; }
  .buh2-faq-a { font-size: 0.97em; }
}

@media (max-width: 800px) {
  .buh2-compare { padding: 18px 2vw 13px 2vw; }
  .buh2-compare-title { font-size: 1.1rem; }
  .buh2-compare-row, .buh2-compare-header { font-size: 0.99em; }
}
@media (max-width: 600px) {
  .buh2-compare { padding: 9px 0 6px 0; border-radius: 8px; }
  .buh2-compare-row > div { font-size: 0.95em; min-width: 70px; padding: 0 1px; }
}

@media (max-width: 900px) {
  .buh2-reviews-cards { flex-direction: column; gap: 12px; align-items: center; }
  .buh2-review-card { max-width: 99vw; min-width: 0; }
}

@media (max-width: 980px) {
  .buh2-process-steps { flex-direction: column; gap: 10px; align-items: center; }
  .buh2-process-arrow { display: none; }
  .buh2-process-step { max-width: 98vw; min-width: 0; margin-bottom: 10px; }
}

@media (max-width: 1300px) {
  .buh2-process {
    max-width: 97vw;
    padding: 23px 2vw 18px 2vw;
  }
  .buh2-process-step {
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    padding: 24px 7px 15px 7px;
    font-size: 0.97em;
    height: 325px;
    min-height: 325px;
    max-height: 325px;
  }
  .buh2-process-title { font-size: 1.05rem; }
	
  .buh2-process-step-title { font-size: 0.97em; }
}

@media (max-width: 1050px) {
  .buh2-process-steps {
    flex-wrap: wrap;
    gap: 22px 7vw;
    justify-content: center;
  }
  .buh2-process-step {
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    flex: 1 1 210px;
    margin-bottom: 0;
    height: 285px;
    min-height: 285px;
    max-height: 285px;
  }
  .buh2-process-arrow {
    display: none;
  }
}

@media (max-width: 900px) {
  .buh2-process { max-width: 99vw; padding: 11px 1vw 7px 1vw; }
  .buh2-process-title { font-size: 0.97rem; }
  .buh2-process-steps { flex-direction: column; gap: 12px; }
  .buh2-process-step {
    width: auto;
    min-width: 0;
    max-width: 98vw;
    padding: 13px 3vw 12px 3vw;
    height: auto;
    min-height: 0;
    max-height: unset;
  }
}

/* Мобильная адаптация */
@media (max-width: 900px) {
  .buh2-block { padding: 13px 0 7px 0; border-radius: 0; }
  .buh2-title { font-size: 1.15rem; }
  .buh2-desc { font-size: 1.02rem; }
  .buh2-grid-top { flex-direction: column; gap: 11px; align-items: center; }
  .buh2-card { min-width: 0; width: 96vw; max-width: 400px; padding: 13px 2vw 11px 2vw; }
  .buh2-cloud { max-width: 99vw; border-radius: 10px; padding: 7px 2vw 6px 2vw; }
  .buh2-bottom-row { flex-direction: column; gap: 14px; margin-top: 17px; }
  .buh2-features, .buh2-form-wrap { max-width: 98vw; }
  .buh2-form-wrap { padding: 13px 2vw 9px 2vw; }
}

@media (max-width: 700px) {
  .buh2-faq { padding: 19px 3vw 15px 3vw; border-radius: 12px; }
  .buh2-faq-title { font-size: 1.1rem; }
  .buh2-faq-list { gap: 13px; }
  .buh2-faq-item { padding: 10px 7px 7px 7px; }
  .buh2-faq-q { font-size: 1em; padding-right: 28px; }
  .buh2-faq-a { font-size: 0.97em; }
}

@media (max-width: 800px) {
  .buh2-compare { padding: 18px 2vw 13px 2vw; }
  .buh2-compare-title { font-size: 1.1rem; }
  .buh2-compare-row, .buh2-compare-header { font-size: 0.99em; }
}
@media (max-width: 600px) {
  .buh2-compare { padding: 9px 0 6px 0; border-radius: 8px; }
  .buh2-compare-row > div { font-size: 0.95em; min-width: 70px; padding: 0 1px; }
}

@media (max-width: 900px) {
  .buh2-reviews-cards { flex-direction: column; gap: 12px; align-items: center; }
  .buh2-review-card { max-width: 99vw; min-width: 0; }
}

@media (max-width: 980px) {
  .buh2-process-steps { flex-direction: column; gap: 10px; align-items: center; }
  .buh2-process-arrow { display: none; }
  .buh2-process-step { max-width: 98vw; min-width: 0; margin-bottom: 10px; }
}

@media (max-width: 1300px) {
  .buh2-process {
    max-width: 97vw;
    padding: 23px 2vw 18px 2vw;
  }
  .buh2-process-step {
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    padding: 24px 7px 15px 7px;
    font-size: 0.97em;
    height: 325px;
    min-height: 325px;
    max-height: 325px;
  }
  .buh2-process-title { font-size: 1.05rem; }
	
  .buh2-process-step-title { font-size: 0.97em; }
}

@media (max-width: 1050px) {
  .buh2-process-steps {
    flex-wrap: wrap;
    gap: 22px 7vw;
    justify-content: center;
  }
  .buh2-process-step {
    width: 220px;
    min-width: 220px;
    max-width: 220px;
    flex: 1 1 210px;
    margin-bottom: 0;
    height: 285px;
    min-height: 285px;
    max-height: 285px;
  }
  .buh2-process-arrow {
    display: none;
  }
}

@media (max-width: 900px) {
  .buh2-process { max-width: 99vw; padding: 11px 1vw 7px 1vw; }
  .buh2-process-title { font-size: 0.97rem; }
  .buh2-process-steps { flex-direction: column; gap: 12px; }
  .buh2-process-step {
    width: auto;
    min-width: 0;
    max-width: 98vw;
    padding: 13px 3vw 12px 3vw;
    height: auto;
    min-height: 0;
    max-height: unset;
  }
}
.menu,
.menu li,
.menu li a {
  box-shadow: none !important;
  background: none !important;
}

/* Мобильная адаптация */

@media (max-width: 900px) {
    .hero-title { font-size: 1.55rem; }
    .hero-actions { gap: 10px; }
}
@media (max-width: 600px) {
    .hero-title { font-size: 1.08rem; }
}
@media (max-width: 900px) {
    .hero-cover-inner { flex-direction: column; align-items: flex-start; }
    .hero-content { width: 100%; margin-bottom: 24px; }
    .hero-image-wrapper { width: 100%; justify-content: flex-start; margin: 0 auto; }
    .hero-image { max-width: 150px; height: 80px; }
}
@media (max-width: 600px) {
    .hero-cover { padding: 32px 0 14px 0; }
    .hero-title { font-size: 1.05rem; }
    .hero-image { max-width: 90px; height: 50px; }
}
@media (max-width: 767px) {
  .show-desktop { display: none !important; }
  .show-mobile  { display: inline-block !important; }
}
@media (max-width: 991px) {
  .hero-slide {
    flex-direction: column;
    gap: 38px;
    padding: 0 2vw;
    height: auto;
    min-height: unset;
    align-items: stretch;
  }
  .form-column {
    justify-content: center;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
  .wow-form {
    margin: 0 auto;
    max-width: 99vw;
    padding: 28px 8px 18px 8px;
  }
  .text-column h1 {
    font-size: 2.05rem;
  }
  .benefit-list {
    flex-direction: column;
    gap: 14px;
  }
}

@media (max-width: 700px) {
  .hero-1c-benefits-block {
    padding: 11px 3vw 11px 3vw;
    max-width: 99vw;
    margin: 19px auto 13px auto;
    text-align: center;
  }
  .hero-1c-benefits-block h2 {
    font-size: 1.06rem;
    font-weight: 800;
    margin-bottom: 14px;
    color: #232323;
    line-height: 1.25;
  }
  .benefits-grid {
    display: flex;
    flex-direction: column;
    gap: 13px;
    align-items: center;
    margin: 0;
    padding: 0;
  }
  .benefit {
    background: #f7fafd;
    border-radius: 13px;
    box-shadow: 0 1.5px 7px rgba(0,0,0,0.04);
    min-width: 0;
    max-width: 99vw;
    width: 97vw;
    padding: 20px 8px 16px 8px;
    text-align: center;
    font-size: 0.98rem;
  }
  .benefit-icon {
    font-size: 1.45rem;
    margin-bottom: 7px;
  }
  .benefit-title {
    font-weight: 700;
    font-size: 1.03rem;
    margin-bottom: 4px;
    color: #222;
  }
  .benefit-desc {
    font-size: 0.97rem;
    color: #424242;
  }
}
@media (max-width: 600px) {
  .hero-section {
    padding: 0;
  }
  .hero-slide {
    padding: 0 4vw !important;
    max-width: 100vw !important;
    height: auto;
    gap: 24px !important;
  }
  .text-column, .form-column {
    padding: 0 !important;
    max-width: 100vw !important;
  }
  .text-column h1 {
    font-size: 1.12rem !important;
    line-height: 1.16 !important;
    word-break: break-word !important;
    white-space: normal !important;
    padding: 0 2vw !important;
    margin-bottom: 16px !important;
    text-align: center !important;
  }
  .main-title, .accent-red {
    font-size: 1.09rem !important;
  }
  .subhead, .benefit-list {
    font-size: 1rem !important;
    text-align: center !important;
    justify-content: center !important;
  }
  .benefit-list {
    flex-direction: column !important;
    gap: 13px !important;
    align-items: center !important;
    margin-bottom: 13px !important;
  }
}
@media (max-width: 700px) {
  .hero-company-note {
    font-size: 0.97rem;
    text-align: center;
    justify-content: center;
    margin-bottom: 10px;
  }
}
@media (max-width: 1200px) {
  .hero-slide {
    gap: 26px;
    padding: 0 14px;
    max-width: 95vw;
  }
  .text-column h1 {
    font-size: 2.1rem;
  }
  .main-title { font-size: 1.1rem; }
  .accent-red { font-size: 1.07rem; }
}
@media (max-width: 1050px) {
  .hero-slide {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding: 0 7vw;
    max-width: 99vw;
    height: auto;
  }
  .form-column {
    justify-content: center;
    margin: 0 auto;
    width: 100%;
  }
  .wow-form {
    margin: 0 auto;
  }
  .text-column,
  .text-column h1,
  .subhead,
  .benefit-list {
    text-align: center !important;
    align-items: center !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  .benefit-list {
    justify-content: center !important;
    gap: 13px;
    flex-wrap: wrap;
  }
}
@media (max-width: 700px) {
  .hero-slide {
    padding: 0 2vw !important;
  }
  .text-column h1 {
    font-size: 1.15rem !important;
    line-height: 1.14 !important;
  }
  .main-title, .accent-red { font-size: 1.08rem !important; }
}
@media (max-width: 700px) {
  .hero-1c-form {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .hero-1c-form input[type="tel"] {
    width: 100% !important;
    min-width: 0;
    max-width: 100%;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    box-sizing: border-box;
    font-size: 1.08rem;
    padding: 10px 14px;
    line-height: 1.2 !important;
    resize: none !important;
  }
  .hero-1c-form button {
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    font-size: 1.08rem;
    padding: 10px 0;
  }
}
@media (max-width: 900px) {
  .benefits-grid { flex-direction: column; gap: 20px; }
  .benefit { max-width: 100%; }
}
@media (max-width: 600px) {
  .benefits-cta-card {
    padding: 17px 2vw 17px 2vw;
    border-radius: 13px;
    max-width: 99vw;
  }
  .benefits-cta-main-alt {
    font-size: 1.02rem;
  }
}
@media (max-width: 650px) {
  .service-variants-cards {
    flex-direction: column;
    gap: 18px;
    align-items: center;
  }
  .service-variant-card {
    width: 98vw;
    max-width: 400px;
    min-width: 0;
    margin: 0 auto;
    padding: 32px 10px 24px 10px;
  }
}
@media (max-width: 650px) {
  .service-variant-card {
    padding: 26px 7vw 20px 7vw;
    font-size: 1.04rem;
  }
}
@media (max-width: 650px) {
  .svc-btn {
    width: 100%;
    padding: 15px 0;
    font-size: 1.09rem;
  }
}
@media (max-width: 600px) {
  .custom-feedback-form-block {
    padding: 11px 4vw 10px 4vw;
    border-radius: 11px;
  }
  .feedback-form-title {
    font-size: 1.07rem;
  }
}
@media (max-width: 700px) {
  .pricing-recovery-accordion {
    padding: 0;
  }
  .pricing-recovery-toggle {
    font-size: 1rem;
    padding: 14px 10px 14px 14px;
  }
  .pricing-recovery-table {
    padding: 0 7px 9px 7px;
    font-size: 0.98rem;
  }
}
@media (max-width: 1000px) {
  .review-grid {
    grid-template-columns: 1fr;
  }
  .review-card {
    width: 95%;
    max-width: 400px;
    height: auto;
  }
}
@media (max-width: 1000px) {
  .service-variants-cards { gap: 10px; }
  .service-variant-card { width: 97vw; max-width: 400px; margin: 0 auto 14px auto; }
}
@media (max-width: 600px) {
  .service-variants { padding: 0 1vw; }
  .service-variant-card { padding: 24px 7px 21px 7px; border-radius: 11px;}
  .service-variants-title { font-size: 1.17rem; }
}
@media (max-width: 900px) {
  .company-stats-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
  .stats-card { width: 90%; min-width: 0; }
}
@media (max-width: 600px) {
  .company-stats-cards {
    grid-template-columns: 1fr;
    gap: 18px;
    align-items: center;
  }
  .stats-card { width: 95vw; max-width: 350px; }
  .company-stats-title { font-size: 1.12rem; }
  .company-stats-phone { font-size: 1.05rem; }
}
@media (max-width: 700px) {
  .consult-line-inner {
    padding: 18px 7px 14px 7px;
    border-radius: 12px;
  }
  .consult-line-title { font-size: 1.01rem; }
  .consult-line-text { font-size: 0.99rem; }
}
@media (max-width: 650px) {
  .faq-section { padding: 0 1vw; }
  .faq-title { font-size: 1.2rem; }
  .faq-list { padding: 12px 3vw 8px 3vw; }
  .faq-question { font-size: 1.03rem; }
  .faq-answer { font-size: 0.98rem; }
}
@media (max-width: 900px) {
  .company-block.modern {
    padding: 24px 10px 24px 8px;
    gap: 24px;
    border-left-width: 4px;
  }
  .company-logo img {
    width: 120px;
  }
  .company-info h2 {
    font-size: 1.2rem;
  }
  .company-info li {
    font-size: 1rem;
  }
  .company-block.modern {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 820px) {
  .clean-row {
    flex-direction: column;
    gap: 18px;
    align-items: center;
  }
  .clean-rows { gap: 24px; }
  .clean-title { font-size: 1.35rem; }
}
@media (max-width: 480px) {
  .clean-goal { font-size: 0.99rem; padding: 12px 8px; }
  .clean-title { font-size: 1.1rem; }
}
@media (max-width: 900px) {
  .service-cards { grid-template-columns: 1fr; gap: 18px; }
  .service-card { min-height: 0; }
}
@media (max-width: 500px) {
  .service-catalog { padding: 0 2vw 14vw 2vw; }
  .service-card { padding: 18px 5px 13px 5px; }
  .service-btn { font-size: 1rem; padding: 9px 12px; }
  .cta-title { font-size: 1.01rem; }
}
@media (max-width: 950px) {
  .order-cards.better { gap: 18px; }
  .order-card.wow { min-width: 180px; max-width: 440px; }
  .order-cards-title { font-size: 1.35rem; }
}
@media (max-width: 700px) {
  .order-cards-section {
    padding-left: 2vw;
    padding-right: 2vw;
    max-width: 100vw;
  }
  .order-cards.better {
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
  .order-card.wow {
    width: 100%;
    max-width: 420px;
    min-width: 0;
    box-sizing: border-box;
  }
}
@media (max-width: 1200px) {
  .free-try-cards.pro { gap: 18px; grid-template-columns: repeat(2, 1fr);}
  .free-try-card { min-width: 180px; max-width: 300px; }
}
@media (max-width: 800px) {
  .free-try-cards.pro { grid-template-columns: 1fr; }
  .free-try-card { width: 90vw; max-width: 420px; }
}
@media (max-width: 950px) {
  .slider-cards { gap: 17px; }
  .slider-section { padding: 0 2vw; }
  .slider-cards img { max-width: 90px; max-height: 38px; }
}
@media (max-width: 600px) {
  .slider-section { padding-left: 1vw; padding-right: 1vw; }
  .slider-cards { gap: 8px; }
  .slider-title { font-size: 1.1rem; }
  .slider-cards img { padding: 7px 8px; }
}
@media (max-width: 1100px) {
  .custom-post-grid {
    gap: 12px;
  }
  .custom-post-card {
    width: 200px;
    height: 110px;
  }
  .custom-post-card .post-title-overlay {
    font-size: 12px;
    height: 2.5em;
    padding: 8px 8px 6px 10px;
  }
}
@media (max-width: 900px) {
  .custom-post-grid {
    flex-wrap: wrap;
    gap: 14px;
  }
  .custom-post-card {
    width: 45vw;
    min-width: 140px;
    height: 90px;
  }
  .custom-post-card .post-title-overlay {
    font-size: 11.5px;
    height: 2.4em;
    padding: 6px 7px 5px 8px;
  }
}
@media (max-width: 600px) {
  .custom-post-grid {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  .custom-post-card {
    width: 96vw;
    min-width: 0;
    height: 70px;
    margin-bottom: 8px;
  }
  .custom-post-card .post-title-overlay {
    font-size: 10.5px;
    height: 2.3em;
    padding: 5px 6px 5px 7px;
  }
}
@media (max-width: 600px) {
  .custom-posts-title {
    font-size: 19px;
    margin-bottom: 18px;
  }
}
@media (max-width: 600px) {
  .footer-contact-section {
    padding: 18px 6px 22px 6px;
    max-width: 97vw;
  }
  .footer-contact-section h2 {
    font-size: 20px;
  }
  .footer-form-row {
    flex-direction: column;
    gap: 10px;
  }
  .custom-callback-form input {
    font-size: 15px;
    padding: 12px 12px;
  }
  .custom-callback-form button[type="submit"] {
    padding: 12px 0;
    font-size: 15px;
    margin: 14px auto 0 auto;
  }
}
@media (max-width: 600px) {
  .footer-contact-container {
    max-width: 97vw;
    padding: 18px 4vw 18px 4vw;
    border-radius: 14px;
  }
  .footer-form-row {
    flex-direction: column;
    gap: 10px;
  }
  .footer-submit-btn {
    font-size: 1rem;
    padding: 13px 0;
  }
}
@media (max-width: 700px) {
  .service-variants {
    padding: 10px 0 12px 0;
    max-width: 100vw;
  }
  .service-variants-title {
    font-size: 1.07rem;
    text-align: center;
    margin-bottom: 14px;
    letter-spacing: -0.2px;
  }
  .service-variants-cards {
    display: flex;
    flex-direction: column;
    gap: 11px;
    align-items: center;
    width: 100vw;
    padding: 0;
  }
  .service-variant-card {
    width: 97vw;
    max-width: 410px;
    min-width: 0;
    box-sizing: border-box;
    background: #fff;
    border-radius: 13px;
    box-shadow: 0 1.5px 7px rgba(120,140,180,0.08);
    padding: 15px 10px 13px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .svc-icon {
    font-size: 1.5rem;
    margin-bottom: 7px;
  }
  .svc-title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #181818;
    margin-bottom: 5px;
    text-align: center;
    letter-spacing: 0.01em;
  }
  .svc-desc {
    color: #6b7a92;
    font-size: 0.98rem;
    margin-bottom: 14px;
    text-align: center;
    min-height: 0;
  }
  .svc-btn {
    background: linear-gradient(92deg,#30cfd0 0%,#40e495 100%);
    color: #fff;
    font-size: 1.02rem;
    font-weight: 700;
    padding: 11px 0;
    border-radius: 9px;
    width: 100%;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 3px 10px rgba(64,228,149,0.09);
    border: none;
    outline: none;
    transition: background 0.13s;
    letter-spacing: 0.02em;
    margin-top: auto;
  }
  .svc-btn:hover {
    background: linear-gradient(92deg,#40e495 0%,#30cfd0 100%);
    box-shadow: 0 7px 16px rgba(64,228,149,0.14);
    color: #fffbe0;
  }
  .service-variants-note {
    font-size: 0.99rem;
    color: #6c7385;
    margin-top: 16px;
    letter-spacing: 0.01em;
    font-weight: 500;
    text-align: center;
  }
}

@media (max-width: 700px) {
  .company-stats {
    padding: 16px 0 12px 0;
    background: #f7f8fa;
    border-radius: 12px;
    max-width: 100vw;
  }
  .company-stats-title {
    font-size: 1.08rem;
    text-align: center;
    font-weight: 800;
    margin-bottom: 11px;
    color: #363642;
    letter-spacing: -0.2px;
  }
  .company-stats-desc {
    text-align: center;
    font-size: 0.97rem;
    font-weight: 600;
    margin-bottom: 17px;
    color: #23262f;
    line-height: 1.32;
  }
  .stats-small {
    display: block;
    font-size: 0.95rem;
    color: #888;
    margin-top: 3px;
    font-weight: 400;
  }
  .company-stats-cards {
    display: flex;
    flex-direction: column;
    gap: 9px;
    align-items: center;
    margin-bottom: 15px;
    max-width: 99vw;
    padding: 0 2vw;
  }
  .stats-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(44,54,119,0.07);
    padding: 16px 7px 12px 7px;
    width: 98vw;
    max-width: 340px;
    min-width: 0;
    text-align: center;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .stats-icon {
    font-size: 1.5rem;
    margin-bottom: 5px;
  }
  .stats-value {
    font-size: 1.18rem;
    color: #d90000;
    font-weight: 900;
    margin-bottom: 4px;
  }
  .stats-label {
    font-size: 0.98rem;
    color: #242424;
    font-weight: 500;
    min-height: 22px;
    margin-bottom: 0;
  }
  .company-stats-phone-block {
    text-align: center;
    margin-top: 13px;
    padding: 0 4vw;
  }
  .company-stats-note {
    font-size: 1.01rem;
    color: #333;
    font-weight: 600;
    margin-bottom: 7px;
  }
  .company-stats-phone {
    display: inline-block;
    font-size: 1.01rem;
    font-weight: 900;
    background: linear-gradient(90deg,#30cfd0 0%,#40e495 100%);
    color: #fff;
    padding: 10px 18px;
    border-radius: 11px;
    text-decoration: none;
    margin-top: 6px;
    letter-spacing: 0.02em;
    box-shadow: 0 2px 8px rgba(64,228,149,0.13);
    transition: background 0.15s, box-shadow 0.14s, transform 0.11s;
  }
  .company-stats-phone:hover {
    background: linear-gradient(90deg,#40e495 0%,#30cfd0 100%);
    transform: translateY(-1px) scale(1.03);
  }
}

@media (max-width: 700px) {
  .team-block {
    max-width: 89vw;
    padding: 0 0 24px 0;
    margin: 0 auto 30px auto;
  }
  .team-title {
    text-align: center;
    font-size: 1.09rem;
    font-weight: 700;
    margin-bottom: 15px;
    letter-spacing: -0.3px;
    color: #232323;
  }
  .team-grid {
    display: flex;
    flex-direction: column;
    gap: 13px;
    align-items: center;
    width: 89vw;
    padding: 0;
  }
  .team-card {
    background: #fff;
    border-radius: 13px;
    box-shadow: 0 2px 12px rgba(50,60,90,0.08);
    padding: 13px 7px 10px 7px;
    max-width: 360px;
    width: 95vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .team-photo {
    width: 85px;
    height: 85px;
    border-radius: 50%;
    object-fit: cover;
    object-position: center 20%;
    margin-bottom: 9px;
    border: 4px solid #fff;
    box-shadow: 0 3px 11px rgba(90,100,130,0.09);
    background: #fafafb;
  }
  .team-name {
    font-size: 1.01rem;
    font-weight: 700;
    color: #232323;
    margin-bottom: 4px;
    line-height: 1.2;
  }
  .team-role {
    font-size: 0.97rem;
    color: #686868;
    margin-bottom: 5px;
    font-weight: 500;
  }
  .team-desc {
    font-size: 0.96rem;
    color: #4e4e4e;
    margin-bottom: 8px;
    line-height: 1.22;
  }
  .team-exp {
    font-size: 0.93rem;
    color: #969696;
    font-style: italic;
    margin-top: 2px;
  }
}

@media (max-width: 700px) {
  .contact-compact-section {
    margin: 18px 0 16px 0;
    padding: 9px 0 13px 0;
    background: #fafbfc;
    border-radius: 11px;
    box-shadow: 0 1.5px 7px rgba(60,140,180,0.05);
    max-width: 100vw;
  }
  .contact-compact-container {
    max-width: 99vw;
    margin: 0 auto;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 1.5px 8px rgba(44,54,119,0.04);
    padding: 11px 7px 10px 7px;
    text-align: center;
  }
  .contact-compact-title {
    font-size: 1.09rem;
    font-weight: 700;
    margin-bottom: 6px;
  }
  .contact-compact-desc {
    font-size: 0.98rem;
    color: #555;
    margin-bottom: 10px;
  }
  .contact-compact-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    margin-bottom: 7px;
    width: 100%;
  }
  .contact-compact-form input[type="text"],
  .contact-compact-form input[type="tel"] {
    padding: 11px 11px;
    border-radius: 8px;
    border: 1.2px solid #e4e8ed;
    background: #fff;
    font-size: 1rem;
    flex: 1 1 0;
    outline: none;
    transition: border 0.15s, box-shadow 0.15s;
  }
  .contact-compact-form input:focus {
    border: 1.2px solid #30cfd0;
    box-shadow: 0 0 8px #d6fafd;
  }
  .contact-compact-form button {
    background: linear-gradient(90deg, #40e495 0%, #30cfd0 100%);
    color: #fff;
    font-weight: 700;
    font-size: 1.02rem;
    border: none;
    border-radius: 9px;
    padding: 12px 0;
    cursor: pointer;
    transition: background 0.15s, box-shadow 0.13s;
    box-shadow: 0 2px 8px rgba(60,220,180,0.09);
    margin-top: 2px;
  }
  .contact-compact-form button:hover {
    background: linear-gradient(90deg, #30cfd0 0%, #40e495 100%);
    box-shadow: 0 5px 18px rgba(60,220,180,0.14);
  }
  .contact-compact-note {
    font-size: 0.94rem;
    color: #bbb;
    margin-top: 6px;
  }
}


@media (max-width: 700px) {
  /* company-stats карточки */
  .company-stats-cards {
    padding: 0 1vw !important;
    gap: 12px !important;
  }
  .stats-card {
    width: 94vw !important;
    max-width: 340px !important;
    min-width: 0 !important;
    padding: 16px 6px 10px 6px !important;
  }

  /* team-block — минимальные паддинги */
  .team-block, .team-grid {
    max-width: 96vw !important;
    width: 96vw !important;
  }
  .team-card {
    max-width: 99vw !important;
    width: 99vw !important;
    padding: 12px 3vw 9px 3vw !important;
  }

  /* Варианты обслуживания */
  .service-variant-card {
    margin-bottom: 9px !important;
  }

  /* Желтые карточки статей */
  .articles-grid, .random-articles-grid {
    gap: 10px !important;
    padding: 0 1vw !important;
  }
  .article-card, .random-article-card {
    width: 97vw !important;
    max-width: 370px !important;
    min-width: 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(240,200,0,0.07) !important;
    padding: 7px 4px 6px 4px !important;
    margin-bottom: 0 !important;
  }
  .article-card img, .random-article-card img {
    height: 70px !important;
    max-height: 80px !important;
    object-fit: cover !important;
    border-radius: 10px !important;
    margin-bottom: 4px !important;
  }
  .article-title, .random-article-title {
    font-size: 1rem !important;
    margin-bottom: 3px !important;
  }
  .article-excerpt, .random-article-excerpt {
    font-size: 0.97rem !important;
    margin-bottom: 3px !important;
  }
  .article-readmore, .random-article-readmore {
    padding: 7px 8px !important;
    font-size: 0.97rem !important;
    margin-top: 1px !important;
  }

  /* Кнопки рекомендаций */
  .recommend-block ul li a {
    margin-bottom: 7px !important;
    margin-right: 3px !important;
    font-size: 0.95rem !important;
    padding: 9px 12px !important;
  }

  /* Кнопки связи не перекрывают текст */
  .fixed-contact-buttons, .whatsapp-fixed, .call-fixed, .widget-fixed {
    bottom: 18px !important;
    right: 7px !important;
    z-index: 1002 !important;
  }

  /* Снижаем min-height */
  .company-stats, .team-block, .service-variants, .articles-grid, .random-articles-grid {
    min-height: unset !important;
  }

  /* Меньше воздуха в заголовках */
  h2, .section-title, .team-title, .company-stats-title, .service-variants-title {
    margin-top: 18px !important;
    margin-bottom: 11px !important;
    font-size: 1.08rem !important;
  }
}
@media (max-width: 700px) {
  .hero-1c-service {
    width: 100vw !important;
    margin-left: -50vw !important;
    left: 50% !important;
    min-height: 0 !important;
    background-size: cover !important;
    padding: 0 !important;
    overflow-x: hidden !important;
  }
  .hero-1c-content {
    max-width: 99vw !important;
    margin: 12px auto !important;
    padding: 14px 3vw 8px 3vw !important;
    border-radius: 13px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,0.07) !important;
    text-align: center !important;
    overflow: hidden !important;
    word-break: break-word !important;
  }
  .hero-1c-content h1 {
    font-size: 1.13rem !important;
    font-weight: 700 !important;
    line-height: 1.21 !important;
    margin-bottom: 8px !important;
    margin-top: 0 !important;
    text-align: center !important;
    word-break: break-word !important;
  }
  .hero-1c-content h2 {
    font-size: 1rem !important;
    font-weight: 600 !important;
    margin: 8px 0 7px 0 !important;
    line-height: 1.34 !important;
    text-align: center !important;
    word-break: break-word !important;
  }
  .hero-1c-form {
    flex-direction: column !important;
    gap: 9px !important;
    align-items: stretch !important;
    margin: 13px 0 9px 0 !important;
    width: 100% !important;
  }
  .hero-1c-form input[type="tel"] {
    width: 100% !important;
    padding: 12px 12px !important;
    font-size: 1rem !important;
    border-radius: 8px !important;
    border: 1.3px solid #ddd !important;
    margin-bottom: 0 !important;
    min-height: 41px !important;
    max-height: 44px !important;
    box-sizing: border-box !important;
  }
  .hero-1c-form button {
    width: 100% !important;
    height: 42px !important;
    font-size: 1rem !important;
    border-radius: 8px !important;
    padding: 11px 0 !important;
    margin-top: 0 !important;
  }
  .hero-1c-note {
    font-size: 0.92rem !important;
    margin: 10px 0 14px 0 !important;
    color: #888 !important;
    text-align: center !important;
    word-break: break-word !important;
  }
  .hero-1c-benefits {
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
    font-size: 0.97rem !important;
    text-align: left !important;
    list-style: none !important;
    word-break: break-word !important;
  }
  .hero-1c-benefits li {
    margin-bottom: 5px !important;
    font-size: 0.97rem !important;
    text-align: left !important;
    word-break: break-word !important;
  }
  .hero-1c-contacts {
    flex-direction: column !important;
    gap: 6px !important;
    justify-content: center !important;
    align-items: stretch !important;
    margin-bottom: 8px !important;
    width: 100% !important;
  }
  .hero-1c-call,
  .hero-1c-wa,
  .hero-1c-tg {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    padding: 11px 0 !important;
    width: 100% !important;
    border-radius: 8px !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
    word-break: break-word !important;
  }
  .hero-1c-call svg,
  .hero-1c-wa svg,
  .hero-1c-tg svg {
    width: 22px !important;
    height: 22px !important;
    margin-right: 5px !important;
    flex-shrink: 0 !important;
  }
  .hero-1c-note:last-child {
    margin-bottom: 0 !important;
    font-size: 0.94rem !important;
    color: #666 !important;
  }
}

/* бух */
@media (max-width: 900px) {
  .buh2-grid-top { flex-direction: column; gap: 11px; align-items: center; }
  .buh2-card { min-width: 0; width: 96vw; max-width: 400px; padding: 13px 2vw 11px 2vw; }
}

/* Адаптация — форма уходит вниз на узких экранах */
@media (max-width: 900px) {
  .buh2-bottom-row {
    flex-direction: column;
    gap: 17px;
    align-items: stretch;
  }
  .buh2-features,
  .buh2-form-wrap {
    max-width: 100vw;
    min-width: 0;
    margin: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .buh2-form-wrap { margin-top: 11px; }
}

@media (max-width: 900px) {
  .buh2-trust { padding: 16px 0 11px 0; border-radius: 0; }
  .buh2-trust-title { font-size: 1.05rem; }
  .buh2-trust-sub { font-size: 0.99rem; }
  .buh2-trust-logos { gap: 12px; margin-bottom: 14px; }
  .buh2-trust-logos img { max-width: 80px; max-height: 33px; }
  .buh2-stats-cards { gap: 10px; }
  .buh2-stats-card { min-width: 80px; padding: 9px 7px 8px 7px; }
  .buh2-stats-label { font-size: 0.95rem; }
}
@media (max-width: 900px) {
  .buh2-features { padding-left: 0; }
  .buh2-features li { font-size: 1.02em; }
  .buh2-features-title { font-size: 1.08em; }
}

.buh2-steps-grid {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
  gap: 32px;
  min-width: 0;
}

.buh2-step {
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 8px 38px rgba(18,175,175,0.07);
  flex: 1 1 0;
  min-width: 220px;
  max-width: 330px;
  min-height: 355px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 32px 20px 24px 20px;
  box-sizing: border-box;
  transition: box-shadow .18s;
}

.buh2-step:not(:last-child) {
  margin-right: 0;
}

/* Важно! */
.buh2-steps-grid > .buh2-step {
  min-width: 0;
}

/* Чтобы не "вываливалось" за края */
@media (max-width: 1200px) {
  .buh2-steps-grid {
    gap: 18px;
  }
  .buh2-step {
    min-width: 180px;
    max-width: 100vw;
    padding: 24px 6px 16px 6px;
  }
}

@media (max-width: 900px) {
  .buh2-steps-grid {
    flex-wrap: wrap;
    gap: 12px;
  }
  .buh2-step {
    min-width: 120px;
    padding: 12px 6px 14px 6px;
    font-size: 0.98em;
  }
}

@media (max-width: 650px) {
  .buh2-steps-grid {
    flex-direction: column;
    align-items: stretch;
  }
  .buh2-step {
    max-width: 100%;
    min-width: 0;
    width: 100%;
    margin-bottom: 13px;
  }
}

@media (max-width: 900px) {
  .top-infobar {
    gap: 20px;
    font-size: 13px;
    padding: 7px 0 7px 0;
  }
}

/* Основные стили таблицы */
.tariffs-table {
  width: 100% !important;
  table-layout: auto !important;
  border-collapse: separate !important;
}

/* Отключаем фиксированные ширины в колонках */
.tariffs-table th,
.tariffs-table td {
  white-space: normal !important;
  word-break: break-word !important;
  padding: 10px 8px !important;
  max-width: 170px !important;
  min-width: 90px !important;
  font-size: 15px !important;
}

/* Для длинных названий/бонусов — перенос по пробелам */
.tariffs-table td {
  line-height: 1.38;
}

/* Растянуть кнопку на всю ширину ячейки */
.tariffs-table .tariff-btn {
  width: 100% !important;
  min-width: 110px !important;
  box-sizing: border-box !important;
}

/* Для wpbakery — убираем scroll и фиксированную ширину у обёртки */
.table-responsive,
.wprt_style_display {
  overflow-x: visible !important;
  width: auto !important;
  max-width: 100% !important;
}

/* Адаптация для маленьких экранов (опционально) */
@media (max-width: 900px) {
  .tariffs-table th, .tariffs-table td {
    max-width: 90px !important;
    font-size: 13px !important;
    padding: 8px 4px !important;
  }
}
.tariffs-services-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 16px;
  font-family: "Segoe UI", sans-serif;
  min-width: 600px;
}

.tariffs-services-table th {
  background-color: #eafaf3;
  color: #0a8e65;
  padding: 12px 16px;
  font-weight: 600;
}

.tariffs-services-table td {
  padding: 12px 16px;
}

.tariffs-services-table tr {
  border-bottom: 1px solid #eafaf3;
}

.tariffs-services-table .tariff-check::before {
  background-color: #cff8e6;
}

.tariffs-services-table .tariff-check::after {
  border-left: 3px solid #0a8e65;
  border-bottom: 3px solid #0a8e65;
}

/* Общая адаптация блоков */
@media (max-width: 768px) {

  /* баннер и текст в нём */
  .banner-flex {
    flex-direction: column;
    align-items: flex-start;
    padding: 20px 15px;
    gap: 15px;
  }
  .banner-main h1 {
    font-size: 1.4rem;
  }
  .banner-main p {
    font-size: 1rem;
  }

  /* Основной блок «Что такое 1С:Фреш» */
  .block-what-is-fresh.v2 {
    padding: 20px 12px;
    border-radius: 12px;
    margin: 30px auto 0;
  }
  .fresh-flex {
    flex-direction: column;
    gap: 14px;
  }
  .fresh-info h2 {
    font-size: 1.4rem;
  }
  .fresh-info p {
    font-size: 1rem;
    line-height: 1.5;
  }

  /* Тарифные планы */
  .tariff-cards {
    flex-direction: column;
    gap: 15px;
  }
  .tariff-card {
    min-width: 100%;
    padding: 18px;
  }

  .tariff-title {
    font-size: 1.4rem;
  }

  /* Шаги подключения (1-2-3) */
  .steps-container {
    flex-direction: column;
    gap: 12px;
  }
  .step {
    padding: 16px;
  }
  .step h3 {
    font-size: 16px;
  }
  .step p {
    font-size: 13px;
  }

  /* Блок преимуществ компании */
  .benefits-list {
    flex-direction: column;
    align-items: stretch;
    gap: 15px;
  }
  .benefit-item {
    padding: 18px 12px;
  }
  .benefit-item h3 {
    font-size: 16px;
  }
  .benefit-item p {
    font-size: 13px;
  }

  .company-benefits-description {
    font-size: 14px;
  }

  /* Отзывы клиентов */
  .reviews-container {
    flex-direction: column;
    gap: 15px;
  }
  .review-card {
    max-width: 100%;
    padding: 14px;
  }

  .review-text {
    font-size: 14px;
  }

  /* Интеграции */
  .integration-grid {
    flex-direction: column;
    gap: 15px;
  }
  .integration-item {
    max-width: 100%;
    padding: 16px;
  }

  /* Гарантии */
  .guarantees-container {
    flex-direction: column;
    gap: 15px;
  }
  .guarantee-item {
    padding: 16px;
  }

  /* FAQ */
  .tariff-faq h3 {
    font-size: 1.4rem;
  }
  .faq-item label {
    font-size: 14px;
  }
  .faq-answer {
    font-size: 13px;
  }

  /* Форма обратной связи */
  .fresh-callback-form {
    padding: 15px;
    gap: 10px;
    max-width: 95%;
  }
  .fresh-callback-form .footer-form-row {
    flex-direction: column;
  }
  .fresh-callback-form input[type="text"],
  .fresh-callback-form input[type="tel"] {
    width: 100%;
    padding: 10px;
    font-size: 14px;
  }
  .fresh-callback-form button[type="submit"] {
    width: 100%;
    font-size: 15px;
  }

  /* Общие отступы и заголовки */
  .section-title {
    font-size: 1.4rem;
    margin-bottom: 25px;
  }

  .seo-description {
    font-size: 0.9rem;
    padding: 0 10px;
  }
}

.fresh-setup-offer {
  background: linear-gradient(135deg, #fffbf2, #fff4e5);
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
  text-align: center;
  margin-bottom: 40px;
  border: 1px solid #ffe8cc;
}

.fresh-setup-offer h3 {
  font-size: 24px;
  color: #333;
  margin-bottom: 10px;
}

.fresh-setup-offer p {
  font-size: 16px;
  color: #555;
  margin-bottom: 20px;
}

.fresh-btn {
  background-color: #e30613;
  color: #fff;
  font-size: 16px;
  padding: 12px 25px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

.fresh-btn:hover {
  background-color: #c70511;
  box-shadow: 0 5px 15px rgba(227,6,19,0.3);
}

/* Полная ширина */
.crm-hero.fullwidth {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

/* Общий стиль баннера */
.crm-hero.no-image {
  position: relative;
  padding: 80px 20px;
  overflow: hidden;
  background: radial-gradient(1200px 600px at 10% 20%, rgba(0,170,255,0.18), transparent 60%),
              radial-gradient(800px 500px at 90% 10%, rgba(0,120,255,0.15), transparent 60%),
              linear-gradient(135deg, #f7fbff 0%, #eaf5ff 60%, #e6f2ff 100%);
}

.crm-hero.no-image::before {
  content: "";
  position: absolute;
  inset: -20%;
  background:
    radial-gradient(1px 1px at 20% 30%, rgba(255,255,255,0.7) 0, rgba(255,255,255,0.7) 40%, transparent 41%) repeat,
    radial-gradient(1px 1px at 60% 70%, rgba(255,255,255,0.6) 0, rgba(255,255,255,0.6) 40%, transparent 41%) repeat;
  background-size: 18px 18px, 22px 22px;
  pointer-events: none;
  opacity: 0.4;
}

.crm-hero-wrap {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.crm-hero h1 {
  font-size: 42px;
  line-height: 1.2;
  color: #172b4d;
  margin-bottom: 16px;
  font-weight: 800;
}

.crm-hero h1 span {
  color: #00aaff;
}

.crm-hero h2 {
  font-size: 22px;
  line-height: 1.4;
  color: #2e3b4e;
  margin-bottom: 16px;
  font-weight: 600;
}

.crm-hero p {
  font-size: 17px;
  line-height: 1.6;
  color: #405066;
  margin-bottom: 28px;
}

.crm-hero-actions {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.btn-primary,
.btn-secondary {
  display: inline-block;
  padding: 14px 28px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.15s ease;
}

.btn-primary {
  background: #00aaff;
  color: white;
  box-shadow: 0 6px 16px rgba(0,170,255,0.35);
}

.btn-primary:hover {
  background: #008fcc;
  transform: translateY(-1px);
}

.btn-secondary {
  background: white;
  color: #00aaff;
  border: 2px solid #00aaff;
}

.btn-secondary:hover {
  background: #00aaff;
  color: white;
}

@media (max-width: 768px) {
  .crm-hero h1 { font-size: 30px; }
  .crm-hero h2 { font-size: 18px; }
  .crm-hero p  { font-size: 15px; }
}

.crm-benefits.fullwidth {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: #ffffff;
  padding: 80px 20px;
}

.crm-benefits-wrap {
  max-width: 1280px;
  margin: 0 auto;
  text-align: center;
}

.crm-benefits h2 {
  font-size: 32px;
  font-weight: 800;
  margin-bottom: 50px;
  color: #172b4d;
}

.crm-benefits h2 span {
  color: #00aaff;
}

.benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.benefit-item {
  background: #f8fbff;
  padding: 30px 20px;
  border-radius: 10px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.05);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.benefit-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

.benefit-icon {
  font-size: 40px;
  margin-bottom: 15px;
}

.benefit-item h3 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #1a2a3a;
}

.benefit-item p {
  font-size: 15px;
  color: #4a5568;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .crm-benefits h2 {
    font-size: 26px;
  }
}


/* Секция тарифов на всю ширину */
.crm-tariffs {
  width: 100dvw; /* вся ширина экрана, учитывая полосу прокрутки */
  margin-left: calc(-50dvw + 50%);
  background: #f8fbff;
  padding: 80px 20px;
}

.crm-tariffs-wrap {
  max-width: 1280px;
  margin: 0 auto;
  text-align: center;
}

.crm-tariffs h2 {
  font-size: 32px;
  font-weight: 800;
  margin-bottom: 10px;
  color: #172b4d;
}

.crm-tariffs h2 span {
  color: #00aaff;
}

.tariffs-subtitle {
  color: #4a5568;
  margin-bottom: 40px;
  font-size: 15px;
}

.tariffs-grid {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.tariff-card {
  background: #fff;
  padding: 28px 20px;
  border-radius: 12px;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  position: relative;
  display: flex;
  flex-direction: column;
}

.tariff-card h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 6px;
  color: #1a2a3a;
}

.old-price {
  font-size: 14px;
  color: #9aa4b2;
  text-decoration: line-through;
  margin-bottom: 4px;
}

.price {
  font-size: 24px;
  font-weight: 800;
  color: #00aaff;
  margin-bottom: 16px;
}

.tariff-card ul {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  text-align: left;
}

.tariff-card ul li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
  color: #4a5568;
  font-size: 15px;
}

.tariff-card ul li::before {
  content: "✔";
  position: absolute;
  left: 0;
  color: #00aaff;
}

.popular {
  border: 2px solid #00aaff;
}

.badge {
  position: absolute;
  top: -10px;
  right: -10px;
  background: #6ecbff;
  color: #0b3750;
  font-size: 12px;
  padding: 6px 12px;
  border-radius: 20px;
  font-weight: 800;
}

.discount {
  position: absolute;
  top: -10px;
  left: -10px;
  background: #ff8a00;
  color: #fff;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 20px;
  font-weight: 800;
}

.tariffs-note {
  margin-top: 22px;
  color: #718096;
  font-size: 13px;
}

/* Кнопка */
.btn-primary {
  background: #00aaff;
  color: #fff;
  padding: 12px 22px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 700;
  display: inline-block;
  transition: .15s;
  box-shadow: 0 6px 16px rgba(0,170,255,.35);
}

.btn-primary:hover {
  background: #008fcc;
  transform: translateY(-1px);
}

/* выравниваем высоту карточек и прижимаем кнопку вниз */
.tariffs-grid { align-items: stretch; }     /* растягиваем карточки по высоте строки */
.tariff-card {
  display: flex;
  flex-direction: column;
  height: 81%;
}

.tariff-card .btn-primary {
  margin-top: auto;        /* кнопка уезжает к низу карточки */
  align-self: stretch;     /* по желанию: кнопка на всю ширину карточки */
}

/* опционально — одинаковая минимальная высота списка фич, чтобы карты смотрелись ровнее */
.tariff-card ul { min-height: 120px; }  /* подгони значение под свой контент */

@media (max-width:768px) {
  .crm-tariffs h2 { font-size: 26px; }
}

.crm-cta {
  background: linear-gradient(135deg, #00aaff 0%, #007acc 100%);
  color: #fff;
  text-align: center;
  padding: 60px 20px;
}

.crm-cta-wrap {
  max-width: 900px;
  margin: 0 auto;
}

.crm-cta h2 {
  font-size: 30px;
  font-weight: 800;
  margin-bottom: 16px;
}

.crm-cta h2 span {
  color: #ffeb3b; /* жёлтый акцент на слове Битрикс24 */
}

.crm-cta p {
  font-size: 17px;
  line-height: 1.5;
  margin-bottom: 28px;
}

.crm-cta .btn-primary {
  background: #fff;
  color: #00aaff;
  padding: 14px 28px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
  transition: all 0.2s ease;
}

.crm-cta .btn-primary:hover {
  background: #ffeb3b;
  color: #172b4d;
}

.crm-faq{
  background:#ffffff;
  padding:72px 20px;
}
.crm-faq-wrap{
  max-width:960px;
  margin:0 auto;
}
.crm-faq h2{
  text-align:center;
  font-size:30px;
  font-weight:800;
  color:#172b4d;
  margin-bottom:28px;
}
.crm-faq h2 span{ color:#00aaff; }

.faq-list{
  display:grid;
  gap:14px;
}

.faq-list details{
  background:#f6f9ff;
  border:1px solid #e3ecf8;
  border-radius:10px;
  padding:14px 16px;
  transition:box-shadow .2s ease, border-color .2s ease;
}
.faq-list details[open]{
  box-shadow:0 8px 22px rgba(0,0,0,.06);
  border-color:#cfe3fb;
}

.faq-list summary{
  cursor:pointer;
  list-style:none;
  font-weight:700;
  color:#1a2a3a;
  position:relative;
  padding-right:28px;
}
.faq-list summary::-webkit-details-marker{ display:none; }

.faq-list summary::after{
  content:"+";
  position:absolute;
  right:0; top:0;
  font-weight:800;
  color:#00aaff;
  transition:transform .2s ease;
}
.faq-list details[open] summary::after{
  content:"–";
  transform:rotate(0);
}

.faq-list .answer{
  color:#4a5568;
  line-height:1.6;
  margin-top:10px;
  font-size:15px;
}

/* секция кейсов - полноширинный фон и центрированный контент */
.crm-cases{
  width:100dvw;
  margin-left:calc(-50dvw + 50%);
  background:#ffffff;
  padding:80px 20px;
}
.crm-cases-wrap{
  max-width:1280px;
  margin:0 auto;
  text-align:center;
}
.crm-cases h2{
  font-size:32px;
  font-weight:800;
  color:#172b4d;
  margin-bottom:10px;
}
.crm-cases h2 span{ color:#00aaff; }
.cases-subtitle{
  color:#4a5568;
  margin-bottom:40px;
  font-size:15px;
}

/* сетка карточек */
.cases-grid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:30px;
  text-align:left;
}

/* карточка */
.case-card{
  background:#f8fbff;
  border:1px solid #e3ecf8;
  border-radius:12px;
  padding:24px 20px;
  box-shadow:0 4px 14px rgba(0,0,0,.05);
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* верх карточки */
.case-head{
  display:flex;
  align-items:center;
  gap:14px;
}
.case-logo{
  width:54px; height:54px;
  border-radius:8px;
  background:#e6f2ff;
  color:#008fcc;
  font-weight:800;
  display:flex; align-items:center; justify-content:center;
}

/* пункты */
.case-points{
  list-style:none; margin:0; padding:0;
  display:grid; gap:8px;
}
.case-points li{
  color:#2b3a4a;
  font-size:15px;
  line-height:1.55;
}

/* KPI */
.case-kpis{
  display:flex; flex-wrap:wrap; gap:10px;
}
.kpi{
  background:#ffffff;
  border:1px solid #d8e7fa;
  border-radius:8px;
  padding:10px 12px;
  min-width:110px;
  text-align:center;
}
.kpi span{
  display:block;
  font-weight:800;
  color:#00aaff;
  font-size:18px;
  margin-bottom:2px;
}
.kpi small{
  color:#4a5568;
  font-size:12px;
}

/* цитата */
.case-quote{
  margin:4px 0 0;
  padding:12px 14px;
  background:#ffffff;
  border-left:3px solid #00aaff;
  color:#405066;
  font-size:14px;
  line-height:1.55;
  border-radius:6px;
}

/* кнопка */
.case-actions{
  margin-top:auto;
}
.btn-primary{
  background:#00aaff; color:#fff;
  padding:12px 22px; border-radius:8px;
  text-decoration:none; font-weight:700; display:inline-block;
  transition:.15s; box-shadow:0 6px 16px rgba(0,170,255,.35);
}
.btn-primary:hover{ background:#008fcc; transform:translateY(-1px); }

/* адаптив */
@media (max-width:768px){
  .crm-cases h2{ font-size:26px; }
}

.case-logo{
  width:54px; height:54px;
  border-radius:8px;
  background:#ffffff;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.case-logo img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

@media (max-width: 900px) {
  .cases-grid {
    grid-template-columns: 1fr; /* по одной колонке на мобильных */
  }
}

.crm-final-cta {
  width: 100dvw;
  margin-left: calc(-50dvw + 50%);
  background: linear-gradient(135deg, #00aaff 0%, #007acc 100%);
  color: #fff;
  text-align: center;
  padding: 70px 20px;
}

.crm-final-cta-wrap {
  max-width: 800px;
  margin: 0 auto;
}

.crm-final-cta h2 {
  font-size: 32px;
  font-weight: 800;
  margin-bottom: 16px;
}

.crm-final-cta h2 span {
  color: #ffeb3b; /* жёлтый акцент */
}

.crm-final-cta p {
  font-size: 17px;
  margin-bottom: 28px;
}

.crm-final-cta .btn-primary {
  background: #fff;
  color: #00aaff;
  padding: 14px 28px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
  transition: all 0.2s ease;
}

.crm-final-cta .btn-primary:hover {
  background: #ffeb3b;
  color: #172b4d;
}

@media (max-width: 768px) {
  .crm-final-cta h2 { font-size: 26px; }
  .crm-final-cta p { font-size: 15px; }
}
