@media (min-width: 821px) and (max-width: 1100px) {
  .hero-layout {
    grid-template-columns: 1.08fr 0.92fr;
    gap: 34px;
  }

  .hero h1 {
    font-size: 58px;
  }

  .hero-lead {
    font-size: 14px;
  }

  .intelligence-field {
    width: 100%;
    max-width: 470px;
  }

  .case-layout {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .case-tabs {
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
  }

  .case-tabs button {
    padding: 18px 14px;
    border: 1px solid rgba(255, 255, 255, 0.14);
  }

  .case-tabs button:hover,
  .case-tabs button[aria-selected="true"] {
    padding-left: 14px;
    border-color: rgba(119, 215, 223, 0.55);
    background: rgba(255, 255, 255, 0.06);
  }

  .method-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .method-grid article {
    min-height: 260px;
    border-bottom: 1px solid rgba(16, 24, 40, 0.16);
  }

  .method-grid article:nth-child(2) {
    border-right: 0;
  }

  .about-layout {
    gap: 64px;
  }

  .contact-card {
    gap: 58px;
  }
}

@media (min-width: 601px) and (max-width: 820px) {
  .hero h1 {
    font-size: 54px;
  }

  .hero-layout {
    padding-top: 124px;
    padding-bottom: 88px;
  }

  .hero-visual {
    margin-top: 62px;
  }

  .intelligence-field {
    width: min(100%, 540px);
  }

  .case-stage {
    padding: 38px 32px;
  }

  .method-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .contact-card {
    gap: 54px;
  }
}

@media (max-width: 600px) {
  .hero h1 {
    font-size: clamp(40px, 10vw, 44px);
  }

  .hero-layout {
    padding-top: 108px;
    padding-bottom: 66px;
  }

  .hero-visual {
    margin-top: 48px;
  }

  .intelligence-field {
    width: 100%;
  }

  .section-heading h2,
  .about-copy h2,
  .contact-copy h2 {
    font-size: 38px;
  }

  .case-stage h3 {
    font-size: 31px;
  }
}
