

.sh1-hero > .yandex-container { position: relative; }
.sh1-hero > .yandex-container > h1,
.sh1-hero > .yandex-container > ul,
.sh1-hero > .yandex-container > .yandex-hero__actions { position: relative; z-index: 1; }







.sh1-section-head {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 134px;      
  padding-bottom: 12px;   
  margin-bottom: 28px;
}
.sh1-watermark {
  position: absolute;
  left: 0;
  top: 0;
  transform: none;
  z-index: 0;
  pointer-events: none;
  
  font-family: 'montserrat-black', 'Montserrat', sans-serif;
  font-size: clamp(64px, 9.3vw, 134px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: normal;
  text-transform: uppercase;
  color: rgb(27, 27, 27);
  opacity: .08;
  white-space: nowrap;
}
.sh1-section-head h2 {
  position: relative;
  z-index: 1;
  margin: 0;
  
  font-size: clamp(32px, 3.6vw, 52px);
  line-height: 1;
  font-weight: 700;
  color: rgb(230, 129, 37);
}


.sh1-work-grid {
  display: grid;
  grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;   
}
.sh1-work-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 28px 26px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 4px 24px rgba(27, 27, 27, .07);
  
  min-height: 0;
}
.sh1-work-card h3 {
  margin: 0;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 600;
}
.sh1-work-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(15,15,15,.85);
}
.sh1-consult {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-top: 34px;
  text-align: center;
}
.sh1-consent {
  max-width: 640px;
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(15, 15, 15, .85);
}


.sh1-reviews {
  position: relative;
  padding: 30px 0 40px;
}

