/* Главный hero главной — карточка по референсу, mobile-first. */

body.is-landing {
  --lp-ink: #111827;
  --lp-accent: #000000;
  --lp-accent-soft: #f3f4f6;
  --lp-hero-title: #fe5d00;
  --lp-on-cta: #fff;
  --lp-page: #f3f4f6;
  --lp-card: #fff;
  --lp-line: #e5e7eb;
  --lp-gutter: 15px;
}

@media (min-width: 768px) {
  body.is-landing {
    --lp-gutter: 140px;
  }
}

/* Единая сетка лендинга: flex-колонка на всю ширину, боковые отступы через --lp-gutter */
body.is-landing .lp-grid,
body.is-landing .home-hero-shell,
body.is-landing .home-long-inner,
body.is-landing #product.hero-demo-section > .hdd-look-slot,
body.is-landing #product.hero-demo-section > .hdd-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--lp-gutter);
  padding-right: var(--lp-gutter);
  box-sizing: border-box;
}

body.is-landing .home-engine-inner,
body.is-landing .home-mid-cta-inner {
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--lp-gutter);
  padding-right: var(--lp-gutter);
  box-sizing: border-box;
}

body.is-landing .home-header {
  width: 100%;
  max-width: none;
}

body.is-landing .final-cta-section > .lp-grid {
  padding: 0 var(--lp-gutter);
  box-sizing: border-box;
}



#hero.home-hero {

  display: block;

  width: 100%;

  margin: 0;

  padding: 20px 0 40px;

  box-sizing: border-box;

  background-color: var(--lp-page, #f3f4f6);

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%23d1d5db' stroke-width='0.6' opacity='0.55'%3E%3Cpath d='M0 60c20-12 40-12 60 0s40 12 60 0'/%3E%3Cpath d='M0 30c20-12 40-12 60 0s40 12 60 0'/%3E%3Cpath d='M0 90c20-12 40-12 60 0s40 12 60 0'/%3E%3Cpath d='M30 0c-12 20-12 40 0 60s12 40 0 60'/%3E%3Cpath d='M60 0c-12 20-12 40 0 60s12 40 0 60'/%3E%3Cpath d='M90 0c-12 20-12 40 0 60s12 40 0 60'/%3E%3C/g%3E%3C/svg%3E");

  background-size: 120px 120px;

}



#hero.home-hero,

#hero.home-hero * {

  box-sizing: border-box;

}



.home-hero-shell {

  gap: 16px;

}



