/*
 * КОСМИ-СТАЙЛ — отдельная премиальная арт-дирекция.
 * Направление: quiet architectural editorial — тёплый камень, бронза,
 * глубокий хвойный оттенок и журнальная антиква для экспертных материалов.
 */
:root {
  --premium-ink: #141713;
  --premium-forest: #25352d;
  --premium-paper: #ede9e1;
  --premium-stone: #ddd6ca;
  --premium-bronze: #a77b4e;
  --premium-bronze-light: #d4b184;
  --premium-line: rgba(31, 34, 29, 0.2);
  --premium-serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  --premium-ease: cubic-bezier(.2, .72, .2, 1);
  --premium-glass: linear-gradient(145deg, rgba(31, 39, 33, .82), rgba(14, 17, 14, .68));
  --premium-glass-hover: linear-gradient(145deg, rgba(49, 65, 55, .92), rgba(25, 31, 26, .84));
  --premium-glass-edge: rgba(212, 177, 132, .34);
  --premium-glass-shadow: 0 14px 38px rgba(5, 8, 6, .2), inset 0 1px 0 rgba(255,255,255,.07);
  --c-paper-100: var(--premium-paper);
  --c-paper-300: #e6e1d8;
  --c-paper-400: var(--premium-stone);
  --c-ink-900: #10120f;
  --c-ink-750: var(--premium-ink);
  --c-accent: var(--premium-bronze);
  --c-accent-mid: #9c744a;
  --c-accent-hover: #bd9160;
  --c-accent-dot: var(--premium-bronze-light);
}

html { background: var(--premium-ink); }

body {
  background: var(--premium-ink);
  color: var(--premium-paper);
  text-rendering: optimizeLegibility;
}

body::after {
  content: "";
  position: fixed;
  z-index: 80;
  inset: 0;
  pointer-events: none;
  display: none;
  opacity: 0;
  background:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.12) 0 1px, transparent 1.5px),
    radial-gradient(circle at 76% 64%, rgba(0,0,0,.12) 0 1px, transparent 1.5px);
  background-size: 5px 5px, 7px 7px;
  mix-blend-mode: soft-light;
}

::selection {
  color: var(--premium-paper);
  background: var(--premium-forest);
}

:where(a, button, input, select, textarea):focus-visible {
  outline-color: var(--premium-bronze-light);
}

.section-shell { --page-padding: clamp(22px, 3.25vw, 64px); }

.section-kicker {
  color: rgba(20, 23, 19, .64);
  font-weight: 650;
  letter-spacing: .16em;
}

.section-kicker::after { background: var(--premium-bronze); opacity: .8; }
.section-kicker--light { color: rgba(237, 233, 225, .72); }

.display-title {
  letter-spacing: -.052em;
  line-height: .94;
}

.display-title > span { color: rgba(37, 53, 45, .58); }
.display-title--light > span { color: rgba(237, 233, 225, .56); }

/* Глубокая кинематографичная тональность фотографий. */
:is(.hero, .city-hero, .contacts-hero)::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(11, 14, 11, .55), rgba(11, 14, 11, .06) 58%, rgba(11, 14, 11, .24)),
    linear-gradient(0deg, rgba(8, 10, 8, .4), transparent 48%);
}

:is(.hero__background, .city-hero__image, .contacts-hero__image),
:is(.gallery-card, .insight-card, .project-card, .articles-index__grid article) img {
  filter: saturate(.82) contrast(1.05) brightness(.94);
  transition: filter 650ms var(--premium-ease), transform 850ms var(--premium-ease);
}

:is(.gallery-card, .insight-card, .project-card, .articles-index__grid article):hover img {
  filter: saturate(1) contrast(1.02) brightness(1);
  transform: scale(1.025);
}

/* Хедер выглядит как точная архитектурная панель, а не набор случайных ссылок. */
@media (min-width: 1181px) {
  :is(.hero__nav, .site-header__nav) { gap: 8px; }

  :is(.hero__nav-item, .site-header__nav-item) {
    min-height: 44px;
    border-color: var(--premium-glass-edge);
    border-radius: 6px;
    background: linear-gradient(145deg, rgba(31, 39, 33, .66), rgba(14, 17, 14, .52));
    box-shadow: var(--premium-glass-shadow);
    backdrop-filter: blur(16px) saturate(.86);
    }

  :is(.hero__nav-item, .site-header__nav-item):hover,
  :is(.hero__nav-item, .site-header__nav-item)[aria-current="page"] {
    border-color: rgba(212, 177, 132, .7);
    background: var(--premium-glass-hover);
    box-shadow: 0 18px 44px rgba(5, 8, 6, .26), inset 0 1px 0 rgba(255,255,255,.1);
  }

  :is(.hero__meta, .site-header__meta) {
    padding: 10px 14px;
    border-color: var(--premium-glass-edge);
    border-radius: 6px;
    background: linear-gradient(145deg, rgba(31, 39, 33, .7), rgba(14, 17, 14, .57));
    box-shadow: var(--premium-glass-shadow);
    backdrop-filter: blur(16px) saturate(.86);
  }

  :is(.hero__audit, .site-header__cta) {
    min-height: 56px;
    border-color: rgba(212, 177, 132, .58);
    border-radius: 6px;
    background: linear-gradient(135deg, #34483c, #1f2d25);
    box-shadow: 0 16px 42px rgba(5, 8, 6, .3), inset 0 1px 0 rgba(255,255,255,.09);
  }

  :is(.hero__audit, .site-header__cta):hover {
    border-color: rgba(232, 201, 160, .84);
    background: linear-gradient(135deg, #a77b4e, #79583a);
  }
}

:is(.hero__phone, .site-header__phone) {
  color: #fff;
  letter-spacing: .025em;
}

:is(.hero__menu, .site-header__menu) {
  border-color: var(--premium-glass-edge);
  background: var(--premium-glass);
  box-shadow: var(--premium-glass-shadow);
}

:is(.hero__audit, .hero__cta, .site-header__cta, .project-button, .contact-form button[type="submit"]) {
  background: var(--premium-forest);
  color: var(--premium-paper);
  border-color: rgba(212, 177, 132, .52);
  box-shadow: 0 16px 42px rgba(9, 12, 9, .18), inset 0 1px 0 rgba(255,255,255,.08);
  transition: background-color 300ms ease, color 300ms ease, transform 300ms var(--premium-ease), box-shadow 300ms ease;
}

:is(.hero__audit, .hero__cta, .site-header__cta, .project-button, .contact-form button[type="submit"]):hover {
  background: var(--premium-bronze);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 20px 48px rgba(9, 12, 9, .28);
}

.city-ticker { background: var(--premium-forest); }
.city-ticker__brand, .city-ticker__arrow { color: var(--premium-bronze-light); }

/* Светлые страницы становятся теплее и контрастнее. */
:is(.articles-index, .legal-page, .about-page, .projects-page, .contacts-page) {
  color: var(--premium-ink);
  background:
    radial-gradient(circle at 84% 4%, rgba(167,123,78,.09), transparent 31%),
    var(--premium-paper);
}

.page-header {
  border-color: var(--premium-line);
  background: rgba(237, 233, 225, .82);
  backdrop-filter: blur(14px);
}

/* Инсайты: новая шрифтовая роль и отдельная цветовая иерархия. */
.insights {
  position: relative;
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), transparent 38%),
    var(--premium-stone);
}

