/* Scoped mobile improvements. Desktop layout and purchase handlers are unchanged. */
.mobile-product-actions,
#pulsar .pulsar-mobile-shop {
    display: none;
}

@media (max-width: 767px) {
    .b-catalog-pages .catalog-pages__item--more {
        display: block;
        width: 100%;
    }
    .b-catalog-pages .show-more {
        min-height: 48px;
        min-width: 200px;
    }

    /* This Tilda export also defines .container; keep its width out of the site footer. */
    .page-alphatag-arena-wrap > .container.container--layout.alphatag-arena-site-footer {
        align-self: flex-start;
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    /* Keep contacts, but compact the repeated landing header below the global header. */
    .franchise-landing .franchise-header .header__top {
        margin-top: 18px;
    }
    .franchise-landing .franchise-header .header__top-logo {
        display: none;
    }
    .franchise-landing .franchise-header .header__top-contacts {
        margin-top: 0;
        align-items: center;
    }
    .franchise-landing .franchise-header .header__top-mail {
        margin-top: 12px;
    }
    .franchise-landing .franchise-header .header__content {
        margin-top: 24px;
    }

    /* The offer and action precede the tall illustration; all explanatory text remains. */
    .lasertag-doma__wrap.wrap .header__text {
        display: flex;
        flex-direction: column;
    }
    .lasertag-doma__wrap.wrap .header__btn {
        order: 1;
        margin-top: 20px;
        margin-bottom: 8px;
    }
    .lasertag-doma__wrap.wrap .header__description {
        order: 2;
    }
    .lasertag-doma__wrap.wrap .header__img {
        order: 3;
    }

    #pulsar .pulsar-mobile-shop {
        display: flex;
        min-height: 44px;
    }
    #pulsar .header__button {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 8px;
    }

    .b-catalog-detail .mobile-product-actions {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 4px 0 16px;
        text-align: center;
    }
    .b-catalog-detail .mobile-product-actions .btn {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        width: 100%;
        padding: 12px;
        white-space: normal;
    }
    .b-catalog-detail .mobile-product-actions__order {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 44px;
        color: #b30734;
        text-decoration: underline;
    }
    .b-catalog-detail #mobile-product-options,
    .b-catalog-detail #mobile-product-order {
        scroll-margin-top: 110px;
    }
    .mobile-product-actions a:focus-visible {
        outline: 2px solid #b30734;
        outline-offset: 3px;
    }
}

@media (max-width: 639px) {
    /* Move the complete text/CTA group together, preserving Tilda's own scaling. */
    .alphatag-arena-landing #rec2296367101 .tn-elem[data-elem-id="1779099140290"],
    .alphatag-arena-landing #rec2296367101 .tn-elem[data-elem-id="1779099247574000001"],
    .alphatag-arena-landing #rec2296367101 .tn-elem[data-elem-id="1779099184051"],
    .alphatag-arena-landing #rec2296367101 .tn-elem[data-elem-id="1779099352035"],
    .alphatag-arena-landing #rec2296367101 .tn-elem[data-elem-id="1779099468203000001"] {
        margin-top: -80px;
    }
}

@media (max-width: 359px) {
    .franchise-landing .franchise-header .header__suptitle {
        font-size: 32px;
        line-height: 1.15;
    }
    .franchise-landing .franchise-header .header__descr {
        font-size: 22px;
        line-height: 1.35;
        margin-top: 16px;
    }
    .franchise-landing .franchise-header .header__content {
        margin-top: 16px;
    }
    .franchise-landing .franchise-header .header__btn {
        margin-top: 20px;
    }
}
