/* ═══════════════════════════════════════════
   DESKTOP  ≤1500px
   ═══════════════════════════════════════════ */

@media (max-width: 1500px) {
  .nav__list {
    gap: 26px;
  }
}

/* ≤1418px: tighter horizontal nav (gap from 26px; font from active --fs-nav in that band) */
@media (max-width: 1418px) {
  .nav__list {
    gap: 23px;
  }
}

@media (max-width: 1418px) and (min-width: 1200px) {
  .site-header .nav:not(.nav--open) .nav__link {
    font-size: 26px;
  }
}

@media (max-width: 1199px) and (min-width: 768px) {
  .site-header .nav:not(.nav--open) .nav__link {
    font-size: 17px;
  }
}

/* ═══════════════════════════════════════════
   TABLET  768px – 1199px
   ═══════════════════════════════════════════ */

@media (max-width: 1199px) {

  /* ── Support section ─────────────────────── */
  .support-section__inner {
    display: flex;
    flex-direction: column;
    padding: 64px 48px 64px;
    min-height: auto;
  }

  .support-section__visual {
    position: relative;
    /* override absolute from desktop */
    right: auto;
    top: auto;
    z-index: auto;
    order: -1;
    margin-bottom: 40px;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .support-section__visual img {
    width: clamp(280px, 55vw, 520px);
    height: clamp(280px, 55vw, 520px);
  }

  .support-section__content {
    position: static;
    z-index: auto;
  }

  .support-section__title {
    font-size: clamp(36px, 4.5vw, 56px);
    max-width: 100%;
  }

  .support-section__text {
    font-size: clamp(18px, 2.2vw, 28px);
    margin-top: 28px;
    max-width: 100%;
  }

  .support-section__btn {
    font-size: clamp(18px, 2vw, 26px);
    margin-top: 40px;
    padding: 22px 36px;
  }

  /* ── Trusted section ─────────────────────── */
  .trusted-section__inner {
    padding: 64px 48px 64px;
  }

  .trusted-section__header {
    margin: 0;
    max-width: none;
  }

  .trusted-section__title {
    font-size: clamp(36px, 4.5vw, 56px);
  }

  .trusted-section__controls {
    display: none;
  }

  .trusted-section__viewport {
    margin-top: 40px;
    overflow: visible;
    cursor: default;
  }

  .trusted-section__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .trusted-section__list>.trusted-card:nth-child(3) {
    grid-column: 1 / -1;
  }

  .trusted-card {
    flex: none;
    min-height: 160px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-radius: 22px;
  }

  .trusted-card--ntv,
  .trusted-card--sber21,
  .trusted-card--vk,
  .trusted-card--sbermobile {
    padding-left: clamp(34px, 5vw, 64px);
    padding-right: clamp(34px, 5vw, 64px);
  }

  .trusted-card--orsk,
  .trusted-card--readovka,
  .trusted-card--e1 {
    grid-column: 1 / -1;
    padding-left: clamp(34px, 5vw, 64px);
    padding-right: clamp(34px, 5vw, 64px);
  }

  .trusted-card__logo--ntv,
  .trusted-card__logo--vk,
  .trusted-card__logo--sbermobile {
    max-width: clamp(128px, 17vw, 170px);
  }

  .trusted-card__logo--sber21 {
    max-width: clamp(132px, 18vw, 176px);
  }

  .trusted-card__logo--orsk,
  .trusted-card__logo--readovka,
  .trusted-card__logo--e1 {
    max-width: clamp(220px, 34vw, 320px);
  }

  /* ── Founder section ─────────────────────── */
  .founder-section__inner {
    display: flex;
    flex-direction: column;
    padding: 64px 48px 64px;
    min-height: auto;
  }

  .founder-section__visual {
    position: relative;
    top: auto;
    right: auto;
    order: -1;
    width: min(100%, 520px);
    height: auto;
    margin: 0 auto 40px;
  }

  .founder-section__glow {
    top: 56px;
    left: 16px;
    width: clamp(220px, 30vw, 300px);
    height: clamp(220px, 30vw, 300px);
    border-radius: 64px;
    filter: blur(54px);
  }

  .founder-section__visual img {
    width: 100%;
    height: auto;
  }

  .founder-section__content {
    max-width: 100%;
  }

  .founder-section__intro {
    grid-template-columns: minmax(0, 1fr) 2px minmax(220px, 0.72fr);
    column-gap: 28px;
  }

  .founder-section__title {
    font-size: clamp(38px, 5vw, 56px);
  }

  .founder-section__divider {
    height: clamp(96px, 11vw, 132px);
  }

  .founder-section__role {
    margin-top: 18px;
    font-size: clamp(22px, 2.7vw, 30px);
  }

  .founder-section__text {
    margin-top: 36px;
    font-size: clamp(18px, 2.2vw, 24px);
    line-height: 1.38;
  }

  /* ── Reviews section ─────────────────────── */
  .reviews-section__inner {
    min-height: auto;
    padding: 64px 48px 64px;
  }

  .reviews-section__header {
    margin: 0;
  }

  .reviews-section__title {
    font-size: clamp(36px, 4.5vw, 56px);
  }

  .reviews-section__controls {
    display: none;
  }

  .reviews-section__viewport {
    margin-top: 40px;
    margin-left: 0;
    overflow: visible;
    cursor: default;
  }

  .reviews-section__track {
    width: auto;
    transform: none;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 16px;
    padding-left: 0;
    padding-right: 0;
  }

  .review-card {
    padding: 28px;
    border-radius: 32px;
    flex-basis: auto;
  }

  .review-card__author {
    gap: 18px;
  }

  .review-card__avatar {
    width: 64px;
    height: 64px;
    border-radius: 20px;
  }

  .review-card__author-text {
    padding-top: 6px;
  }

  .review-card__name {
    font-size: 24px;
  }

  .review-card__role {
    font-size: 13px;
  }

  .review-card__text {
    margin-top: 24px;
    font-size: 18px;
  }

  /* ── FAQ section ─────────────────────────── */
  .faq-section__inner {
    min-height: auto;
    padding: 64px 48px;
  }

  .faq-section__title {
    font-size: clamp(36px, 4.5vw, 56px);
  }

  .faq-section__list {
    gap: 16px;
    max-width: 100%;
    margin-top: 32px;
  }

  .faq-item {
    min-height: 100px;
    padding: 26px 28px;
    border-radius: 32px;
  }

  .faq-item__row {
    gap: 24px;
  }

  .faq-item__question {
    max-width: 100%;
    font-size: clamp(22px, 2.6vw, 30px);
  }

  .faq-item__toggle {
    width: 56px;
    height: 58px;
    border-radius: 20px;
    font-size: 46px;
    padding: 0;
  }

  .faq-item.is-open .faq-item__answer {
    margin-top: 18px;
  }

  .faq-item__answer-text {
    max-width: 100%;
    font-size: clamp(17px, 2vw, 22px);
  }

  /* ── Social section ─────────────────────── */
  .social-section__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: clamp(660px, 49.479vw, 950px);
    padding-top: clamp(72px, 6.719vw, 129px);
    padding-right: clamp(48px, 4vw, 96px);
    padding-bottom: clamp(72px, 6.094vw, 117px);
    padding-left: clamp(80px, 16.458vw, 316px);
    background-position: center center;
  }

  .social-section__content {
    max-width: 100%;
    width: 100%;
    text-align: center;
  }

  .social-section__title,
  .social-section__subtitle {
    margin-left: auto;
    margin-right: auto;
  }

  .social-section__title {
    max-width: clamp(420px, 75vw, 640px);
    font-size: clamp(40px, 5vw, 60px);
  }

  .social-section__subtitle {
    max-width: clamp(420px, 75vw, 620px);
    margin-top: 32px;
    font-size: clamp(20px, 2.6vw, 30px);
  }

  .social-section__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(100%, 640px);
    gap: 16px;
    margin-top: 48px;
    margin-left: auto;
    margin-right: auto;
  }

  .social-section__button {
    min-height: 84px;
    border-radius: 18px;
    font-size: clamp(20px, 2.5vw, 28px);
  }

  .social-section__visual {
    position: relative;
    top: auto;
    right: auto;
    width: min(100%, 520px);
    height: auto;
    aspect-ratio: 672.789 / 694.818;
    margin: 56px auto 0;
  }

  /* ── Footer ─────────────────────────────── */
  .site-footer__inner {
    grid-template-columns: 1fr;
    gap: 56px;
    min-height: auto;
    padding: 64px 48px 80px;
  }

  .site-footer__brand {
    max-width: min(100%, 520px);
  }

  .site-footer__logo .logo__icon {
    width: 82px;
    height: 82px;
    border-radius: 24px;
  }

  .site-footer__logo .logo__name {
    font-size: clamp(40px, 5vw, 52px);
  }

  .site-footer__text {
    margin-top: 36px;
    font-size: clamp(24px, 3.2vw, 32px);
  }

  .site-footer__btn {
    width: auto;
    min-height: auto;
    margin-top: 40px;
    padding: var(--btn-padding-y) var(--btn-padding-x);
    border-radius: var(--btn-radius);
    font-family: var(--font-secondary);
    line-height: 1;
  }

  .site-footer__meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 28px;
    margin-top: 0;
  }

  .site-footer__company,
  .site-footer__meta-link,
  .site-footer__copyright {
    font-size: 22px;
  }

  .site-footer__company,
  .site-footer__copyright {
    grid-column: 1 / -1;
    max-width: 100%;
  }

  .site-footer__meta-link--dev,
  .site-footer__meta-link--design,
  .site-footer__meta-link--policy,
  .site-footer__meta-link--offer {
    grid-column: auto;
    max-width: 100%;
  }

  /* ── Benefits section ────────────────────── */
  .benefits-section__inner {
    padding: 72px 48px 64px;
  }

  .benefits-section__title {
    font-size: clamp(36px, 4.5vw, 56px);
  }

  .benefits-section__subtitle {
    font-size: clamp(18px, 2.2vw, 28px);
    margin-top: 28px;
  }

  .benefits-list {
    margin-top: 48px;
    gap: 16px;
  }

  .benefit-item {
    border-radius: 32px;
    padding: 28px 40px;
    gap: 32px;
  }

  .benefit-item__badge {
    width: 52px;
    height: 54px;
    border-radius: 18px;
    font-size: 42px;
  }

  .benefit-item__text {
    font-size: clamp(18px, 2.2vw, 28px);
  }

  /* ── Products section ────────────────────── */
  .products-section__inner {
    padding: 72px 48px 64px;
  }

  .products-section__title {
    font-size: clamp(36px, 4.5vw, 56px);
  }

  .products-section__decor {
    display: block;
    top: 56px;
    right: 48px;
    width: clamp(100px, 14vw, 168px);
    height: auto;
    aspect-ratio: 200.55 / 198.6;
  }

  .products-grid {
    margin-top: 56px;
    gap: 20px 16px;
  }

  .product-card {
    border-radius: 32px;
    padding: 36px 28px 32px;
  }

  .product-card__icon {
    width: 72px;
    height: 72px;
    border-radius: 22px;
  }

  .product-card__name {
    font-size: clamp(24px, 3vw, 36px);
    padding-right: 90px;
  }

  .product-card__desc {
    font-size: clamp(16px, 1.8vw, 22px);
    margin-top: 20px;
  }

  /* Match components.css first-child specificity so clamp applies */
  .products-grid>.products-page:first-child .product-card:first-child .product-card__desc {
    font-size: clamp(16px, 1.8vw, 22px);
  }

  .product-card__link {
    font-size: clamp(16px, 1.8vw, 22px);
    margin-left: 20px;
  }

  /* ── CTA section ─────────────────────────── */
  .cta-section__inner {
    padding: 80px 48px 80px;
    min-height: auto;
  }

  .cta-section__title {
    font-size: clamp(42px, 5.5vw, 72px);
  }

  .cta-section__desc {
    font-size: clamp(18px, 2.2vw, 28px);
    margin-top: 32px;
  }

  .cta-section__btn {
    font-size: clamp(18px, 2vw, 26px);
    margin-top: 40px;
    padding: 22px 36px;
  }

  .cta-section__visual {
    left: auto;
    right: -80px;
    top: -40px;
    width: 520px;
    height: 520px;
  }

  /* Stack layout on tablet — no Figma spec, mirrors mobile proportionally */
  .smm-section__inner {
    flex-direction: column;
    align-items: flex-start;
    padding: 0 0 60px;
    gap: 0;
  }

  .smm-section__visual {
    order: -1;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 20px;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .smm-section__visual>.smm-section__illustration {
    max-width: none;
    width: min(707px, 100vw);
    height: auto;
  }

  .smm-section__robot {
    width: clamp(255px, 51vw, 408px);
  }

  .smm-section__badge {
    width: clamp(53px, 10.35vw, 99px);
  }

  /* Keep robot badges inside viewport on small screens */
  @media (max-width: 520px) {
    .smm-section__badge {
      width: clamp(39px, 14.95vw, 78px);
    }

    .smm-section__badge--html {
      left: 4%;
      top: 20%;
    }

    .smm-section__badge--github {
      left: 2%;
      top: 50%;
    }

    .smm-section__badge--go {
      left: 6%;
      top: 80%;
    }

    .smm-section__badge--css {
      left: 96%;
      top: 17%;
    }

    .smm-section__badge--js {
      left: 98%;
      top: 49%;
    }

    .smm-section__badge--pg {
      left: 94%;
      top: 77%;
    }
  }

  .smm-section__glow {
    width: clamp(160px, 25vw, 260px);
    height: clamp(160px, 25vw, 260px);
    border-radius: 50px;
    filter: blur(28px);
    /* pushed down so blur (28px) never reaches the section top boundary */
    top: 50px;
    left: calc(50% - clamp(150px, 30vw, 240px) + 10px);
  }

  .smm-section__content {
    flex: none;
    max-width: 100%;
    padding: 40px 48px 0;
  }

  .smm-section__title {
    font-size: clamp(34px, 5.5vw, 48px);
  }

  .smm-section__text {
    font-size: clamp(18px, 2.6vw, 24px);
    margin-top: 24px;
  }

  .key-result__inner {
    flex-direction: column;
    align-items: flex-start;
    padding: 0 0 60px;
    gap: 0;
  }

  .key-result__visual {
    order: -1;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 20px;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .key-result__visual img {
    width: clamp(300px, 60vw, 480px);
  }

  .key-result__content {
    flex: none;
    max-width: 100%;
    padding: 40px 48px 0;
  }

  .key-result__title {
    font-size: clamp(34px, 5.5vw, 48px);
  }

  .key-result__text {
    font-size: clamp(18px, 2.6vw, 24px);
    margin-top: 24px;
  }

  .key-result__text+.key-result__text {
    margin-top: clamp(14px, 2vw, 20px);
  }

  .stats-section__inner {
    padding: 72px 48px 60px;
  }

  .cookie-banner {
    margin-top: 80px;
    border-radius: 32px;
    min-height: auto;
    padding: 32px 56px;
  }

  .cookie-banner__text {
    font-size: 20px;
  }

  .stat-item__number {
    font-size: 42px;
  }

  .stat-item__desc {
    font-size: 22px;
    margin-top: 12px;
  }

  .stat-item__glow {
    width: 150px;
    height: 150px;
    border-radius: 35px;
    filter: blur(28px);
  }

  :root {
    --fs-hero-title: 56px;
    --fs-hero-subtitle: 22px;
    --fs-logo: 26px;
    --fs-nav: 20px;
    --fs-btn: 20px;
  }

  .hero {
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
  }

  .hero__inner {
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    padding-left: 48px;
    padding-right: 48px;
    padding-bottom: 60px;
  }

  .site-header {
    padding-right: 0;
  }

  .hero__body {
    margin-top: clamp(24px, 5dvh, 64px);
  }

  .hero__content {
    flex: 0 0 auto;
    max-width: 420px;
  }

  .hero__content .btn {
    margin-top: clamp(32px, 5dvh, 48px);
  }

  .hero__visual {
    margin-top: 0;
    transform: translateY(clamp(-56px, -7dvh, -20px));
  }

  .hero__visual img {
    width: 124%;
    max-width: 500px;
    max-height: min(500px, calc(100dvh - 220px));
  }
}

@media (max-width: 1200px) {
  .cta-section__visual::before {
    content: '';
    position: absolute;
    left: 89px;
    top: 63px;
  }

  .cta-section__visual::after {
    content: none;
  }
}

@media (max-width: 1159px) {
  .cta-section__visual::before {
    width: 400px;
    height: 320px;
  }
}

@media (max-width: 768px) {
  .cta-section__visual::before {
    left: 130px;
    top: 43px;
  }
}

@media (max-width: 640px) {
  .cta-section__visual::before {
    left: 41px;
    top: 43px;
  }
}

@media (max-width: 399px) {
  .cta-section__visual::before {
    left: 61px;
    top: 23px;
  }
}

@media (min-width: 1201px) {
  .cta-section__visual::before {
    width: 300px;
    height: 300px;
  }

  .smm-section__text {
    max-width: 600px;
  }
}

@media (max-width: 920px) {
  .hero__visual img {
    width: 164%;
  }
}

@media (max-width: 369px) {
  .hero__visual img {
    width: 131%;
    max-width: 400px;
  }
}

@media (min-width: 769px) and (max-width: 930px) {
  .products-section__title {
    width: 80%;
  }
}

@media (min-width: 480px) and (max-width: 769px) {

  .hero__title,
  .hero__subtitle {
    text-align: center;
  }
}

@media (min-width: 768px) and (max-width: 1199px) and (orientation: portrait) {
  .social-section__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 56px;
  }

  .social-section__content {
    order: 2;
    max-width: min(100%, 760px);
    margin: 0 auto;
    text-align: center;
  }

  .social-section__title {
    max-width: min(100%, 760px);
    margin-left: auto;
    margin-right: auto;
  }

  .social-section__subtitle {
    max-width: min(100%, 720px);
    margin-top: 24px;
    margin-left: auto;
    margin-right: auto;
  }

  .social-section__buttons {
    margin: 40px auto 0;
  }

  .social-section__visual {
    order: 1;
    width: min(100%, 520px);
    margin-top: 0;
    margin-bottom: 32px;
  }
}

