/* ============================================================
   ВЕСЕЛИУМ — МОБИЛЬНЫЕ БАННЕРЫ КАТАЛОГОВ, v1 (04.11.2026)
   Только каталоги shows.php и animators.php.
   Подключать после style.css; десктоп, формы и другие шоу не трогаем.
   ============================================================ */
@media screen and (max-width: 850px) {
  .shows-hero,
  .page-hero {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-height: 0 !important;
    margin: 0 !important; /* hero больше не уходит под двухстрочную шапку */
    padding: 34px 19px 83px !important;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    text-align: center;
    isolation: isolate;
    overflow: hidden;
  }

  .shows-hero .shows-hero-content,
  .page-hero .page-hero-content {
    position: relative;
    z-index: 4;
    width: 100%;
    max-width: 490px;
    min-width: 0;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  /* Небольшая подпись вместо огромных декоративных элементов над текстом */
  .shows-hero .shows-hero-content::before,
  .page-hero .page-hero-content::before {
    display: inline-block;
    box-sizing: border-box;
    max-width: 100%;
    margin: 0 auto 14px;
    padding: 7px 14px;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 999px;
    background: rgba(255,255,255,.50);
    color: #735439;
    font-size: 10px;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: .10em;
    text-transform: uppercase;
    box-shadow: 0 3px 13px rgba(74,51,32,.04);
  }
  .shows-hero .shows-hero-content::before { content: "ПРАЗДНИЧНЫЕ ШОУ"; }
  .page-hero .page-hero-content::before { content: "ЛЮБИМЫЕ ГЕРОИ"; }

  .shows-hero .shows-hero-content h1,
  .page-hero .page-hero-content h1 {
    margin: 0 auto 14px !important;
    max-width: 15ch;
    font-size: clamp(29px, 8vw, 36px) !important;
    font-weight: 900 !important;
    line-height: 1.13 !important;
    letter-spacing: -.025em !important;
    color: #4a3320 !important;
    filter: none !important;
    text-shadow: 0 2px 12px rgba(255,255,255,.57);
    text-wrap: balance;
    overflow-wrap: break-word;
  }
  .page-hero .page-hero-content h1 { max-width: none; }

  .shows-hero .shows-hero-content h1::after,
  .page-hero .page-hero-content h1::after {
    content: "";
    display: block;
    width: 52px;
    height: 4px;
    margin: 13px auto 0;
    border-radius: 8px;
    background: linear-gradient(90deg, #ffe487, #e8ae29);
    box-shadow: 0 2px 6px rgba(227,180,32,.21);
  }

  .shows-hero .shows-hero-content p,
  .page-hero .page-hero-content p {
    width: 100%;
    max-width: 36ch;
    margin: 0 auto 23px !important;
    font-size: clamp(14px, 3.7vw, 16px) !important;
    font-weight: 700 !important;
    line-height: 1.52 !important;
    color: #5b4637 !important;
    opacity: .96 !important;
    filter: none !important;
    text-shadow: 0 1px 5px rgba(255,255,255,.47);
    text-wrap: pretty;
  }

  /* Действующая кнопка заявки — без изменения обработчика */
  .shows-hero .shows-hero-content > .btn-main,
  .page-hero .page-hero-content > .btn-main {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto !important;
    min-width: min(245px, 100%);
    max-width: 100%;
    min-height: 49px;
    margin: 0 auto !important;
    padding: 12px 24px !important;
    border-radius: 999px !important;
    font-size: clamp(14px, 3.8vw, 16px) !important;
    line-height: 1.25;
    letter-spacing: 0 !important;
    white-space: normal;
    text-transform: none;
    box-shadow: 0 7px 19px rgba(212,156,21,.26), inset 0 2px 5px rgba(255,255,255,.55) !important;
  }

  /* Иконки — исключительно декор на периферии, без наложения на текст */
  .shows-hero .shows-shapes,
  .page-hero .shows-shapes {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
  }
  .shows-hero .show-icon,
  .page-hero .show-icon {
    position: absolute;
    font-size: 36px !important;
    opacity: .21 !important;
    color: #fff !important;
    filter: none !important;
  }
  .shows-hero .si1, .page-hero .ani1 { top: 13% !important; left: 3% !important; right: auto !important; }
  .shows-hero .si2, .page-hero .ani2 { top: auto !important; bottom: 20% !important; left: 6% !important; right: auto !important; }
  .shows-hero .si3, .page-hero .ani3 { top: 16% !important; right: 4% !important; left: auto !important; }
  .shows-hero .si4, .page-hero .ani4 { top: auto !important; bottom: 19% !important; right: 4% !important; left: auto !important; }
  .shows-hero .si5, .shows-hero .si6,
  .page-hero .ani5, .page-hero .ani6 { display: none !important; }

  .shows-hero > .cloud-divider,
  .page-hero > .cloud-divider {
    position: absolute;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 67px !important;
    z-index: 2;
    pointer-events: none;
  }

  .shows-hero + .catalog-section,
  .page-hero + .catalog-section {
    margin-top: 15px !important;
  }
}

@media screen and (max-width: 359px) {
  .shows-hero,
  .page-hero { padding: 25px 14px 73px !important; }
  .shows-hero .shows-hero-content h1,
  .page-hero .page-hero-content h1 { font-size: 29px !important; }
  .shows-hero .shows-hero-content p,
  .page-hero .page-hero-content p { font-size: 14px !important; }
  .shows-hero .show-icon,
  .page-hero .show-icon { font-size: 29px !important; opacity: .16 !important; }
}

@media (prefers-reduced-motion: reduce) {
  .shows-hero .show-icon,
  .page-hero .show-icon { animation: none !important; }
}
