/* ЕДИНАЯ ШАПКА И МОБИЛЬНОЕ МЕНЮ. Классы hn- не пересекаются со стилями страниц. */
.nav-inner{height:auto;min-height:68px;flex-wrap:wrap;row-gap:6px}
.nav-links{flex-wrap:wrap;row-gap:6px}

.hn-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;
  padding:10px;margin-left:auto;background:#fff;border:1.5px solid #e9e9e7;border-radius:999px;cursor:pointer;color:#111;font-weight:700;box-shadow:none;}
.hn-burger span{display:block;height:2px;width:100%;background:#111111;border-radius:2px;transition:transform .2s,opacity .2s}
.hn-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hn-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hn-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.hn-panel[hidden],.hn-overlay[hidden]{display:none}
.hn-overlay{position:fixed;inset:0;background:#141414;opacity:0;transition:opacity .2s;z-index:998}
.hn-overlay.is-open{opacity:1}

.hn-panel{position:fixed;top:0;right:0;bottom:0;width:min(360px,90vw);background:#fff;z-index:999;
  display:flex;flex-direction:column;transform:translateX(100%);transition:transform .22s ease;
  box-shadow:none}
.hn-panel.is-open{transform:translateX(0)}
.hn-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #f7f7f5;flex:0 0 auto}
.hn-panel-logo{font-size:19px;font-weight:800;color:#111111;text-decoration:none}
.hn-panel-logo span{color:#111111}
.hn-close{width:42px;height:42px;border:1.5px solid #e9e9e7;background:#fff;border-radius:999px;font-size:17px;color:#111;cursor:pointer;line-height:1;font-weight:700;box-shadow:none;}
.hn-panel-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 18px 28px}
.hn-cta{display:block;width:100%;padding:14px 16px;margin-bottom:18px;background:#111111;color:#ffffff;
  font-size:15.5px;font-weight:700;border:1.5px solid #111111;border-radius:999px;cursor:pointer;box-shadow:none;}
.hn-group{margin-bottom:18px}
.hn-group-title{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7c7c7c;margin-bottom:8px}
.hn-group ul{list-style:none;margin:0;padding:0}
.hn-group li{margin:0}
.hn-group li a{display:block;padding:11px 12px;font-size:15.5px;color:#111111;text-decoration:none;
  border-radius:10px;border:1px solid transparent}
.hn-group li a:hover,.hn-group li a:focus{background:#f7f7f5;border-color:#eef1f9;color:#111111}
.hn-contacts{border-top:1px solid #f7f7f5;padding-top:16px}
.hn-contacts>a{display:block;font-size:17px;font-weight:800;color:#111111;text-decoration:none;margin-bottom:10px}
.hn-msg{display:flex;gap:10px}
.hn-msg a{flex:1;text-align:center;padding:10px;border:1.5px solid #e9e9e7;border-radius:10px;
  font-size:14px;font-weight:600;color:#111111;text-decoration:none}

@media (max-width:900px){
  .hn-burger{display:flex}
  .nav-inner{flex-wrap:nowrap;gap:10px}
}
@media (max-width:900px){
  .nav-inner .nav-cta{padding:9px 15px;font-size:13.5px;white-space:nowrap}
}
@media (max-width:360px){
  .nav-inner .nav-cta{display:none}
}
@media (min-width:901px){
  .hn-panel,.hn-overlay{display:none}
}

/* Мелкие правила адаптива: переключатель предметов переносится по строкам */
.subj-switch{flex-wrap:wrap}
