/**
 * Обзор EULER — плавные переходы МЕЖДУ якорями Figma
 * Подключается после euler-obzor-page.css и дополняет фиксированные макеты clamp().
 *
 * Якоря: 375 (≤375) · 600 (600–768) · 1024 (769–1023) · 1200 (1024–1200) · 1440 (≥1440)
 * ≤599 — fluid + вписывание в viewport (360, 375…)
 * 600–767 — euler-obzor-page.css · 768 — page.css + home-between-375-768
 */

/* =====================================================
   ≤599 — мобилка: не шире экрана, плавный рост к 600
   ===================================================== */
@media (max-width: 599px) {
  .hero-community--euler-obzor,
  .euler-obzor-why,
  .euler-obzor-capabilities,
  .euler-obzor-integrations,
  .euler-obzor-engineering,
  .euler-obzor-evidence,
  .euler-obzor-status,
  .euler-obzor-ask,
  .home-partners--euler-obzor {
    --container-padding: clamp(15px, calc(15px + 9 * ((100vw - 375px) / 224)), 24px);
    --obzor-content-max: min(
      clamp(345px, calc(345px + 175 * ((100vw - 375px) / 224)), 520px),
      calc(100vw - var(--container-padding) * 2)
    );
    overflow-x: clip;
  }

  .hero-community--euler-obzor .hero-community__breadcrumbs,
  .hero-community--euler-obzor .hero-community__title,
  .hero-community--euler-obzor .hero-community__lead,
  .hero-community--euler-obzor .hero-community__actions {
    left: var(--container-padding);
    right: var(--container-padding);
  }

  .hero-community--euler-obzor .hero-community__title {
    width: var(--obzor-content-max);
    max-width: calc(100vw - var(--container-padding) * 2);
  }

  .hero-community--euler-obzor .hero-community__lead {
    width: var(--obzor-content-max);
    max-width: calc(100vw - var(--container-padding) * 2);
    font-size: clamp(14px, calc(14px + 2 * ((100vw - 375px) / 224)), 16px);
  }

  .hero-community--euler-obzor .hero-community__actions {
    width: var(--obzor-content-max);
    max-width: calc(100vw - var(--container-padding) * 2);
  }

  .hero-community--euler-obzor .hero-community__btn {
    width: clamp(140px, calc(184px + 30 * ((100vw - 375px) / 224)), 214px);
    max-width: calc(50% - 5px);
  }

  .hero-community--euler-obzor .hero-community__btn--outline {
    width: clamp(120px, calc(151px + 25 * ((100vw - 375px) / 224)), 176px);
    max-width: calc(50% - 5px);
  }

  .euler-obzor-why__inner,
  .euler-obzor-why__grid,
  .euler-obzor-why-card,
  .euler-obzor-capabilities__inner,
  .euler-obzor-capabilities__grid,
  .euler-obzor-capability-card,
  .euler-obzor-integrations__inner,
  .euler-obzor-integrations__intro,
  .euler-obzor-integrations__list,
  .euler-obzor-integrations__item,
  .euler-obzor-engineering__inner,
  .euler-obzor-engineering__grid,
  .euler-obzor-engineering-card,
  .euler-obzor-evidence__body,
  .euler-obzor-status__body,
  .euler-obzor-ask__inner,
  .home-partners--euler-obzor .home-partners__inner {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--obzor-content-max);
    margin-inline: auto;
  }

  .euler-obzor-why__title,
  .euler-obzor-why__lead,
  .euler-obzor-capabilities__title,
  .euler-obzor-integrations__title,
  .euler-obzor-integrations__lead,
  .euler-obzor-engineering__title,
  .euler-obzor-engineering__lead,
  .euler-obzor-evidence__title,
  .euler-obzor-evidence__desc,
  .euler-obzor-status__title,
  .euler-obzor-status__badges {
    width: 100%;
    max-width: 100%;
  }

  .euler-obzor-why__lead,
  .euler-obzor-integrations__lead,
  .euler-obzor-engineering__lead,
  .euler-obzor-ask__lead {
    font-size: clamp(14px, calc(14px + 2 * ((100vw - 375px) / 224)), 16px);
    line-height: 1.2;
  }

  .euler-obzor-why-card {
    height: auto;
    min-height: clamp(320px, calc(345px + 55 * ((100vw - 375px) / 224)), 400px);
  }

  .euler-obzor-why-card__icon {
    width: clamp(130px, calc(146px + 24 * ((100vw - 375px) / 224)), 170px);
    height: clamp(95px, calc(107px + 18 * ((100vw - 375px) / 224)), 125px);
  }

  .euler-obzor-capabilities__title {
    min-height: 0;
  }

  .euler-obzor-capability-card {
    height: auto;
    min-height: clamp(270px, calc(270px + 40 * ((100vw - 375px) / 224)), 310px);
  }

  .euler-obzor-capability-card__title {
    width: min(100%, calc(100% - 40px));
    font-size: clamp(24px, calc(24px + 2 * ((100vw - 375px) / 224)), 26px);
  }

  .euler-obzor-capability-card__image {
    width: min(100%, calc(100% - 40px));
    max-width: calc(100% - 40px);
    height: clamp(119px, calc(119px + 20 * ((100vw - 375px) / 224)), 139px);
  }

  .euler-obzor-engineering-card {
    height: auto;
    min-height: clamp(300px, calc(300px + 20 * ((100vw - 375px) / 224)), 320px);
  }
}