.insights::before {
  content: "EDITORIAL / 06";
  position: absolute;
  top: clamp(34px, 4vw, 64px);
  right: var(--page-padding);
  color: rgba(37, 53, 45, .42);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .22em;
}

.insights__heading > p {
  color: rgba(20, 23, 19, .72);
  font-size: clamp(15px, 1.02vw, 19px);
  line-height: 1.7;
}

.insights__grid {
  gap: 1px;
  background: rgba(37, 53, 45, .2);
  border: 1px solid rgba(37, 53, 45, .2);
}

.insight-card {
  min-width: 0;
  padding: clamp(14px, 1.3vw, 22px);
  background: rgba(237, 233, 225, .96);
  transition: background-color 320ms ease, transform 420ms var(--premium-ease), box-shadow 420ms ease;
}

.insight-card:hover {
  z-index: 1;
  background: #f5f1e9;
  transform: translateY(-8px);
  box-shadow: 0 24px 64px rgba(22, 27, 22, .18);
}

.insight-card__image { overflow: hidden; }

.insight-card__meta,
.articles-index__meta {
  color: var(--premium-bronze);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
}

.insight-card h3,
.articles-index__grid h2 {
  color: var(--premium-forest);
  font-family: var(--premium-serif);
  font-size: clamp(25px, 2vw, 38px);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.14;
  text-wrap: balance;
}

.insight-card > a,
.articles-index__grid article > a {
  color: var(--premium-forest);
  border-color: rgba(37, 53, 45, .5);
  font-weight: 750;
}

.articles-index__grid {
  gap: clamp(28px, 3vw, 52px);
}

.articles-index__grid article {
  border-top: 1px solid var(--premium-line);
  padding-top: 14px;
}

.articles-index__grid article > p {
  color: rgba(20, 23, 19, .72);
  font-size: 14px;
  line-height: 1.72;
}

/* Тактильные карточки и более уверенная иерархия контента. */
:is(.about-belief article, .city-purchase__card) {
  border-color: rgba(37, 53, 45, .18);
  background: rgba(245, 241, 233, .66);
  box-shadow: 0 18px 54px rgba(30, 32, 27, .06);
  transition: transform 380ms var(--premium-ease), box-shadow 380ms ease, border-color 300ms ease;
}

:is(.about-belief article, .city-purchase__card):hover {
  border-color: rgba(167, 123, 78, .62);
  transform: translateY(-5px);
  box-shadow: 0 24px 64px rgba(30, 32, 27, .12);
}

.about-belief h3,
.philosophy-item p,
.project-card__body h2 {
  color: var(--premium-forest);
}

.project-card {
  border-color: var(--premium-line);
}

.project-card__image::after,
.articles-index__image::after,
.insight-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.22);
  box-shadow: inset 0 0 0 1px rgba(15,18,14,.12);
}

.pill-filters button {
  border-color: rgba(37, 53, 45, .3);
  color: rgba(20, 23, 19, .7);
}

.pill-filters button:hover { border-color: var(--premium-bronze); }
.pill-filters button[aria-pressed="true"] { background: var(--premium-forest); }

.contact,
.city-final,
.city-faq {
  background:
    radial-gradient(circle at 76% 18%, rgba(167,123,78,.14), transparent 32%),
    var(--premium-ink);
}

.contact-form :is(input, select, textarea) {
  border-color: rgba(212, 177, 132, .34);
  color: var(--premium-paper);
}

.contact-form :is(input, select, textarea):focus {
  border-color: var(--premium-bronze-light);
}

.footer { border-color: rgba(212, 177, 132, .2); }

/* Смысловая карточка первого экрана вместо сплошного служебного абзаца. */
.hero__side-copy {
  width: clamp(270px, 20vw, 340px);
  max-width: none;
  padding: clamp(19px, 1.55vw, 26px);
  border: 1px solid rgba(212, 177, 132, .46);
  border-left-width: 1px;
  border-radius: 2px;
  color: var(--premium-paper);
  text-align: left;
  text-shadow: none;
  background: var(--premium-glass);
  box-shadow: 0 22px 58px rgba(4, 7, 5, .3), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(17px) saturate(.82);
}

.hero__side-copy::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 42%;
  height: 2px;
  background: linear-gradient(90deg, var(--premium-bronze-light), transparent);
}

.hero__side-kicker {
  display: block;
  margin-bottom: 12px;
  color: var(--premium-bronze-light);
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .16em;
  line-height: 1.35;
  text-transform: uppercase;
}

.hero__side-title {
  display: block;
  color: #fff;
  font-family: var(--premium-serif);
  font-size: clamp(25px, 2vw, 34px);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.02;
}

.hero__side-points {
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.hero__side-points li {
  position: relative;
  padding: 10px 0 10px 18px;
  border-top: 1px solid rgba(212, 177, 132, .18);
  color: rgba(237, 233, 225, .82);
  font-size: clamp(11px, .76vw, 13px);
  font-weight: 520;
  letter-spacing: -.005em;
  line-height: 1.42;
}

.hero__side-points li::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 1px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--premium-bronze-light);
  box-shadow: 0 0 0 3px rgba(212, 177, 132, .12);
}

/*
 * Компактная главная без служебной нумерации секций.
 * Второй и третий интерактивные блоки не удерживают высоту экрана.
 */
body[data-page="home"] :is(.city-showcase, .process-slider, .storyline, .insights, .contact) {
  padding-top: clamp(64px, 6.5vw, 104px);
  padding-bottom: clamp(64px, 6.5vw, 104px);
}

body[data-page="home"] .city-showcase__heading,
body[data-page="home"] .storyline__heading,
body[data-page="home"] .insights__heading,
body[data-page="home"] .contact__layout {
  margin-top: 0;
}

.gallery__stage {
  min-height: auto;
  padding-top: clamp(58px, 5.5vw, 88px);
  padding-bottom: clamp(58px, 5.5vw, 88px);
  display: block;
}

.gallery__title-row {
  margin-top: 0;
}

.gallery__viewport {
  margin-top: clamp(24px, 2.8vw, 40px);
  scroll-behavior: auto;
  scroll-snap-type: x mandatory;
  contain: layout paint;
}

.gallery__track { will-change: auto; }

