/* DIVERSAINT: мобильные правки (OnePix, 02.10.2026) */
[role="button"]:focus-visible,
.header__menu--mobile:focus-visible {
    outline: 2px solid #1f6fd1;
    outline-offset: 2px;
}

@media (max-width: 767px) {
    .breadcrubs {
        flex-wrap: wrap;
        max-width: 100%;
    }
    .breadcrubs__item--active {
        white-space: normal;
        min-width: 0;
        overflow-wrap: anywhere;
    }
    .article__flex .article {
        flex-wrap: wrap;
    }
    .article__flex .article > .left,
    .article__flex .article > .right {
        flex: 1 1 100%;
        width: 100%;
        max-width: 100%;
    }
    .article__flex .article > .right iframe {
        width: 100%;
        min-height: 280px;
    }
    .article__flex .article h1.cont {
        overflow-wrap: anywhere;
    }
}

/* Главный слайдер: первый слайд виден до запуска скрипта, без скачка вёрстки (02.10.2026) */
.head__slider-container.owl-carousel:not(.owl-loaded) {
    display: block;
}
.head__slider-container.owl-carousel:not(.owl-loaded) > :not(:first-child) {
    display: none;
}

/* Главная: заголовок «Дайвинг центр DIVERSAINT» стал h1, вид как у прежнего h2 (02.10.2026) */
.about__container h1 {
    text-align: left;
    font-size: 200%;
}
@media (max-width: 1200px) {
    .about__container h1 {
        font-size: 175%;
    }
}
@media (max-width: 414px) {
    .about__container h1 {
        font-size: 150%;
    }
}

/* Бывшие H1 внутри текстов (стали H2 для SEO), вид как прежде (03.10.2026) */
h2.ds-h1 {
    font-size: 2.5rem;
    font-weight: 500;
    color: #171b26;
    line-height: 1.5;
    margin-bottom: .5rem;
}