@media (min-width: 768px) and (max-width: 1199px) and (max-height: 520px) and (orientation: landscape) {
  .social-section__inner {
    padding: 48px 32px 56px;
  }

  .social-section__content {
    max-width: min(100%, 760px);
    margin: 0 auto;
    text-align: center;
  }

  .social-section__title {
    max-width: none;
    margin-left: auto;
    margin-right: auto;
  }

  .social-section__subtitle {
    max-width: min(100%, 720px);
    margin-left: auto;
    margin-right: auto;
    margin-top: 24px;
  }

  .social-section__buttons {
    width: min(100%, 640px);
    margin: 40px auto 0;
  }

  .site-footer__inner {
    gap: 40px;
    padding: 40px 48px 56px;
  }

  .site-footer__brand {
    max-width: min(100%, 520px);
    margin: 0;
    text-align: left;
  }

  .site-footer__logo {
    justify-content: flex-start;
  }

  .site-footer__text {
    margin-top: 28px;
  }

  .site-footer__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    max-width: none;
    min-height: auto;
    margin: 32px 0 0;
    padding: var(--btn-padding-y) var(--btn-padding-x);
    border-radius: var(--btn-radius);
    font-family: var(--font-secondary);
    font-size: var(--fs-btn);
    line-height: 1;
    text-align: center;
  }

  .site-footer__meta {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }

  .site-footer__company,
  .site-footer__meta-link,
  .site-footer__copyright {
    grid-column: 1 / -1;
    font-size: 18px;
    line-height: 1.28;
  }
}

