/* ============================================================
   Мафия Харьков — обвязка сайта: шапка, меню, подвал.

   Подключается на ВСЕХ страницах. Содержимое страниц не трогает:
   каждое правило начинается с .header, .site-footer или .mk-foot.

   Этап 1 редизайна: тёмная обвязка, светлое содержимое.
   На этапе 2 к ней добавятся стили внутренних страниц.
   ============================================================ */

/* ── Шрифт ──────────────────────────────────────────────────
   Oswald лежит в теме, а не тянется с Google: страница не зависит
   от чужого сервера и не отправляет туда IP посетителей.
   Вариативный — один файл на подмножество покрывает 200–700. */
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 200 700;
	font-display: swap;
	src: url('../fonts/oswald-cyrillic.woff2') format('woff2');
	unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 200 700;
	font-display: swap;
	src: url('../fonts/oswald-cyrillic-ext.woff2') format('woff2');
	unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 200 700;
	font-display: swap;
	src: url('../fonts/oswald-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 200 700;
	font-display: swap;
	src: url('../fonts/oswald-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ── Токены ─────────────────────────────────────────────────
   Живут в :root, потому что нужны и обвязке, и главной.
   Префикс mk- исключает столкновение с переменными Neve. */
:root {
	--mk-ink:       #101012;
	--mk-ink-deep:  #08080A;
	--mk-surface:   #17171A;
	--mk-surface-2: #1D1D21;
	--mk-line:      rgba(255, 255, 255, .09);
	--mk-line-2:    rgba(255, 255, 255, .16);

	--mk-text:  #E6E4E2;
	--mk-muted: #98948E;
	--mk-dim:   #6A6660;
	--mk-white: #F8F9FA;

	--mk-red:    #C3163B;
	--mk-red-hi: #E0264E;
	--mk-red-dp: #8B0F2A;

	--mk-pad: clamp(72px, 9vw, 124px);
	--mk-gut: clamp(20px, 4vw, 48px);
	--mk-max: 1240px;
	--mk-r:   14px;

	--mk-sans: "Segoe UI", Tahoma, Geneva, Verdana, "Helvetica Neue", Arial, sans-serif;
	/* Фолбэки тоже узкие, чтобы вёрстка не «разъезжалась», если шрифт не загрузится */
	--mk-display: "Oswald", "PT Sans Narrow", "Segoe UI Condensed", "Arial Narrow", var(--mk-sans);
	--mk-ease: cubic-bezier(.16, .84, .44, 1);
}

/* ============================================================
   ШАПКА
   Разметку Neve не трогаем — только перекрашиваем.
   Меню продолжает жить в «Внешний вид → Меню».
   ============================================================ */
/* Neve красит внутренние ряды шапки своим фоном (из Customizer, у нас он
   белый) — он перекрывал наш тёмный. Гасим фон всех рядов, чтобы проступил
   тёмный фон header.header. */
#header-grid,
.header--row,
.header--row-inner,
.hfg_header { background-color: transparent !important; }

header.header {
	/* Сплошной тёмный фон, а не полупрозрачный: иначе на внутренних
	   страницах (белый фон) он просвечивает и шапка выглядит иначе,
	   чем на главной. Так меню одинаковое на всех страницах сайта. */
	background: var(--mk-ink);
	border-bottom: 1px solid var(--mk-line);
	/* Если в Neve включена своя «липкая» шапка — удалите эти три строки,
	   иначе получите две системы прилипания сразу. */
	position: sticky;
	top: 0;
	z-index: 100;
}
.admin-bar header.header { top: 32px; }
@media (max-width: 782px) {
	.admin-bar header.header { top: 46px; }
}

/* Логотип чёрный на прозрачном фоне — на тёмном его не видно */
.site-logo img,
img.custom-logo { filter: invert(1); opacity: .94; }
.site-logo a:hover img { opacity: 1; }

/* Шрифт и размер меню — как в макете: системный шрифт, 14.5px.
   Без этого меню наследует серифный шрифт Neve (Source Serif Pro) 16px. */
.nav-ul a,
.nav-ul .dd-title,
.nav-ul .menu-item-title-wrap { font-family: var(--mk-sans) !important; }
.nav-ul > li > a,
.nav-ul > li > .wrap > a,
.nav-ul > li > .wrap > a .dd-title { font-size: 14.5px !important; }

/* CTA «Для компании». В макете (concept-v5) — красная кнопка слева, сразу
   за логотипом. functions.php добавляет её пунктом меню (фолбэк без JS),
   а скрипт переносит в левый слот шапки. Стилизуем независимо от места. */
.mk-header-cta { list-style: none; }
.mk-header-cta > a,
.nav-ul li.mk-header-cta > a {
	display: inline-flex; align-items: center;
	padding: 9px 20px !important;
	background: var(--mk-red) !important;
	color: #fff !important;
	border-radius: 999px;
	font-family: var(--mk-sans) !important;
	font-size: 14px !important;
	font-weight: 600;
	white-space: nowrap;
	transition: box-shadow .18s, transform .18s;
}
.mk-header-cta > a:hover,
.nav-ul li.mk-header-cta > a:hover {
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 14px 34px rgba(139, 15, 42, .42);
}
.mk-header-cta > a::after,
.nav-ul li.mk-header-cta > a::after { display: none !important; }

/* Логотип и кнопка рядом в левом слоте шапки */
.header--row .hfg-slot.left { display: flex; align-items: center; }
/* z-index: над кнопкой лежит .header--row-inner Neve (во всю шапку) и
   перехватывает клик — поднимаем кнопку, чтобы она была кликабельной. */
.hfg-slot.left .mk-header-cta { margin-left: clamp(16px, 2.4vw, 34px); position: relative; z-index: 10; }

/* На мобильном кнопка у логотипа не нужна — там она в выезжающем меню */
@media (max-width: 960px) {
	.hfg-slot.left .mk-header-cta { display: none; }
}

/* Пункты меню.
   Neve оборачивает каждый пункт в <div class="wrap">, поэтому анкор — это
   li > .wrap > a, а не li > a. Учитываем оба варианта, иначе подписи меню
   останутся дефолтного тёмного цвета Neve и на тёмной шапке будут не видны. */
.nav-ul > li > a,
.nav-ul > li > .wrap > a,
.navbar-toggle,
.nav-ul .caret-wrap svg { color: var(--mk-text) !important; fill: currentColor; }
.nav-ul > li > a:hover,
.nav-ul > li > .wrap > a:hover,
.nav-ul > li.current-menu-item > a,
.nav-ul > li.current-menu-item > .wrap > a,
.nav-ul > li.current-menu-ancestor > a,
.nav-ul > li.current-menu-ancestor > .wrap > a { color: #fff !important; }

/* Красная черта под текущим разделом */
.nav-ul > li.current-menu-item > a,
.nav-ul > li.current-menu-item > .wrap > a,
.nav-ul > li.current-menu-ancestor > a,
.nav-ul > li.current-menu-ancestor > .wrap > a { position: relative; }
@media (min-width: 961px) {
	.nav-ul > li.current-menu-item > a::after,
	.nav-ul > li.current-menu-item > .wrap > a::after,
	.nav-ul > li.current-menu-ancestor > a::after,
	.nav-ul > li.current-menu-ancestor > .wrap > a::after {
		content: "";
		position: absolute;
		left: 0; right: 0; bottom: 2px;
		height: 2px;
		background: var(--mk-red);
		border-radius: 2px;
	}
}

/* Выпадающие списки */
.nav-ul .sub-menu {
	background-color: #141417 !important;
	border: 1px solid var(--mk-line);
	border-radius: 12px;
	box-shadow: 0 26px 60px rgba(0, 0, 0, .6);
	padding: 8px;
}
.nav-ul .sub-menu a { color: var(--mk-muted) !important; border-radius: 8px; }
.nav-ul .sub-menu a:hover,
.nav-ul .sub-menu li.current-menu-item > a,
.nav-ul .sub-menu li.current-menu-item > .wrap > a { color: #fff !important; background: rgba(255, 255, 255, .06); }

/* Мобильная выезжающая панель */
#header-menu-sidebar-inner,
.header-menu-sidebar-bg { background-color: #141417 !important; }
#header-menu-sidebar a { color: var(--mk-text) !important; }
#header-menu-sidebar .hamburger-inner,
#header-menu-sidebar .hamburger-inner::before,
#header-menu-sidebar .hamburger-inner::after { background-color: var(--mk-text) !important; }

/* ============================================================
   ПОДВАЛ
   Разметка своя — см. footer.php. Колонки берутся из меню,
   их состав правится в «Внешний вид → Меню».
   ============================================================ */
.mk-foot {
	background: var(--mk-ink);
	color: var(--mk-muted);
	border-top: 1px solid var(--mk-line);
	padding-block: clamp(44px, 5vw, 68px) 28px;
	font-family: var(--mk-sans);
	font-size: 16px;
	line-height: 1.6;
}
.mk-foot *,
.mk-foot *::before,
.mk-foot *::after { box-sizing: border-box; }

.mk-foot-wrap {
	width: 100%;
	max-width: var(--mk-max);
	margin-inline: auto;
	padding-inline: var(--mk-gut);
}
.mk-foot-grid {
	display: grid;
	grid-template-columns: 1.5fr repeat(4, 1fr);
	gap: clamp(24px, 3vw, 44px);
}

.mk-foot-brand img { height: 34px; width: auto; filter: invert(1); opacity: .8; display: block; }
.mk-foot-brand p { margin: 18px 0 0; font-size: 13.5px; color: var(--mk-dim); line-height: 1.6; max-width: 260px; }

.mk-foot h2 {
	margin: 0 0 14px;
	font-family: var(--mk-display);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--mk-muted);
	line-height: 1.3;
}
.mk-foot ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.mk-foot li { margin: 0; }
.mk-foot a { font-size: 13.5px; color: var(--mk-dim); line-height: 1.4; text-decoration: none; }
.mk-foot a:hover { color: #fff; }
/* Вложенные уровни в подвале не показываем: карта сайта, а не меню */
.mk-foot .sub-menu { display: none; }

.mk-foot-bar {
	margin-top: clamp(36px, 4vw, 56px);
	padding-top: 22px;
	border-top: 1px solid var(--mk-line);
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: space-between;
	font-size: 12.5px;
	color: var(--mk-dim);
}
.mk-foot-bar a { font-size: inherit; }

@media (max-width: 1080px) {
	.mk-foot-grid { grid-template-columns: 1fr 1fr 1fr; row-gap: 38px; }
	.mk-foot-brand { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
	.mk-foot-grid { grid-template-columns: 1fr 1fr; }
}
