/**
 * Pelorus — мобильные правки (staging)
 * Подключается через header.php
 */

@media all and (max-width: 991px) {

    /* ── 1. Пагинация: вертикаль → горизонталь ── */

    /* Блог на главной — было слева вертикально */
    .news_main_slider_wrap .swiper-pagination {
        top: auto !important;
        bottom: 0.75rem !important;
        left: 50% !important;
        right: auto !important;
        width: auto !important;
        height: auto !important;
        transform: translateX(-50%) !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
    }

    .news_main_slider_wrap .swiper-pagination .swiper-pagination-bullet {
        display: inline-block !important;
        width: 6px !important;
        height: 6px !important;
        margin: 0 4px !important;
    }

    .news_main_slider_wrap .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        width: 8px !important;
        height: 8px !important;
    }

    .news_main_slider_item {
        padding-bottom: 2.5rem !important;
    }

    /* Hero header_slider_4 — было справа вертикально */
    .swiper-main4 .swiper-pagination {
        top: auto !important;
        right: auto !important;
        left: 50% !important;
        bottom: 12px !important;
        width: auto !important;
        height: auto !important;
        transform: translateX(-50%) !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
    }

    .swiper-main4 .swiper-pagination-bullet {
        display: inline-block !important;
        width: 8px !important;
        height: 8px !important;
        margin: 0 3px !important;
    }

    .swiper-main4.swiper-pagination-bullet-long .swiper-pagination-bullet-active {
        width: 24px !important;
        height: 8px !important;
    }

    /* Карточка товара */
    .catalog_element_slider_pagination,
    .catalog_element_slider_pagination.swiper-pagination {
        flex-direction: row !important;
        position: absolute !important;
        bottom: 10px !important;
        left: 50% !important;
        right: auto !important;
        top: auto !important;
        transform: translateX(-50%) !important;
        width: auto !important;
        height: auto !important;
        z-index: 5;
    }

    .catalog_element_slider_pagination .swiper-pagination-bullet {
        display: inline-block !important;
        margin: 0 4px !important;
    }

    /* about_text6 */
    .about_text6_slider .about_text6_pagination,
    .about_text6_slider .swiper-pagination {
        top: auto !important;
        bottom: 12px !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        flex-direction: row !important;
        width: auto !important;
        height: auto !important;
    }

    .about_text6_slider .swiper-pagination-bullet {
        display: inline-block !important;
        width: 8px !important;
        height: 8px !important;
        margin: 0 4px !important;
    }

    /* Swiper vertical class */
    .swiper-pagination.swiper-pagination-vertical,
    .swiper-vertical > .swiper-pagination-bullets {
        top: auto !important;
        bottom: 12px !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        flex-direction: row !important;
        width: auto !important;
        height: auto !important;
    }

    .swiper-pagination-vertical .swiper-pagination-bullet,
    .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
        display: inline-block !important;
        margin: 0 4px !important;
    }

    /* Fallback */
    .swiper-pagination {
        flex-direction: row !important;
    }

    .swiper-pagination-bullet-long .swiper-pagination-bullet {
        display: inline-block !important;
        width: 8px !important;
        height: 8px !important;
        margin: 0 4px !important;
    }

    .swiper-pagination-bullet-long .swiper-pagination-bullet-active {
        width: 24px !important;
        height: 8px !important;
    }

    /* ── 2. Меньше расстояния между блоками ── */
    .history_main_item {
        margin-bottom: 2rem !important;
    }

    .history_main_wrap .button_pagen_more {
        margin-top: 1rem !important;
        margin-bottom: 1.5rem !important;
    }

    .guide_to_whom_item {
        margin-bottom: 1.5rem !important;
    }

    .guide_to_whom_wrap {
        margin: 2rem 0 !important;
    }

    .history_main_wrap .history_main_item + .history_main_item,
    .news_3 .news_items .news_item + .news_item {
        margin-top: 0 !important;
    }

    /* Блог title_news_2 — отступы карточек */
    .title_news_2 .container-fluid {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .news_main_wrap {
        padding: 2rem 0 !important;
    }

    .news_main_items_wrap {
        padding: 1.5rem 0 2.5rem !important;
    }

    .news_main_item {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 1.5rem !important;
        padding: 2rem 1.5rem !important;
        gap: 1rem !important;
    }

    .news_main_item:last-child {
        margin-bottom: 0 !important;
    }

    .news_main_item_avtor {
        margin-bottom: 0.25rem;
    }

    .news_main_item_title {
        margin-bottom: 0.5rem !important;
    }

    .news_main_item_img {
        width: 70% !important;
        min-width: 70% !important;
        padding-top: 42% !important;
    }

    .news_main_wrap .button_pagen_more {
        margin-top: 1rem !important;
        margin-bottom: 1.5rem !important;
    }

    /* about_text4 — фото после «Оставить пожелание», было 100vh */
    .about_text4_full {
        height: 33.333vh !important;
        max-height: 33.333vh !important;
    }

    .about_text4_full img,
    .about_text4_full video,
    .about_text4_full iframe {
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }

    .about_text4_1.theme-pt-on,
    .about_text4_1.theme-pb-on {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .about_text3_1.theme-pt-on,
    .about_text3_1.theme-pb-on {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    .about_text3_1 .text_subtitle.mb-40 {
        margin-bottom: 1.5rem !important;
    }

    /* ── 3. Кадрирование фона ── */
    .top_block_img img,
    .top_block_img video,
    .slider-main-video-bg video,
    .swiper-main4 .slider_wrap,
    .title_tariffs_img img,
    .banner4 .banner__wrap,
    .guides_list_img img,
    .title_uslugi6_img img,
    .tabs_block_img img {
        object-fit: cover !important;
        object-position: center center !important;
    }

    .tabs_block_img {
        aspect-ratio: 4 / 3;
        overflow: hidden;
    }

    .tabs_block_img img {
        width: 100% !important;
        height: 100% !important;
        display: block !important;
    }

    /* Табы «Особенности / Комплектация / …» — фон не прыгает при переключении */
    .caralog_tabs_standart .block_tile_wrap {
        min-height: 100svh;
    }

    .caralog_tabs_standart .block_tile {
        position: relative !important;
        overflow: hidden !important;
        min-height: 100svh;
        background-position: center center !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
    }

    .caralog_tabs_standart .block_tile_bg_layer {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
        z-index: 0;
        pointer-events: none;
    }

    .caralog_tabs_standart .block_tile::before {
        z-index: 1 !important;
    }

    .caralog_tabs_standart .block_tile > .container-xxl {
        position: relative !important;
        z-index: 2 !important;
    }

    .caralog_tabs_standart .tab-content.h-100,
    .caralog_tabs_standart .tab-pane.h-100 {
        height: auto !important;
        min-height: 0 !important;
    }

    /* Все таб-панели в одной ячейке grid → высота = самый высокий таб */
    .caralog_tabs_standart .tab-content,
    .tabs_block .tab-content {
        display: grid !important;
    }

    .caralog_tabs_standart .tab-content > .tab-pane,
    .tabs_block .tab-content > .tab-pane {
        grid-area: 1 / 1 !important;
        display: block !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: none !important;
    }

    .caralog_tabs_standart .tab-content > .tab-pane.active,
    .tabs_block .tab-content > .tab-pane.active {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        z-index: 1;
    }

    .caralog_tabs_standart .tabs_block_img,
    .tabs_block .tabs_block_img {
        aspect-ratio: 4 / 3;
        overflow: hidden;
    }

    .caralog_tabs_standart .tabs_block_img img,
    .tabs_block .tabs_block_img img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }

    /* Каталог — одинаковое кадрирование при смене цвета */
    .catalog_item_img_wrap .catalog_item_img,
    .catalog_item_offer_img {
        object-fit: contain !important;
        object-position: center center !important;
    }

    .catalog_element_slider_offers_wrap,
    .catalog_element_slider_wrap {
        height: 60vw !important;
        min-height: 240px !important;
    }

    .catalog_element_slider_item {
        height: 100% !important;
    }

    .catalog_element_slider_item img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    /* Sticky-фон гидов/историй — без скачка при скролле */
    .guides_list_img_wrap,
    .guides_list_img {
        height: 100vh !important;
        height: 100svh !important;
    }

    .guides_list_img img {
        width: 100% !important;
        height: 100% !important;
    }

    /* Карточка товара — убрать скачок от is-scrolled padding */
    body.catalog-element-page.is-scrolled {
        padding-top: 0 !important;
    }

    body.catalog-element-page.is-scrolled .catalog_element_main_header .header_top {
        position: relative !important;
    }

    /* title_uslugi6 — убрать sticky-скачок на мобилке */
    .title_uslugi6_block_img_wrap,
    .title_uslugi6_v4 .title_uslugi6_block_img_wrap {
        position: relative !important;
        top: auto !important;
        height: auto !important;
    }

    .title_uslugi6_img,
    .title_uslugi6_v4 .title_uslugi6_img {
        position: relative !important;
        top: auto !important;
        height: 50vh !important;
        max-height: 360px !important;
    }

    .slider-main-video-bg video {
        object-fit: cover !important;
        width: 100% !important;
        height: 100% !important;
    }

    /* ── 4. CTA-блок banner4 — выше, равные отступы сверху/снизу ── */
    .banner4 .banner__wrap,
    .banner4_v4 .banner__wrap,
    .guide_fishing_banner .banner4 .banner__wrap {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        align-content: center !important;
        min-height: 100svh !important;
        min-height: 100vh !important;
        height: auto !important;
        padding: 2.5rem 1.25rem !important;
        box-sizing: border-box !important;
    }

    .banner4 .banner__wrap > .container-xxl,
    .banner4_v4 .banner__wrap > .container-xxl {
        display: flex !important;
        flex: 0 1 auto !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .banner4 .banner_content_wrap,
    .banner4_v4 .banner_content_wrap {
        width: 100% !important;
        margin: 0 !important;
        gap: 1.25rem !important;
        justify-content: center !important;
    }

    .banner4 .banner_content_top .banner_desc,
    .banner4_v4 .banner_content_top .banner_desc {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

    .banner4 .banner_content,
    .banner4_v4 .banner_content,
    .banner4 .banner_content_bottom,
    .banner4_v4 .banner_content_bottom {
        gap: 0.75rem !important;
        margin-top: 0 !important;
    }

    .banner4_v4 .banner_content_bottom .banner_desc {
        margin-top: 0 !important;
        margin-bottom: 0.25rem !important;
    }

    .banner4 .banner_title,
    .banner4_v4 .banner_title {
        margin-bottom: 0.75rem !important;
    }

    section.banner.theme-pt-on.theme-pb-on:has(.banner4),
    section.banner.theme-pt-on.theme-pb-on:has(.banner4_v4),
    section.title_banner4_v4.theme-pt-on {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .top_block_content {
        padding-top: 4rem !important;
        justify-content: center !important;
        gap: 1.25rem !important;
    }

    .top_block_content_bottom {
        min-height: unset !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding: 1.25rem 0 !important;
    }

    .title_tariffs .title_tariffs_text {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    /* ── 5. Одна белая кнопка (без дубля стрелки) ── */
    .catalog_slider_control {
        display: none !important;
    }

    .catalog_slider_block_button {
        width: 100% !important;
        margin-top: 1.25rem !important;
    }

    .catalog_slider_block_button .button_arrow_text {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 0 !important;
        background: #fff !important;
        border-radius: 20px !important;
        overflow: hidden;
        color: #000 !important;
    }

    .catalog_slider_block_button .link__text,
    .catalog_slider_block_button .link__arrow {
        background: #fff !important;
        color: #000 !important;
    }

    .catalog_slider_block_button .link__text:after,
    .catalog_slider_block_button .link__arrow:after {
        display: none !important;
    }

    .catalog_slider_block_button .link__text {
        flex: 1 1 auto !important;
        justify-content: center !important;
        padding: 1rem 1.25rem !important;
        border-radius: 20px 0 0 20px !important;
    }

    .catalog_slider_block_button .link__arrow {
        padding: 1rem !important;
        border-radius: 0 20px 20px 0 !important;
    }

    .catalog_slider_block_button .button_arrow_text:hover .link__text,
    .catalog_slider_block_button .button_arrow_text:hover .link__arrow,
    .catalog_slider_block_button .button_arrow_text:hover .link__text:after,
    .catalog_slider_block_button .button_arrow_text:hover .link__arrow:after {
        background: #fff !important;
        color: #000 !important;
        transform: none !important;
    }

    .slide_block_left_2 .skit-button + .skit-button,
    .slide_block_left_2 .skit-button-wrap .skit-button-icon,
    .banner4 .skit-button + .skit-button-icon,
    .to_steps .skit-button + .skit-button-icon {
        display: none !important;
    }

    .slide_block_left_2 .skit-button,
    .banner4 .skit-button,
    .to_steps .skit-button {
        width: 100% !important;
        max-width: 100% !important;
        background: #fff !important;
        color: #000 !important;
        border-radius: 20px !important;
    }

    /* ── 6. Рамка 3D-модели шире, без обрезки при вращении ── */
    .text_block4_new,
    .text_block4_new .container-xxl,
    .text_block4_new .row,
    .text_block4_new [class*="col-"] {
        overflow: visible !important;
    }

    .text_block4_new_img {
        overflow: visible !important;
        width: calc(100% + 2.5rem) !important;
        max-width: none !important;
        margin-left: -1.25rem !important;
        margin-right: -1.25rem !important;
        padding: 1rem 0 1.5rem !important;
    }

    .text_block4_new_img .model-interactive-box {
        overflow: visible !important;
        width: 100% !important;
        max-width: none !important;
        padding: 0 0.25rem !important;
    }

    .text_block4_new_img model-viewer {
        width: 100% !important;
        max-width: none !important;
        min-height: 360px !important;
        height: 78vw !important;
        max-height: 500px !important;
        --poster-color: transparent;
    }

    /* ── 7. Качество превью статей ── */
    .news_item .image img,
    .card-blog img,
    .history_main_item_img img,
    .news_main_item_img img,
    .news_main_slider_img img,
    .modal_history_gallery_item img {
        image-rendering: auto !important;
    }

    .news_item .image img,
    .card-blog img,
    .history_main_item_img img,
    .news_main_item_img img,
    .news_main_slider_img img {
        object-fit: cover !important;
        object-position: center center !important;
        width: 100% !important;
        height: 100% !important;
    }

    /* ── 8–10. Отступы текстов и иконок от краёв ── */
    .container,
    .container-fluid,
    .container-xl,
    .container-lg {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    /* Карточки каталога — тексты не прилипают к краям */
    .catalog_item_block,
    .catalog_item_button_wrap {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    .catalog_item_button_wrap {
        padding-bottom: 1.5rem !important;
    }

    .catalog_item_props_wrap,
    .catalog_item_title,
    .catalog_item_text,
    .catalog_item_price_wrap {
        width: 100% !important;
    }

    /* Карточка товара на детальной */
    .catalog_element_main,
    .catalog_element_main_bottom {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    .block_tile_wrap {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .block_tile_item {
        padding: 1.5rem 1.25rem !important;
    }

    /* Стеклянные плашки — тексты не прилипают к скруглённым краям */
    .guides_list_item,
    .history_main_item,
    .guide_to_whom_item {
        padding: 2rem 1.75rem !important;
        box-sizing: border-box !important;
    }

    .guides_list_item_title,
    .guides_list_item_text,
    .history_main_item_title,
    .history_main_item_text,
    .history_main_item_avtor,
    .guide_to_whom_item_title,
    .guide_to_whom_item_text,
    .news_main_item_title,
    .news_main_item_text,
    .news_main_item_avtor {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
        box-sizing: border-box !important;
    }

    /* Иконки соцсетей гидов — от правого края плашки */
    .guides_list_item_img_wrap {
        width: 100% !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
        box-sizing: border-box !important;
    }

    .guides_list_item_contacts_block {
        right: 0.75rem !important;
    }

    .modal_history .modal-body,
    .modal_history .modal_history_info,
    .slide_block_left_1,
    .slide_block_left_2,
    .slide_block_right_1,
    .banner4 .banner_content,
    .social_list_footer_new,
    .footer_social_wrap {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    .modal_history .btn-close {
        right: 1.25rem !important;
    }

    .modal_history .modal-social,
    .modal_history .guide_social {
        right: auto !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        justify-content: center !important;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    /* ── 9. Пустой блок — горизонтальный формат ── */
    .title_uslugi6_block_img_wrap.img_2,
    .title_uslugi6_block_img_wrap.img_2 .title_uslugi6_img {
        height: auto !important;
        min-height: unset !important;
        padding-top: 0 !important;
    }

    .title_uslugi6_block_img_wrap.img_2 .title_uslugi6_img {
        aspect-ratio: 16 / 9;
        max-height: 220px;
    }

    .steps_main_top {
        height: auto !important;
        min-height: unset !important;
        padding: 3rem 0 !important;
    }

    .steps_main_top_img {
        position: relative !important;
        height: 200px !important;
    }

    /* ── 14. Выравнивание кнопок ── */
    .catalog_item_badge {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.4em !important;
        line-height: 1.2 !important;
        padding: 0.55em 1em !important;
    }

    .catalog_item_badge_icon {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-top: 0 !important;
        height: 1em !important;
        flex-shrink: 0 !important;
    }

    .catalog_item_badge_text {
        display: flex !important;
        align-items: center !important;
        line-height: 1.2 !important;
    }

    .caralog_tabs_wrap .nav-tabs .nav-link,
    .caralog_tabs_wrap .nav-tabs .file_download_link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.5em !important;
        min-height: 2.5rem !important;
        padding: 0.55em 1.25em !important;
        line-height: 1.2 !important;
        vertical-align: middle !important;
    }

    .file_download_icon {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        margin-top: 0 !important;
    }

    .catalog_slider_block_button,
    .catalog_slider_block .skit-button-wrap,
    .products-slider .swiper-button-prev,
    .products-slider .swiper-button-next {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
    }

    .catalog_slider_block_button .skit-button-wrap {
        width: 100% !important;
        justify-content: center !important;
    }

    .catalog_element_slider_wrap .catalog_element_slider_pagination {
        order: 3;
    }

    /* Модалка заявки — поля и крестик с нормальными отступами */
    .modal__feedback .modal-dialog {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }

    .modal__feedback .modal-header {
        position: relative !important;
        padding: 1.5rem 1.25rem 0.5rem !important;
        border: none !important;
    }

    .modal__feedback .modal-title {
        padding: 0 2.5rem 0 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }

    .modal__feedback .modal-body {
        padding: 1rem 1.25rem 1.75rem !important;
    }

    .modal__feedback .btn-close {
        position: absolute !important;
        top: 1.25rem !important;
        right: 1.25rem !important;
        margin: 0 !important;
    }

    .modal__feedback .contactForm {
        margin: 0 !important;
    }

    .modal__feedback .contactForm > .col-12 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .modal__feedback .form-label {
        display: block !important;
        width: 100% !important;
        margin-bottom: 0.5rem !important;
    }

    .modal__feedback .skit-input-text,
    .modal__feedback .skit-input-textarea,
    .modal-dialog .form-control,
    .modal-dialog textarea {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .modal__feedback .form-check {
        display: flex !important;
        align-items: flex-start !important;
        gap: 0.625rem !important;
        padding-left: 0 !important;
        margin-left: 0 !important;
    }

    .modal__feedback .form-check-input {
        flex: 0 0 auto !important;
        float: none !important;
        margin: 0.2em 0 0 0 !important;
    }

    .modal__feedback .form-check-label {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        padding-left: 0 !important;
        line-height: 1.4 !important;
    }

    .modal__feedback .button_arrow_text {
        width: 100% !important;
        justify-content: center !important;
    }
}

@media all and (max-width: 575px) {
    .top_block_v3 .top_block_content {
        gap: 2rem !important;
    }

    .guides_list_item,
    .history_main_item {
        border-radius: 2rem !important;
        padding: 2rem 1.5rem !important;
    }

    .guide_to_whom_item {
        padding: 2rem 1.5rem !important;
        border-radius: 1.5rem !important;
    }

    .guides_list_item_contacts_block {
        right: 0.5rem !important;
    }
}