.home-hero-card {

  background: var(--lp-card, #fff);

  border-radius: 36px;

  padding: 28px 24px 32px;

  overflow: hidden;

}



.home-hero-layout {

  display: grid;

  grid-template-columns: minmax(0, 1fr);

  gap: 8px;

}



.home-hero-copy {

  min-width: 0;

}



.home-hero-badges {

  display: flex;

  flex-wrap: wrap;

  gap: 8px;

  margin: 0 0 10px;

}



.home-hero-badge {

  display: inline-flex;

  align-items: center;

  margin: 0;

  padding: 5px 12px;

  font-size: 13px;

  font-weight: 600;

  line-height: 1.3;

  letter-spacing: 0.01em;

  color: var(--lp-hero-title, #fe5d00);

  background: rgba(254, 93, 0, 0.08);

  border: 1px solid rgba(254, 93, 0, 0.18);

  border-radius: 999px;

}



.home-hero-title {

  margin: 0 0 4px;

  font-size: 28px;

  line-height: 1.15;

  font-weight: 600;

  letter-spacing: -0.03em;

  color: var(--lp-hero-title, #fe5d00);

  text-shadow:
    0 0 2px rgba(254, 93, 0, 0.12),
    0 0 5px rgba(254, 93, 0, 0.07);

  overflow-wrap: break-word;

  text-wrap: balance;

}



.home-hero-lead {

  margin: 12px 0 0;

  font-size: 16px;

  line-height: 1.45;

  color: var(--lp-ink, #111827);

}



.home-hero-visual {

  position: relative;

  width: min(100%, 320px);

  height: 280px;

  margin: 0 auto;

}



.home-hero-photo {

  display: block;

  width: 100%;

  height: 100%;

  object-fit: contain;

  object-position: center bottom;

  pointer-events: none;

  user-select: none;

}



.home-hero-float {

  position: absolute;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 56px;

  height: 56px;

  background: transparent;

  filter: drop-shadow(0 8px 16px rgba(17, 24, 39, 0.18));

}



.home-hero-float img {

  width: 100%;

  height: 100%;

  object-fit: contain;

  pointer-events: none;

  user-select: none;

}



.home-hero-float--schedule {

  top: 8%;

  left: 2%;

}



.home-hero-float--clients {

  top: 4%;

  right: 4%;

}



.home-hero-float--messages {

  bottom: 18%;

  left: 0;

}



.home-hero-float--video {

  top: 42%;

  right: -2%;

}



.home-hero-actions {

  display: flex;

  flex-direction: column;

  align-items: stretch;

  gap: 12px;

  margin-top: 4px;

}



.home-hero-cta {

  display: block;

  

  padding: 16px 24px;

  border-radius: 9999px;

  background: var(--lp-ink, #111827);

  color: var(--lp-on-cta, #fff);

  font-size: 16px;

  font-weight: 600;

  line-height: 1.2;

  text-align: center;

  text-decoration: none;

  border: none;

}



.home-hero-cta:hover {

  background: #000;

  color: #fff;

}



.home-hero-textlink {

  font-size: 15px;

  font-weight: 500;

  line-height: 1.4;

  color: var(--lp-ink, #111827);

  text-align: center;

  text-decoration: none;

}



.home-hero-textlink:hover {

  text-decoration: underline;

}



.home-hero-footnote {

  margin: 4px 0 0;

  font-size: 13px;

  line-height: 1.55;

  color: #9ca3af;

  text-align: center;

}



.home-hero-footnote span {

  display: block;

  margin-bottom: 6px;

  color: #6b7280;

}



@media (min-width: 640px) {

  #hero.home-hero {

    padding: 24px 0 48px;

  }



  .home-hero-card {

    padding: 36px 32px 40px;

    border-radius: 40px;

  }



  .home-hero-title {

    font-size: 34px;

  }



  .home-hero-lead {

    font-size: 18px;

  }



  .home-hero-visual {

    width: min(100%, 360px);

    height: 320px;

  }



  .home-hero-float {

    width: 64px;

    height: 64px;

  }

}



@media (min-width: 1024px) {

  #hero.home-hero {

    display: block;

    grid-template-columns: none;

    padding: 32px 0 56px;

  }



  .home-hero-card {

    padding: 48px 56px 56px;

    border-radius: 44px;

  }



  .home-hero-layout {

    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

    grid-template-rows: auto 1fr;

    grid-template-areas:

      "copy visual"

      "actions visual";

    column-gap: 48px;

    row-gap: 28px;

    align-items: center;

  }



  .home-hero-copy {

    grid-area: copy;

    align-self: end;

  }



  .home-hero-visual {

    grid-area: visual;

    width: 100%;

    max-width: 420px;

    height: 420px;

    margin: 0 0 0 auto;

  }



  .home-hero-actions {

    grid-area: actions;

    align-self: start;

    margin-top: 0;

    align-items: flex-start;

    max-width: 420px;

  }



  .home-hero-title {

    font-size: 44px;

    margin-bottom: 0;

  }



  .home-hero-badges {

    margin-bottom: 14px;

  }



  .home-hero-cta {

    width: auto;

    min-width: 220px;

    padding: 16px 32px;

  }



  .home-hero-textlink {

    text-align: left;

  }



  .home-hero-footnote {

    text-align: left;

    font-size: 14px;

    max-width: 38ch;

  }



  .home-hero-float {

    width: 72px;

    height: 72px;

  }



  .home-hero-float--schedule {

    top: 6%;

    left: 4%;

  }



  .home-hero-float--clients {

    top: 2%;

    right: 8%;

  }



  .home-hero-float--messages {

    bottom: 22%;

    left: 2%;

  }



  .home-hero-float--video {

    top: 38%;

    right: 0;

  }

}



.home-hero-look {

  display: flex;

  align-items: center;

  justify-content: flex-start;

  gap: 12px;

  width: 100%;

  margin: 0;

  padding: 20px;

  background: var(--lp-card, #fff);

  border-radius: 36px;

  font-size: 18px;

  font-weight: 600;

  line-height: 1.3;

  letter-spacing: -0.02em;

  color: var(--lp-ink, #111827);

  text-align: left;

  text-decoration: none;

}



.home-hero-look-text {

  flex: 0 1 auto;

  min-width: 0;

}



.home-hero-look-arrow {

  flex-shrink: 0;

  width: 36px;

  height: 48px;

  overflow: visible;

}



.home-hero-look-arrow-stem,
.home-hero-look-arrow-head {

  fill: none;

  stroke: #dd7c2d;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;

}



a.home-hero-look:hover {

  color: var(--lp-accent, #000000);

}



@media (min-width: 640px) {

  .home-hero-shell {

    gap: 20px;

  }



  .home-hero-look {

    padding: 22px 32px;

    border-radius: 40px;

    font-size: 20px;

  }



  .home-hero-look-arrow {

    width: 40px;

    height: 52px;

  }

}



@media (min-width: 1024px) {

  .home-hero-shell {

    gap: 24px;

  }



  .home-hero-look {

    padding: 24px 56px;

    border-radius: 44px;

    font-size: 22px;

  }



  .home-hero-look-arrow {

    width: 40px;

    height: 56px;

  }

}