/* =====================================================
   769–943 — планшет между 768 и 1024
   ===================================================== */
@media (min-width: 769px) and (max-width: 943px) {
  .euler-obzor-why__title,
  .euler-obzor-capabilities__title,
  .euler-obzor-integrations__title,
  .euler-obzor-engineering__title,
  .euler-obzor-evidence__title,
  .euler-obzor-status__title,
  .euler-obzor-clients__title {
    font-size: clamp(36px, calc(36px + 4 * ((100vw - 769px) / 174)), 40px);
  }
}

/* =====================================================
   769–1023 — плавный переход к макету 1024
   ===================================================== */
@media (min-width: 769px) and (max-width: 1023px) {
  .euler-obzor-why {
    padding-top: 120px;
    padding-bottom: 120px;
  }

  .euler-obzor-why__grid {
    gap: clamp(20px, calc(20px + 4 * ((100vw - 769px) / 255)), 24px);
  }

  .euler-obzor-why-card {
    min-height: clamp(360px, calc(360px + 40 * ((100vw - 769px) / 255)), 400px);
    padding-top: clamp(160px, calc(160px + 10 * ((100vw - 769px) / 255)), 170px);
  }

  .euler-obzor-why-card__icon {
    top: clamp(40px, calc(40px + 9 * ((100vw - 769px) / 255)), 49px);
  }

  .euler-obzor-capabilities__grid {
    gap: clamp(16px, calc(16px + 8 * ((100vw - 769px) / 255)), 24px);
  }

  .euler-obzor-capability-card {
    height: clamp(270px, calc(300px - 30 * ((100vw - 769px) / 255)), 300px);
    min-height: clamp(270px, calc(300px - 30 * ((100vw - 769px) / 255)), 300px);
  }

  .euler-obzor-engineering__grid {
    gap: clamp(16px, calc(16px + 8 * ((100vw - 769px) / 255)), 24px);
  }

  .euler-obzor-evidence__inner {
    padding: clamp(40px, calc(40px + 40 * ((100vw - 769px) / 255)), 80px) clamp(32px, calc(32px + 8 * ((100vw - 769px) / 255)), 40px);
  }

  .euler-obzor-evidence__body {
    gap: clamp(28px, calc(28px - 8 * ((100vw - 769px) / 255)), 20px);
  }
}

/* =====================================================
   944–1023 — широкий планшет → 1024
   ===================================================== */
@media (min-width: 944px) and (max-width: 1023px) {
  .hero-community--euler-obzor .hero-community__title {
    width: clamp(549px, calc(549px + 164 * ((100vw - 944px) / 79)), 713px);
  }

  .hero-community--euler-obzor .hero-community__lead {
    width: clamp(716px, calc(716px + 43 * ((100vw - 944px) / 79)), 759px);
  }
}

/* =====================================================
   1024–1200 — fluid между 1024 и 1200
   ===================================================== */
@media (min-width: 1024px) and (max-width: 1200px) {
  .euler-obzor-evidence {
    padding-bottom: 120px;
  }

  .euler-obzor-evidence__inner {
    padding-top: clamp(50px, calc(50px + 30 * ((100vw - 1024px) / 176)), 80px);
    padding-bottom: clamp(50px, calc(50px + 30 * ((100vw - 1024px) / 176)), 80px);
    min-height: clamp(0px, calc(352px - 352 * ((100vw - 1024px) / 176)), 352px);
  }

  .euler-obzor-evidence__body {
    gap: clamp(20px, calc(20px + 12 * ((100vw - 1024px) / 176)), 32px);
  }

  .euler-obzor-evidence__text {
    gap: clamp(16px, calc(16px + 4 * ((100vw - 1024px) / 176)), 20px);
  }

  .euler-obzor-evidence__desc {
    font-size: clamp(16px, calc(16px + 2 * ((100vw - 1024px) / 176)), 18px);
  }

  .euler-obzor-evidence__btn {
    width: clamp(380px, calc(380px + 8 * ((100vw - 1024px) / 176)), 388px);
  }

  .euler-obzor-clients__card {
    height: clamp(173px, calc(173px + 37 * ((100vw - 1024px) / 176)), 210px);
    padding-top: clamp(40px, calc(40px + 10 * ((100vw - 1024px) / 176)), 50px);
    padding-bottom: clamp(40px, calc(40px + 10 * ((100vw - 1024px) / 176)), 50px);
  }

  .euler-obzor-status__badges {
    gap: clamp(12px, calc(12px + 8 * ((100vw - 1024px) / 176)), 20px);
  }

  .euler-obzor-ask__form {
    gap: clamp(16px, calc(16px + 8 * ((100vw - 1024px) / 176)), 24px);
  }
}

