/* Публичные страницы «Маджана» (/, /privacy, /support, /terms): цвета и шрифт бренда из приложения
   (majan-ios-v2/Majan/DesignSystem/V2Tokens.swift: бумага #F6F0E5, текст #292B2A, синий #173B62,
   терракотовый #A94832; шрифт Golos Text). Скриптов нет, внешних файлов нет: шрифт отдаёт тот же сервер. */

@font-face {
  font-family: "Golos Text";
  src: url("fonts/golos-text-400-700-cyrillic.woff2") format("woff2");
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Golos Text";
  src: url("fonts/golos-text-400-700-latin-ext.woff2") format("woff2");
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Golos Text";
  src: url("fonts/golos-text-400-700-latin.woff2") format("woff2");
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: light;
  /* Цвета бренда */
  --paper: #f6f0e5;
  --ink: #292b2a;
  --brand: #173b62;
  --secondary: #6b6c6a;
  --accent: #a94832;
  --surface: #ffffff;
  --border: rgb(23 59 98 / 0.06);
  --hairline: rgb(23 59 98 / 0.12);
  --brand-soft: rgb(23 59 98 / 0.08);
  --accent-soft: rgb(169 72 50 / 0.1);
  /* Отступы: шкала приложения 4 · 8 · 12 · 16 · 24 · 32 · 48 */
  --s-xs: 0.25rem;
  --s-s: 0.5rem;
  --s-m: 0.75rem;
  --s-l: 1rem;
  --s-xl: 1.5rem;
  --s-xxl: 2rem;
  --s-section: 3rem;
  /* Скругления */
  --r-card: 22px;
  --r-field: 16px;
  --r-badge: 8px;
  /* Текст */
  --font: "Golos Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --t-body: 1.0625rem;
  --t-small: 0.875rem;
  --t-h1: clamp(1.75rem, 1.45rem + 1.2vw, 2.125rem);
  --t-h2: clamp(1.25rem, 1.15rem + 0.5vw, 1.375rem);
  --t-h3: 1.0625rem;
  --measure: 65ch;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font);
  font-size: var(--t-body);
  line-height: 1.5;
  overflow-wrap: break-word;
}

a {
  color: var(--brand);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}
a:hover {
  text-decoration-thickness: 2px;
}
a:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 2px;
  border-radius: 2px;
}

.wrap {
  width: 100%;
  max-width: 46rem;
  margin-inline: auto;
  padding-inline: var(--s-l);
}

/* Шапка: знак и название, ссылки на страницы */
.site-header {
  border-block-end: 1px solid var(--hairline);
}
.site-header .wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-m) var(--s-xl);
  padding-block: var(--s-l);
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: var(--s-s);
  color: var(--brand);
  font-weight: 700;
  font-size: 1.25rem;
  text-decoration: none;
}
.brand img {
  display: block;
  width: 32px;
  height: 32px;
}
.site-nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--s-xs) var(--s-l);
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--t-small);
}
.site-nav a {
  display: inline-block;
  padding-block: var(--s-xs);
  min-width: 0;
}
.site-nav a[aria-current="page"] {
  font-weight: 700;
  text-decoration: none;
}

/* Основной текст */
main {
  display: block;
  padding-block: var(--s-xxl) var(--s-section);
}
main > .wrap > * {
  max-width: var(--measure);
}
main > .wrap > .table,
main > .wrap > .card {
  max-width: none;
}
h1,
h2,
h3 {
  color: var(--brand);
  line-height: 1.2;
  text-wrap: balance;
}
h1 {
  margin-block: 0 var(--s-l);
  font-size: var(--t-h1);
}
h2 {
  margin-block: var(--s-xxl) var(--s-m);
  font-size: var(--t-h2);
}
h3 {
  margin-block: var(--s-xl) var(--s-s);
  font-size: var(--t-h3);
}
p,
ul,
ol,
dl {
  margin-block: 0 var(--s-l);
}
ul,
ol {
  padding-inline-start: var(--s-xl);
}
li + li {
  margin-block-start: var(--s-xs);
}
.lead {
  font-size: 1.1875rem;
  color: var(--ink);
}
.muted {
  color: var(--secondary);
  font-size: var(--t-small);
}

/* Пометка «Черновик»: уберём, когда текст утвердит юрист */
.draft {
  padding: var(--s-m) var(--s-l);
  border-radius: var(--r-field);
  background: var(--accent-soft);
  border: 1px solid var(--accent);
  color: var(--ink);
  font-weight: 700;
}

/* Карточка: контакты, реквизиты */
.card {
  margin-block: 0 var(--s-xl);
  padding: var(--s-l) var(--s-xl);
  border-radius: var(--r-card);
  background: var(--surface);
  border: 1px solid var(--border);
}
.card > :last-child {
  margin-block-end: 0;
}
.card h2 {
  margin-block-start: 0;
}

/* Пары «подпись: значение» (контакты, реквизиты) */
.facts {
  display: grid;
  grid-template-columns: minmax(0, 12rem) minmax(0, 1fr);
  gap: var(--s-s) var(--s-l);
}
.facts dt {
  color: var(--secondary);
  min-width: 0;
}
.facts dd {
  margin: 0;
  min-width: 0;
}
@media (max-width: 30rem) {
  .facts {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
  .facts dd {
    margin-block-end: var(--s-s);
  }
}

/* Вопросы и ответы на странице поддержки */
.faq h3 {
  margin-block-start: var(--s-xl);
}

/* Таблицы политики: на узком экране ячейки переносятся, прокрутки вбок нет */
.table {
  margin-block: 0 var(--s-xl);
}
table {
  width: 100%;
  border-collapse: collapse;
  background: var(--surface);
  border-radius: var(--r-field);
  overflow: clip;
  font-size: var(--t-small);
}
th,
td {
  padding: var(--s-s) var(--s-m);
  border-block-end: 1px solid var(--hairline);
  text-align: start;
  vertical-align: top;
  overflow-wrap: anywhere;
}
thead th {
  color: var(--brand);
  background: var(--brand-soft);
}
tbody th {
  font-weight: 700;
}
tbody tr:last-child > * {
  border-block-end: 0;
}
@media (max-width: 30rem) {
  thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  table,
  tbody,
  tr,
  th,
  td {
    display: block;
  }
  tbody tr {
    padding-block: var(--s-s);
    border-block-end: 1px solid var(--hairline);
  }
  tbody tr:last-child {
    border-block-end: 0;
  }
  th,
  td {
    border: 0;
    padding-block: var(--s-xs);
  }
  /* Без шапки таблицы подпись колонки стоит перед значением: «Откуда: …», «Зачем: …» */
  td[data-label]::before {
    content: attr(data-label) ": ";
    color: var(--secondary);
  }
}

/* Подвал: продавец и реквизиты */
.site-footer {
  border-block-start: 1px solid var(--hairline);
  padding-block: var(--s-xl) var(--s-xxl);
  color: var(--secondary);
  font-size: var(--t-small);
}
.site-footer p {
  margin-block: 0 var(--s-s);
  max-width: var(--measure);
}
