/* Draft bar */
.draftbar { position: fixed; inset: auto 0 0; z-index: 60; background: #2b2216; color: #ffd9b8; font-size: var(--text-xs); border-top: 1px solid #5a3a14; }
.draftbar__row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding-block: var(--space-2); }
.draftbar__toggle { background: transparent; color: inherit; border: 1px solid #8a5a22; border-radius: 999px; padding: var(--space-1) var(--space-3); font: 600 var(--text-xs) var(--font-body); cursor: pointer; white-space: nowrap; }
.draftbar__toggle:hover { border-color: var(--color-accent); }
.footer { padding-bottom: calc(var(--space-8) + 40px); }
.todo { outline: 1.5px dashed var(--color-accent); outline-offset: 3px; border-radius: 3px; }
.todo--block { margin-top: var(--space-6); padding: var(--space-3) var(--space-4); font-size: var(--text-sm); color: var(--color-accent-ink); }
body.no-todo .todo { outline: 0; }
body.no-todo .todo--block { display: none; }

/* Hero */
.hero--home { min-height: max(100svh, 760px); }
.hero__title--home { max-width: 15ch; font-size: clamp(2.4rem, 1rem + 4.6vw, 5.2rem); }
.routes { margin-top: var(--space-10); display: grid; grid-template-columns: repeat(2, minmax(0, 360px)); gap: var(--space-4); }
.route { position: relative; display: grid; gap: var(--space-2); padding: var(--space-5) var(--space-12) var(--space-5) var(--space-6); border-radius: var(--radius-md); text-decoration: none; background: rgba(22, 23, 26, .62); border: 1px solid rgba(243, 241, 236, .2); backdrop-filter: blur(8px); transition: border-color .25s var(--ease), background .25s var(--ease), transform .25s var(--ease); }
.route:hover { border-color: var(--color-accent); background: rgba(22, 23, 26, .82); transform: translateY(-2px); }
.route__kicker { font-size: var(--text-xs); color: var(--color-accent); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.route__title { font: 800 var(--text-lg)/1.15 var(--font-display); }
.route__text { font-size: var(--text-sm); color: rgba(243, 241, 236, .75); }
.route__arrow { position: absolute; right: var(--space-5); top: 50%; transform: translateY(-50%); font-size: 1.5rem; color: var(--color-accent); transition: transform .25s var(--ease); }
.route:hover .route__arrow { transform: translate(4px, -50%); }

/* Directions */
.dirs { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-6); }
.dir { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); overflow: hidden; display: flex; flex-direction: column; }
.dir--dark { background: var(--color-dark); border-color: var(--color-dark); color: var(--color-light); }
.dir__media { aspect-ratio: 16 / 9; overflow: hidden; background: var(--color-offset); }
.dir__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.dir:hover .dir__media img { transform: scale(1.04); }
.dir__body { padding: clamp(var(--space-6), 3.5vw, var(--space-10)); display: flex; flex-direction: column; gap: var(--space-5); flex: 1; }
.dir__kicker { font: 600 var(--text-xs)/1.2 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: var(--color-accent-ink); }
.dir--dark .dir__kicker { color: var(--color-accent); }
.dir h3 { font-size: var(--text-xl); font-weight: 800; letter-spacing: -.02em; }
.dir__lead { color: var(--color-muted); }
.dir--dark .dir__lead { color: rgba(243, 241, 236, .75); }
.dir .ticks { flex: 1; align-content: start; }
.dir__foot { display: grid; gap: var(--space-5); padding-top: var(--space-5); border-top: 1px solid var(--color-border); }
.dir--dark .dir__foot { border-top-color: var(--color-dark-border); }
.price { font-size: var(--text-sm); color: var(--color-muted); }
.price strong { font: 800 var(--text-lg)/1 var(--font-display); color: var(--color-text); margin-inline: 2px; }
.price--light { color: var(--color-light-muted); }
.price--light strong { color: var(--color-light); }
.dir__cta { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.btn--line { border-color: var(--color-border); color: var(--color-text); background: transparent; }
.btn--line:hover { border-color: var(--color-text); }

/* Clients strip */
.clients { border-block: 1px solid var(--color-border); background: var(--color-surface); }
.clients__row { display: flex; align-items: center; gap: var(--space-8); padding-block: var(--space-6); flex-wrap: wrap; }
.clients__label { font: 600 var(--text-xs)/1.2 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: var(--color-muted); }
.clients__list { display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-8); }
.clients__list li { font: 700 var(--text-base)/1.3 var(--font-display); color: var(--color-text); }

