/* ТЗ13: common neutral catalogue skeleton; no decorative hero photography. */
:root {
  --ink: #262626;
  --ink-muted: #595959;
  --primary: #333333;
  --primary-soft: #eeeeee;
  --felt: #404040;
  --felt-soft: #f2f2f2;
  --gold: #737373;
  --gold-bg: #f2f2f2;
  --gold-text: #525252;
  --info-bg: #f2f2f2;
  --info-text: #404040;
  --mint: #404040;
  --mint-bg: #f2f2f2;
  --pink: #404040;
  --pink-bg: #f2f2f2;
  --border: #dedede;
  --surface: #ffffff;
  --surface-muted: #f5f5f5;
  --radius: .5rem;
  --radius-lg: .5rem;
  --radius-card: .5rem;
  --shadow: none;
  --shadow-card: none;
}
body { background: #f5f5f5; line-height: 1.55; }
body img, body svg { filter: grayscale(1); }
.header { background: #ffffff; backdrop-filter: none; }
.container { max-width: 72rem; }
.tz-section { margin: 2rem 0; }
.tz-hero {
  width: 100%; max-width: 100%; margin: 0 0 1.5rem;
  padding: 2rem; background: #ffffff; border: 1px solid var(--border);
  border-radius: .5rem; box-shadow: none;
}
.tz-hero-grid { display: block; position: static; }
.tz-hero-left {
  position: static; width: auto; padding: 0; pointer-events: auto;
  display: block;
}
.tz-hero .tz-hero-left h1 {
  color: var(--ink); text-shadow: none;
  max-width: 48rem; margin-bottom: 1.25rem;
}
.tz-hero .tz-plaques { max-width: 54rem; }
.tz-hero .tz-plaque { background: #f5f5f5; border-radius: .35rem; }
.tz-hero-actions { margin-top: 1rem; margin-bottom: 0; }
.tz-gallery { margin: 0 0 2rem; }
.tz-gallery > .tz-slider {
  width: 100%; height: auto; min-height: 0; max-height: none;
  aspect-ratio: 16 / 7; border: 1px solid var(--border); border-radius: .5rem;
  box-shadow: none;
}
.tz-btn, .zo-btn, .zo-cta { border-radius: .35rem; }
.tz-btn:hover { transform: none; }
.tz-card, .card, .stat, .tz-infra, .tz-fmt, .zq, .zm, .ze,
.zo, .tz-fin-card, .tz-terms, .tz-territory, .zapt-card {
  border: 1px solid var(--border); border-radius: .5rem;
  background: #ffffff; box-shadow: none;
}
.card.info, .card.felt { background: #ffffff; color: var(--ink); }
.zq-mark-real { width: 56px; }
.zq-reno { border-width: 1px; border-radius: .35rem; }
.zq-gost > div, .zq-sv, .zq-eng-ico { background: #f5f5f5; border-radius: .35rem; }
.zq-eng-ico { width: 36px; height: 36px; }
.zq-open { border-left-color: #999999; }
.zmap { max-width: 760px; padding: 1rem; border: 1px solid var(--border); background: #ffffff; border-radius: .5rem; }
.zo-contacts { border-radius: .35rem; }
.zt { background: #ffffff; border-radius: .5rem; }
.zt-table-wrap { overflow-x: auto; }
.zt-table { width: 100%; border-collapse: collapse; font-size: .85rem; }
.zt-table caption { text-align: left; font-weight: 600; padding: .5rem 0; }
.zt-table th, .zt-table td { padding: .65rem .5rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--border); }
.zt-table th { background: #f2f2f2; font-size: .75rem; font-weight: 600; }
.zt-table th:first-child { width: 6rem; }
.zt-table td:nth-child(3), .zt-table td:nth-child(4) { font-variant-numeric: tabular-nums; white-space: nowrap; }
.zt-table small { display: block; color: var(--ink-muted); }
.zt-num { color: #333333; border-color: #999999; border-radius: .25rem; }
.zt-metro { background: #404040; color: #ffffff; border-color: #404040; border-radius: 50%; }
input, select, button { accent-color: #404040; }
:focus-visible { outline: 2px solid #404040; outline-offset: 3px; }
[hidden] { display: none !important; }
@media (max-width: 600px) {
  .tz-hero { padding: 1.1rem; }
  .tz-gallery > .tz-slider { aspect-ratio: 4 / 3; }
  .zt { padding: .8rem; }
  .zt-table { min-width: 540px; }
}
