/* Последний слой только для зимнего справочника: читаемость и управление на телефоне. */
@media (max-width: 760px) {
  body:is(.winter-resort,.winter-guide,.winter-directory-page) {
    -webkit-text-size-adjust: 100%;
    overflow-wrap: break-word;
  }

  .winter-header .menu-toggle {
    min-width: 76px;
    min-height: 44px;
  }
  .winter-header .winter-nav.open {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 18px;
    width: 100%;
    padding-bottom: 13px;
  }
  .winter-header .winter-nav.open a {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 9px 2px;
    border-top: 1px solid var(--ag-rule);
    line-height: 1.35;
  }
  .winter-header .winter-nav.open a:first-child { grid-column: 1 / -1; }

  .winter-resort .jumpnav { position: sticky; }
  .winter-resort .jumpnav::after {
    content: '›';
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 100%;
    display: grid;
    place-items: center;
    background: linear-gradient(90deg, transparent, var(--ag-paper) 43%);
    color: var(--ag-route);
    font: 700 28px/1 var(--display);
    pointer-events: none;
  }
  .winter-resort .jumpnav .shell {
    gap: 24px;
    padding-right: 46px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
  }
  .winter-resort .jumpnav .shell::-webkit-scrollbar { display: none; }
  .winter-resort .jumpnav a {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    padding-block: 12px 10px;
    scroll-snap-align: start;
  }

  .winter-guide .article-toc a,
  .winter-guide .winter-toolkit .topic-table a,
  .winter-resort .winter-toolkit .topic-table a,
  .winter-directory-page .winter-toolkit .topic-table a,
  .winter-resort #stays .stay-choice .source-link,
  .winter-footer .footer-links a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
  .winter-guide .article-toc a { display: flex; }

  /* Обычные таблицы статьи становятся карточками, а не скрытым горизонтальным скроллом. */
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table-wrap {
    overflow: visible;
    border: 0;
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table {
    display: block;
    min-width: 0;
    background: transparent;
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table thead { display: none; }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table tbody {
    display: grid;
    gap: 10px;
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table tr {
    display: block;
    padding: 15px 0;
    border-top: 1px solid var(--ag-rule);
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table tbody tr:last-child {
    border-bottom: 1px solid var(--ag-rule);
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table th,
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table td {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    overflow-wrap: anywhere;
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table th {
    margin-bottom: 9px;
    color: var(--ag-ink);
    font: 700 18px/1.3 var(--display);
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table td {
    margin-top: 8px;
    font: 15px/1.5 var(--sans);
  }
  .winter-guide .article-body > section:not(.winter-toolkit) .topic-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    color: var(--ag-faint);
    font: 11px/1.4 var(--mono);
    text-transform: uppercase;
  }
}

@media (max-width: 359px) {
  .fast-answer-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
  .fast-answer-facts dd { font-size: 19px; }
  .winter-resort .budget-fields { grid-template-columns: 1fr; }
}