/* Why */
.why { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border-top: 2px solid var(--color-text); }
.why li { padding: var(--space-8) var(--space-8) var(--space-8) 0; display: grid; gap: var(--space-3); align-content: start; border-bottom: 1px solid var(--color-border); }
.why li:not(:nth-child(3n+1)) { padding-left: var(--space-8); border-left: 1px solid var(--color-border); }
.why__n { font: 700 var(--text-xs)/1 var(--font-body); color: var(--color-accent-ink); letter-spacing: .1em; }
.why h3 { font-size: var(--text-lg); font-weight: 800; }
.why p { color: var(--color-muted); font-size: var(--text-sm); }

/* Tabs */
.tabs { justify-self: end; display: inline-flex; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 999px; padding: 4px; gap: 4px; }
.tabs button { border: 0; background: transparent; padding: var(--space-3) var(--space-5); border-radius: 999px; font: 600 var(--text-sm)/1 var(--font-body); color: var(--color-muted); cursor: pointer; transition: background .2s, color .2s; }
.tabs button[aria-selected="true"] { background: var(--color-dark); color: var(--color-light); }
.tabpanel[hidden] { display: none; }
.gallery--home { grid-template-columns: repeat(4, 1fr); }
.bigobj { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-6); margin-bottom: var(--space-10); }
.bigobj__card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); overflow: hidden; }
.bigobj__card img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.bigobj__card > div { padding: var(--space-6); display: grid; gap: var(--space-2); }
.bigobj__card h3 { font-size: var(--text-lg); font-weight: 800; }
.bigobj__card p { color: var(--color-muted); font-size: var(--text-sm); }
.bigobj__card p.todo { justify-self: start; color: var(--color-accent-ink); }
.big-objects--3 { grid-template-columns: repeat(3, 1fr); margin-bottom: 0; }

/* Prices */
.prices { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-6); }
.prices__col { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: clamp(var(--space-6), 3.5vw, var(--space-10)); display: grid; gap: var(--space-6); align-content: start; }
.prices__col h3 { font-size: var(--text-lg); font-weight: 800; }
.prices dl { margin: 0; display: grid; }
.prices dl > div { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-4); padding-block: var(--space-4); border-bottom: 1px solid var(--color-border); }
.prices dt { color: var(--color-muted); }
.prices dd { margin: 0; font: 800 var(--text-base)/1.2 var(--font-display); white-space: nowrap; }
.link-arrow { font-weight: 600; font-size: var(--text-sm); color: var(--color-accent-ink); text-decoration: none; justify-self: start; }
.link-arrow:hover { text-decoration: underline; text-underline-offset: 3px; }

/* Steps on dark */
.steps--dark .step { background: var(--color-dark-2); border-color: var(--color-dark-border); }
.steps--dark .step__n { background: var(--color-accent); color: var(--color-dark); }
.steps--dark .step p { color: rgba(243, 241, 236, .7); }

/* Segmented control */
.seg { border: 0; margin: 0; padding: 4px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px; background: var(--color-offset); border-radius: var(--radius-md); }
.seg label { position: relative; cursor: pointer; }
.seg input { position: absolute; opacity: 0; inset: 0; }
.seg span { display: block; text-align: center; padding: var(--space-3) var(--space-2); border-radius: var(--radius-sm); font: 600 var(--text-sm)/1.25 var(--font-body); color: var(--color-muted); transition: background .2s, color .2s; }
.seg input:checked + span { background: var(--color-dark); color: var(--color-light); }
.seg input:focus-visible + span { outline: 2px solid var(--color-accent); outline-offset: 2px; }
.field[hidden] { display: none; }

/* Footer */
.footer__grid--4 { grid-template-columns: 1.3fr 1fr 1fr 1.2fr; }
.footer__soon { opacity: .6; }