.sh1-reviews::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 60px;
  height: 400px;
  background: #ededed;
  border-bottom: 2px solid var(--sh1-accent, #e68125);
  z-index: 0;
}
.sh1-reviews-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 283px;
  gap: 40px;
  align-items: start;
}
.sh1-video-grid {
  display: grid;
  grid-template-columns: repeat(3, 225px);
  grid-template-rows: auto 392px auto;
  
  grid-auto-flow: column;
  justify-content: start;
  gap: 12px 66px;
  align-items: start;
}
.sh1-review-card { display: contents; }
.sh1-video {
  position: relative;
  width: 225px;
  height: 392px;
  border-radius: 4px;
  overflow: hidden;
  background: #1b1b1b;
}
.sh1-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sh1-review-who   { margin: 0; font-size: 15px; line-height: 1.35; font-weight: 700; word-break: break-word; }
.sh1-review-niche { margin: 0; font-size: 15px; line-height: 1.35; color: #1b1b1b; }


.sh1-review-side {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 30px 26px;
  border-radius: 22px;
  background: var(--sh1-accent, #e68125);
  color: #fff;
}
.sh1-review-side h3 { margin: 0; font-size: 42px; line-height: 1.05; font-weight: 700; color: #fff; }
.sh1-review-side p  { margin: 0; font-size: 16px; line-height: 1.5; color: #fff; }
.sh1-review-side p:first-of-type { font-weight: 700; }

.sh1-review-side .sh1-side-btn {
  align-self: flex-start;
  padding: 14px 28px;
  border-radius: 10px;
  background: #fff;
  color: #1b1b1b;
  font-weight: 700;
  text-decoration: none;
}


.sh1-final {
  padding-bottom: 82px;
  background-image: var(
    --sh1-hero-bg,
    linear-gradient(rgba(255,255,255,.7), rgba(255,255,255,.7)),
    url("/assets/sh1/1614380628_32-p-fon--tild3536-343.webp")
  );
  background-position: center;
  background-size: cover;
}



.sh1-final__panel {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 42px;
  min-height: 206px;
  padding: 38px 60px;
  border-radius: 10px;
  background: var(--sh1-accent, #e68125);
  box-sizing: border-box;
}
.sh1-final__text { display: grid; gap: 26px; flex: 1 1 420px; }
.sh1-final__text p { margin: 0; max-width: 500px; font-size: 16px; line-height: 1.45; color: #1b1b1b; }
.sh1-final__text .sh1-final__lead {
  max-width: none;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
}
.sh1-final__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 1 440px;
  min-height: 56px;
  padding: 0 34px;
  border-radius: 10px;
  background: #1b1b1b;
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}


.sh1-aspect-grid {
  display: grid;
  row-gap: 18px;
  
  grid-template-columns: repeat(var(--cols, 1), minmax(0, 1fr));
  gap: 22px;
  margin-top: 28px;
  
  align-items: start;
}
.sh1-aspect {
  
  position: relative;
  padding: 0 0 0 34px;
  background: none;
  box-shadow: none;
  border-radius: 0;
}
.sh1-aspect::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 4px;
  width: 16px;
  height: 18px;
  background: var(--sh1-accent, #e68125);
  clip-path: polygon(50% 0, 78% 32%, 88% 62%, 66% 100%, 30% 100%, 12% 68%, 26% 34%);
}
.sh1-aspect h3 { margin: 0 0 4px; font-size: 23px; line-height: 1.25; font-weight: 700; }
.sh1-aspect p  { margin: 0; font-size: 16px; line-height: 1.5; color: #1b1b1b; }


.sh1-cases--mobile { display: none; }
.sh1-case-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.sh1-case {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 24px;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 6px 26px rgba(27, 27, 27, .08);
}
.sh1-case-shot {
  aspect-ratio: 16 / 9;
  border-radius: 14px;
  background-size: cover;
  background-position: center;
}
.sh1-case h3 { margin: 0; font-size: 18px; line-height: 1.35; font-weight: 600; }
.sh1-case-site { font-size: 14px; word-break: break-word; }
.sh1-case ul { margin: 0; padding-left: 18px; display: grid; gap: 6px; }
.sh1-case li { font-size: 14px; line-height: 1.5; color: rgba(15,15,15,.85); }

.sh1-case > p { margin: 0; font-size: 14px; line-height: 1.5; color: rgba(15,15,15,.85); }
.sh1-case-works { display: grid; gap: 6px; }
.sh1-case-works > b { font-size: 14px; font-weight: 700; color: #1b1b1b; }
.sh1-case-engines {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin: 2px 0 0; padding: 0; list-style: none;
}
.sh1-case-engines li {
  padding: 2px 9px; border-radius: 999px;
  background: rgba(230, 129, 37, .12); color: #e68125;
  font-size: 12px; font-weight: 600; line-height: 1.5;
}
.sh1-case .case-actions { align-self: flex-start; margin-top: auto; }

.sh1-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 26px;
  border-radius: 999px;
  font-weight: 600;
  text-decoration: none;
}
.sh1-btn--ghost { background: transparent; box-shadow: inset 0 0 0 1px currentColor; }








.sh1-copy main { padding-top: 0; }

.sh1-hero { padding-top: 80px; }


.sh1-review-col { display: flex; flex-direction: column; gap: 18px; }
.sh1-side-more {
  align-self: stretch;
  padding: 18px 24px;
  border-radius: 10px;
  background: var(--sh1-accent, #e68125);
  color: #fff;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}




.sh1-contract {
  margin: 0 0 34px;
  padding: 24px 28px;
  border-left: 4px solid var(--sh1-accent, #e68125);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 20px rgba(27, 27, 27, .06);
}
.sh1-contract h3 { margin: 0 0 14px; font-size: 18px; font-weight: 700; }
.sh1-contract ol { margin: 0; padding-left: 20px; display: grid; gap: 8px; }
.sh1-contract li { font-size: 14px; line-height: 1.55; color: rgba(15, 15, 15, .85); }
.sh1-contract code { background: #ededed; padding: 1px 5px; border-radius: 4px; }




  .sh1-heading, .sh1-works, .sh1-aspects, .sh1-final, .sh1-reviews, .yandex-intro {
    min-height: var(--rec-h, auto);
  }

.sh1-heading {
  display: flex;
  align-items: center;
  
  overflow: clip;
}
.sh1-heading .sh1-section-head { width: 100%; margin-bottom: 0; }



.sh1-heading {
  align-items: flex-end;
  padding-top: 48px;
  padding-bottom: 0;
}
.sh1-heading .sh1-section-head { min-height: 0; }
.sh1-works,
.sh1-aspects { padding-top: 6px; }


.sh1-final {
  padding-top: 56px;
  padding-bottom: 40px;
}


.sh1-work-card h3,
.sh1-aspect h3 { position: relative; padding-bottom: 14px; }
.sh1-work-card h3::after,
.sh1-aspect h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 107px;
  height: 4px;
  background: var(--sh1-accent, #e68125);
}
.sh1-aspect h3 { padding-left: 0; }


.yandex-discount__panel > a,
.sh1-discount__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 32px;
  border-radius: 10px;
  background: #1b1b1b;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}








.sh1-hero > .yandex-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
  
  justify-content: flex-start;
}
.sh1-hero h1,
.sh1-hero ul,
.sh1-hero .yandex-hero__actions {
  position: static;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  margin: 0;
}
.sh1-hero ul { display: grid; gap: 10px; padding-left: 0; list-style: none; }
.sh1-hero .yandex-hero__actions { display: flex; align-items: center; gap: 40px; flex-wrap: wrap; }



  .sh1-case { min-height: var(--rec-h, auto); }



.sh1-copy main > :first-child:not(.sh1-hero) { padding-top: 96px; }


.sh1-prose { padding: 26px 0; }
.sh1-prose .yandex-prose { max-width: 900px; }
.sh1-prose h2 { margin: 0 0 14px; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.2; font-weight: 700; }
.sh1-prose p { margin: 0 0 12px; font-size: 16px; line-height: 1.6; color: #1b1b1b; }
.sh1-prose p:last-child { margin-bottom: 0; }





.lead-modal {
  position: fixed; inset: 0; z-index: 99999;
  display: none; align-items: center; justify-content: center;
  padding: 20px; background: rgba(0, 0, 0, .65);
}
.lead-modal[data-open] { display: flex; }
.lead-modal-card {
  position: relative; box-sizing: border-box;
  width: 100%; max-width: 440px; padding: 32px 28px;
  border-radius: 14px; background: #fff;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .35);
}
.lead-close {
  position: absolute; top: 12px; right: 14px;
  width: 32px; height: 32px; padding: 0;
  border: 0; background: none; cursor: pointer;
  color: #e2e2e2; font-size: 30px; line-height: 1;
}
.lead-close:hover { color: #1b1b1b; }
.lead-title { margin: 0 0 6px; font-size: 22px; font-weight: 700; color: #1b1b1b; }
.lead-sub { margin: 0 0 20px; font-size: 14px; color: rgba(15, 15, 15, .85); }

.lead-form input,
.lead-form textarea {
  box-sizing: border-box; width: 100%;
  margin-bottom: 10px; padding: 12px 14px;
  border: 1px solid #e2e2e2; border-radius: 8px;
  font: inherit; font-size: 15px; font-weight: 400;
}
.lead-form input:focus,
.lead-form textarea:focus { outline: none; border-color: var(--sh1-accent, #e68125); }

.lead-hp { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }
.lead-submit {
  box-sizing: border-box; width: 100%; padding: 13px;
  border: 0; border-radius: 8px;
  background: var(--sh1-accent, #e68125); color: #fff;
  font: inherit; font-size: 15px; font-weight: 600; cursor: pointer;
  transition: background .15s;
}
.lead-submit:hover { background: #e68125; }
.lead-submit:disabled { opacity: .5; cursor: wait; }
.lead-status { margin-top: 14px; padding: 12px; border-radius: 8px; font-size: 14px; text-align: center; }
.lead-status.success { background: #dcfce7; color: #166534; }
.lead-status.error { background: #ff8562; color: #ff8562; }


.sh1-lead { margin-top: 18px; }
.sh1-lead__form {
  display: grid; gap: 10px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  align-items: start;
}
.sh1-lead__form input { margin-bottom: 0; }
.sh1-lead__form .lead-submit { width: auto; padding: 13px 26px; white-space: nowrap; }
.sh1-lead__note { margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: rgba(15,15,15,.85); }





.sh1-hero h1 {
  max-width: 972px;
  font-size: 52px;
  line-height: 1.08;
}
.sh1-hero ul { margin-top: 26px; }
.sh1-hero ul li { margin: 0 0 6px; }










.contact-actions img { width: 26px !important; height: 26px !important; object-fit: contain; }


.sh1-hero--new {
  height: auto !important;
  min-height: 460px !important;
  overflow: visible !important;
  display: block !important;
  padding: 0 !important;
}
.sh1-hero--new > .yandex-container {
  padding-top: 72px !important;
  padding-bottom: 56px !important;
}


.sh1-hero--new__teaser { max-height: 300px; overflow: hidden; padding: 18px 22px; }
.sh1-hero--new__teaser li { padding-left: 12px; }
.sh1-hero--new__teaser span { font-size: 12.5px; }




.sh1-heading {
  min-height: var(--rec-h, 0);
  height: auto;
  
  padding: calc(var(--head-top, 52px) - 20px) 0 0;
  box-sizing: border-box;
}


.sh1-copy .sh1-works {
  padding-top: 36px !important;
  box-sizing: border-box;
}

.sh1-heading .sh1-section-head {
  position: relative;
  min-height: 0;      
  margin-bottom: 0;
}

.sh1-heading .sh1-watermark { top: var(--wm-top, -70px); transform: none; }
.sh1-heading > .yandex-container { padding-top: 0 !important; padding-bottom: 0 !important; }
.yandex-tariffs, .sh1-works, .sh1-cases, .sh1-aspects, .sh1-reviews {
  padding-top: 0 !important;
}






  .sh1-copy .yandex-tariffs .tariff-family {
    width: 1160px;
    grid-template-columns: 390px 380px 390px;
    transform: translateX(20px);
  }
  .sh1-copy .yandex-tariffs .tariff-card {
    height: 590px;
    padding: 0;
  }
  .sh1-copy .yandex-tariffs .tariff-card--featured { height: 632px; }

  .sh1-copy .yandex-tariffs .tariff-dots,
  .sh1-copy .yandex-tariffs .tariff-kicker,
  .sh1-copy .yandex-tariffs .tariff-card h3,
  .sh1-copy .yandex-tariffs .tariff-card > p:last-of-type,
  .sh1-copy .yandex-tariffs .tariff-bottom { position: absolute; margin: 0; }

  .sh1-copy .yandex-tariffs .tariff-dots { top: 47px; left: 60px; }
  .sh1-copy .yandex-tariffs .tariff-kicker {
    top: 110px; left: 60px; font-size: 16px; line-height: 25px;
  }
  .sh1-copy .yandex-tariffs .tariff-card h3 {
    top: 135px; left: 60px; font-size: 48px; line-height: 74px;
    letter-spacing: -2px;
  }
  .sh1-copy .yandex-tariffs .tariff-card > p:last-of-type {
    top: 239px; left: 60px; width: 300px; font-size: 16px; line-height: 32px;
  }
  .sh1-copy .yandex-tariffs .tariff-bottom { top: 431px; left: 57px; }

  .sh1-copy .yandex-tariffs .tariff-card--featured .tariff-dots { top: 77px; left: 40px; }
  .sh1-copy .yandex-tariffs .tariff-card--featured .tariff-kicker { top: 161px; left: 40px; }
  .sh1-copy .yandex-tariffs .tariff-card--featured h3 { top: 177px; left: 40px; }
  .sh1-copy .yandex-tariffs .tariff-card--featured > p:last-of-type {
    top: 281px; left: 40px; width: 300px;
  }
  .sh1-copy .yandex-tariffs .tariff-card--featured .tariff-bottom { top: 481px; left: 40px; }

  .sh1-copy .yandex-tariffs .tariff-card:nth-child(3) .tariff-dots { top: 55px; left: 43px; }
  .sh1-copy .yandex-tariffs .tariff-card:nth-child(3) .tariff-kicker { top: 110px; left: 43px; }
  .sh1-copy .yandex-tariffs .tariff-card:nth-child(3) h3 { top: 126px; left: 43px; }
  .sh1-copy .yandex-tariffs .tariff-card:nth-child(3) > p:last-of-type {
    top: 211px; left: 53px; width: 300px;
  }
  .sh1-copy .yandex-tariffs .tariff-card:nth-child(3) .tariff-bottom { top: 431px; left: 43px; }

  .sh1-copy .yandex-tariffs .tariff-bottom a {
    width: 167px; height: 58px; border-radius: 30px; font-size: 14px;
  }
  .sh1-copy .yandex-tariffs .tariff-bottom strong { font-size: 30px; line-height: 47px; }
  .sh1-copy .yandex-tariffs .tariff-bottom strong {
    position: relative;
    left: 0;
    display: block;
  }
  .sh1-copy .yandex-tariffs .tariff-bottom strong small {
    position: absolute;
    top: -14px;
    left: 0;
  }
  .sh1-copy .yandex-tariffs .tariff-card:nth-child(3) .tariff-bottom strong {
    width: 134px;
    left: -3px;
    white-space: normal;
  }
  .sh1-copy .yandex-tariffs .tariff-bottom small {
    margin-top: -2px; font-size: 13px; line-height: 20px;
  }






.yandex-discount__panel > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 26px;
  border-radius: 10px;
  background: #1b1b1b;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  border: 0;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
  transition: filter .15s;
}

.yandex-discount__panel > a:hover { filter: brightness(1.35); }


.sh1-copy .yandex-discount {
  position: relative;
  overflow: hidden;
  background: none;
}
.sh1-copy .yandex-discount::before {
  content: "";
  position: absolute;
  z-index: 0;
  left: -507px;
  top: -174px;
  width: 2230px;
  height: 843px;
  background: url("/assets/1614380628_32-p-fon-65f656b3.webp") right center / cover no-repeat;
  opacity: .3;
  transform: scale(-1, -1);
  pointer-events: none;
}
.sh1-copy .yandex-discount > .yandex-container {
  position: relative;
  z-index: 1;
}


  .sh1-copy .yandex-discount .yandex-watermark {
    top: 0;
    left: 0;
    width: 100%;
    height: 232px;
  }
  .sh1-copy .yandex-discount .yandex-watermark > span {
    top: 98px;
    bottom: auto;
    left: -2px;
    font-size: 134px;
    line-height: 134px;
  }
  .sh1-copy .yandex-discount .yandex-watermark h2 {
    position: absolute;
    top: 169px;
    left: 0;
    margin: 0;
    padding: 0;
    font-size: 52px;
    line-height: 52px;
  }
  .sh1-copy .yandex-discount__panel {
    top: 272px;
    left: 0;
    width: 100%;
    height: 205px;
    padding: 0;
  }
  .sh1-copy .yandex-discount__panel > div {
    position: absolute;
    top: 39px;
    left: 60px;
  }
  .sh1-copy .yandex-discount__panel h3 {
    margin: 0;
    font-size: 42px;
    line-height: 65px;
  }
  .sh1-copy .yandex-discount__panel p {
    margin: 10px 0 0;
    font-size: 16px;
    line-height: 25px;
  }
  .sh1-copy.yandex-copy .yandex-discount__panel > a {
    position: absolute;
    top: 111px;
    left: 600px;
    width: 219px;
    height: 56px;
    margin: 0;
    padding: 0;
    border-radius: 8px;
    border: 0;
    background: #1b1b1b;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
  }



.sh1-copy .sh1-aspects {
  position: relative;
  overflow: hidden;
  background: #fff;
}
.sh1-copy .sh1-aspects::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 114px;
  left: calc(50% - 600px);
  width: 1158px;
  height: 668px;
  background: url("/assets/scene-7ab3fb3e13becf0d.webp") center / cover no-repeat;
  opacity: .15;
  pointer-events: none;
}
.sh1-copy .sh1-aspects > .yandex-container {
  position: relative;
  z-index: 1;
}
.sh1-copy .sh1-aspect {
  padding-left: 60px;
}
.sh1-copy .sh1-aspect::before {
  top: 0;
  left: 0;
  width: 35px;
  height: 35px;
  background: url("/assets/scene-14c636bf2ac8f43a.svg") center / contain no-repeat;
  clip-path: none;
}




  .sh1-heading.yandex-heading--compact .sh1-section-head {
    transform: translateY(7px);
  }







  
  .sh1-copy .sh1-reviews {
    padding-top: 70px !important;
    box-sizing: border-box;
  }




  .sh1-heading#cases .sh1-section-head { transform: translateY(-1px); }




.sh1-heading.yandex-heading--network {
  background: #fff;
  background-image: none;
}

  .sh1-heading.yandex-heading--network .sh1-section-head {
    transform: translateY(-12px);
  }





