/* Campaign hero — responsive */

@media (max-width: 1199.98px) {
  .campaign-hero__title {
    font-size: clamp(1.55rem, 2.6vw, 2.2rem);
  }

  .campaign-hero__phone-anchor {
    width: min(44%, 280px);
    bottom: -26%;
  }

  .campaign-hero__card {
    width: clamp(82px, 11%, 118px);
  }
}

@media (max-width: 991.98px) {
  .campaign-hero__inner {
    padding-top: 80px;
  }

  .campaign-hero__visual {
    min-height: clamp(360px, 54vh, 480px);
    width: min(100%, 700px);
  }

  .campaign-hero__phone-anchor {
    width: min(46%, 240px);
    bottom: -24%;
  }

  .campaign-hero__card--branded {
    left: 4%;
  }

  .campaign-hero__card--analytics {
    left: 26%;
  }
}

@media (max-width: 767.98px) {
  .campaign-hero__title {
    font-size: clamp(1.45rem, 5.8vw, 1.9rem);
  }

  .campaign-hero__actions {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: center;
    gap: 8px;
    width: 100%;
    max-width: 100%;
    padding: 0 4px;
  }

  .campaign-hero__btn--primary,
  .campaign-hero__btn--ghost {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    min-height: 42px;
    padding: 0 10px;
    font-size: clamp(0.72rem, 3.2vw, 0.82rem);
    white-space: nowrap;
  }

  .campaign-hero__btn--primary {
    border: none;
    background: linear-gradient(120deg, #ffc46b 0%, #f2a11b 52%, #e89410 100%);
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(242, 161, 27, 0.24);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .campaign-hero__btn--ghost {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.32);
    color: rgba(255, 255, 255, 0.9);
  }

  .campaign-hero__btn-arrow {
    display: none;
  }

  .campaign-hero__visual {
    min-height: clamp(380px, 56svh, 460px);
    width: 100%;
    max-width: 100%;
    transform: none;
    transform-origin: center bottom;
  }

  .campaign-hero__phone-anchor {
    width: min(52%, 228px);
    bottom: -14%;
    left: 50%;
  }

  .campaign-hero__phone {
    transform: translate(8px, -4px);
  }

  .campaign-hero__card {
    width: clamp(64px, 17vw, 88px);
    max-width: 88px;
  }

  /* Scattered orbit — larger cards, balanced spacing */
  .campaign-hero__card--contest {
    top: 4%;
    left: 21%;
    right: auto;
    width: clamp(60px, 16vw, 80px);
    max-width: 80px;
    transform: rotate(-8deg);
  }

  .campaign-hero__card--branded {
    top: 14%;
    left: 16%;
    right: auto;
    width: clamp(68px, 18vw, 92px);
    max-width: 92px;
    transform: rotate(7deg);
  }

  .campaign-hero__card--qr {
    top: 42%;
    left: 2%;
    right: auto;
    width: clamp(58px, 15.5vw, 76px);
    max-width: 76px;
    transform: rotate(-6deg);
  }

  .campaign-hero__card--analytics {
    top: 8%;
    left: 34%;
    right: auto;
    width: clamp(68px, 18vw, 92px);
    max-width: 92px;
    transform: rotate(4deg);
  }

  .campaign-hero__card--lead {
    top: 2%;
    right: 8%;
    left: auto;
    width: clamp(60px, 16vw, 80px);
    max-width: 80px;
    transform: rotate(8deg);
  }

  .campaign-hero__card--photo {
    top: 31%;
    right: 4%;
    left: auto;
    width: clamp(58px, 15.5vw, 76px);
    max-width: 76px;
    transform: rotate(-7deg);
  }

  .campaign-hero__card--lang {
    top: 46%;
    right: 10%;
    left: auto;
    width: clamp(58px, 15.5vw, 76px);
    max-width: 76px;
    transform: rotate(6deg);
  }

  @media (prefers-reduced-motion: reduce) {
    .campaign-hero__card--contest,
    .campaign-hero__card--branded,
    .campaign-hero__card--qr,
    .campaign-hero__card--analytics,
    .campaign-hero__card--lead,
    .campaign-hero__card--photo,
    .campaign-hero__card--lang {
      transform: none;
    }
  }
}

@media (max-width: 399.98px) {
  .campaign-hero__btn--primary,
  .campaign-hero__btn--ghost {
    flex: 1 1 0;
    width: auto;
    min-height: 40px;
    padding: 0 8px;
    font-size: 0.68rem;
  }

  .campaign-hero__phone-anchor {
    width: min(50%, 210px);
    bottom: -12%;
  }

  .campaign-hero__card {
    width: clamp(56px, 15vw, 76px);
    max-width: 76px;
  }

  .campaign-hero__card--branded,
  .campaign-hero__card--analytics {
    width: clamp(62px, 16.5vw, 84px);
    max-width: 84px;
  }

  .campaign-hero__card--branded {
    left: 8%;
    top: 29%;
  }

  .campaign-hero__card--analytics {
    left: 46%;
    top: 6%;
  }

  .campaign-hero__card--qr {
    left: 11%;
    top: 55%;
  }

  .campaign-hero__card--lang {
    top: 61%;
    right: 6%;
  }
}
