/* bts-tour.css — single tour: info cols + hit badge + sold-out/waitlist/seats */
/* === Три независимых колонки: Даты | Продолжительность | Место === */
.bts-tour-info-cols {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 25px !important;
    align-items: flex-start !important;
}
.bts-tour-info-cols .bts-col {
    flex: 1 1 0 !important;
    min-width: 160px !important;
}
.bts-tour-info-cols .bts-col ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.bts-tour-info-cols .bts-col ul li {
    width: 100% !important;
    float: none !important;
    clear: none !important;
    margin-bottom: 12px !important;
}
@media (max-width: 767px) {
    .bts-tour-info-cols { gap: 15px !important; }
    .bts-tour-info-cols .bts-col { flex: 1 1 100% !important; }
}
/* --- Бейджи на обложке: все в ряд слева сверху (с 18.09.2026; до того
   один «ХИТ»). Палитра — та же, что в bts-afisha.css / bts-badges.js. --- */
.bts-tour-badges {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    max-width: calc(100% - 36px);
}
.bts-tour-badges .bts-tour-hit-badge { position: static; }
.bts-tour-hit-badge.bts-badge-18plus  { background: #c0392b; }
.bts-tour-hit-badge.bts-badge-escort,
.bts-tour-hit-badge.bts-badge-noguide { background: #6c757d; }
.bts-tour-hit-badge.bts-badge-custom  { background: #7c5cbf; }
.bts-tour-hit-badge {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 10;
    background: #61ad10;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    padding: 6px 14px;
    border-radius: 6px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.25);
    text-transform: uppercase;
}
.tourmaster-single-header { position: relative; }
/* --- Fix multi-date combobox: appearance:none causes all dates to render concatenated --- */
.tourmaster-tour-date-combobox select {
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    appearance: auto !important;
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.tourmaster-tour-date-combobox::after { display: none !important; }

/* --- Sold-out / waitlist / seats --- */
.bts-sold-out { color: #999 !important; }

/* Тема сама анимирует высоту этих блоков при каждой смене даты в
   выпадающем списке (плавно схлопывает в 0, затем display:none,
   обновляет содержимое и показывает заново) — выглядит как «дёргается»
   форма бронирования. Отключаем и анимацию высоты, и скрытие. */
.tourmaster-tour-booking-available,
.tourmaster-tour-booking-people,
.tourmaster-tour-booking-submit {
    height: auto !important;
    overflow: visible !important;
    display: block !important;
}
/* Те же анимации темы отвечали и за отступ снизу у каждого блока
   (margin-bottom считался прямо в JS вместе с высотой) — раз мы
   больше не даём им доиграть анимацию до конца, отступ иногда
   остаётся 0, и поля с кнопкой визуально слипаются. Проставляем
   сами, фиксированным значением. */
.tourmaster-tour-booking-people {
    margin-bottom: 18px !important;
}
.tourmaster-tour-booking-submit {
    margin-bottom: 20px !important;
}

/* Лист ожидания: сообщение над датой и кнопка в одной палитре. */
body.single-tour .bts-waitlist-box {
    display: none;
    margin: 0 0 16px;
    padding: 14px 18px;
    background: #fff3e0;
    border: 1px solid #ff5a00;
    border-radius: 6px;
}
body.single-tour .bts-waitlist-box h4 {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    color: #ff5a00;
}
body.single-tour #tourmaster-single-tour-booking-fields input[type="submit"].bts-submit-waitlist {
    background: #fff3e0 !important;
    border: 1px solid #ff5a00 !important;
    border-radius: 4px !important;
    color: #ff5a00 !important;
    box-shadow: none !important;
}
body.single-tour #tourmaster-single-tour-booking-fields input[type="submit"].bts-submit-waitlist:hover {
    background: #ffe0b2 !important;
}

.bts-seats-info {
    margin: 8px 0; padding: 8px 12px; border-radius: 6px;
    font-size: 14px; font-weight: 600; text-align: center;
}
.bts-seats-ok { background: #e8f5e9; color: #2e7d32; }
.bts-seats-low { background: #fff3e0; color: #e65100; }
.bts-seats-none { background: #ffebee; color: #c0392b; }
/* === Возрастное подтверждение (бейдж 18+) ===
   Размываем всё содержимое, кроме самого окна: фильтр вешаем на body,
   а окно кладём в отдельный слой поверх. Так проще, чем размывать
   каждый блок по отдельности, и не ломает липкую шапку. */
html.bts-adult-blur body > *:not(.bts-adult-gate) {
    filter: blur(9px);
    pointer-events: none;
    user-select: none;
}
html.bts-adult-blur {
    overflow: hidden;
}

.bts-adult-gate {
    position: fixed;
    inset: 0;
    z-index: 2147483000;      /* выше липкой шапки и баннера про куки */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(20, 24, 30, .55);
}
.bts-adult-box {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .3);
    padding: 28px 26px 24px;
    max-width: 440px;
    width: 100%;
    text-align: center;
}
.bts-adult-title {
    font-size: 19px;
    font-weight: 700;
    line-height: 1.3;
    color: #253C72;
    margin-bottom: 12px;
}
.bts-adult-text {
    font-size: 15px;
    line-height: 1.5;
    color: #444;
    margin-bottom: 18px;
}
.bts-adult-check {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    font-size: 15px;
    color: #253C72;
    cursor: pointer;
    margin-bottom: 18px;
}
.bts-adult-check input {
    width: 18px;
    height: 18px;
    accent-color: #61ad10;
    cursor: pointer;
    flex: none;
}
.bts-adult-btn {
    display: block;
    width: 100%;
    padding: 13px 18px;
    border: none;
    border-radius: 6px;
    background: #61ad10;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}
.bts-adult-btn:disabled {
    background: #c6ccd4;
    cursor: not-allowed;
}
.bts-adult-btn:not(:disabled):hover {
    filter: brightness(1.06);
}
/* «Назад» — второстепенное действие: текстовая ссылка под кнопкой, тем
   же начертанием, что «Подробнее →» на карточках (bts-carousel-more).
   !important нужен: тема красит все button своим зелёным и даёт им
   рамку с фоном. */
.bts-adult-back {
    display: block !important;
    width: auto !important;
    margin: 12px auto 0 !important;
    padding: 4px 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    color: #253C72 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    cursor: pointer;
}
.bts-adult-back:hover {
    background: none !important;
    text-decoration: underline !important;
}

@media (max-width: 480px) {
    .bts-adult-box { padding: 22px 18px 20px; }
    .bts-adult-title { font-size: 17px; }
}

/* «Цена уточняется» в шапке тура — то же, что на карточках */
.tourmaster-tour-price.bts-price-tbd .tourmaster-tail {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #6a7080 !important;
}

/* ── Слайдер в шапке тура ──────────────────────────────────────────
   Тема выводит его без навигации: кадры листаются сами, вручную
   переключить нельзя — человек не может вернуться к понравившемуся
   и не понимает, сколько их всего. Добавляем стрелки и точки.

   Высоту держим ту же, что у обычной шапки с обложкой (545), иначе
   страницы туров разъезжаются: со слайдером шапка вырастала до 779
   по высоте самой картинки. Кадры кадрируем по центру. */
.tourmaster-single-header.tourmaster-with-slider,
.tourmaster-single-header.tourmaster-with-slider .flexslider,
.tourmaster-single-header.tourmaster-with-slider .slides,
.tourmaster-single-header.tourmaster-with-slider .slides > li {
    height: 545px !important;
    max-height: 545px !important;
}
.tourmaster-single-header.tourmaster-with-slider .slides > li img,
.tourmaster-single-header.tourmaster-with-slider .tourmaster-media-image img {
    width: 100% !important;
    height: 545px !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

/* стрелки */
.bts-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    width: 46px;
    height: 46px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .88);
    color: #253C72;
    font-size: 22px;
    line-height: 46px;
    text-align: center;
    cursor: pointer;
    padding: 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .18);
    transition: background .15s;
}
.bts-slider-arrow-prev { left: 18px; }
.bts-slider-arrow-next { right: 18px; }
@media (hover: hover) and (pointer: fine) {
    .bts-slider-arrow:hover { background: #fff; }
}

/* точки — сколько кадров и который сейчас */
.bts-slider-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 18px;
    z-index: 6;
    display: flex;
    justify-content: center;
    gap: 8px;
}
.bts-slider-dot {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .55);
    cursor: pointer;
}
.bts-slider-dot.is-on { background: #fff; }

@media (max-width: 767px) {
    .tourmaster-single-header.tourmaster-with-slider,
    .tourmaster-single-header.tourmaster-with-slider .flexslider,
    .tourmaster-single-header.tourmaster-with-slider .slides,
    .tourmaster-single-header.tourmaster-with-slider .slides > li,
    .tourmaster-single-header.tourmaster-with-slider .slides > li img {
        height: 300px !important;
        max-height: 300px !important;
    }
    .bts-slider-arrow { width: 38px; height: 38px; line-height: 38px; font-size: 18px; }
    .bts-slider-arrow-prev { left: 10px; }
    .bts-slider-arrow-next { right: 10px; }
}

/* Кадры кладём друг на друга: тема выводит их списком, и без этого
   видно только первый, а остальные тянут страницу вниз. */
.tourmaster-single-header.tourmaster-with-slider .slides { position: relative !important; }
.tourmaster-single-header.tourmaster-with-slider .slides > li {
    position: absolute !important;
    left: 0; top: 0; right: 0;
    opacity: 0 !important;
    transition: opacity .45s ease;
    pointer-events: none;
}
.tourmaster-single-header.tourmaster-with-slider .slides > li.bts-slide-on {
    opacity: 1 !important;
    pointer-events: auto;
}

/* ── Фотографии тура ───────────────────────────────────────────────
   Тема при наведении заливает снимок зелёным на 60% и показывает лупу:
   небо и лес становятся салатовыми, смотреть неприятно. Меняем на
   спокойное затемнение — понятно, что фото кликабельно, но цвет не
   спорит с самим снимком.

   Заодно приводим превью к одному виду: тема оставляет их в исходном
   размере, и в ряду они разной высоты, а мелкие занимают четверть
   ширины. Растягиваем на ширину своей колонки и режем по общей
   пропорции 3:2 — ряд выглядит ровным.

   Только на страницах туров: на других страницах те же классы у темы
   отвечают за прочие картинки. */
body.single-tour .gdlr-core-image-overlay {
    background: rgba(0, 0, 0, .32) !important;
}
body.single-tour .gdlr-core-lightgallery img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}
/* превью в колонках билдера — одинаковая высота ряда */
body.single-tour .gdlr-core-pbf-column .gdlr-core-lightgallery img {
    aspect-ratio: 3 / 2;
    object-fit: cover !important;
    object-position: center center !important;
    height: auto !important;
}


/* Стрелки у галереи фотографий тура — рядом с точками темы */
.flex-control-nav.bts-gal-nav {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}
.bts-gal-arrow {
    width: 34px !important;
    height: 34px !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #f3f5f8 !important;
    /* значок зелёный — как остальные действия на сайте */
    color: #61ad10 !important;
    font-size: 20px !important;
    line-height: 34px !important;
    font-weight: 400 !important;
    text-align: center;
    text-transform: none !important;
    letter-spacing: normal !important;
    box-shadow: none !important;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .bts-gal-arrow:hover { background: #e6ebf2 !important; }
}

/* Школьная экскурсия без расписания: полоса брони та же, что у обычных
   туров (bts-pkg-bar); отдельного оформления не нужно. Осталось поле
   «Желаемая дата» в модалке. */
.bts-book-date-pick {
    width: 100%;
    padding: 9px 10px;
    border: 1px solid #d6dbe5;
    border-radius: 6px;
    font-size: 15px;
}

/* Школьная экскурсия: форма на странице тура — как обычная форма темы,
   только вместо списка дат календарь (Юля, 30.09.2026). */
.bts-school-date-row .tourmaster-tour-booking-date-input {
    padding: 0;
    overflow: visible;
    display: flow-root;
}

.bts-school-people .tourmaster-tour-booking-people-input {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.bts-school-people .tourmaster-combobox-wrap {
    width: 100% !important;
    flex: 0 0 auto;
    min-width: 0;
    margin: 0 !important;
}
.bts-school-people select {
    width: 100%;
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #d6dbe5;
    border-radius: 4px;
    font-size: 15px;
    background: #fff;
}
.bts-school-submit .bts-school-book-btn {
    background: #61ad10 !important;
    border: none !important;
    color: #fff !important;
}
/* одинаковые промежутки между строками формы (Юля, 30.09.2026):
   у темы у строки даты отступ больше, чем у остальных */
.bts-school-date-row { margin-bottom: 18px !important; }
.bts-school-people { margin-bottom: 18px !important; }

/* Свой календарь у школьных: поле-кнопка и выпадающая сетка месяца
   (Юля, 30.09.2026: в системном поле всегда торчит «дд.мм.гггг»). */
.bts-school-datepick { position: relative; max-width: 320px; }
.bts-school-cal {
    position: absolute;
    z-index: 30;
    top: calc(100% + 6px);
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #dfe4ec;
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(16, 26, 48, .14);
    padding: 10px;
}
.bts-school-cal[hidden] { display: none; }
.bts-school-cal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
    font-weight: 600;
    color: #253C72;
}
.bts-school-cal-head button {
    border: none;
    background: transparent;
    font-size: 20px;
    line-height: 1;
    padding: 2px 8px;
    color: #253C72;
    cursor: pointer;
}
.bts-school-cal-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    text-align: center;
}
.bts-school-cal-wd { font-size: 11px; color: #98a1b2; padding-bottom: 4px; }
.bts-school-cal-day {
    border: none;
    background: transparent;
    padding: 7px 0;
    border-radius: 5px;
    font-size: 14px;
    color: #1c2432;
    cursor: pointer;
}
.bts-school-cal-day:hover:not([disabled]) { background: #eef2f9; }
.bts-school-cal-day[disabled] { color: #c8cedb; cursor: default; }
.bts-school-cal-day.bts-school-cal-on { background: #61ad10; color: #fff; }
/* поле-кнопка не должна выглядеть кнопкой темы: тема красит все button
   в карточке зелёным и пишет заглавными (Юля, 30.09.2026) */
.bts-school-cal .bts-school-cal-day,
.bts-school-cal .bts-school-cal-nav {
    background: transparent !important;
    color: #1c2432 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    box-shadow: none !important;
    font-weight: 400 !important;
}
.bts-school-cal .bts-school-cal-nav { color: #253C72 !important; font-size: 20px !important; }
.bts-school-cal .bts-school-cal-day.bts-school-cal-on { background: #61ad10 !important; color: #fff !important; }
.bts-school-cal .bts-school-cal-day[disabled] { color: #c8cedb !important; }
/* Поле даты — обычное поле формы, справа стрелка: по ней и по щелчку
   по полю раскрывается календарь (Юля, 30.09.2026). */
.bts-school-datepick { position: relative; max-width: 320px; }
input.bts-school-date {
    width: 100%;
    padding: 10px 30px 10px 12px;
    border: 1px solid #d6dbe5;
    border-radius: 4px;
    background: #fff;
    font-size: 15px;
    color: #1c2432;
    cursor: pointer;
}
input.bts-school-date::placeholder { color: #98a1b2; }
.bts-school-date-arrow {
    position: absolute;
    right: 12px;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -6px;
    border-right: 2px solid #667089;
    border-bottom: 2px solid #667089;
    transform: rotate(45deg);
    pointer-events: none;
}

/* Один выезд в листе ожидания: дата текстом, без повторной плашки мест. */
body.single-tour .bts-tour-waitlist .tourmaster-tour-booking-date-display {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    color: #000 !important;
    font-weight: 700 !important;
}
body.single-tour .bts-tour-waitlist #bts-seats-info-box {
    display: none !important;
}
/* Ссылка избранного начинается под левым краем кнопки бронирования. */
body.single-tour .tourmaster-booking-bottom .tourmaster-save-wish-list {
    margin-left: 45px;
}
/* Архив: прежние даты остаются служебными, посетителю показываем подпись. */
body.single-tour .bts-tour-archived .tourmaster-tour-booking-date-input > :not(.bts-archive-date-display) {
    display: none !important;
}
body.single-tour .bts-archive-date-display {
    color: #6a7080;
    font-size: 14px;
    line-height: 1.5;
}
/* Архивная дата: текст и календарь на одной линии по центру. */
body.single-tour .bts-tour-archived .tourmaster-tour-booking-date {
    display: flex;
    align-items: center;
}
body.single-tour .bts-tour-archived .tourmaster-tour-booking-date > i {
    flex: 0 0 30px;
}
body.single-tour .bts-tour-archived .tourmaster-tour-booking-date-input {
    flex: 1 1 0;
    min-width: 0;
}
/* Линия между участниками и кнопкой — по высоте блока во всех формах. */
body.single-tour .tourmaster-tour-booking-submit .tourmaster-tour-booking-next-sign {
    height: var(--bts-participant-line-height, 30px);
    margin-top: var(--bts-participant-line-offset, -36px);
}
/* Единый каркас: один или два ряда участников занимают одну высоту. */
body.single-tour .tourmaster-tour-booking-people {
    min-height: 150px;
}
body.single-tour .tourmaster-tour-booking-date-display {
    font-weight: 700;
}
body.single-tour .tourmaster-tour-booking-date-input .bts-seats-info {
    display: table;
    margin: 6px 0 0;
    padding: 6px 10px;
    text-align: left;
    font-size: 13px;
}
body.single-tour .bts-school-people select,
body.single-tour input.bts-school-date {
    height: 60px;
    border-radius: 0;
}
body.single-tour .bts-pkg-wrapper {
    display: block !important;
    margin-top: 0;
}
body.single-tour .bts-pkg-wrapper .bts-pkg-counters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 10px;
}
body.single-tour .bts-pkg-wrapper .bts-pkg-cnt {
    float: none;
    width: auto;
    margin: 0;
}
body.single-tour .bts-pkg-wrapper .bts-pkg-cnt:last-child:nth-child(odd) {
    grid-column: 1 / -1;
}
body.single-tour .bts-pkg-wrapper .bts-pkg-cnt label {
    display: none;
}
body.single-tour .bts-pkg-wrapper .bts-pkg-cnt select {
    width: 100%;
    height: 60px;
    border-radius: 0;
}
/* Плашка мест по центру 52px промежутка между датой и полями участников. */
body.single-tour #tourmaster-single-tour-booking-fields .tourmaster-tour-booking-date:has(.bts-seats-info) ~ .tourmaster-tour-booking-available:empty {
    display: none !important;
}
body.single-tour #tourmaster-single-tour-booking-fields:not(.bts-tour-waitlist) .tourmaster-tour-booking-date:has(.bts-seats-info) > i {
    height: 24px;
    line-height: 24px;
}
body.single-tour #tourmaster-single-tour-booking-fields:not(.bts-tour-waitlist) .tourmaster-tour-booking-date:has(.bts-seats-info) {
    margin-bottom: 52px;
}
body.single-tour #tourmaster-single-tour-booking-fields:not(.bts-tour-waitlist) .tourmaster-tour-booking-date-input:has(.bts-seats-info) {
    position: relative;
    overflow: visible;
    display: flow-root;
}
body.single-tour #tourmaster-single-tour-booking-fields:not(.bts-tour-waitlist) .tourmaster-tour-booking-date-input:has(.bts-seats-info) .tourmaster-tour-booking-date-display {
    height: 24px;
    line-height: 24px;
}
body.single-tour #tourmaster-single-tour-booking-fields:not(.bts-tour-waitlist) .tourmaster-tour-booking-date-input .bts-seats-info {
    position: absolute;
    top: calc(100% + 26px);
    margin: 0;
    transform: translateY(-50%);
}
/* Баннер тура одинаковой высоты у всех карточек (Юля, 06.10.2026): 545 px = 500 отступа сверху и 45 снизу. Название в баннере не выводим – там, где его вписали, высота росла до 602–637 и страницы шли вразнобой; крупное название всё равно стоит сразу под баннером. */
body.single-tour .tourmaster-single-header-title-wrap { height: 545px; box-sizing: border-box; overflow: hidden; }
body.single-tour .tourmaster-single-header-title { display: none !important; }

/* Выпадающий выбор даты: прежние ширина и высота поля сохраняются. */
body.single-tour .bts-tour-date-picker { position: relative; overflow: visible !important; }
body.single-tour .bts-tour-date-picker > select { display: none !important; }
body.single-tour .bts-tour-date-picker::after { display: none !important; }
body.single-tour .bts-tour-date-trigger,
body.single-tour .bts-tour-date-option {
    display: flex; align-items: center; gap: 8px; width: 100%; box-sizing: border-box;
    padding: 8px 10px; color: #253858; background: #fff; font-family: inherit;
    font-size: 14px; line-height: 1.3; text-transform: none; letter-spacing: normal;
    text-align: left; cursor: pointer; box-shadow: none;
}
body.single-tour .bts-tour-date-trigger { height: 60px; border: 1px solid #e1e1e1; border-radius: 0; background: #f5f8fc; font-weight: 400; }
body.single-tour .bts-tour-date-trigger > .fa-calendar,
body.single-tour .bts-tour-date-option > .fa-calendar { color: #59b70a; flex: 0 0 auto; }
body.single-tour .bts-tour-date-label { flex: 1 1 auto; min-width: 0; }
body.single-tour .bts-tour-date-meta { display: flex; flex-direction: column; align-items: flex-end; flex: 0 0 auto; }
body.single-tour .bts-tour-date-seats { color: #2e7d32; font-size: 12px; font-weight: 700; white-space: nowrap; }
body.single-tour .bts-tour-date-seats.is-none { color: #c0392b; }
body.single-tour .bts-tour-date-current { color: #7a879c; font-size: 12px; }
body.single-tour .bts-tour-date-options { position: absolute; top: calc(100% + 6px); left: 0; width: 100%; padding: 6px; box-sizing: border-box; border: 1px solid #dbe3ef; border-radius: 10px; background: #fff; box-shadow: 0 14px 38px rgba(24,49,87,.18); z-index: 1000; max-height: 330px; overflow: auto; }
body.single-tour .bts-tour-date-options[hidden] { display: none; }
body.single-tour .bts-tour-date-options-title { display: block; padding: 6px 8px; color: #173873; font-weight: 700; font-size: 13px; }
body.single-tour .bts-tour-date-option { border: none; border-radius: 0; min-height: 50px; }
body.single-tour .bts-tour-date-options { border-radius: 0; }
body.single-tour .bts-tour-date-option.is-current,
body.single-tour .bts-tour-date-option:hover,
body.single-tour .bts-tour-date-option:focus-visible { background: #f5f8fc; }
body.single-tour .tourmaster-tour-booking-date-input:has(.bts-tour-date-picker) { overflow: visible !important; display: flow-root; }
