/* Шапка: top-bar (график, адрес, почта) + основная (лого, меню, телефоны) */
.lv-skip { position: absolute; left: -9999px; }
.lv-skip:focus { left: 8px; top: 8px; z-index: 1000; background: #fff; padding: 8px 12px; }

.lv-header { position: sticky; top: 0; z-index: 100; }
.admin-bar .lv-header { top: 32px; }

.lv-topbar { background: var(--lv-green); color: var(--lv-cream); font: 500 14px/1.3 var(--lv-font-body); }
.lv-topbar a { color: inherit; text-decoration: none; }
.lv-topbar a:hover { text-decoration: underline; }
.lv-topbar__list { list-style: none; margin: 0; padding: 8px 0; display: flex; flex-wrap: wrap; gap: 6px 28px; align-items: center; }
.lv-topbar__item { display: inline-flex; align-items: center; gap: 8px; }
.lv-topbar__item .lv-i { color: var(--lv-coral); flex: none; }
.lv-topbar__list--mobile { display: none; }

.lv-mainbar { background: var(--lv-ivory); box-shadow: 0 2px 14px rgba(30, 95, 58, .1); }
.lv-mainbar__inner { display: flex; align-items: center; gap: 24px; min-height: 76px; }
.lv-logo { display: block; flex: none; line-height: 0; }
.lv-logo img { height: 36px; width: auto; }

.lv-nav-wrap { display: flex; align-items: center; gap: 28px; margin-left: auto; }
.lv-menu { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; }
.lv-menu a {
	display: block; padding: 10px 14px; border-radius: 999px; text-decoration: none;
	font: 700 16px/1 var(--lv-font-head); color: var(--lv-green);
	transition: background .2s, color .2s;
}
.lv-menu a:hover { background: var(--lv-cream); }
.lv-menu .current-menu-item > a, .lv-menu .current_page_item > a { background: var(--lv-green); color: #fff; }

.lv-phones { display: flex; flex-direction: column; gap: 2px; }
.lv-phone { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; color: var(--lv-green); font: 800 16px/1.25 var(--lv-font-head); white-space: nowrap; }
.lv-phone .lv-i { color: var(--lv-coral); }
.lv-phone:hover span { text-decoration: underline; }

.lv-burger { display: none; }

@media (max-width: 1199px) {
	.lv-nav-wrap { gap: 18px; }
	.lv-menu a { padding: 10px 10px; font-size: 15px; }
}

/* Планшет и телефон: меню в выезжающей панели */
@media (max-width: 1023px) {
	.admin-bar .lv-header { top: 46px; }
	.lv-topbar { display: none; }
	.lv-mainbar__inner { min-height: 64px; }
	.lv-logo img { height: 30px; }

	.lv-burger {
		display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
		margin-left: auto; width: 44px; height: 44px; padding: 0 10px;
		background: var(--lv-cream); border: 0; border-radius: 12px; cursor: pointer;
	}
	.lv-burger span { display: block; height: 2px; background: var(--lv-green); border-radius: 2px; transition: transform .2s, opacity .2s; }
	.is-open .lv-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
	.is-open .lv-burger span:nth-child(2) { opacity: 0; }
	.is-open .lv-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

	.lv-nav-wrap {
		position: absolute; left: 0; right: 0; top: 100%;
		display: none; flex-direction: column; align-items: stretch; gap: 20px;
		margin: 0; padding: 20px var(--lv-gutter) 28px;
		background: var(--lv-ivory); box-shadow: 0 14px 24px rgba(30, 95, 58, .15);
		max-height: calc(100vh - 64px); overflow-y: auto;
	}
	.is-open .lv-nav-wrap { display: flex; }
	.lv-menu { flex-direction: column; gap: 2px; }
	.lv-menu a { padding: 14px 16px; font-size: 18px; border-radius: var(--lv-radius-sm); }
	.lv-phones { gap: 10px; }
	.lv-phone { font-size: 20px; }
	.lv-topbar__list--mobile { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 16px 0 0; border-top: 1px solid var(--lv-sand); color: var(--lv-text); }
	.lv-topbar__list--mobile .lv-topbar__item { font: 400 15px/1.4 var(--lv-font-body); }
	.lv-topbar__list--mobile a { color: var(--lv-green); }
	html.lv-lock { overflow: hidden; }
}
.lv-nw { white-space: nowrap; }