/* =====================================================
   1201–1439 — fluid к 1440 (дополнение секционных правил)
   ===================================================== */
@media (min-width: 1201px) and (max-width: 1439px) {
  .euler-obzor-why__lead,
  .euler-obzor-capabilities__microheading .microheading__text,
  .euler-obzor-engineering__lead,
  .euler-obzor-clients__lead {
    font-size: clamp(18px, 1.39vw, 20px);
  }

  .euler-obzor-clients {
    padding-bottom: 120px;
  }
}

/* =====================================================
   Ask form — fluid как home-question (home-fluid-breakpoints)
   ===================================================== */

@media (min-width: 1024px) and (max-width: 1200px) {
  .euler-obzor-ask__inner {
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: clamp(20px, calc(20px + 20 * (100vw - 1024px) / 176), 40px);
  }

  .euler-obzor-ask__intro {
    flex: 0 1 48%;
    width: auto;
    min-width: 0;
    max-width: 555px;
  }

  .euler-obzor-ask__title {
    width: 100%;
    max-width: 100%;
  }

  .euler-obzor-ask__lead {
    width: 100%;
    max-width: 100%;
  }

  .euler-obzor-ask__form {
    flex: 0 1 52%;
    width: auto;
    min-width: 0;
    max-width: 630px;
    margin-left: 0;
  }

  .euler-obzor-ask__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .euler-obzor-ask__textarea {
    width: 100%;
    max-width: 100%;
  }

  .euler-obzor-ask__field--textarea {
    width: 100%;
    max-width: 100%;
  }
}

@media (min-width: 688px) and (max-width: 1024px) {
  .euler-obzor-ask__form {
    margin-left: 0;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .euler-obzor-ask__inner {
    gap: clamp(20px, calc(20px + (40 - 20) * (100vw - 768px) / 256), 40px);
    padding: clamp(24px, calc(24px + (40 - 24) * (100vw - 768px) / 256), 40px) var(--container-padding);
  }

  .euler-obzor-ask__lead {
    font-size: clamp(12px, calc(12px + (16 - 12) * (100vw - 768px) / 256), 16px);
    max-width: clamp(244px, calc(244px + (326 - 244) * (100vw - 768px) / 256), 326px);
  }

  .euler-obzor-ask__input {
    height: clamp(38px, calc(38px + (50 - 38) * (100vw - 768px) / 256), 50px);
    font-size: clamp(12px, calc(12px + (16 - 12) * (100vw - 768px) / 256), 16px);
  }

  .euler-obzor-ask__textarea {
    height: clamp(75px, calc(75px + (100 - 75) * (100vw - 768px) / 256), 100px);
    min-height: clamp(75px, calc(75px + (100 - 75) * (100vw - 768px) / 256), 100px);
  }
}

@media (min-width: 688px) and (max-width: 943px) {
  .euler-obzor-ask__inner {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(24px, 4vw, 30px) var(--container-padding);
    gap: clamp(20px, 3vw, 30px);
  }

  .euler-obzor-ask__intro {
    flex: 0 1 51.16%;
    max-width: 51.16%;
  }

  .euler-obzor-ask__lead {
    width: 100%;
    max-width: 244px;
  }

  .euler-obzor-ask__form {
    flex: 0 1 48.84%;
    max-width: 48.84%;
    margin-left: 0;
  }

  .euler-obzor-ask__consent-text,
  .euler-obzor-ask__consent-line {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
}

@media (min-width: 376px) and (max-width: 687px) {
  .euler-obzor-ask__inner {
    gap: clamp(20px, calc(20px + (30 - 20) * (100vw - 375px) / 312), 30px);
  }

  .euler-obzor-ask__input,
  .euler-obzor-ask__textarea {
    font-size: clamp(14px, calc(14px + (16 - 14) * (100vw - 375px) / 312), 16px);
  }
}