.gallery-card {
  width: min(58vw, 960px);
  contain: layout paint;
}

.gallery-card__image {
  height: clamp(280px, 42vh, 500px);
}

.gallery-card__caption {
  grid-template-columns: 1fr;
  margin-top: 10px;
  padding-top: 10px;
}

.gallery-card__caption > :is(span, p) { display: none; }

.process-slider__heading {
  margin-top: 0;
  margin-bottom: clamp(20px, 2.4vw, 34px);
}

.process-slider__stage { margin-top: clamp(24px, 2.8vw, 38px); }

.process-slider__viewport {
  scroll-behavior: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: var(--page-padding);
  contain: layout paint;
}

.process-slider__card {
  width: min(68vw, 840px);
  contain: layout paint;
}

.process-slider__media { aspect-ratio: 16 / 9; }

/* Фильтры и blend-mode на крупных движущихся полотнах вызывают дорогую перерисовку. */
:is(.gallery-card, .process-slider__card) img {
  filter: none;
  transition: transform 420ms var(--premium-ease);
}

:is(.gallery-card, .process-slider__card):hover img { filter: none; }

@media (max-width: 768px) {
  body::after { opacity: .07; }
  .insights::before { display: none; }

  .insights__grid {
    gap: 22px;
    border: 0;
    background: transparent;
  }

  .insight-card {
    padding: 14px;
    border: 1px solid rgba(37, 53, 45, .18);
  }

  .insight-card:hover { transform: none; }

  .insight-card h3,
  .articles-index__grid h2 {
    font-size: clamp(27px, 7.6vw, 34px);
    line-height: 1.12;
  }

  body[data-page="home"] :is(.city-showcase, .process-slider, .storyline, .insights, .contact) {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .gallery__stage {
    padding-top: 52px;
    padding-bottom: 52px;
  }

  .gallery-card { width: 84vw; }
  .gallery-card__image { height: 54vw; }

  .process-slider__card { width: min(86vw, 520px); }
  .process-slider__media { aspect-ratio: 5 / 4; }

  .hero__side-copy {
    position: relative;
    width: 100%;
    padding: 17px 18px;
    backdrop-filter: blur(12px);
  }

  .hero__side-title { font-size: clamp(24px, 7vw, 30px); }
  .hero__side-points { margin-top: 14px; }
  .hero__side-points li { padding-block: 8px; }
  .hero__side-points li::before { top: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  :is(.insight-card, .about-belief article, .city-purchase__card):hover {
    transform: none;
  }
}

/*
 * Контрастный хедер: холодный минеральный свет вместо бронзы,
 * которая повторяла тёплые окна и фасад на фоновой фотографии.
 */
:root {
  --header-mist: #eaf1ee;
  --header-mist-strong: #ffffff;
  --header-sage: #c9ded6;
  --header-deep: #20352c;
  --header-line: rgba(234, 241, 238, .52);
}

.hero__brand-logo,
.site-header--dark .site-header__brand img {
  width: clamp(224px, 13vw, 246px);
  max-width: none;
}

.hero__brand img,
.site-header--dark .site-header__brand img {
  filter: brightness(0) invert(1) drop-shadow(0 1px 1px rgba(3, 5, 4, .9)) drop-shadow(0 4px 14px rgba(3, 5, 4, .7));
}

:is(.hero__meta, .site-header__meta) {
  border-left-color: var(--header-line);
}

:is(.hero__worktime i, .site-header__hours i) {
  background: var(--header-sage);
  box-shadow: 0 0 0 3px rgba(201, 222, 214, .14);
}

@media (min-width: 1181px) {
  :is(.hero__nav, .site-header__nav) {
    gap: 4px;
    padding: 4px;
    border-color: rgba(234, 241, 238, .34);
    background: rgba(10, 15, 12, .24);
    box-shadow: 0 12px 30px rgba(3, 6, 4, .18);
  }

  :is(.hero__nav-item, .site-header__nav-item) {
    min-height: 42px;
    color: var(--header-deep);
    border: 1px solid rgba(255,255,255,.62);
    border-radius: 3px;
    background: rgba(234, 241, 238, .9);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 3px 10px rgba(3, 6, 4, .12);
  }

  :is(.hero__nav-item, .site-header__nav-item) + :is(.hero__nav-item, .site-header__nav-item)::before {
    display: none;
  }

  :is(.hero__nav-item, .site-header__nav-item)::after {
    right: 12px;
    left: 12px;
    background: #4b7162;
  }

  :is(.hero__nav-item, .site-header__nav-item) > span::after {
    color: #3c6655;
    opacity: .82;
  }

  :is(.hero__nav-item, .site-header__nav-item):hover,
  :is(.hero__nav-item, .site-header__nav-item):focus-visible {
    color: #14231d;
    border-color: #fff;
    background: var(--header-mist-strong);
    box-shadow: 0 8px 20px rgba(3, 6, 4, .22), inset 0 1px 0 #fff;
    transform: translateY(-2px);
  }

  :is(.hero__nav-item, .site-header__nav-item)[aria-current="page"] {
    color: #14231d;
    border-color: rgba(255,255,255,.9);
    background: var(--header-sage);
    box-shadow: 0 6px 16px rgba(3, 6, 4, .18);
  }

  :is(.hero__audit, .site-header__cta) {
    color: #172a22;
    border-color: rgba(255,255,255,.78);
    background: linear-gradient(180deg, #fff, #dfeae6);
    box-shadow: 0 12px 30px rgba(3, 6, 4, .22), inset 0 1px 0 #fff;
  }

  :is(.hero__audit, .site-header__cta):hover {
    color: #102119;
    border-color: #fff;
    background: linear-gradient(180deg, #fff, var(--header-sage));
    box-shadow: 0 16px 34px rgba(3, 6, 4, .28);
  }

  header.hero__header .hero__audit,
  header.site-header.site-header--dark .site-header__cta {
    color: #172a22;
    border-color: rgba(255,255,255,.9);
    background: linear-gradient(180deg, #fff, #dfeae6);
    box-shadow: 0 12px 30px rgba(3, 6, 4, .24), inset 0 1px 0 #fff;
  }

  header.hero__header .hero__audit:hover,
  header.site-header.site-header--dark .site-header__cta:hover {
    color: #102119;
    border-color: #fff;
    background: linear-gradient(180deg, #fff, var(--header-sage));
    box-shadow: 0 16px 36px rgba(3, 6, 4, .3);
  }
}

.hero__eyebrow { color: var(--header-sage); }
.hero__title-detail > span { color: #d9ebe4; }

@media (max-width: 768px) {
  .hero__brand-logo,
  .site-header--dark .site-header__brand img {
    width: clamp(178px, 47vw, 198px);
  }

  :is(.hero__meta, .site-header__meta) { border-left-color: var(--header-line); }
}

/* Сдержанная версия: общий тёмный контур, ясные ячейки, без декоративности. */
.hero__header,
.site-header--dark {
  isolation: isolate;
  position: relative;
}

.hero__header::before,
.site-header--dark::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  inset: -22px calc(var(--page-padding) * -1) -18px;
  border-bottom: 1px solid rgba(234, 241, 238, .12);
  background:
    radial-gradient(ellipse 31% 125% at 5% 28%, rgba(3, 7, 5, .72), rgba(3, 7, 5, .28) 58%, transparent 100%),
    linear-gradient(180deg, rgba(5, 8, 6, .56), rgba(5, 8, 6, .22) 62%, rgba(5, 8, 6, .04));
}

.hero__brand-logo,
.site-header--dark .site-header__brand img {
  width: clamp(230px, 13.5vw, 252px);
}

.hero__brand img,
.site-header--dark .site-header__brand img {
  filter: brightness(0) invert(1) drop-shadow(0 1px 1px rgba(0, 0, 0, .96)) drop-shadow(0 4px 16px rgba(0, 0, 0, .82));
}

@media (min-width: 1181px) {
  :is(.hero__nav, .site-header__nav) {
    width: max-content;
    max-width: 100%;
    justify-self: center;
    justify-content: flex-start;
    gap: 0;
    padding: 2px;
    border: 1px solid rgba(234, 241, 238, .34);
    border-radius: 5px;
    background: rgba(16, 23, 19, .58);
    box-shadow: 0 10px 28px rgba(3, 6, 4, .2);
    backdrop-filter: blur(14px) saturate(.88);
  }

  :is(.hero__nav-item, .site-header__nav-item) {
    flex: 0 0 auto;
    justify-content: center;
    min-width: 110px;
    min-height: 43px;
    padding: 0 21px;
    color: rgba(255,255,255,.86);
    border: 0;
    border-radius: 2px;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    transform: none;
  }

  :is(.hero__nav-item, .site-header__nav-item) + :is(.hero__nav-item, .site-header__nav-item) {
    box-shadow: inset 1px 0 rgba(234, 241, 238, .24);
  }

  :is(.hero__nav-item, .site-header__nav-item) > span::after { display: none; }

  :is(.hero__nav-item, .site-header__nav-item)::after {
    right: 15px;
    left: 15px;
    background: var(--header-sage);
  }

  :is(.hero__nav-item, .site-header__nav-item):hover,
  :is(.hero__nav-item, .site-header__nav-item):focus-visible {
    color: #fff;
    border: 0;
    background: rgba(234, 241, 238, .12);
    box-shadow: none;
    transform: none;
  }

  :is(.hero__nav-item, .site-header__nav-item)[aria-current="page"] {
    color: #fff;
    border: 0;
    background: rgba(201, 222, 214, .15);
    box-shadow: none;
  }

  header.hero__header .hero__audit,
  header.site-header.site-header--dark .site-header__cta {
    color: #f6f3ed;
    border: 1px solid rgba(234, 241, 238, .42);
    background: rgba(30, 48, 39, .9);
    box-shadow: 0 10px 28px rgba(3, 6, 4, .24), inset 0 1px 0 rgba(255,255,255,.06);
  }

  header.hero__header .hero__audit:hover,
  header.site-header.site-header--dark .site-header__cta:hover {
    color: #14231d;
    border-color: rgba(255,255,255,.76);
    background: var(--header-sage);
    box-shadow: 0 14px 32px rgba(3, 6, 4, .28);
  }
}

@media (max-width: 768px) {
  .hero__header::before,
  .site-header--dark::before {
    inset: -16px -20px -12px;
    background: linear-gradient(180deg, rgba(5, 8, 6, .38), rgba(5, 8, 6, .1) 72%, transparent);
  }

  .hero__brand-logo,
  .site-header--dark .site-header__brand img {
    width: clamp(184px, 48vw, 202px);
  }
}

/* Устойчивый промежуточный режим для MacBook, ноутбуков и планшетов landscape. */
@media (min-width: 769px) and (max-width: 1359px) {
  .hero__header,
  .site-header {
    grid-template-columns: minmax(196px, 1fr) auto 48px;
    column-gap: clamp(14px, 2.2vw, 28px);
  }

  :is(.hero__nav, .site-header__nav),
  :is(.hero__audit, .site-header__cta) {
    display: none;
  }

  :is(.hero__menu, .site-header__menu) {
    z-index: 16;
    display: grid;
    width: 48px;
    height: 48px;
    padding: 0;
    place-content: center;
    gap: 6px;
    border: 1px solid rgba(234, 241, 238, .42);
    border-radius: 50%;
    background: rgba(16, 23, 19, .46);
    box-shadow: 0 10px 28px rgba(3, 6, 4, .2);
    backdrop-filter: blur(12px);
  }

  :is(.hero__menu, .site-header__menu) span {
    display: block;
    width: 17px;
    height: 1px;
    background: #fff;
    transition: transform 220ms ease;
  }

  :is(.hero__meta, .site-header__meta) {
    justify-self: end;
    padding-left: 16px;
    white-space: nowrap;
  }

  :is(.hero__worktime, .site-header__hours) { display: none; }

  .mobile-nav.is-open {
    display: flex !important;
  }

  .hero__brand-logo,
  .site-header--dark .site-header__brand img {
    width: clamp(208px, 20vw, 238px) !important;
  }
}

/* Компактная полная навигация для небольших ноутбуков без риска пересечений. */
@media (min-width: 1360px) and (max-width: 1499px) {
  .hero__header,
  .site-header {
    column-gap: clamp(14px, 1.65vw, 24px);
  }

  .hero__brand-logo,
  .site-header--dark .site-header__brand img {
    width: clamp(224px, 16.5vw, 238px) !important;
  }

  :is(.hero__nav, .site-header__nav) {
    width: max-content;
    max-width: 100%;
    justify-self: center;
    justify-content: flex-start;
  }

  :is(.hero__nav-item, .site-header__nav-item) {
    flex: 0 0 auto;
    min-width: 100px;
    padding-inline: 18px;
    justify-content: center;
  }

  :is(.hero__audit, .site-header__cta) {
    padding-inline: 18px;
  }
}

/* Факты остаются визуально раздельными даже в двухколоночной раскладке. */
body[data-page="home"] .city-showcase__fact {
  border-color: rgba(20, 23, 19, .28);
}

/* Левая колонка контактного блока начинается на одном уровне с формой. */
body[data-page="home"] .contact__layout {
  align-items: start;
}

@media (max-width: 768px) {
  body[data-page="home"] .city-showcase__fact:nth-child(odd) {
    border-right: 1px solid rgba(20, 23, 19, .38);
  }

  body[data-page="home"] .city-showcase__fact:nth-child(even) {
    border-right: 0;
  }
}

/* Логотип в футере используется без дополнительной декоративной метки. */
.footer__brand > span {
  display: none !important;
}

/* Нумерация остаётся у реальных шагов и карточек, но не дублируется в заголовках разделов. */
body[data-page="kosmi-city"] .city-section > .section-kicker > span,
body[data-page="projects"] .projects-filters > .section-kicker > span {
  display: none;
}

/* Контраст экскурсионного блока не зависит от светлых участков фотографии. */
body[data-page="kosmi-city"] .city-final__shade {
  background:
    linear-gradient(90deg, rgba(4, 7, 5, .94) 0%, rgba(4, 7, 5, .82) 46%, rgba(4, 7, 5, .54) 72%, rgba(4, 7, 5, .66) 100%),
    linear-gradient(180deg, rgba(4, 7, 5, .2), rgba(4, 7, 5, .54));
}

body[data-page="kosmi-city"] :is(.city-final__title, .city-final__lead, .city-final__bullets) {
  text-shadow: 0 2px 18px rgba(0, 0, 0, .72);
}

body[data-page="kosmi-city"] .city-final__lead { color: rgba(255, 255, 255, .9); }
body[data-page="kosmi-city"] .city-final__bullets { color: rgba(255, 255, 255, .86); }

/* Динамический счётчик каталога следует общей сетке страницы. */
body[data-page="projects"] .projects-result-count {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: clamp(24px, 2.6vw, 38px) var(--page-padding) 0;
  color: rgba(20, 23, 19, .62);
  font-size: clamp(12px, .9vw, 14px);
  font-weight: 600;
  letter-spacing: .08em;
  line-height: 1.4;
  text-transform: uppercase;
}

@media (max-width: 768px) {
  body[data-page="projects"] .projects-filters .pill-filters {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }

  body[data-page="projects"] .projects-filters .pill-filters button {
    width: 100%;
    min-height: 44px;
    padding-inline: 12px;
    white-space: normal;
  }

  body[data-page="projects"] .projects-result-count {
    padding-top: 22px;
    font-size: 11px;
  }
}

/* Чёткая интерактивность навигации: отдельные ячейки внутри общей панели. */
@media (min-width: 1181px) {
  :is(.hero__nav-item, .site-header__nav-item) {
    cursor: pointer;
    isolation: isolate;
    color: rgba(245, 242, 235, .82);
    font-weight: 680;
    transition: color 220ms ease, background-color 220ms ease, transform 220ms var(--premium-ease);
  }

  :is(.hero__nav-item, .site-header__nav-item) + :is(.hero__nav-item, .site-header__nav-item)::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 9px;
    bottom: 9px;
    left: 0;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(212, 177, 132, .38), transparent);
  }

  :is(.hero__nav-item, .site-header__nav-item) > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  :is(.hero__nav-item, .site-header__nav-item) > span::after {
    content: "↗";
    color: var(--premium-bronze-light);
    font-size: .9em;
    font-weight: 500;
    opacity: .46;
    transform: translate(-1px, 1px);
    transition: opacity 220ms ease, transform 220ms var(--premium-ease);
  }

  :is(.hero__nav-item, .site-header__nav-item):hover,
  :is(.hero__nav-item, .site-header__nav-item):focus-visible {
    z-index: 3;
    color: #fff;
    background: linear-gradient(180deg, rgba(212, 177, 132, .2), rgba(212, 177, 132, .075));
    transform: translateY(-1px);
  }

  :is(.hero__nav-item, .site-header__nav-item):hover > span::after,
  :is(.hero__nav-item, .site-header__nav-item):focus-visible > span::after,
  :is(.hero__nav-item, .site-header__nav-item)[aria-current="page"] > span::after {
    opacity: 1;
    transform: translate(1px, -1px);
  }

  :is(.hero__nav-item, .site-header__nav-item):focus-visible {
    outline: 1px solid var(--premium-bronze-light);
    outline-offset: -2px;
  }
}

/* Главный оффер: тёплая плотная типографика поверх мягкого фото-градиента. */
.hero__intro::before {
  inset: -108px 14% -108px calc(var(--page-padding) * -1);
  border-radius: 0;
  filter: none;
  background: radial-gradient(ellipse 82% 48% at 24% 50%,
    rgba(5, 8, 6, .76) 0%,
    rgba(5, 8, 6, .56) 42%,
    rgba(5, 8, 6, .2) 68%,
    transparent 100%);
}

.hero__eyebrow {
  color: var(--premium-bronze-light);
  font-weight: 750;
  text-shadow: 0 2px 10px rgba(3, 5, 4, .82);
}

.hero__title {
  color: #f3efe7;
  font-weight: 440;
  letter-spacing: -.056em;
  text-shadow: 0 2px 2px rgba(3, 5, 4, .62), 0 10px 32px rgba(3, 5, 4, .42);
}

.hero__title-detail { color: #f3efe7; }
.hero__title-detail > span {
  color: #efd5b3;
  text-shadow: 0 2px 2px rgba(3, 5, 4, .72), 0 10px 34px rgba(3, 5, 4, .5);
}

.hero__project {
  color: #f4f0e8;
  font-weight: 520;
  text-shadow: 0 2px 10px rgba(3, 5, 4, .76);
}

.hero__project span { color: rgba(244, 240, 232, .78); }

@media (max-width: 768px) {
  .hero__intro::before {
    inset: -72px -28px -66px;
    background: radial-gradient(ellipse 110% 50% at 24% 48%, rgba(5, 8, 6, .74), rgba(5, 8, 6, .46) 56%, rgba(5, 8, 6, .12) 82%, transparent);
  }

  .hero__title {
    font-weight: 500;
    letter-spacing: -.052em;
    text-shadow: 0 2px 2px rgba(3, 5, 4, .68), 0 8px 24px rgba(3, 5, 4, .5);
  }
}

/*
 * Финальный системный проход: единый ритм всех страниц, плотные содержательные
 * композиции и короткий маршрут от знакомства с проектом к обращению.
 */
:root {
  --premium-section-y: clamp(72px, 6.6vw, 104px);
  --premium-section-y-mobile: 56px;
  --premium-card: rgba(246, 242, 234, .74);
  --premium-card-dark: rgba(255, 255, 255, .045);
}

/* Логотип сохраняет контраст на небе, деревьях и светлых фрагментах фото. */
.hero__brand,
.site-header--dark .site-header__brand {
  padding: 10px 13px;
  border: 1px solid rgba(212, 177, 132, .3);
  border-radius: 5px;
  background: linear-gradient(145deg, rgba(20, 27, 22, .8), rgba(9, 12, 10, .62));
  box-shadow: 0 12px 34px rgba(4, 7, 5, .22), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter: blur(14px) saturate(.84);
}

/* Полноценная навигация на журнальной и юридической страницах. */
.page-header {
  position: relative;
  z-index: 20;
  min-height: 84px;
  display: grid;
  grid-template-columns: minmax(170px, 1fr) auto minmax(170px, 1fr);
  align-items: center;
  gap: clamp(20px, 3vw, 56px);
  border-bottom: 1px solid var(--premium-line);
}

.page-header__brand { width: clamp(158px, 12vw, 190px); }
.page-header__brand img { width: 100%; height: auto; }

.page-header__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.page-header__nav a,
.page-header__cta {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid rgba(37, 53, 45, .18);
  border-radius: 5px;
  color: rgba(20, 23, 19, .74);
  font-size: 10px;
  font-weight: 720;
  letter-spacing: .09em;
  text-transform: uppercase;
  transition: color 220ms ease, border-color 220ms ease, background-color 220ms ease, transform 220ms var(--premium-ease);
}

.page-header__nav a:hover {
  color: var(--premium-forest);
  border-color: rgba(167, 123, 78, .58);
  background: rgba(255,255,255,.42);
}

.page-header__cta {
  justify-self: end;
  gap: 14px;
  color: var(--premium-paper);
  border-color: rgba(37, 53, 45, .45);
  background: var(--premium-forest);
}

.page-header__cta:hover { color: #fff; background: var(--premium-bronze); transform: translateY(-2px); }

/* Главная: свободное место превращено в факты, фотографии и ясные карточки. */
body[data-page="home"] .city-showcase__heading {
  gap: clamp(32px, 4vw, 64px);
  margin-bottom: clamp(42px, 4.5vw, 68px);
}

body[data-page="home"] .city-showcase__facts {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  padding: 1px;
  border: 0;
  background: rgba(20, 23, 19, .28);
}

body[data-page="home"] .city-showcase__fact {
  min-width: 0;
  min-height: 164px;
  border: 0 !important;
  background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,0) 70%), var(--premium-paper);
}

body[data-page="home"] .city-showcase__fact-value {
  display: grid;
  grid-template-areas: "value";
  width: 100%;
  white-space: nowrap;
  font-size: clamp(38px, 4.15vw, 72px);
  line-height: .98;
  font-variant-numeric: tabular-nums lining-nums;
}

body[data-page="home"] .city-showcase__fact-value::before,
body[data-page="home"] .city-showcase__fact-current {
  grid-area: value;
}

body[data-page="home"] .city-showcase__fact-value::before {
  content: attr(data-final);
  visibility: hidden;
  pointer-events: none;
}

@media (min-width: 769px) and (max-width: 1199px) {
  body[data-page="home"] .city-showcase__facts { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  body[data-page="home"] .city-showcase__fact { grid-column: span 2; }
  body[data-page="home"] .city-showcase__fact:nth-child(n + 4) { grid-column: span 3; }
}

body[data-page="home"] .city-showcase__shots {
  height: auto;
  margin-top: clamp(38px, 4vw, 58px);
  grid-template-columns: 1.42fr 1fr;
  gap: 14px;
}

body[data-page="home"] .city-showcase__shot--hero .city-showcase__shot-media { height: auto; aspect-ratio: 3 / 2; }
body[data-page="home"] .city-showcase__shot-stack { min-height: 0; gap: 14px; }
body[data-page="home"] .city-showcase__shot-stack .city-showcase__shot-media { height: 100%; min-height: 0; }

.storyline__heading { margin-bottom: clamp(42px, 4.5vw, 68px); gap: clamp(28px, 4vw, 64px); }

.storyline__timeline {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 1.7vw, 26px);
}

.storyline__straight-line,
.storyline-step__point { display: none; }

.storyline-step {
  min-height: 0;
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(37, 53, 45, .18);
  background: var(--premium-card);
  box-shadow: 0 18px 54px rgba(30, 32, 27, .06);
}

.storyline-step__media {
  order: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.storyline-step__copy {
  order: 1;
  width: 100%;
  min-height: 0;
  padding: clamp(22px, 2.4vw, 34px);
}

.storyline-step__copy h3 {
  color: var(--premium-forest);
  font-family: var(--premium-serif);
  font-size: clamp(27px, 2.2vw, 40px);
  line-height: 1.08;
  text-wrap: balance;
}

.storyline-step__copy > span { color: rgba(20, 23, 19, .72); line-height: 1.65; }

/* Общие внутренние страницы. */
.about-section { padding-top: var(--premium-section-y); padding-bottom: var(--premium-section-y); }
.about-section .display-title + .about-section__lead { margin-top: clamp(34px, 4vw, 58px); }
.about-belief { margin-top: clamp(36px, 4vw, 58px); gap: 14px; }
.about-belief article { padding: clamp(22px, 2.2vw, 32px); }

.process { padding-top: var(--premium-section-y); padding-bottom: var(--premium-section-y); }
.process__heading { margin-top: clamp(42px, 4vw, 62px); margin-bottom: clamp(42px, 4vw, 62px); }
.process-card { min-height: 236px; padding: 24px 26px; background: rgba(255,255,255,.018); }
.lifestyle { min-height: clamp(680px, 68vw, 820px); }

.projects-filters { padding-top: clamp(66px, 6vw, 92px); }
.projects-grid { margin-top: clamp(38px, 4vw, 58px); padding-bottom: var(--premium-section-y); gap: clamp(28px, 3vw, 44px); }
.project-card { padding-top: clamp(28px, 3vw, 42px); gap: clamp(30px, 4vw, 56px); }
.project-card__body { align-self: center; }
.project-card__image { width: 100%; min-width: 0; height: auto; aspect-ratio: 16 / 10; overflow: hidden; }

.contacts-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin-top: clamp(36px, 4vw, 56px);
}

.contacts-card {
  min-height: 150px;
  padding: 22px;
  border: 1px solid rgba(37, 53, 45, .18);
  background: var(--premium-card);
  box-shadow: 0 16px 46px rgba(30, 32, 27, .05);
}

body[data-page="contacts"] .contact { min-height: 0; padding-top: var(--premium-section-y); }

.articles-index__content { padding-top: clamp(72px, 7vw, 108px); padding-bottom: var(--premium-section-y); }
.legal-page__content { padding-top: clamp(68px, 6vw, 94px); padding-bottom: var(--premium-section-y); }
.legal-page__content section { padding-block: clamp(24px, 2.4vw, 36px); }

/* КОСМИ-СИТИ: длинная лендинг-страница становится каталогом проекта. */
.city-section { padding-top: var(--premium-section-y); padding-bottom: var(--premium-section-y); }
.city-about.city-section,
.city-house.city-section { padding-top: 0; padding-bottom: 0; }
.city-about__intro,
.city-house__intro { padding-top: var(--premium-section-y); }
.city-about__slider,
.city-house__catalog { padding-bottom: var(--premium-section-y); }
.city-architecture__intro { padding-top: var(--premium-section-y); padding-bottom: clamp(34px, 3vw, 48px); }
.city-genplan__layout { margin-top: clamp(38px, 4vw, 56px); gap: clamp(32px, 4vw, 54px); }
.city-house__plan-wrap { margin-top: clamp(38px, 4vw, 56px); }
.city-house__catalog { margin-top: clamp(38px, 4vw, 56px); gap: clamp(20px, 2vw, 30px); }
.city-house__table :is(th, td) { padding-top: 10px; padding-bottom: 10px; }
.city-included__footnote { margin-top: clamp(28px, 3vw, 44px); }

.city-timeline__heading {
  margin-top: clamp(38px, 4vw, 56px);
  margin-bottom: clamp(42px, 4.5vw, 64px);
  gap: clamp(28px, 4vw, 58px);
}

.city-timeline__rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.city-timeline__line,
.city-timeline__point { display: none; }

.city-timeline__step {
  min-height: 0;
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(212, 177, 132, .2);
  background: var(--premium-card-dark);
}

.city-timeline__media {
  order: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.city-timeline__copy {
  order: 1;
  width: 100%;
  min-height: 0;
  padding: clamp(20px, 2vw, 28px);
}

.city-timeline__step.is-future { opacity: .88; }
.city-timeline__step.is-current { border-color: rgba(212, 177, 132, .64); background: rgba(167,123,78,.1); }
.city-timeline__outcome { margin-top: 20px; padding-top: 16px; }

.city-purchase__cards { margin-top: clamp(38px, 4vw, 56px); gap: 16px; }
.city-faq__columns { margin-top: clamp(38px, 4vw, 56px); gap: clamp(24px, 3vw, 42px); }

@media (max-width: 1100px) {
  .page-header { grid-template-columns: auto 1fr; min-height: 78px; }
  .page-header__nav { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; overflow-x: auto; padding-bottom: 12px; scrollbar-width: none; }
  .page-header__nav::-webkit-scrollbar { display: none; }
  .page-header__cta { grid-column: 2; grid-row: 1; }
  .city-timeline__rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
  :root { --premium-section-y: var(--premium-section-y-mobile); }

  .hero__brand,
  .site-header--dark .site-header__brand { padding: 7px 9px; }
  .hero__brand-logo,
  .site-header__brand img { width: clamp(148px, 42vw, 174px); }

  .page-header {
    min-height: 0;
    padding-top: 16px;
    gap: 12px;
    background: rgba(237, 233, 225, .96);
  }
  .page-header__brand { width: 148px; }
  .page-header__cta { min-height: 38px; padding-inline: 12px; font-size: 8px; }
  .page-header__nav { margin-inline: -20px; padding: 0 20px 14px; gap: 6px; }
  .page-header__nav a { min-height: 38px; flex: 0 0 auto; padding-inline: 13px; font-size: 8px; }

  body[data-page="home"] .city-showcase__heading { gap: 24px; margin-bottom: 34px; }
  body[data-page="home"] .city-showcase__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-page="home"] .city-showcase__fact { min-height: 128px; }
  body[data-page="home"] .city-showcase__fact:last-child { grid-column: 1 / -1; }
  body[data-page="home"] .city-showcase__shots { grid-template-columns: 1fr; gap: 12px; margin-top: 32px; }
  body[data-page="home"] .city-showcase__shot--hero .city-showcase__shot-media,
  body[data-page="home"] .city-showcase__shot-stack .city-showcase__shot-media { height: auto; aspect-ratio: 16 / 10; }
  body[data-page="home"] .city-showcase__shot-stack { gap: 12px; }

  .storyline__heading { margin-bottom: 34px; gap: 22px; }
  .storyline__timeline { grid-template-columns: 1fr; gap: 16px; }
  .storyline-step__media { aspect-ratio: 16 / 10; }
  .storyline-step__copy { padding: 22px 20px 24px; }
  .storyline-step__copy h3 { font-size: clamp(26px, 7.6vw, 34px); }

  .about-section,
  .process { padding-top: var(--premium-section-y-mobile); padding-bottom: var(--premium-section-y-mobile); }
  .about-section .display-title + .about-section__lead { margin-top: 28px; }
  .about-belief { margin-top: 30px; gap: 12px; }
  .process__heading { margin-top: 32px; margin-bottom: 32px; }
  .process-card { min-height: 0; padding: 22px 18px; }
  .lifestyle { min-height: 620px; }

  .projects-filters { padding-top: 52px; }
  .projects-grid { margin-top: 32px; gap: 24px; padding-bottom: 56px; }
  .project-card { padding-top: 24px; gap: 24px; }
  .project-card__image { aspect-ratio: 16 / 10; }

  .contacts-grid { grid-template-columns: 1fr; margin-top: 30px; gap: 10px; }
  .contacts-card { min-height: 112px; padding: 18px; }
  body[data-page="contacts"] .contact { padding-top: 56px; }

  .articles-index__content,
  .legal-page__content { padding-top: 56px; padding-bottom: 64px; }
  .articles-index__grid { gap: 28px; }
  .legal-page__content section { padding-block: 22px; }

  .city-section { padding-top: 56px; padding-bottom: 56px; }
  .city-about__intro,
  .city-house__intro { padding-top: 56px; }
  .city-about__slider,
  .city-house__catalog { padding-bottom: 56px; }
  .city-architecture__intro { padding-top: 56px; padding-bottom: 30px; }
  .city-genplan__layout,
  .city-house__plan-wrap,
  .city-house__catalog,
  .city-purchase__cards,
  .city-faq__columns { margin-top: 32px; }
  .city-house__catalog { gap: 26px; }
  .city-house__group { padding-top: 22px; }
  .city-house__table :is(th, td) { padding-top: 8px; padding-bottom: 8px; }

  .city-timeline__heading { margin-top: 32px; margin-bottom: 34px; gap: 22px; }
  .city-timeline__rail { grid-template-columns: 1fr; gap: 14px; }
  .city-timeline__media { aspect-ratio: 16 / 10; }
  .city-timeline__copy { padding: 20px; }
  .city-purchase__cards { gap: 14px; }
}

/*
 * Хедер 2.0 — не набор отдельных тёмных плиток, а одна лёгкая
 * архитектурная линия поверх изображения.
 */
.hero__brand,
.site-header--dark .site-header__brand {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  backdrop-filter: none;
}

.hero__brand img,
.site-header--dark .site-header__brand img {
  filter: brightness(0) invert(1) drop-shadow(0 2px 2px rgba(4, 7, 5, .5)) drop-shadow(0 8px 18px rgba(4, 7, 5, .28));
}

:is(.hero__phone, .site-header__phone) {
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
}

@media (min-width: 1181px) {
  :is(.hero__nav, .site-header__nav) {
    gap: 0;
    padding: 4px;
    border: 1px solid rgba(212, 177, 132, .22);
    border-radius: 6px;
    background:
      linear-gradient(180deg, rgba(255,255,255,.055), transparent 46%),
      rgba(18, 25, 21, .42);
    box-shadow: 0 12px 32px rgba(4, 7, 5, .14);
    backdrop-filter: blur(15px) saturate(.9);
  }

  :is(.hero__nav-item, .site-header__nav-item) {
    min-height: 40px;
    padding-inline: clamp(13px, 1vw, 19px);
    border: 0;
    border-radius: 3px;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
  }

  :is(.hero__nav-item, .site-header__nav-item)::after {
    right: 16px;
    left: 16px;
    background: var(--premium-bronze-light);
  }

  :is(.hero__nav-item, .site-header__nav-item):hover,
  :is(.hero__nav-item, .site-header__nav-item)[aria-current="page"] {
    border-color: transparent;
    background: linear-gradient(180deg, rgba(212, 177, 132, .12), rgba(212, 177, 132, .045));
    box-shadow: none;
  }

  :is(.hero__meta, .site-header__meta) {
    padding: 5px 0 5px 17px;
    border: 0;
    border-left: 1px solid rgba(212, 177, 132, .55);
    border-radius: 0;
    background: none;
    box-shadow: none;
    backdrop-filter: none;
    text-shadow: 0 2px 8px rgba(4, 7, 5, .58);
  }

  :is(.hero__audit, .site-header__cta) {
    min-height: 52px;
    border: 1px solid rgba(212, 177, 132, .38);
    border-radius: 4px;
    background:
      linear-gradient(180deg, rgba(255,255,255,.05), transparent 52%),
      rgba(31, 47, 39, .88);
    box-shadow: 0 12px 30px rgba(4, 7, 5, .17), inset 0 1px 0 rgba(255,255,255,.04);
  }

  :is(.hero__audit, .site-header__cta):hover {
    border-color: rgba(232, 201, 160, .72);
    background:
      linear-gradient(180deg, rgba(255,255,255,.08), transparent 52%),
      rgba(145, 103, 63, .94);
    box-shadow: 0 16px 34px rgba(4, 7, 5, .22);
  }
}

@media (max-width: 768px) {
  .hero__brand,
  .site-header--dark .site-header__brand {
    padding: 0;
    background: none;
    backdrop-filter: none;
  }

  :is(.hero__meta, .site-header__meta) {
    padding: 5px 0 5px 10px;
    border: 0;
    border-left: 1px solid rgba(212, 177, 132, .48);
    border-radius: 0;
    background: none;
    box-shadow: none;
    backdrop-filter: none;
    text-shadow: 0 2px 8px rgba(4, 7, 5, .6);
  }
}

/* Финальный сдержанный слой хедера. */
.hero__header,
.site-header--dark {
  isolation: isolate;
  position: relative;
}

.hero__header::before,
.site-header--dark::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  inset: -22px calc(var(--page-padding) * -1) -18px;
  background: linear-gradient(180deg, rgba(5, 8, 6, .42), rgba(5, 8, 6, .16) 58%, transparent);
}

/* На первом экране затемнение остаётся мягким, без разделительной полосы. */
.hero__header::before {
  border-bottom: 0;
}

.hero__brand-logo,
.site-header--dark .site-header__brand img {
  width: clamp(252px, 14.5vw, 276px);
  max-width: none;
}

.hero__brand img,
.site-header--dark .site-header__brand img {
  filter: brightness(0) invert(1) contrast(1.12) drop-shadow(0 1px 1px rgba(0, 0, 0, .98)) drop-shadow(0 5px 18px rgba(0, 0, 0, .9));
}

:is(.hero__meta, .site-header__meta) { border-left-color: var(--header-line); }
:is(.hero__worktime i, .site-header__hours i) {
  background: var(--header-sage);
  box-shadow: 0 0 0 3px rgba(201, 222, 214, .15);
}

.hero__eyebrow { color: var(--header-sage); }
.hero__title-detail > span { color: #d9ebe4; }

@media (min-width: 1181px) {
  :is(.hero__nav, .site-header__nav) {
    gap: 0;
    padding: 3px;
    border: 1px solid rgba(234, 241, 238, .34);
    border-radius: 5px;
    background: rgba(16, 23, 19, .58);
    box-shadow: 0 10px 28px rgba(3, 6, 4, .2);
    backdrop-filter: blur(14px) saturate(.88);
  }

  :is(.hero__nav-item, .site-header__nav-item) {
    min-height: 43px;
    color: rgba(255,255,255,.86);
    border: 0;
    border-radius: 2px;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    transform: none;
  }

  :is(.hero__nav-item, .site-header__nav-item) + :is(.hero__nav-item, .site-header__nav-item) {
    box-shadow: inset 1px 0 rgba(234, 241, 238, .24);
  }

  :is(.hero__nav-item, .site-header__nav-item) > span::after { display: none; }
  :is(.hero__nav-item, .site-header__nav-item)::after {
    right: 15px;
    left: 15px;
    background: var(--header-sage);
  }

  :is(.hero__nav-item, .site-header__nav-item):hover,
  :is(.hero__nav-item, .site-header__nav-item):focus-visible {
    color: #fff;
    border: 0;
    background: rgba(234, 241, 238, .12);
    box-shadow: none;
    transform: none;
  }

  :is(.hero__nav-item, .site-header__nav-item)[aria-current="page"] {
    color: #fff;
    border: 0;
    background: rgba(201, 222, 214, .15);
    box-shadow: none;
  }

  header.hero__header .hero__audit,
  header.site-header.site-header--dark .site-header__cta {
    color: #f6f3ed;
    border: 1px solid rgba(234, 241, 238, .42);
    background: rgba(30, 48, 39, .9);
    box-shadow: 0 10px 28px rgba(3, 6, 4, .24), inset 0 1px 0 rgba(255,255,255,.06);
  }

  header.hero__header .hero__audit:hover,
  header.site-header.site-header--dark .site-header__cta:hover {
    color: #14231d;
    border-color: rgba(255,255,255,.76);
    background: var(--header-sage);
    box-shadow: 0 14px 32px rgba(3, 6, 4, .28);
  }
}

@media (max-width: 768px) {
  .hero__header::before,
  .site-header--dark::before {
    inset: -16px -20px -12px;
    background:
      radial-gradient(ellipse 62% 130% at 0 20%, rgba(3, 7, 5, .7), rgba(3, 7, 5, .18) 70%, transparent),
      linear-gradient(180deg, rgba(5, 8, 6, .48), rgba(5, 8, 6, .12) 76%, transparent);
  }

  .hero__brand-logo,
  .site-header--dark .site-header__brand img {
    width: clamp(184px, 48vw, 202px);
  }
}
