/* Shared refinements preserve existing navigation and purchase contracts. */
.event-section .event-grid .movie-content .th_name { font-size: 14px; line-height: 1.5; }
.ts-modern-search .months .day > :is(.date, div:nth-child(3)) { font-size: 13px; line-height: 1.25; }
.ts-home-title { font-size: clamp(22px, 2.2vw, 30px); line-height: 1.35; margin: 24px 0 16px; }
.ts-home-promotion { margin-block: 32px; }
.ts-home-promotion .search-ticket-section { margin-top: 0; }
.ts-home-promotion--lead { margin-block: 24px; }
.ts-home-promotion--lead ~ .ts-top-movies { margin-top: 24px; }
.swiper-slider-1 > :is(.swiper-button-prev, .swiper-button-next) { padding: 0; border: 0; background: transparent; }
.swiper-slider-1 > :is(.swiper-button-prev, .swiper-button-next):focus-visible { outline: 2px solid var(--ts-accent, #31d7a9); outline-offset: 3px; border-radius: 50%; }
@media (min-width: 992px) {
    .ts-home-promotion--lead { margin-top: calc(var(--ts-header-height, 117px) + 24px); }
}
.timeline :is(.custom-button, .timeline-main-button, .timeline-sticky-link),
.timeline-featured-card :is(.custom-button, .timeline-main-button),
.timeline-mobile-card .timeline-mobile-button,
.timeline-sticky-buy .timeline-sticky-link {
    background: var(--ts-accent, #31d7a9) !important;
    color: #001232 !important;
    border: 1px solid transparent;
    box-shadow: none;
    font: 700 16px/1.4 "TicketSystem Armenian", "Open Sans", Arial, sans-serif;
    transition: background-color .18s ease-out, box-shadow .18s ease-out;
}
html.white-mode .timeline :is(.custom-button, .timeline-main-button, .timeline-sticky-link),
html.white-mode .timeline-featured-card :is(.custom-button, .timeline-main-button),
html.white-mode .timeline-mobile-card .timeline-mobile-button,
html.white-mode .timeline-sticky-buy .timeline-sticky-link { color: #fff !important; }
.timeline :is(.custom-button, .timeline-main-button):focus-visible,
.timeline-sticky-buy .timeline-sticky-link:focus-visible { outline: 3px solid var(--ts-accent); outline-offset: 4px; }
.timeline-sticky-buy:not(.is-needed) { visibility: hidden; pointer-events: none; }
@media (max-width: 991px) {
    body .header-section .header-wrapper.mb-2 { flex-wrap: nowrap; column-gap: 0; }
    body .header-section .mobile-header-actions { gap: 0; }
    body .header-section .header-wrapper > .logo.show_mobile {
        flex: 0 1 128px; width: 128px; max-width: calc(100% - 176px); margin-right: 0;
    }
    body .header-section .logo.show_mobile > a > img { width: 128px; }
    body .header-section .header-wrapper > .logo.show_mobile:is(.ts-games-logo, .ts-halloween-logo) {
        flex: 0 1 168px; width: 168px; max-width: calc(100% - 176px); margin-right: 0; gap: 4px; padding: 0; box-sizing: border-box;
    }
    body .header-section .logo.show_mobile.ts-games-logo > a:not(.ts-games-link) > img { width: 100%; max-width: 120px; }
    body .header-section .logo.show_mobile.ts-games-logo > .ts-games-link {
        flex: 0 0 44px; min-width: 44px; width: 44px; height: 44px;
    }
    body .footer-navbar :is(a, button, a > span, button > span) { font-size: 12px; line-height: 1.2; }
    .footer-navbar button { padding-inline: 5px; }
    body .footer-navbar > a { flex: 1 1 0; padding-inline: 4px; }
    body .footer-navbar > button { flex: 1.3 1 0; padding-inline: 4px; }
    body .footer-navbar :is(a, button) > span { white-space: nowrap; overflow-wrap: normal; }
    .ts-modern-search .months .day { flex-basis: 56px; min-width: 56px; }
    .ts-top-movies .ts-top-movie__name { font-size: 14px; }
}
@media (hover: hover) and (pointer: fine) {
    .timeline :is(.custom-button, .timeline-main-button):hover,
    .timeline-sticky-buy .timeline-sticky-link:hover { box-shadow: 0 4px 12px rgb(0 18 50 / 15%); }
}
@media (prefers-reduced-motion: reduce) {
    body .cinema-menu img, body .wcs-addons--blink { animation: none !important; }
}