@media (max-width: 1100px) {
  .why { grid-template-columns: 1fr 1fr; }
  .why li:not(:nth-child(3n+1)) { padding-left: 0; border-left: 0; }
  .why li:nth-child(even) { padding-left: var(--space-8); border-left: 1px solid var(--color-border); }
  .footer__grid--4 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 860px) {
  .dirs, .prices, .bigobj { grid-template-columns: 1fr; }
  .routes { grid-template-columns: 1fr; }
  .tabs { justify-self: start; }
  .big-objects--3 { grid-template-columns: 1fr; }
  .big-objects--3 li, .big-objects--3 li + li { padding: var(--space-4) 0; border-left: 0; }
  .big-objects--3 li + li { border-top: 1px solid var(--color-border); }
  .gallery--home { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .why { grid-template-columns: 1fr; }
  .why li, .why li:nth-child(even) { padding: var(--space-6) 0; border-left: 0; }
  .route { padding-right: var(--space-10); }
  .clients__row { gap: var(--space-3); }
  .clients__list { gap: var(--space-2) var(--space-5); }
  .clients__list li { font-size: var(--text-sm); }
  .dir__cta .btn { flex: 1 1 100%; }
  .footer__grid--4 { grid-template-columns: 1fr; }
  .draftbar__row > span { font-size: .7rem; }
  .fab { bottom: 52px; }
  .prices dl > div { flex-direction: column; gap: var(--space-1); }
}

/* ===== v2: logo, nav, hero ===== */
:root { --header-h: 88px; --logo-h: 64px; }
.logo { position: relative; display: block; height: var(--logo-h); flex: none; text-decoration: none; }
.logo img { height: 100%; width: auto; }
.logo__tag { position: absolute; left: 21.7%; top: 62%; white-space: nowrap; font: 500 calc(var(--logo-h) * .19)/1 var(--font-body); letter-spacing: .1em; text-transform: uppercase; color: rgba(243, 241, 236, .85); }
.logo--footer { --logo-h: 68px; margin-bottom: var(--space-5); }
.nav a[aria-current="page"] { color: var(--color-light); font-weight: 600; }
.mobile-menu a[aria-current="page"] { color: var(--color-accent); }

.regions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) 0; margin-bottom: var(--space-5); font-size: var(--text-sm); color: rgba(243, 241, 236, .72); }
.regions svg { color: var(--color-accent); margin-right: var(--space-2); flex: none; }
.regions span { white-space: nowrap; }
.regions span:not(:last-child)::after { content: '·'; margin: 0 var(--space-2); color: rgba(243, 241, 236, .4); }

.hero__title--home { max-width: 20ch; font-size: clamp(2rem, 1rem + 3vw, 3.6rem); line-height: 1.06; letter-spacing: -.03em; }
.hero__title--home span { color: var(--color-accent); display: block; }
.hero__lead { max-width: 52ch; }

.routes { grid-template-columns: repeat(2, minmax(0, 480px)); }
.route { padding: var(--space-5) var(--space-10) var(--space-5) var(--space-6); gap: var(--space-2); align-content: start; }
.route__title { font-size: var(--text-lg); white-space: nowrap; }
.route__text { line-height: 1.5; }

@media (max-width: 1100px) { .route__title { white-space: normal; } }
@media (max-width: 860px) {
  :root { --header-h: 72px; --logo-h: 52px; }
  .routes { grid-template-columns: 1fr; }
}
@media (max-width: 400px) {
  :root { --logo-h: 48px; }
}

/* v4: centered split hero */
.hero--home { --seam-gap: clamp(56px, 7vw, 112px); justify-content: flex-end; }
.hero__media { position: absolute; inset: 0; }
.hero--home .hero__bg { object-position: 50% 40%; }
.hero__seam { position: absolute; top: 0; bottom: 0; left: 50%; width: 3px; transform: translateX(-50%); background: var(--color-accent); box-shadow: 0 0 18px rgba(254, 114, 0, .45); }
.hero--home .hero__shade { background:
  linear-gradient(90deg, rgba(14,15,17,.62) 0%, rgba(14,15,17,.5) 50%, rgba(14,15,17,.08) 50%, rgba(14,15,17,0) 100%),
  linear-gradient(180deg, rgba(14,15,17,.55) 0%, rgba(14,15,17,0) 20%, rgba(14,15,17,0) 55%, rgba(14,15,17,.82) 80%, rgba(14,15,17,.95) 100%); }