/* Текст для экранных дикторов и поисковиков: виден только им */
.ds-sr {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Частые вопросы на главной */
.ds-faq {
    padding: 60px 0;
    background: #fff;
}
.ds-faq h2 {
    font-size: 2rem;
    font-weight: 500;
    color: #171b26;
    margin-bottom: 1.5rem;
}
.ds-faq__item {
    border-bottom: 1px solid #e3e6ec;
    max-width: 900px;
}
.ds-faq__item summary {
    cursor: pointer;
    list-style: none;
    padding: 16px 32px 16px 0;
    font-size: 1.1rem;
    font-weight: 500;
    color: #171b26;
    position: relative;
}
.ds-faq__item summary::-webkit-details-marker {
    display: none;
}
.ds-faq__item summary::after {
    content: "+";
    position: absolute;
    right: 4px;
    top: 12px;
    font-size: 1.5rem;
    line-height: 1;
    color: #1579b2;
}
.ds-faq__item[open] summary::after {
    content: "\2212";
}
.ds-faq__item summary:focus-visible {
    outline: 2px solid #1579b2;
    outline-offset: 2px;
}
.ds-faq__a {
    padding: 0 0 18px;
    color: #3d4350;
    line-height: 1.6;
}
.ds-faq__a a {
    color: #1579b2;
    text-decoration: underline;
}
@media (max-width: 767px) {
    .ds-faq {
        padding: 40px 0;
    }
    .ds-faq h2 {
        font-size: 1.5rem;
    }
}

/* Широкие таблицы: прокрутка внутри колонки вместо выхода за экран (вместо плагина Responsive Scrolling Tables) */
.ds-table-scroll {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Блок «Сезон, даты уточняйте» вместо прошедшего расписания */
.ds-season {
    margin: 24px 0;
    padding: 24px;
    background: #f4f8fc;
    border: 1px solid #d9e6f2;
    border-radius: 8px;
}
.ds-season__title {
    margin: 0 0 .5rem;
    font-size: 1.4rem;
    font-weight: 500;
    color: #171b26;
}
.ds-season__text {
    margin: 0 0 1rem;
    line-height: 1.6;
    color: #3d4350;
}

/* Главная, «Акции и спецпредложения» (OnePix 06.10.2026): если в разделе одна маленькая карточка,
   она занимает всю правую колонку, без пустого места под ней. */
.right__tour .tour__item:only-child {
    height: 100%;
    margin: 0;
}
@media (max-width: 768px) {
    .right__tour .tour__item:only-child {
        width: 100%;
        height: 240px;
    }
}
@media (max-width: 510px) {
    .right__tour .tour__item:only-child {
        height: 220px;
    }
}

/* Картинки в тексте страниц (OnePix 06.10.2026). Эти правила WordPress раньше приходили из общего файла стилей
   блоков; на страницах без блоков он не подключается ради скорости, поэтому нужные правила здесь.
   Картинка, ужатая по ширине экрана, сохраняет пропорции и не вытягивается по высоте. */
html :where(img[class*=wp-image-]) {
    height: auto;
    max-width: 100%;
}
:where(.article__context img[height]) {
    height: auto;
}
:where(figure) {
    margin: 0 0 1em;
}
.aligncenter {
    clear: both;
}
ol,
ul {
    box-sizing: border-box;
}
.screen-reader-text {
    word-wrap: normal !important;
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-break: normal !important;
}
.screen-reader-text:focus {
    background-color: #ddd;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}

/* Таблицы из старого редактора с жёсткой шириной (например, width="767"): на планшете ужимаются
   под колонку текста вместо горизонтальной прокрутки. На телефонах прокрутка остаётся, чтобы
   таблицы цен не сжимались до нечитаемых столбцов. OnePix 06.10.2026. */
@media (min-width: 600px) {
    .ds-table-scroll > table[width] {
        max-width: 100%;
    }
}

/* Планшеты (до 991 px): боковое меню (курсы, туры) уходит под текст, как на телефоне. Раньше тема делала это
   только с 650 px, и на планшетах текст, таблицы и фото сжимались в узкую колонку рядом с меню. OnePix 06.10.2026. */
@media (max-width: 991px) {
    .article__flex {
        flex-flow: column;
    }
    .article__left {
        width: 100%;
    }
    .sidebar {
        width: 100%;
        padding-left: 0;
        margin-top: 2rem;
        min-width: 0;
    }
    .blogs__cont {
        flex-flow: column;
    }
    .blogs__cont .articles {
        width: 100%;
    }
}

/* Текст страниц на телефоне (OnePix 06.10.2026): длинные ссылки и слова, склеенные неразрывными пробелами,
   переносятся; видео YouTube и Vimeo из старого редактора (ширина 500 px) не шире колонки, пропорции 16:9. */
.article__left,
.article__context {
    overflow-wrap: break-word;
}
.article__left iframe[src*="youtube.com"],
.article__left iframe[src*="youtu.be"],
.article__left iframe[src*="vimeo.com"] {
    max-width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
}

/* Страница цен .com: картинки в блоке .imgprice1 получают высоту блока (стиль в самой странице),
   без обрезки они растягивались. Теперь обрезаются по краям без искажения. OnePix 06.10.2026. */
.imgprice1 img {
    object-fit: cover;
}

/* Записи блога, где текст вставлен внутрь рамки для главного фото (480×270 с обрезкой): текст обрезался на
   компьютере и вылезал за экран на телефоне (.com «Scuba Diving at the Similan Islands»). Если в рамке
   абзацы, а не одна картинка, рамка подстраивается под содержимое. OnePix 06.10.2026. */
.article__head-img:has(> p) {
    width: auto;
    height: auto;
    overflow: visible;
    flex: 1 1 auto;
    margin-right: 0;
}

/* OnePix 07.10.2026: кнопка чата Jivo на телефоне меньше, чтобы не закрывала текст (просьба владельца).
   __jivoMobileButton: постоянный класс Jivo; zoom, а не transform, чтобы не мешать его анимации показа */
jdiv.__jivoMobileButton {
    zoom: .72;
}
