/* ============================================================
   AMEROP — SKIN
   Токен-подложка поверх канонного main.css.
   Палитра из макета: ivory / cream / терракота / тёмное дерево.
   Family-agnostic: работает с любой семьёй блоков.
   ============================================================ */

/* ── Шрифты (self-hosted, cyrillic + latin) ────────────────── */
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/Spectral/spectral-cyrillic-400-normal.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/Spectral/spectral-latin-400-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2192,U+2212,U+FEFF;
}
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/Spectral/spectral-cyrillic-600-normal.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/Spectral/spectral-latin-600-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2192,U+2212,U+FEFF;
}
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/Spectral/spectral-cyrillic-700-normal.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/Spectral/spectral-latin-700-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2192,U+2212,U+FEFF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/Manrope/manrope-cyrillic-400-normal.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/Manrope/manrope-latin-400-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2192,U+2212,U+FEFF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/Manrope/manrope-cyrillic-500-normal.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/Manrope/manrope-latin-500-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2192,U+2212,U+FEFF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/Manrope/manrope-cyrillic-700-normal.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/Manrope/manrope-latin-700-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2192,U+2212,U+FEFF;
}

/* ── Токены ────────────────────────────────────────────────── */
:root {
  /* палитра макета */
  --sk-ivory:      #F9F5ED;   /* фон страницы */
  --sk-cream:      #F3E8D9;   /* тёплые секции */
  --sk-terra:      #A54F2C;   /* акцент */
  --sk-terra-deep: #8C4526;   /* акцент в наведении / на cream */
  --sk-dark:       #362A1C;   /* текст и футер */
  --sk-muted:      #6B5B4A;   /* служебные подписи (6.0:1 на ivory) */
  --sk-line:       #E4D9C6;   /* рамки и разделители */
  --sk-panel:      #FFFFFF;   /* карточки */

  --sk-font-display: 'Spectral', Georgia, serif;
  --sk-font-body:    'Manrope', 'Helvetica Neue', Arial, sans-serif;

  /* перекрытие канонных токенов */
  --color-primary-text: #362A1C;
  --color-secondary-text: #6B5B4A;
  --color-secondary: #A54F2C;
  --color-grey: #C9BCA6;
  --color-light: #F9F5ED;
  --color-grey-bg: #F3E8D9;
  --shadow-color: rgb(54 42 28 / 10%);
  --border-radius: 4px;
  --border-radius-min: 3px;
  --border-radius-arrow: 3px;
  --font-family: 'Manrope', 'Helvetica Neue', Arial, sans-serif;
  --swiper-theme-color: #A54F2C;
}

/* ── База ──────────────────────────────────────────────────── */
body {
  background-color: var(--sk-ivory);
  color: var(--sk-dark);
  font-family: var(--sk-font-body);
}

h1, h2, h3, .title-color, .title-large, .text-large.font-semibold {
  font-family: var(--sk-font-display);
  color: var(--sk-dark);
  letter-spacing: -0.01em;
}
h2, .title-color { font-weight: 600; }

a { color: var(--sk-terra); }
a:hover { color: var(--sk-terra-deep); }

.color-secondary { color: var(--sk-terra) !important; }
.color-grey { color: var(--sk-muted) !important; }

/* ── Кнопки ────────────────────────────────────────────────── */
.btn-secondary,
.btn-secondary:focus {
  background-color: var(--sk-terra);
  border-color: var(--sk-terra);
  color: #fff;
  border-radius: var(--border-radius);
  font-family: var(--sk-font-body);
  font-weight: 500;
  letter-spacing: 0.01em;
}
.btn-secondary:hover {
  background-color: var(--sk-terra-deep);
  border-color: var(--sk-terra-deep);
  color: #fff;
}

/* ── Табы «Аренда / Продажа» (канонный хардкод #7c9796) ────── */
.js-office-btn { color: var(--sk-terra); }
.js-office-btn.is-active { color: var(--color-primary-text); }
.js-office-btn.disabled { color: var(--sk-muted); }
.office-deal-nav__sep { color: var(--sk-muted); }

/* карточка-слайд лота кликабельна — наследуем текст */
.office-card-link { color: inherit; text-decoration: none; display: flex; }
.office-card-link:hover { color: inherit; }

/* ── Канонные поверхности под тон скина ────────────────────── */
.header-white,
header.header-white { background-color: var(--sk-ivory); }
header.fixed,
.header-white.fixed { background-color: rgba(249, 245, 237, 0.96); backdrop-filter: none; }

/* header-white в форке — белые ссылки под тёмный hero; у amerop hero светлый */
header.header-white { border-bottom-color: var(--sk-line); }
header.header-white nav li > a,
header.header-white nav li > p {
  color: var(--sk-dark);
}
header.header-white nav li > a:hover,
header.header-white nav li > p:hover,
header.header-white nav li > a.active,
header.header-white nav li > p.active {
  color: var(--sk-terra);
}
header.header-white .svg-block svg g path {
  fill: var(--sk-dark);
}
.header-white .burger__line {
  background: var(--sk-dark);
}

footer { background-color: var(--sk-dark); }

.card,
.office-card,
.contact-card { border-radius: var(--border-radius); }

.office-table thead td { color: var(--sk-muted); }
.office-table td { border-color: var(--sk-line); }
.office-table a { color: var(--sk-terra); font-weight: 500; }

input, textarea, select, .form-control {
  border-radius: var(--border-radius) !important;
  border-color: var(--sk-line);
  font-family: var(--sk-font-body);
}

/* подпись ошибки у textarea — лёгкий сдвиг вправо */
.input-error textarea + span {
  left: 5px;
}

/* аналитика по ставкам: столбцы гистограммы в акцент */
.histogram .stand { background-color: var(--sk-terra); }
.histogram .label,
.histogram .count_label { color: var(--sk-muted); font-family: var(--sk-font-body); }

/* стрелки слайдеров */
.swiper-button-prev, .swiper-button-next,
.office-rent__arrow--prev, .office-rent__arrow--next { background-color: var(--sk-terra); }
.swiper-button-disabled, .office-rent__arrow--prev.swiper-button-disabled { background-color: var(--sk-line); }

/* согласие на обработку ПД — без скачка текста от .input-error span */
.form-consent {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}
.form-consent__input {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin: 0.2em 0 0;
}
.form-consent__label {
  margin: 0;
  line-height: 1.4;
}
.form-consent.input-error .form-consent__label {
  color: #f00038;
}