.hero__split { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--seam-gap); row-gap: var(--space-8); padding-bottom: var(--space-10); }
.hero__half--left { align-self: end; }
.hero--home .hero__title--home { max-width: none; font-size: clamp(2rem, .9rem + 2.5vw, 3.15rem); }
.hero--home .hero__lead { max-width: 46ch; }
.hero__split .route { max-width: none; }
.hero__split .route__title { white-space: normal; }
.stats--half { margin: 0; grid-template-columns: 1fr 1fr; }
.stats--half .stats__item:nth-child(n) { padding-top: var(--space-5); }
.stats--half .stats__item:first-child { padding-left: 0; border-left: 0; }
.stats--half .stats__item + .stats__item { padding-left: var(--space-6); border-left: 1px solid rgba(243, 241, 236, .14); }

@media (max-width: 860px) {
  .hero--home { display: block; min-height: 0; padding-top: var(--header-h); }
  .hero__media { position: relative; inset: auto; aspect-ratio: 3 / 2; }
  .hero--home .hero__shade { background: linear-gradient(180deg, rgba(14,15,17,.35) 0%, rgba(14,15,17,0) 30%, rgba(14,15,17,0) 70%, rgba(14,15,17,.9) 100%); }
  .hero__split { grid-template-columns: 1fr; row-gap: var(--space-4); padding-top: var(--space-6); }
  .hero__half--right { display: none; }
  .hero__half--left { margin-bottom: var(--space-4); }
  .stats--half + .stats--half { margin-top: calc(-1 * var(--space-4)); border-top: 0; }
}
.hero--home .hero__title--home { font-size: clamp(1.9rem, .8rem + 2.2vw, 2.75rem); }
.hero__split { row-gap: var(--space-6); }
.hero__split .regions { font-size: .8125rem; }
.hero__split .regions span:not(:last-child)::after { margin: 0 6px; }
@media (min-width: 861px) { .hero--home { padding-top: calc(var(--header-h) + var(--space-8)); } }
@media (max-width: 860px) { .stats--half .stats__item { justify-content: flex-end; } }

/* v5: header split around the seam */
:root { --seam-gap: clamp(56px, 7vw, 112px); }
.header__side { display: flex; align-items: center; gap: var(--space-6); min-width: 0; }
.header__side--right { margin-left: auto; }
.nav--right { margin-left: 0; }
@media (min-width: 1101px) {
  .header__row { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--seam-gap); }
  .header__side--right { margin-left: 0; }
  .nav--left { margin-left: auto; }
  .header__actions { margin-left: auto; gap: var(--space-4); }
  .nav { gap: var(--space-6); }
}
@media (min-width: 1101px) and (max-width: 1320px) {
  :root { --logo-h: 54px; }
  .nav { gap: var(--space-4); }
  .header__phone { display: none; }
}