/* ═══════════════════════════════════════════
   MOBILE  up to 767px
   Based on Figma node 332:241 (390 × 864)
   Stats: Figma node 469:132 (390 × 812)
   ═══════════════════════════════════════════ */

@media (max-width: 767px) {

  /* ── Support section (mobile: 390×1213) ─── */
  .support-section__inner {
    padding: 0 0 40px;
    min-height: auto;
    flex-direction: column;
  }

  .support-section__visual {
    order: -1;
    width: 100%;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    display: block;
  }

  .support-section__visual img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
  }

  .support-section__content {
    margin-top: 0;
    padding: 20px 20px 0;
    align-items: flex-start;
  }

  .support-section__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .support-section__text {
    font-size: 22px;
    line-height: 1.35;
    /* gap: description y:230 − title h:210 = 20px */
    margin-top: 20px;
    max-width: 100%;
  }

  .support-section__btn {
    display: block;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    /* gap from content bottom: ~40px */
    margin-top: 40px;
    padding: 25px 40px;
    border-radius: 17px;
    font-size: 22.7px;
    line-height: 1.23;
  }

  /* ── Trusted section (mobile: 390×555) ───── */
  .trusted-section__inner {
    padding: 40px 20px 40px;
  }

  .trusted-section__header {
    display: block;
    margin: 0;
    max-width: none;
  }

  .trusted-section__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .trusted-section__viewport {
    margin-top: 29px;
    overflow: visible;
    cursor: default;
  }

  .trusted-section__list {
    grid-template-columns: 1fr;
    gap: 13.15px;
    padding-left: 0;
    padding-right: 0;
  }

  .trusted-section__list>.trusted-card:nth-child(3) {
    grid-column: auto;
  }

  .trusted-card {
    flex: none;
    min-height: 125.762px;
    padding-top: 14.247px;
    padding-bottom: 14.247px;
    border-radius: 17.809px;
  }

  .trusted-card--ntv,
  .trusted-card--sber21,
  .trusted-card--vk {
    padding-left: 59.336px;
    padding-right: 59.336px;
  }

  .trusted-card--orsk,
  .trusted-card--sbermobile,
  .trusted-card--readovka,
  .trusted-card--e1 {
    padding-left: 49.896px;
    padding-right: 49.896px;
  }

  .trusted-card__logo--ntv,
  .trusted-card__logo--vk {
    max-width: 126.763px;
  }

  .trusted-card__logo--sber21 {
    max-width: 130.135px;
  }

  .trusted-card__logo--orsk,
  .trusted-card__logo--sbermobile,
  .trusted-card__logo--readovka,
  .trusted-card__logo--e1 {
    max-width: 250.208px;
  }

  /* ── Founder section (mobile) ────────────── */
  .founder-section__inner {
    padding: 40px 20px 40px;
  }

  .founder-section__visual {
    width: 100%;
    max-width: 350px;
    margin-bottom: 28px;
  }

  .founder-section__glow {
    top: 68px;
    left: 14px;
    width: 206px;
    height: 206px;
    border-radius: 52px;
    filter: blur(46px);
  }

  .founder-section__intro {
    display: block;
  }

  .founder-section__title {
    font-size: 34px;
    line-height: 1.12;
  }

  .founder-section__divider {
    display: none;
  }

  .founder-section__role {
    font-size: 22px;
    line-height: 1.28;
  }

  .founder-section__text {
    margin-top: 24px;
    font-size: 22px;
    line-height: 1.35;
  }

  /* ── Reviews section (mobile: 390×1204) ─── */
  .reviews-section__inner {
    padding: 40px 20px 40px;
    min-height: auto;
  }

  .reviews-section__header {
    display: block;
  }

  .reviews-section__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .reviews-section__viewport {
    margin-top: 29px;
    margin-left: 0;
    cursor: grab;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
  }

  .reviews-section__viewport::-webkit-scrollbar {
    display: none;
    height: 0;
  }

  .reviews-section__track {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
    width: max-content;
    padding-left: 0;
    padding-right: 0;
  }

  .reviews-page {
    display: flex;
    flex-direction: column;
    flex: 0 0 var(--reviews-slide-w, 100%);
    width: var(--reviews-slide-w, 100%);
    min-width: var(--reviews-slide-w, 100%);
    scroll-snap-align: start;
    gap: 13.341px;
    box-sizing: border-box;
  }

  .reviews-section__track .review-card {
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
  }

  .review-card {
    padding: 26.682px;
    border-radius: 33.353px;
  }

  .review-card__author {
    gap: 18.678px;
  }

  .review-card__avatar {
    width: 51.154px;
    height: 50.658px;
    border-radius: 15.547px;
  }

  .review-card__author-text {
    padding-top: 5.829px;
  }

  .review-card__name {
    font-size: 21.346px;
    line-height: 1.22;
  }

  .review-card__role {
    margin-top: -1px;
    font-size: 10.673px;
    line-height: 1.2;
  }

  .review-card__text {
    margin-top: 22.014px;
    font-size: 16px;
    line-height: 1.19;
  }

  .reviews-section__footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 306px;
    max-width: 100%;
    margin: 30px auto 0;
  }

  /* ── FAQ section (mobile fallback) ───────── */
  .faq-section__inner {
    min-height: auto;
    padding: 40px 20px 40px;
  }

  .faq-section__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .faq-section__list {
    gap: 12px;
    margin-top: 28px;
  }

  .faq-item {
    min-height: 82px;
    padding: 20px;
    border-radius: 24px;
  }

  .faq-item__row {
    gap: 16px;
    align-items: center;
  }

  .faq-item__question {
    font-size: 22px;
    line-height: 1.24;
  }

  .faq-item__toggle {
    width: 46px;
    height: 48px;
    border-radius: 17px;
    font-size: 38px;
    padding: 0;
  }

  .faq-item.is-open .faq-item__answer {
    margin-top: 16px;
  }

  .faq-item__answer-text {
    font-size: 18px;
    line-height: 1.33;
  }

  /* ── Social section (mobile fallback) ───── */
  .social-section__inner {
    padding: 40px 20px 40px;
    background-position: 57% center;
  }

  .social-section__title {
    max-width: 350px;
    font-size: 34px;
    line-height: 1.18;
  }

  .social-section__subtitle {
    max-width: 320px;
    margin-top: 24px;
    font-size: 22px;
    line-height: 1.23;
  }

  .social-section__buttons {
    width: 100%;
    gap: 12px;
    margin-top: 32px;
  }

  .social-section__button {
    min-height: 72px;
    padding: 0 12px;
    border-radius: 18px;
    font-size: clamp(15px, 4.2vw, 18px);
  }

  /* ── Footer (mobile fallback) ───────────── */
  .site-footer__inner {
    gap: 40px;
    padding: 40px 20px 48px;
  }

  .site-footer__logo {
    gap: 18px;
  }

  .site-footer__logo .logo__icon {
    width: 72px;
    height: 72px;
    border-radius: 22px;
  }

  .site-footer__logo .logo__name {
    font-size: 34px;
    line-height: 1.15;
  }

  .site-footer__text {
    margin-top: 28px;
    font-size: 22px;
    line-height: 1.24;
  }

  .site-footer__btn {
    margin-top: 32px;
  }

  .support-section__btn,
  .cta-section__btn,
  .site-footer__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 450px;
    min-height: auto;
    margin-left: auto;
    margin-right: auto;
    padding: 25px 40px;
    border-radius: 17px;
    box-sizing: border-box;
    font-size: 22.7px;
    line-height: 1;
    text-align: center;
  }

  .site-footer__meta {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }

  .site-footer__company,
  .site-footer__meta-link,
  .site-footer__copyright {
    grid-column: 1 / -1;
    font-size: 18px;
    line-height: 1.28;
  }

  /* ── Benefits section (mobile: 390×1138) ─── */
  .benefits-section__inner {
    /* x:20, y:40, bottom: 1138-(366+731.7)≈40px */
    padding: 40px 20px 40px;
  }

  .benefits-section__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .benefits-section__subtitle {
    font-size: 22px;
    line-height: 1.23;
    /* subtitle y:186, title h:168 → gap 18px */
    margin-top: 18px;
  }

  .benefits-list {
    /* list y:366, header bottom: 40+294=334 → gap 32px */
    margin-top: 32px;
    gap: 9px;
  }

  .benefit-item {
    border-radius: 23px;
    /* Figma mobile: 16px top/bottom, 25px left/right */
    padding: 16px 25px;
    gap: 24px;
    align-items: flex-start;
  }

  .benefit-item__badge {
    /* Figma: ~31×32px */
    width: 31px;
    height: 32px;
    border-radius: 11px;
    margin-top: 2px;
    font-size: 26px;
  }

  .benefit-item__text {
    font-size: 20px;
    line-height: 1.21;
  }

  /* ── Products section ────────────────────── */
  /* Mobile: Figma 390px frame, cards 350px, 2 at a time */
  .products-section__inner {
    padding: 40px 20px 40px;
  }

  .products-section__title {
    font-size: 34px;
    line-height: 1.24;
    max-width: 260px;
  }

  .products-section__decor {
    display: block;
    top: 54px;
    right: 32px;
    width: 87.33px;
    height: 86.48px;
  }

  .products-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 6px;
    margin-top: 40px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
  }

  .products-grid::-webkit-scrollbar {
    display: none;
    height: 0;
  }

  .products-page {
    display: flex;
    flex-direction: column;
    flex: 0 0 var(--products-slide-w, 100%);
    width: var(--products-slide-w, 100%);
    min-width: var(--products-slide-w, 100%);
    scroll-snap-align: start;
    gap: 0;
    padding-inline: 3px;
    box-sizing: border-box;
  }

  .products-page>.product-card+.product-card {
    margin-top: 6px;
  }

  #productsGrid {
    transition: opacity 0.22s ease;
  }

  /* Hide non-visible cards (JS toggles this) */
  .product-card--hidden {
    display: none;
  }

  .product-card {
    border-radius: 28px;
    /* Figma mobile: 350×276, padding ≈ 21px top, 24px left/right, 25px bottom */
    padding: 21px 24px 25px;
  }

  .product-card__icon {
    width: 56px;
    height: 56px;
    border-radius: 17px;
    margin-left: 12px;
  }

  .product-card__name {
    font-size: 24.63px;
    line-height: 1.2;
  }

  .product-card__desc {
    font-size: 14.33px;
    line-height: 1.4;
    margin-top: 14px;
  }

  .products-grid>.products-page:first-child .product-card:first-child .product-card__desc {
    font-size: 15.43px;
  }

  .product-card__link {
    font-size: 14.33px;
    margin-left: 22px;
    padding-top: 16px;
    gap: 10px;
  }

  .product-card__link::after {
    width: 23px;
  }

  /* ── CTA section (mobile) ────────────────── */
  /* Figma mobile: 390×787, image at top overflows left, content below */
  .cta-section__inner {
    flex-direction: column;
    padding: 0 20px 60px;
    min-height: auto;
    align-items: stretch;
  }

  .cta-section__visual {
    position: relative;
    order: -1;
    /* show illustration above content on mobile */
    left: -45px;
    top: 0;
    width: calc(100% + 45px);
    height: 370px;
    margin-bottom: 24px;
  }

  .cta-section__content {
    max-width: 100%;
    padding-top: 0;
  }

  .cta-section__title {
    font-size: 55px;
    line-height: 1.22;
  }

  .cta-section__desc {
    font-size: 22px;
    margin-top: 18px;
    max-width: 100%;
  }

  .cta-section__btn {
    display: block;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    margin-top: 58px;
    padding: 25px 40px;
    border-radius: 17px;
    font-family: var(--font-secondary);
    font-size: 22.7px;
    line-height: 1.23;
  }

  /* Show mobile carousel nav */
  .products-carousel-nav {
    display: grid;
  }

  /* ── SMM section ─────────────────────────── */
  /* Mobile Figma: 390×846, image top, text below */
  .smm-section__inner {
    flex-direction: column;
    padding: 0 0 40px;
    gap: 0;
    align-items: stretch;
  }

  /* Visual on top */
  .smm-section__visual {
    order: -1;
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 13px;
  }

  .smm-section__robot {
    /* Mobile image: 343×343 in 390px frame */
    width: 292px;
    height: auto;
  }

  .smm-section__glow {
    /* Figma mobile: x:40, y:7, w:177, h:177, r:41
       Glow anchored to image: image starts at (50% - 171.5px)
       Pushed down so blur (28px) stays within section boundaries */
    top: 45px;
    left: calc(50% - 158px);
    width: 177px;
    height: 177px;
    border-radius: 41px;
    filter: blur(28px);
  }

  .smm-section__content {
    flex: none;
    max-width: 100%;
    /* Text starts at y:397 in 390×846 frame, image group ends ~357 → gap ~40px */
    padding: 40px 20px 0;
  }

  .smm-section__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .smm-section__text {
    font-size: 22px;
    line-height: 1.35;
    margin-top: 18px;
  }

  .key-result__inner {
    flex-direction: column;
    padding: 0 0 40px;
    gap: 0;
    align-items: stretch;
  }

  .key-result__visual {
    order: -1;
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 13px;
  }

  .key-result__visual img {
    width: 343px;
    height: auto;
  }

  .key-result__content {
    flex: none;
    max-width: 100%;
    padding: 40px 20px 0;
  }

  .key-result__title {
    font-size: 34px;
    line-height: 1.24;
  }

  .key-result__text {
    font-size: 16px;
    line-height: 1.35;
    margin-top: 18px;
  }

  .key-result__text+.key-result__text {
    margin-top: 14px;
  }

  /* ── Stats section ───────────────────────── */
  .stats-section__inner {
    /* top: 43px, sides: 20px (cookie banner x:20), bottom: 812−769=43px */
    padding: 43px 20px 43px;
  }

  .stats-grid {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: nowrap;
    gap: clamp(8px, 2vw, 16px);
  }

  .stat-item {
    flex: 1 1 0;
    min-width: 0;
    padding-top: 22px;
    padding-bottom: 0;
  }

  .stat-item__glow {
    /* Figma: 129.73×129.73, cornerRadius: 30px */
    width: 130px;
    height: 130px;
    border-radius: 30px;
    filter: blur(22px);
  }

  .stat-item__number {
    /* Figma mobile font size: 36.65px */
    font-size: 36.65px;
  }

  .stat-item__desc {
    /* Figma mobile font size: 19.82px */
    font-size: 19.82px;
    margin-top: 11px;
  }

  .cookie-banner {
    left: 20px;
    right: 20px;
    bottom: 20px;
    width: auto;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    border-radius: 29px;
    min-height: 122px;
    padding: 18px 33px;
  }

  .cookie-banner__text {
    /* Figma mobile font size: 14px */
    font-size: 13px;
    line-height: 1.2;
    text-align: left;
  }

  .cookie-banner__link {
    text-underline-offset: 2px;
  }

  .hero {
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    overflow: hidden;
  }

  /* Remove desktop padding — handled per-element in mobile */
  .hero__inner {
    padding: 0;
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
  }

  /* ── Header: absolute within hero, scrolls with page (not fixed) */
  .site-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 60;
    padding: 28px 20px;
    align-items: center;
  }

  /* Когда меню открыто — хедер получает тёмный фон чтобы X был чётко виден */
  .site-header.header--open {
    background: rgba(5, 5, 22, 0.98);
    border-bottom: 1px solid rgba(175, 210, 255, 0.18);
  }

  /* Logo smaller sizes (from Figma 332:278) */
  .logo__icon {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  .logo__name {
    font-size: 22.75px;
  }

  .logo {
    gap: 12px;
  }

  /* Logo and burger always above the nav overlay (z-index: 50) */
  .site-header .logo,
  .site-header .burger {
    position: relative;
    z-index: 51;
  }

  /* Hide desktop nav, show burger */
  .nav {
    display: none;
  }

  /* Mobile nav: fullscreen overlay when burger is open */
  .nav--open {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: fixed;
    inset: 0;
    z-index: 50;
    background: rgba(5, 5, 22, 0.97);
    backdrop-filter: blur(32px);
    -webkit-backdrop-filter: blur(32px);
    animation: navFadeIn 0.25s ease;
    padding-top: 94px;
    padding-bottom: 60px;
  }

  /* Декоративная линия сверху оверлея */
  .nav--open::before {
    content: '';
    position: absolute;
    top: 94px;
    left: 20px;
    right: 20px;
    height: 1px;
    background: linear-gradient(to right,
        transparent 0%,
        rgba(175, 210, 255, 0.3) 30%,
        rgba(175, 210, 255, 0.3) 70%,
        transparent 100%);
  }

  /* Декоративная линия снизу оверлея */
  .nav--open::after {
    content: '';
    position: absolute;
    bottom: 60px;
    left: 20px;
    right: 20px;
    height: 1px;
    background: linear-gradient(to right,
        transparent 0%,
        rgba(175, 210, 255, 0.15) 30%,
        rgba(175, 210, 255, 0.15) 70%,
        transparent 100%);
  }

  .nav--open .nav__list {
    flex-direction: column;
    gap: 0;
    align-items: center;
    width: 100%;
  }

  /* Desktop/tablet spacing tweak */
  @media (min-width: 916px) {
    .nav__list {
      gap: 17px;
    }
  }

  .nav--open .nav__item {
    width: 100%;
    text-align: center;
    border-bottom: 1px solid rgba(147, 165, 205, 0.1);
  }

  .nav--open .nav__item:first-child {
    border-top: none;
  }

  .nav--open .nav__link {
    display: block;
    padding: 22px 20px;
    font-size: 26px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.85);
    letter-spacing: 0.01em;
    transition: color 0.2s, background 0.2s;
    position: relative;
    overflow: hidden;
  }

  /* Градиентный highlight при hover/active */
  .nav--open .nav__link::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
        rgba(245, 239, 102, 0.06) 0%,
        rgba(28, 199, 163, 0.06) 50%,
        rgba(28, 131, 224, 0.06) 100%);
    opacity: 0;
    transition: opacity 0.2s;
  }

  .nav--open .nav__link:hover,
  .nav--open .nav__link:active {
    color: var(--clr-white);
  }

  .nav--open .nav__link:hover::before,
  .nav--open .nav__link:active::before {
    opacity: 1;
  }

  /* Градиентная точка-акцент слева */
  .nav--open .nav__link::after {
    content: '';
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%) scale(0);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--gradient-accent);
    transition: transform 0.2s ease;
  }

  .nav--open .nav__link:hover::after,
  .nav--open .nav__link:active::after {
    transform: translateY(-50%) scale(1);
  }

  @keyframes navFadeIn {
    from {
      opacity: 0;
      transform: translateY(-8px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .burger {
    display: flex;
  }

  /* ── Hero body: column, visual on top ───── */
  .hero__body {
    flex-direction: column;
    margin-top: 0;
    align-items: stretch;
  }

  /* ── Visual: first in column
     Image is 420px on a 390px frame.
     Right edge flush → overflow 30px to the LEFT (off-screen).
     justify-content: flex-end achieves this.                    */
  .hero__visual {
    order: -1;
    flex: none;
    width: 100%;
    margin-top: 0;
    margin-left: 0;
    transform: none;
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    /* image pressed to RIGHT edge */
    overflow: visible;
  }

  /* Dark gradient overlay (Rectangle 1 in Figma, y:0 h:217)
     Creates header-readability fade at the top of the image     */
  .hero__visual::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 217px;
    background: linear-gradient(to bottom,
        #050516 0%,
        rgba(5, 5, 22, 0) 100%);
    z-index: 2;
    pointer-events: none;
  }

  .hero__visual img {
    display: block;
    width: 420px;
    /* 30px wider than frame → bleeds LEFT  */
    height: 420px;
    max-width: none;
    flex-shrink: 0;
    object-fit: cover;
    margin-top: 61px;
    /* image y:61 from Figma                */
  }

  /* ── Text content below the visual ──────── */
  .hero__content {
    flex: none;
    max-width: 100%;
    width: 100%;
    padding: 0 20px;
    /* x:20 left margin from Figma */
    /* Visual takes 481px (61px offset + 420px image).
       Title starts at y:472 → tiny 9px overlap, visually fine */
  }

  /* Title: Helvetica Neue 55px (from Figma 332:248) */
  .hero__title {
    font-size: 55px;
    line-height: 1.22;
    hyphens: none;
    -webkit-hyphens: none;
    overflow-wrap: normal;
    word-break: keep-all;
  }

  /* Subtitle: 22px, gap from title = 18px (624 − 606 = 18) */
  .hero__subtitle {
    font-size: 22px;
    line-height: 1.35;
    margin-top: 18px;
  }

  /* Button: full-width, centered, 22.7px, radius 17px
     Gap from subtitle = 42px (747 − 705 = 42)
     margin: auto centers it when max-width kicks in          */
  .hero__content .btn {
    display: block;
    width: 100%;
    max-width: 460px;
    margin-top: 42px;
    margin-bottom: 39px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-size: 22.7px;
    border-radius: 17px;
    padding: 25px 40px;
  }
}

@media (max-width: 769px) {
  .cookie-banner__ok {
    width: 100%;
    max-width: 100%;
  }

  .cta-popup__close {
    top: 18px;
    right: 12px;
    width: 30px;
    height: 30px;
    font-size: 18px;
  }
}

/* Stats: column at ≤700px; 701–767px stays one row */
@media (max-width: 700px) {
  .stats-grid {
    flex-direction: column;
    align-items: center;
    gap: 0;
  }

  .stat-item {
    flex: none;
    width: 100%;
    padding-bottom: 46px;
    padding-top: 22px;
  }

  .stat-item:last-child {
    padding-bottom: 0;
  }
}

/* ═══════════════════════════════════════════
   INTERMEDIATE  1200px – 1919px
   Fixes iPad Pro landscape and similar widths
   ═══════════════════════════════════════════ */

@media (min-width: 1200px) and (max-width: 1919px) {

  /* Support — keep absolute positioning, scale values */
  .support-section__inner {
    padding-left: clamp(80px, 14vw, 316px);
    padding-top: clamp(50px, 6vw, 79px);
    padding-bottom: clamp(50px, 6vw, 80px);
    min-height: clamp(700px, 56vw, 1075px);
  }

  .support-section__title {
    font-size: clamp(40px, 3.75vw, 64px);
    max-width: clamp(500px, 57vw, 1101px);
  }

  .support-section__text {
    font-size: clamp(20px, 2vw, 33px);
    margin-top: clamp(24px, 2.5vw, 45px);
    max-width: clamp(350px, 39vw, 743px);
  }

  .support-section__btn {
    font-size: clamp(18px, 1.8vw, 30px);
    margin-top: clamp(36px, 4vw, 59px);
    padding: clamp(20px, 1.8vw, 30px) clamp(28px, 2.8vw, 48px);
  }

  .support-section__visual {
    right: clamp(30px, 13vw, 234px);
    top: clamp(60px, 19vw, 270px);
  }

  .support-section__visual img {
    width: clamp(350px, 39vw, 748px);
    height: clamp(350px, 39vw, 748px);
  }

  /* Trusted */
  .trusted-section__inner {
    padding-top: min(100px, 5.208vw);
    padding-bottom: min(126.5px, 6.589vw);
  }

  .trusted-section__title {
    font-size: min(64px, 3.333vw);
  }

  .trusted-section__header {
    margin-left: clamp(80px, 16.458vw, 316px);
    margin-right: clamp(80px, 12.708vw, 244px);
    max-width: min(1292.077px, 67.296vw);
  }

  .trusted-section__controls {
    gap: min(20px, 1.042vw);
  }

  .trusted-section__arrow {
    width: min(71.934px, 3.747vw);
    height: min(84.277px, 4.389vw);
    border-radius: min(9.488px, 0.494vw);
  }

  .trusted-section__arrow::before {
    width: min(28px, 1.458vw);
    height: min(48px, 2.5vw);
  }

  .trusted-section__viewport {
    margin-top: min(53px, 2.76vw);
    cursor: grab;
  }

  .trusted-section__list {
    gap: min(20px, 1.042vw);
    padding-left: min(316px, 16.458vw);
    padding-right: min(316px, 16.458vw);
  }

  .trusted-card--ntv,
  .trusted-card--vk {
    flex: 0 0 min(364px, 18.958vw);
  }

  .trusted-card--sber21 {
    flex: 0 0 min(369px, 19.219vw);
  }

  .trusted-card--orsk,
  .trusted-card--sbermobile,
  .trusted-card--readovka,
  .trusted-card--e1 {
    flex: 0 0 min(519px, 27.031vw);
  }

  .trusted-card {
    min-height: min(186.515px, 9.715vw);
    padding-top: min(21.13px, 1.101vw);
    padding-bottom: min(21.13px, 1.101vw);
    border-radius: min(26.412px, 1.376vw);
  }

  .trusted-card--ntv,
  .trusted-card--sber21,
  .trusted-card--vk {
    padding-left: min(88px, 4.583vw);
    padding-right: min(88px, 4.583vw);
  }

  .trusted-card--orsk,
  .trusted-card--sbermobile,
  .trusted-card--readovka,
  .trusted-card--e1 {
    padding-left: min(74px, 3.854vw);
    padding-right: min(74px, 3.854vw);
  }

  .trusted-card__logo--ntv,
  .trusted-card__logo--vk {
    max-width: min(188px, 9.792vw);
  }

  .trusted-card__logo--sber21 {
    max-width: min(193px, 10.052vw);
  }

  .trusted-card__logo--orsk,
  .trusted-card__logo--sbermobile,
  .trusted-card__logo--readovka,
  .trusted-card__logo--e1 {
    max-width: min(371.077px, 19.327vw);
  }

  /* Founder */
  .founder-section__inner {
    min-height: clamp(620px, 41.667vw, 800px);
    padding-top: clamp(72px, 5.677vw, 109px);
    padding-right: clamp(80px, 13.958vw, 268px);
    padding-left: clamp(80px, 16.458vw, 316px);
  }

  .founder-section__content {
    max-width: clamp(430px, 38.281vw, 735px);
  }

  .founder-section__intro {
    grid-template-columns: minmax(250px, 20.417vw) 2px minmax(180px, 13.698vw);
    column-gap: clamp(20px, 2.214vw, 42.5px);
  }

  .founder-section__title {
    font-size: clamp(40px, 3.333vw, 64px);
  }

  .founder-section__divider {
    height: clamp(98px, 7.161vw, 137.5px);
  }

  /* .founder-section__role {
    margin-top: clamp(12px, 1.406vw, 27px);
    font-size: clamp(22px, 1.664vw, 31.953px);
  } */

  .founder-section__text {
    margin-top: clamp(28px, 2.604vw, 50px);
    font-size: clamp(18px, 1.354vw, 26px);
  }

  .founder-section__visual {
    top: clamp(48px, 3.368vw, 64.674px);
    right: clamp(40px, 13.938vw, 267.603px);
    width: clamp(420px, 32.73vw, 628.422px);
    height: clamp(509px, 39.653vw, 761.326px);
  }

  .founder-section__glow {
    top: clamp(40px, 3.75vw, 72px);
    left: clamp(-10px, -3.357vw, -64.459px);
    width: clamp(220px, 17.64vw, 338.694px);
    height: clamp(220px, 17.64vw, 338.694px);
    border-radius: clamp(52px, 4.083vw, 78.401px);
    filter: blur(clamp(42px, 3.333vw, 64px));
  }

  .founder-section__visual img {
    width: 100%;
    height: 100%;
  }

  /* Reviews */
  .reviews-section__inner {
    min-height: clamp(620px, 41.667vw, 800px);
    padding-top: clamp(72px, 5.208vw, 100px);
    padding-bottom: clamp(80px, 7.711vw, 148.058px);
  }

  .reviews-section__header {
    margin-left: clamp(80px, 16.458vw, 316px);
    margin-right: clamp(80px, 12.708vw, 244px);
    max-width: min(1292.077px, 67.296vw);
  }

  .reviews-section__title {
    font-size: clamp(40px, 3.333vw, 64px);
  }

  .reviews-section__controls {
    gap: min(20px, 1.042vw);
  }

  .reviews-section__arrow {
    width: min(71.934px, 3.747vw);
    height: min(84.277px, 4.389vw);
    border-radius: min(9.488px, 0.494vw);
  }

  .reviews-section__arrow::before {
    width: min(28px, 1.458vw);
    height: min(48px, 2.5vw);
  }

  .reviews-section__viewport {
    margin-top: min(53px, 2.76vw);
    cursor: grab;
  }

  .reviews-section__track {
    gap: min(20px, 1.042vw);
    transform: none;
    padding-left: min(316px, 16.458vw);
    padding-right: min(316px, 16.458vw);
  }

  .review-card {
    flex-basis: min(698px, 36.354vw);
    padding: min(40px, 2.083vw);
    border-radius: min(50px, 2.604vw);
  }

  .review-card__author {
    gap: min(28px, 1.458vw);
  }

  .review-card__avatar {
    width: min(76.686px, 3.994vw);
    height: min(75.942px, 3.955vw);
    border-radius: min(23.306px, 1.214vw);
  }

  .review-card__author-text {
    padding-top: min(8.971px, 0.467vw);
  }

  .review-card__name {
    font-size: min(32px, 1.667vw);
  }

  .review-card__role {
    font-size: min(16px, 0.833vw);
  }

  .review-card__text {
    margin-top: min(33px, 1.719vw);
    font-size: min(24px, 1.25vw);
  }

  /* FAQ */
  .faq-section__inner {
    min-height: clamp(700px, 54.375vw, 1044px);
    padding-top: clamp(72px, 5.208vw, 100px);
    padding-right: clamp(80px, 16.458vw, 316px);
    padding-bottom: clamp(72px, 5.208vw, 100px);
    padding-left: clamp(80px, 16.458vw, 316px);
  }

  .faq-section__title {
    font-size: clamp(40px, 3.333vw, 64px);
  }

  .faq-section__list {
    gap: min(15px, 0.781vw);
    max-width: min(1288.259px, 67.097vw);
    margin-top: min(37px, 1.927vw);
  }

  .faq-item {
    min-height: min(100px, 8.333vw);
    padding: min(36px, 1.875vw) min(55px, 2.865vw);
    border-radius: min(50px, 2.604vw);
  }

  .faq-item__row {
    gap: min(32px, 1.667vw);
  }

  .faq-item__question {
    font-size: min(36px, 1.875vw);
  }

  .faq-item__toggle {
    width: min(68.259px, 3.555vw);
    height: min(71px, 3.698vw);
    border-radius: min(25.185px, 1.312vw);
    font-size: min(57.778px, 3.009vw);
    padding: 0;
  }

  .faq-item__answer-text {
    font-size: min(24px, 1.25vw);
  }

  /* Social */
  .social-section__inner {
    min-height: clamp(660px, 49.479vw, 950px);
    padding-top: clamp(72px, 6.719vw, 129px);
    padding-right: clamp(48px, 4vw, 96px);
    padding-bottom: clamp(72px, 6.094vw, 117px);
    padding-left: clamp(80px, 16.458vw, 316px);
  }

  .social-section__content {
    max-width: clamp(420px, 33vw, 634px);
  }

  .social-section__title {
    font-size: clamp(44px, 3.53vw, 67.804px);
  }

  .social-section__subtitle {
    margin-top: clamp(28px, 2.344vw, 45px);
    max-width: clamp(360px, 28.385vw, 545px);
    font-size: clamp(20px, 1.719vw, 33px);
  }

  .social-section__buttons {
    width: min(100%, 580px);
    gap: min(20px, 1.042vw);
    margin-top: clamp(40px, 3.438vw, 66px);
  }

  .social-section__button {
    min-height: clamp(78px, 5.061vw, 97.166px);
    border-radius: clamp(18px, 1.087vw, 20.852px);
    font-size: clamp(20px, 1.563vw, 30px);
  }

  .social-section__visual {
    top: clamp(88px, 5.104vw, 97.99px);
    right: clamp(24px, 4vw, 96px);
    width: clamp(400px, 31vw, 620px);
    height: auto;
    aspect-ratio: 672.789 / 694.818;
  }

  /* Footer */
  .site-footer__inner {
    grid-template-columns: clamp(360px, 22.24vw, 427px) clamp(480px, 32.917vw, 632px);
    min-height: clamp(560px, 36.458vw, 700px);
    padding-top: clamp(72px, 4.792vw, 92px);
    padding-right: clamp(80px, 16.406vw, 315px);
    padding-bottom: clamp(88px, 6.979vw, 134px);
    padding-left: clamp(80px, 16.406vw, 315px);
    gap: clamp(80px, 11vw, 229px);
  }

  .site-footer__brand {
    max-width: clamp(360px, 22.24vw, 427px);
  }

  .site-footer__logo .logo__icon {
    width: clamp(82px, 5.039vw, 96.752px);
    height: clamp(81px, 4.99vw, 95.813px);
    border-radius: clamp(24px, 1.52vw, 29.188px);
  }

  .site-footer__logo .logo__name {
    font-size: clamp(42px, 2.977vw, 57.147px);
  }

  .site-footer__text {
    margin-top: clamp(32px, 2.76vw, 53px);
    font-size: clamp(24px, 1.7vw, 32.633px);
  }

  .site-footer__btn {
    width: auto;
    min-height: auto;
    margin-top: clamp(40px, 3.542vw, 68px);
    padding: var(--btn-padding-y) var(--btn-padding-x);
    border-radius: var(--btn-radius);
    font-family: var(--font-secondary);
    font-size: var(--fs-btn);
    line-height: 1;
  }

  .site-footer__meta {
    grid-template-columns: minmax(0, clamp(280px, 17.813vw, 342px)) clamp(220px, 13.854vw, 266px);
    column-gap: clamp(16px, 1.25vw, 24px);
    row-gap: clamp(32px, 2.604vw, 50px);
    margin-top: clamp(24px, 1.979vw, 38px);
  }

  .site-footer__company,
  .site-footer__meta-link,
  .site-footer__copyright {
    font-size: clamp(18px, 1.25vw, 24px);
  }

  /* Benefits */
  .benefits-section__inner {
    padding-left: clamp(80px, 14vw, 316px);
    padding-right: clamp(80px, 14vw, 316px);
    padding-top: clamp(60px, 6vw, 87px);
    padding-bottom: clamp(60px, 6vw, 102px);
  }

  .benefits-section__title {
    font-size: clamp(40px, 3.75vw, 64px);
  }

  .benefits-section__subtitle {
    font-size: clamp(20px, 2vw, 33px);
  }

  .benefit-item__text {
    font-size: clamp(20px, 2vw, 33px);
  }

  .benefit-item__badge {
    font-size: clamp(36px, 3.5vw, 58px);
  }

  /* Products */
  .products-section__inner {
    padding-left: clamp(80px, 14vw, 315px);
    padding-right: clamp(80px, 14vw, 315px);
  }

  .products-section__title {
    font-size: clamp(40px, 3.75vw, 64px);
  }

  .products-section__decor {
    right: calc(clamp(81px, 11vw, 249px) + 54px)
  }

  .products-grid {
    margin-top: clamp(56px, 7vw, 112px);
  }

  .product-card__name {
    font-size: clamp(28px, 2.3vw, 45px);
  }

  .product-card__desc {
    font-size: clamp(16px, 1.6vw, 26px);
  }

  .products-grid>.products-page:first-child .product-card:first-child .product-card__desc {
    font-size: clamp(16px, 1.6vw, 26px);
  }

  .product-card__link {
    font-size: clamp(16px, 1.6vw, 26px);
  }

  /* CTA */
  .cta-section__inner {
    padding-left: clamp(80px, 14vw, 316px);
    padding-right: clamp(80px, 14vw, 316px);
    padding-top: clamp(80px, 12vw, 220px);
    padding-bottom: 0;

  }

  .cta-section__title {
    font-size: clamp(48px, 5vw, 84px);
  }

  .cta-section__desc {
    font-size: clamp(20px, 2vw, 33px);
  }

  .cta-section__visual {
    left: clamp(500px, 45vw, 806px);
    width: clamp(500px, 58vw, 1024px);
    height: clamp(500px, 58vw, 1024px);
  }

  /* Hero: scale padding, fix image overlapping nav */
  .hero__inner {
    padding-left: clamp(80px, 14vw, 316px);
    padding-right: clamp(60px, 9vw, 174px);
  }

  .site-header {
    padding-right: clamp(0px, 7.5vw, 143px);
  }

  /* Pull image up less so it doesn't cover the nav */
  .hero__visual {
    margin-top: 0;
    transform: translateY(clamp(-80px, -7dvh, -28px));
  }

  :root {
    --fs-hero-title: clamp(56px, 5.5vw, 80px);
    --fs-hero-subtitle: clamp(20px, 1.8vw, 26px);
  }

  .hero__content {
    flex: 0 0 clamp(380px, 37vw, 509px);
    max-width: clamp(380px, 37vw, 509px);
  }

  .hero__content .btn {
    margin-top: clamp(32px, 6dvh, 96px);
  }

  /* Stats: symmetric padding matching hero left */
  .stats-section__inner {
    padding: clamp(72px, 7.5vw, 104px) clamp(80px, 14vw, 316px) clamp(60px, 6vw, 96px);
  }

  .stat-item__number {
    font-size: clamp(40px, 4vw, 61px);
  }

  .stat-item__desc {
    font-size: clamp(22px, 2vw, 33px);
    margin-top: 14px;
  }

  .stat-item__glow {
    width: clamp(140px, 14vw, 216px);
    height: clamp(140px, 14vw, 216px);
  }

  .cookie-banner {
    padding: 32px clamp(40px, 5vw, 91px);
  }

  /* SMM: match hero left padding */
  .smm-section__inner {
    padding-left: clamp(80px, 14vw, 316px);
  }

  .key-result__inner {
    padding-left: clamp(80px, 14vw, 316px);
  }
}

@media (min-width: 1200px) and (max-width: 1410px) {
  .products-section__decor {
    width: calc(200.55px * 0.85);
    height: calc(198.6px * 0.85);
  }
}

@media (max-width: 768px) {
  .products-grid {
    min-height: 490px;
  }

  .founder-section__intro {
    display: block;
  }

  .founder-section__divider {
    display: none;
  }

  .founder-section__title {
    width: 100%;
    box-sizing: border-box;
  }

  .founder-section__title::after {
    content: '';
    display: block;
    width: 100%;
    height: 1.8px;
    margin-top: 10px;
    margin-bottom: 10px;
    background: rgba(213, 219, 255, 1);
  }

  .founder-section__role {
    margin-top: 0;
    font-weight: 300;
  }

  .faq-item__answer-text,
  .social-section__subtitle,
  .support-section__text,
  .benefit-item__text {
    font-weight: 300;
  }

  .site-footer__text {
    font-weight: 300;
    font-size: 42px;
    line-height: 1.24;
  }

  .hero__content .btn.btn--gradient,
  .site-footer__btn {
    max-width: 410px;
  }

  .social-section__inner {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
  }

  .social-section__content {
    order: 1;
    width: 100%;
  }

  .social-section__visual {
    order: 2;
    margin: 0 auto 46px;
  }
}

/* ═══════════════════════════════════════════
   WIDE  1920px+
   ═══════════════════════════════════════════ */

@media (min-width: 1920px) {
  .hero__inner {
    padding-left: max(316px, calc((100% - 1430px) / 2));
    padding-right: max(174px, calc((100% - 1430px) / 2));
  }
}