/**
 * /katalog/ — єдина типографіка Montserrat:
 *   заголовки 32px / 600
 *   підзаголовки + кнопки 16px / 600
 *   текст 16px / 400
 */
body.atsp-scope {
  --anex-font: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-family: var(--anex-font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
}

body.atsp-scope *,
body.atsp-scope *::before,
body.atsp-scope *::after {
  font-family: inherit;
}

/* ─── 32px / 600 — заголовки ─── */
body.atsp-scope :is(
  h1,
  .search-results-count,
  .tm-title,
  .atsp-hot-drawer__title,
  .atsp-booking__title
) {
  font-size: 32px !important;
  font-weight: 600 !important;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

/* ─── 16px / 600 — підзаголовки, кнопки, акценти ─── */
body.atsp-scope :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  button,
  button *,
  input[type="submit"],
  input[type="button"],
  .ps-submit,
  .anex-search-mode-btn,
  .anex-segment-label,
  label[for="ps-country-q-desk"],
  .filter-label,
  .filter-label-row,
  .search-filters-head h2,
  .search-filters-reset,
  .search-sort,
  .search-layout-btn,
  .search-results-mode-badge,
  .search-result-cta,
  .search-result-body h3,
  .tm-btn,
  .anex-dest-apply,
  .anex-sheet-apply,
  .sf-filters-tab,
  .sf-filters-close,
  .atsp-hot-trigger,
  .atsp-hot-trigger-mobile,
  .atsp-hot-drawer__close,
  .atsp-hot-tab,
  .atsp-hot-card__cta,
  .atsp-hot-carousel__prev,
  .atsp-hot-carousel__next,
  .atsp-fab__main,
  .atsp-fab__item,
  .tour-modal__close,
  .tm-arrow,
  .tm-contact,
  .search-hero-copy__lead,
  .tm-price strong,
  .tm-similar-price strong,
  .tm-review__name,
  .anex-seg-primary,
  .anex-cal-day.range-start,
  .anex-cal-day.range-end,
  .anex-nights-grid button.is-selected,
  .anex-panel-list button.is-active
) {
  font-size: 16px !important;
  font-weight: 600 !important;
}

body.atsp-scope :is(
  .anex-cal-arrow,
  .anex-nights-grid button,
  .anex-panel-list button,
  .anex-stepper button
) {
  font-size: 16px !important;
  font-weight: 600 !important;
}

/* ─── 16px / 400 — основний текст ─── */
body.atsp-scope :is(
  p,
  li,
  small,
  input:not([type="submit"]):not([type="button"]),
  select,
  textarea,
  .search-result-meta,
  .search-result-route,
  .search-result-tag,
  .search-result-price,
  .search-result-price-note,
  .search-result-old,
  .search-result-rate-pill,
  .search-result-similar-badge,
  .search-result-price-na,
  .search-results-state,
  .anex-seg-secondary,
  .anex-seg-placeholder,
  .anex-panel-hint,
  .anex-dest-regions-empty,
  .anex-cal-day:not(.range-start):not(.range-end),
  .anex-cal-weekday,
  .anex-cal-title,
  .sf-exc-muted,
  .sf-budget-row input,
  .sf-chip-grid label span,
  .sf-exc-night-toggle span,
  .tm-meta,
  .tm-muted,
  .tm-price,
  .tm-price__from,
  .tm-price__per,
  .tm-price-note,
  .tm-flights-note,
  .tm-flight__route,
  .tm-flight__sub,
  .tm-flight__dir,
  .tm-include,
  .tm-deps-lead,
  .tm-deps-status,
  .tm-dep__date,
  .tm-dep__nights,
  .tm-dep__price,
  .tm-review__date,
  .tm-review__text,
  .tm-similar-name,
  .tm-similar-meta,
  .tm-similar-price,
  .tm-contacts__label,
  .atsp-booking__sub,
  .atsp-booking__row,
  .atsp-booking__field span,
  .atsp-booking__field input,
  .atsp-booking__status,
  .atsp-booking__phone,
  .atsp-hot-count,
  .atsp-hot-sort,
  .atsp-hot-status,
  .atsp-hot-card__meta,
  .atsp-hot-card__price,
  .atsp-hot-card__title,
  .search-hero-support__line,
  .atsp-footer-links__link,
  .atsp-site-footer__brand p
) {
  font-size: 16px !important;
  font-weight: 400 !important;
}

body.atsp-scope .sf-chip-grid label:has(input:checked) span {
  font-weight: 600 !important;
}

@media (max-width: 720px) {
  body.atsp-scope :is(
    h1,
    .search-results-count,
    .tm-title,
    .atsp-hot-drawer__title,
    .atsp-booking__title
  ) {
    font-size: 32px !important;
  }
}

/* /katalog/app — рівні краї без бокових тіней */
body.atsp-scope {
  background: #fff;
}

body.atsp-scope .proto-hero {
  padding-bottom: 20px;
}

body.atsp-scope .search-results-page {
  background: #fff;
  padding-top: 8px;
}

body.atsp-scope .anex-search-bar {
  box-shadow: none;
  border: 1px solid #e2e8f0;
}

body.atsp-scope .anex-search-mode-btn,
body.atsp-scope .anex-search-mode-btn:hover {
  box-shadow: none;
  border-color: #e2e8f0;
}

body.atsp-scope .anex-search-mode-btn:hover {
  background: #f8fafc;
}

body.atsp-scope .anex-search-mode-btn.is-active {
  border-color: var(--anex-red);
}

body.atsp-scope .search-filters-sheet {
  box-shadow: none;
}

body.atsp-scope .search-layout-toggle {
  box-shadow: none;
}

body.atsp-scope .search-results-list .search-result-row,
body.atsp-scope .search-results-list .search-result-row:hover {
  box-shadow: none;
  transform: none;
}

