/* Скрыть штатную шапку блочной темы (выводим свою). */
.wp-block-template-part.site-header,
header.wp-block-template-part:not(.nn-hdr){display:none !important;}

/* ==== Шапка Nonarko (цвета — из palette.css) ==== */
.nn-hdr{background:var(--blue);}
.nn-hdr-inner{
	max-width:1100px;margin:0 auto;padding:12px 20px;
	display:flex;align-items:center;gap:16px;
}
.nn-hdr-logo{flex:1;min-width:0;}
.nn-hdr-logo a{display:block;}
/* min() — чтобы логотип ужимался вместе с контейнером, а не упирался в 230px. */
.nn-hdr-logo img{max-width:min(230px,100%);height:auto;display:block;}

/* Вход / Регистрация. Не сжимаются: место уступает логотип. */
.nn-hdr__account{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.nn-hdr__auth{
	padding:7px 14px;border-radius:var(--radius-sm);
	color:#fff;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;
	border:1px solid rgba(255,255,255,.45);
	transition:background .15s,color .15s,border-color .15s;
}
.nn-hdr__auth:hover{background:rgba(255,255,255,.18);color:#fff;}
.nn-hdr__auth--reg{background:var(--red);border-color:var(--red);color:#fff;}
.nn-hdr__auth--reg:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff;}

/* Иконки «Что нового?» и «Поиск». */
.nn-hdr__icons{display:flex;align-items:center;gap:4px;flex-shrink:0;}
.nn-hdr__icon{
	display:flex;align-items:center;justify-content:center;
	width:38px;height:38px;border-radius:var(--radius-sm);
	color:#fff;text-decoration:none;transition:background .15s;
}
.nn-hdr__icon:hover{background:rgba(255,255,255,.18);color:#fff;}

/* Бургер — только на мобилке. */
.nn-hdr__burger{
	display:none;align-items:center;justify-content:center;flex-shrink:0;
	width:38px;height:38px;padding:0;background:none;border:0;cursor:pointer;
	border-radius:var(--radius-sm);color:#fff;
}
.nn-hdr__burger:hover{background:rgba(255,255,255,.18);}
/* Три полоски: сам элемент — средняя, ::before/::after — верхняя и нижняя. */
.nn-hdr__burger-icon{position:relative;display:block;width:22px;height:2px;
	background:#fff;border-radius:2px;}
.nn-hdr__burger-icon::before,
.nn-hdr__burger-icon::after{
	content:'';position:absolute;left:0;display:block;width:22px;height:2px;
	background:#fff;border-radius:2px;
}
.nn-hdr__burger-icon::before{top:-7px;}
.nn-hdr__burger-icon::after{top:7px;}

/* ==== Десктопная строка навигации ==== */
.nn-nav{background:var(--blue);box-shadow:inset 0 -3px 0 var(--blue-accent);}
.nn-nav-inner{max-width:1100px;margin:0 auto;padding:0 20px;}
.nn-nav__list{
	display:flex;align-items:stretch;
	margin:0;padding:0;list-style:none;
}
.nn-nav__item{position:relative;display:flex;align-items:stretch;}
.nn-nav__link{
	display:flex;align-items:center;padding:13px 14px;
	color:#fff;text-decoration:none;font-size:15px;font-weight:600;white-space:nowrap;
	transition:background .15s;
}
.nn-nav__item--has-menu .nn-nav__link{padding-right:4px;}
.nn-nav__link:hover,
.nn-nav__item:hover > .nn-nav__link{background:rgba(255,255,255,.14);color:#fff;}

/* Текущий раздел в строке — подчёркнут снизу. */
.nn-nav > .nn-nav-inner .nn-nav__item.is-active{box-shadow:inset 0 -3px 0 var(--red);}

/* Шеврон-триггер подменю (ссылка остаётся кликабельной сама по себе). */
.nn-nav__trigger{
	display:flex;align-items:center;padding:0 12px 0 6px;
	background:none;border:0;cursor:pointer;color:#fff;transition:background .15s;
}
.nn-nav__trigger:hover,
.nn-nav__item:hover > .nn-nav__trigger{background:rgba(255,255,255,.14);}
.nn-nav__chev{
	display:block;width:8px;height:8px;
	border-right:2px solid currentColor;border-bottom:2px solid currentColor;
	transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s;
}
.nn-nav__trigger[aria-expanded="true"] .nn-nav__chev{transform:rotate(225deg) translate(-2px,-2px);}

/* Выпадающее меню. JS снимает [hidden]; на десктопе ещё и hover. */
@media (min-width:901px){
	.nn-nav__item--has-menu:hover .nn-nav__menu[hidden]{display:block;}
}
.nn-nav__menu{
	position:absolute;top:100%;left:0;z-index:100;
	min-width:260px;max-width:340px;padding:8px 0;
	background:#fff;border:1px solid var(--border);border-top:0;
	border-radius:0 0 var(--radius-sm) var(--radius-sm);
	box-shadow:0 10px 28px rgba(12,43,48,.18);
}
/* Крайние справа пункты — меню прижимается к правому краю. */
.nn-nav__menu--right{left:auto;right:0;}
.nn-nav__sub{
	display:block;padding:9px 18px;
	color:var(--text);text-decoration:none;font-size:14px;line-height:1.35;
	transition:background .12s,color .12s;
}
.nn-nav__sub:hover{background:var(--blue-light);color:var(--blue-dark);}
.nn-nav__sep{margin:8px 0;border:0;border-top:1px solid var(--border);}

/* ==== Мобильная выезжающая панель ==== */
.nn-ocm{position:fixed;inset:0;z-index:900;}
.nn-ocm__backdrop{
	position:absolute;inset:0;background:rgba(12,43,48,.5);
	opacity:0;transition:opacity .25s;
}
.nn-ocm.is-open .nn-ocm__backdrop{opacity:1;}
.nn-ocm__panel{
	position:absolute;top:0;left:0;bottom:0;width:min(340px,86vw);
	display:flex;flex-direction:column;overflow-y:auto;
	background:var(--blue);
	transform:translateX(-100%);transition:transform .25s ease;
}
.nn-ocm.is-open .nn-ocm__panel{transform:none;}
.nn-ocm__head{
	display:flex;align-items:center;justify-content:space-between;gap:12px;
	padding:16px 20px;color:#fff;font-size:19px;font-weight:700;flex-shrink:0;
	border-bottom:1px solid rgba(255,255,255,.2);
}
.nn-ocm__close{
	background:none;border:0;cursor:pointer;color:#fff;
	font-size:28px;line-height:1;padding:0 4px;
}

/* Пункты в панели — строки во всю ширину с разделителями. */
.nn-ocm__list{flex-direction:column;align-items:stretch;}
.nn-ocm__list .nn-nav__item{flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.16);}
.nn-ocm__list .nn-nav__link{flex:1;padding:15px 20px;font-size:16px;font-weight:500;}
.nn-ocm__list .nn-nav__item--has-menu .nn-nav__link{padding-right:0;}
.nn-ocm__list .nn-nav__trigger{padding:0 20px;}

/* Активный пункт — белая строка с бирюзовым текстом. */
.nn-ocm__list .nn-nav__item.is-active{background:#fff;}
.nn-ocm__list .nn-nav__item.is-active > .nn-nav__link{color:var(--blue-accent);font-weight:700;}
.nn-ocm__list .nn-nav__item.is-active > .nn-nav__trigger{color:var(--blue-accent);}

/* Подменю внутри панели — в потоке, а не абсолютное. */
.nn-ocm__list .nn-nav__menu{
	position:static;flex:0 0 100%;min-width:0;max-width:none;
	padding:4px 0 8px;margin:0;
	background:rgba(0,0,0,.12);border:0;border-radius:0;box-shadow:none;
}
.nn-ocm__list .nn-nav__sub{color:#fff;padding:10px 20px 10px 32px;font-size:15px;}
.nn-ocm__list .nn-nav__sub:hover{background:rgba(255,255,255,.12);color:#fff;}
.nn-ocm__list .nn-nav__sep{margin:6px 20px;border-top-color:rgba(255,255,255,.22);}

/* Пока панель открыта — фон не скроллится. */
body.nn-ocm-open{overflow:hidden;}

/* ---- Точка переключения: бургер + панель вместо строки меню ---- */
@media (max-width:900px){
	.nn-hdr__burger{display:flex;}
	.nn-hdr-inner{padding:10px 12px;gap:8px;}
	.nn-hdr-logo img{max-width:min(130px,100%);}
	.nn-nav{display:none;}
	/* Кнопки ужимаем, но не обрезаем: «Регистрация» видна целиком. */
	.nn-hdr__account{gap:6px;}
	.nn-hdr__auth{padding:6px 10px;font-size:13px;}
	.nn-hdr__icon{width:34px;height:34px;}
}

/* Совсем узкие экраны: «Вход» есть в панели, в шапке оставляем «Регистрацию». */
@media (max-width:400px){
	.nn-hdr-inner{gap:6px;}
	.nn-hdr-logo img{max-width:min(104px,100%);}
	.nn-hdr__auth:not(.nn-hdr__auth--reg){display:none;}
	.nn-hdr__auth--reg{padding:6px 9px;font-size:12px;}
	.nn-hdr__icon{width:30px;height:30px;}
}

/* На десктопе панель не нужна вовсе. */
@media (min-width:901px){
	.nn-ocm{display:none !important;}
}