/* v6: object types, 2-line lead, raised title */
.hero__lead--2 span { display: block; }
@media (min-width: 1101px) { .hero__lead--2 { max-width: none; font-size: 1.125rem; } .hero__lead--2 span { white-space: nowrap; } }
@media (min-width: 861px) { .hero__half--left { margin-bottom: clamp(var(--space-8), 6vh, var(--space-16)); } }
.hero__split .route { gap: var(--space-5); padding: var(--space-6) var(--space-12) var(--space-6) var(--space-6); }
.otypes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.otypes li { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-2); font-size: var(--text-sm); line-height: 1.3; color: rgba(243, 241, 236, .82); }
.otypes svg { width: 34px; height: 34px; fill: none; stroke: var(--color-accent); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 480px) { .otypes { grid-template-columns: repeat(2, minmax(0, 1fr)); } .otypes--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* v7 — блок «Направления» */
.eyebrow--slash::before { content: '/'; width: auto; height: auto; background: none; color: var(--color-accent); font-weight: 700; font-size: 1.15em; letter-spacing: 0; }
.section__title--2l span { display: block; }
.section__title--2l .accent { color: var(--color-accent); }
.section__lead--2l { max-width: none; }
.section__lead--2l span, .dir__lead span { display: block; }
.svc { display: grid; gap: var(--space-4); flex: 1; align-content: start; }
.svc li { display: flex; align-items: center; gap: var(--space-4); }
.svc svg { flex: none; width: 40px; height: 40px; padding: 9px; border-radius: 10px; color: var(--color-accent-ink); background: rgba(254, 114, 0, .09); }
.svc--light li { color: rgba(243, 241, 236, .9); }
.svc--light svg { color: var(--color-accent); background: rgba(254, 114, 0, .14); }
@media (max-width: 860px) { .section__lead--2l span, .dir__lead span { display: inline; } }
/* v7b — карточки направлений на общей сетке строк */
@media (min-width: 861px) {
  .dirs { grid-template-rows: auto auto auto auto 1fr auto; row-gap: 0; }
  .dir { display: grid; grid-row: span 6; grid-template-rows: subgrid; }
  .dir__body { display: contents; }
  .dir__body > * { margin-inline: clamp(var(--space-6), 3.5vw, var(--space-10)); }
  .dir__kicker { margin-top: clamp(var(--space-6), 3.5vw, var(--space-10)); }
  .dir h3, .dir__lead, .dir .svc, .dir__foot { margin-top: var(--space-5); }
  .dir__foot { margin-bottom: clamp(var(--space-6), 3.5vw, var(--space-10)); }
}
.price--2l { display: grid; gap: var(--space-1); }
.price__note { font-size: var(--text-xs); color: var(--color-muted); }
.price--light .price__note { color: rgba(243, 241, 236, .6); }
@media (min-width: 861px) { .dir h3 span { display: block; } }
.dir--dark .dir__lead span { display: inline; }
@media (max-width: 1279px) { .dir__lead span { display: inline; } }
/* v8 — светлее подложка, заголовок в строку, описания цепочкой */
:root { --color-bg: #f7f7f5; --color-surface: #ffffff; --color-offset: #eeede9; --color-border: #e3e1dc; }
.section__title--1l .accent { color: var(--color-accent); }
@media (min-width: 1101px) { .section__title--1l { white-space: nowrap; } }
.dir__lead--chain { line-height: 1.7; }
.dir__lead--chain .nw { white-space: nowrap; }
.dir__lead--chain .sep { font-style: normal; color: var(--color-accent); font-weight: 600; margin: 0 .3em; }
.dir__lead.dir__lead--chain span { display: inline !important; }
.dir__lead--chain .sep { margin: 0 0 0 .1em; }
@media (min-width: 1240px) {
  .dir__lead--chain { font-size: .9375rem; }
  .dir__lead.dir__lead--chain .ln { display: block !important; white-space: nowrap; }
}
@media (min-width: 1240px) and (max-width: 1365px) { .dir__lead--chain { font-size: .875rem; } }
/* v9 — вертикальные разделители, полоса объектов */
.eyebrow--bar::before { content: ''; width: 2px; height: 1.15em; background: var(--color-accent); border-radius: 1px; }
.bar { display: inline-block; width: 1.5px; height: 1em; vertical-align: -.14em; background: var(--color-accent); border-radius: 1px; font-style: normal; }
@media (max-width: 1239px) { .dir__lead--chain .ln + .ln > .bar:first-child { display: none; } }
.clients__row { flex-wrap: nowrap; align-items: flex-start; gap: var(--space-10); }
.clients__label { flex: none; padding-top: .3em; }
.clients__list { gap: var(--space-3) 0; }
.clients__list li { display: inline-flex; align-items: center; }
.clients__list li:not(:last-child)::after { content: ''; width: 1.5px; height: .95em; background: var(--color-border); margin-inline: var(--space-5); }
.clients__list li.todo { margin-left: var(--space-5); }
@media (max-width: 860px) { .clients__row { flex-direction: column; gap: var(--space-3); } .clients__list li:not(:last-child)::after { margin-inline: var(--space-3); } }
.dir__lead--chain .bar { margin-inline: .45em; }
.dir__lead--chain .ln > .bar:first-child { margin-left: 0; }
.dir__lead--chain .nw { margin-right: 0; }
.clients__row { align-items: center; }
.clients__list { flex: 1; display: grid; grid-template-columns: repeat(5, auto); justify-content: space-between; gap: var(--space-4) var(--space-6); }
.clients__list li::after { display: none !important; }
.clients__list li.todo { grid-column: 1 / -1; justify-self: start; margin-left: 0; }
body.no-todo .clients__list li.todo { display: none; }
@media (max-width: 1100px) { .clients__list { grid-template-columns: repeat(3, auto); justify-content: start; gap: var(--space-3) var(--space-8); } }
@media (max-width: 560px) { .clients__list { grid-template-columns: 1fr 1fr; gap: var(--space-2) var(--space-5); } }
.bar { width: 2px; }
@media (max-width: 860px) { .clients__row { align-items: flex-start; } }
/* v10 — запятые, ЖК в рамках, «Почему НовоНэст» в две линии */
.dir__lead--lines { line-height: 1.7; }
@media (min-width: 1240px) { .dir__lead--lines { font-size: .9375rem; } .dir__lead--lines .ln { display: block !important; white-space: nowrap; } }
@media (min-width: 1240px) and (max-width: 1365px) { .dir__lead--lines { font-size: .875rem; } }
.dir__lead--lines .ln { display: inline; }

.clients__list { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: var(--space-3) var(--space-3); }
.clients__list li.chip { padding: .4em .9em; border: 1px solid var(--color-accent); border-radius: 8px; font-size: var(--text-sm); line-height: 1.2; }
.clients__list li.plain { padding: .4em .5em; font-size: var(--text-sm); line-height: 1.2; color: var(--color-muted); }
.clients__list li.chip:nth-child(2) { transform: translateY(-3px); }
.clients__list li.chip:nth-child(4) { transform: translateY(3px); }
.clients__list li.chip:nth-child(6) { transform: translateY(-2px); }
.clients__row { align-items: center; }

.why2__row { margin-top: var(--space-10); }
.why2__row + .why2__row { margin-top: var(--space-12, 3rem); }
.why2__label { display: flex; align-items: center; gap: var(--space-3); font: 600 var(--text-xs)/1.2 var(--font-body); letter-spacing: .12em; text-transform: uppercase; color: var(--color-accent-ink); padding-bottom: var(--space-4); border-bottom: 2px solid var(--color-text); }
.why2__label svg { width: 20px; height: 20px; color: var(--color-accent); }
.why2 { display: grid; grid-template-columns: repeat(3, 1fr); }
.why2 li { display: flex; gap: var(--space-5); align-items: flex-start; padding: var(--space-8) var(--space-8) var(--space-8) 0; }
.why2 li + li { padding-left: var(--space-8); border-left: 1px solid var(--color-border); }
.why__ic { flex: none; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: rgba(254, 114, 0, .09); color: var(--color-accent-ink); }
.why__ic svg { width: 24px; height: 24px; }
.why2 h3 { font-size: var(--text-lg); font-weight: 800; line-height: 1.25; }
.why2 p { margin-top: var(--space-2); color: var(--color-muted); font-size: var(--text-sm); }
@media (max-width: 1100px) { .why2 { grid-template-columns: 1fr; } .why2 li, .why2 li + li { padding: var(--space-6) 0; border-left: 0; border-bottom: 1px solid var(--color-border); } }
.why2 li { flex-direction: column; gap: var(--space-4); }
.why2 h3 { white-space: nowrap; }
@media (max-width: 1239px) { .why2 h3 { white-space: normal; } }
.why2 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) { .why2 { grid-template-columns: 1fr; } }
/* v11 — без иконок в пунктах, «Наши работы» линиями, контакты */
.why2__soon { margin-left: auto; font-style: normal; text-transform: none; letter-spacing: 0; color: var(--color-muted); font-weight: 500; }
body.no-todo .why2__soon { display: none; }
.works__body { padding-top: var(--space-8); }
.works__body .gallery, .works__body .bigobj { margin: 0; }
.msg { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); margin-top: var(--space-6); max-width: 30rem; }
.msg__btn { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--color-dark-border); border-radius: 14px; text-decoration: none; color: var(--color-light); background: rgba(255,255,255,.03); transition: border-color .2s, background .2s, transform .2s; }
.msg__btn:hover { border-color: var(--color-accent); background: rgba(255,255,255,.06); transform: translateY(-1px); }
.msg__ic { flex: none; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; color: #fff; }
.msg__ic svg { width: 22px; height: 22px; }
.msg__btn--tg .msg__ic { background: #229ed9; }
.msg__btn--wa .msg__ic { background: #25d366; }
.msg__btn--max .msg__ic { background: linear-gradient(135deg, #3d7bff, #8b3dff); }
.msg__btn--mail .msg__ic { background: var(--color-accent); }
.msg__t { display: grid; line-height: 1.2; }
.msg__t b { font: 700 var(--text-sm)/1.2 var(--font-display); }
.msg__t small { font-size: var(--text-xs); color: var(--color-light-muted); margin-top: 2px; }
@media (max-width: 480px) { .msg { grid-template-columns: 1fr; } }
.section__head:has(.section__lead--2l) { max-width: none; }
.section__head--req { margin-bottom: var(--space-10); }
.request .request__direct { margin-top: 0; }
/* v12 */
:root { --header-h: 68px; --logo-h: 50px; }
@media (max-width: 1320px) and (min-width: 1101px) { :root { --logo-h: 44px; } }
@media (max-width: 860px) { :root { --header-h: 60px; --logo-h: 42px; } }
/* карточки на первом экране: компактнее и прозрачнее */
.hero__split .route { gap: var(--space-4); padding: var(--space-5) var(--space-12) var(--space-5) var(--space-5); background: rgba(18, 19, 22, .42); backdrop-filter: blur(3px) saturate(1.05); -webkit-backdrop-filter: blur(3px); border-color: rgba(243, 241, 236, .22); }
.hero__split .route:hover { background: rgba(18, 19, 22, .55); }
.hero__split .route, .hero__split .route * { text-shadow: 0 1px 6px rgba(0, 0, 0, .55); }
.hero__split .route h2, .hero__split .route h3, .hero__split .route .route__title { font-size: 1.125rem; }
/* полоса объектов: ровно, все в рамках */
.clients__list li.chip { transform: none !important; color: var(--color-text); }
.clients__list { gap: var(--space-3) var(--space-3); }
/* крупные объекты: заглушки */
.bigobj__ph { aspect-ratio: 16 / 10; display: grid; place-items: center; background: repeating-linear-gradient(135deg, var(--color-offset) 0 12px, #e6e4de 12px 24px); color: var(--color-muted); font: 600 var(--text-sm)/1.2 var(--font-body); letter-spacing: .02em; }
.bigobj__ph span { padding: .5em 1em; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 999px; }
.bigobj__meta { color: var(--color-muted) !important; }
/* «почему»: текст в две строки */
.why2 li { padding-right: var(--space-6); }
.why2 li + li { padding-left: var(--space-6); }
/* футер */
.footer__top { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-10); }
.footer__brand { max-width: 30rem; }
.footer__brand .logo { margin-bottom: var(--space-4); }
.footer__contacts { display: grid; gap: var(--space-2); text-align: right; }
.footer__contacts a { text-decoration: none; } .footer__contacts a:hover { color: var(--color-accent); }
.footer__nav { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-8); margin-top: var(--space-10); padding-top: var(--space-6); border-top: 1px solid var(--color-dark-border); font-size: var(--text-sm); }
.footer__nav a { text-decoration: none; } .footer__nav a:hover { color: var(--color-accent); }
.footer__legal { margin-top: var(--space-6); }
@media (max-width: 860px) { .footer__top { flex-direction: column; } .footer__contacts { text-align: left; } .footer__nav { gap: var(--space-2) var(--space-5); } }
.why2 p { font-size: .9375rem; }
.footer__nav { font-size: .875rem; column-gap: var(--space-5); justify-content: space-between; }
.why2 p { font-size: .875rem; line-height: 1.6; }
@media (min-width: 861px) {
  .hero__split .route { gap: var(--space-3); padding: var(--space-4) var(--space-10) var(--space-4) var(--space-5); }
  .hero__split .route__title { font-size: 1.0625rem; }
  .hero__split .otypes { gap: var(--space-3); }
  .hero__split .otypes li { flex-direction: row; align-items: center; gap: var(--space-2); font-size: .8125rem; line-height: 1.2; color: rgba(243, 241, 236, .92); }
  .hero__split .otypes svg { width: 24px; height: 24px; flex: none; }
}
@media (min-width: 861px) {
  .hero__split .route { padding-right: var(--space-12); }
  .hero--home .hero__shade { background:
    linear-gradient(90deg, rgba(14,15,17,.58) 0%, rgba(14,15,17,.46) 50%, rgba(14,15,17,.06) 50%, rgba(14,15,17,0) 100%),
    linear-gradient(180deg, rgba(14,15,17,.55) 0%, rgba(14,15,17,0) 20%, rgba(14,15,17,0) 62%, rgba(14,15,17,.62) 84%, rgba(14,15,17,.9) 100%); }
}
.footer__brand { max-width: none; }
.footer__muted--2l { max-width: none; }
.footer__muted--2l span { display: block; }
@media (max-width: 560px) { .footer__muted--2l span { display: inline; } }
@media (max-width: 860px) { .footer__nav { justify-content: flex-start; } }
/* v13: футер — вертикальный список, логотип */
.footer__brand .logo { display: inline-block; width: max-content; --logo-h: 50px; }
.footer__top { display: grid; grid-template-columns: 1fr auto auto; gap: var(--space-12); }
.footer__nav { display: block; margin: 0; padding: 0; border: 0; font-size: .9375rem; }
.footer__nav ul { display: grid; gap: var(--space-2); list-style: none; margin: 0; padding: 0; }
.footer__legal { margin-top: var(--space-10); padding-top: var(--space-6); border-top: 1px solid var(--color-dark-border); }
.dir { scroll-margin-top: calc(var(--header-h) + 16px); }
@media (max-width: 860px) { .footer__top { grid-template-columns: 1fr; gap: var(--space-8); } }
.nw { white-space: nowrap; }
/* v14: крупные объекты — строка с ролью и объёмом выровнена по низу */
.bigobj__card { display: flex; flex-direction: column; }
.bigobj__card > div { flex: 1; display: flex; flex-direction: column; }
.bigobj__card .bigobj__meta { margin-top: auto; padding-top: var(--space-2); }
/* v15: плотнее перечни в карточках первого экрана */
@media (min-width: 861px) {
  .hero__split .otypes, .hero__split .otypes--4 { grid-template-columns: repeat(4, auto); justify-content: start; column-gap: var(--space-5); }
  .hero__split .route { padding-right: calc(var(--space-12) + var(--space-2)); }
}
/* v16: публикация — без плашки черновика, контакты по центру */
.footer { padding-bottom: var(--space-8); }
.request { align-items: center; }
.msg__btn--mail:last-child:nth-child(odd) { grid-column: 1 / -1; }
/* v17: крупные объекты как плитки квартир */
.bigobj--tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); }
.bigobj__tile { aspect-ratio: 4 / 3; }
.bigobj__tile figcaption { padding-top: var(--space-16); gap: 3px; background: linear-gradient(180deg, transparent, rgba(14,15,17,.55) 35%, rgba(14,15,17,.9)); }
.bigobj__tile figcaption span { color: rgba(243, 241, 236, .88); }
.bigobj__tile figcaption .bigobj__meta { color: rgba(243, 241, 236, .7) !important; margin-top: 2px; }
@media (max-width: 1100px) { .bigobj--tiles { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .bigobj--tiles { grid-template-columns: 1fr; } }

/* v17: контакты — вертикальный столбец одной ширины */
.request .msg { grid-template-columns: 1fr; max-width: 20rem; }
.request .msg__btn--mail:last-child:nth-child(odd) { grid-column: auto; }

/* v17: значок логотипа по центру шапки после прокрутки */
.header__row { position: relative; }
.header__mark { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); height: calc(var(--header-h) - 26px); display: none; opacity: 0; pointer-events: none; transition: opacity .3s var(--ease); }
.header__mark img { height: 100%; width: auto; display: block; }
@media (min-width: 1101px) {
  .header__mark { display: block; }
  .header--solid .header__mark { opacity: 1; pointer-events: auto; }
}

/* v18: Мангазея — машина над подписью */
.bigobj__tile img[src*="mangazeya"] { object-position: 50% 22%; }
