/* EXITUM — общая шапка, мобильное меню и футер для всех страниц.
   Классы с префиксом xh-/xm-/xf-, чтобы не пересекаться со стилями страниц. */

.xh{
  position:fixed;inset:0 0 auto 0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:25px 34px;
  padding-top:max(25px,env(safe-area-inset-top));
  padding-left:max(34px,env(safe-area-inset-left));
  padding-right:max(34px,env(safe-area-inset-right));
  background:linear-gradient(to bottom,rgba(0,0,0,.86),rgba(0,0,0,0));
  pointer-events:none;
}
.xh--clear{background:none}
.xh>*{pointer-events:auto}
.xh-brand{display:flex;align-items:center;min-height:44px;opacity:.96;text-decoration:none;transition:opacity .25s ease}
.xh-brand:hover{opacity:1}
.xh-brand img{display:block;width:116px;height:auto}
.xh-nav{display:flex;align-items:center;gap:26px}
.xh-nav a{
  display:inline-flex;align-items:center;min-height:44px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:10px;font-weight:400;letter-spacing:.18em;line-height:1;
  color:rgba(255,255,255,.46);text-decoration:none;transition:color .25s ease;
}
.xh-nav a:hover,.xh-nav a[aria-current="page"]{color:#fff}

.xh-burger{
  display:none;position:relative;width:44px;height:44px;margin-right:-10px;
  border:0;background:transparent;color:#fff;cursor:pointer;
  align-items:center;justify-content:center;flex-direction:column;
  -webkit-tap-highlight-color:transparent;
}
.xh-burger span,.xh-burger::before,.xh-burger::after{
  content:"";display:block;width:18px;height:1px;background:#fff;transition:transform .25s ease,opacity .25s ease;
}
.xh-burger span{margin:5px 0}
.xh-burger[aria-expanded="true"]::before{transform:translateY(6px) rotate(45deg)}
.xh-burger[aria-expanded="true"] span{opacity:0}
.xh-burger[aria-expanded="true"]::after{transform:translateY(-6px) rotate(-45deg)}

.xm{
  position:fixed;inset:0;z-index:90;
  display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.97);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .3s ease,visibility .3s ease;
}
.xm.open{opacity:1;visibility:visible;pointer-events:auto}
.xm-inner{display:flex;flex-direction:column;align-items:center;gap:14px;padding:96px 24px 40px}
.xm-inner a{
  display:flex;align-items:center;justify-content:center;min-width:180px;min-height:48px;padding:0 20px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:16px;font-weight:400;letter-spacing:.22em;line-height:1;
  color:rgba(255,255,255,.72);text-decoration:none;
}
.xm-inner a[aria-current="page"]{color:#fff}
html.xm-lock,html.xm-lock body{overflow:hidden}

.xf{border-top:1px solid rgba(255,255,255,.11);padding:34px 0 max(40px,env(safe-area-inset-bottom))}
.xf-in{
  width:min(1320px,calc(100% - 96px));margin:0 auto;
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px 50px;
}
.xf-brand{display:inline-flex;align-items:center;min-height:44px;justify-self:start;text-decoration:none}
.xf-brand img{display:block;width:102px;height:auto;opacity:.9}
.xf-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 2px;margin-inline:-10px}
.xf-nav a{
  display:inline-flex;align-items:center;min-height:44px;padding:0 10px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:9px;letter-spacing:.16em;color:rgba(255,255,255,.42);text-decoration:none;transition:color .25s ease;
}
.xf-nav a:hover,.xf-nav a[aria-current="page"]{color:#fff}
.xf-meta{grid-column:1/-1;font-size:9px;letter-spacing:.18em;color:rgba(255,255,255,.26)}

.xh a:focus-visible,.xh button:focus-visible,.xm a:focus-visible,.xf a:focus-visible{
  outline:1px solid rgba(255,255,255,.8);outline-offset:4px;
}

@media (max-width:820px){
  .xh{
    padding:16px 18px;
    padding-top:max(16px,env(safe-area-inset-top));
    padding-left:max(18px,env(safe-area-inset-left));
    padding-right:max(18px,env(safe-area-inset-right));
  }
  .xh-brand img{width:102px}
  .xh-nav{display:none}
  .xh-burger{display:flex}
  .xf-in{width:calc(100% - 36px);grid-template-columns:1fr;gap:18px}
  .xf-nav{justify-content:flex-start;gap:0}
}

@media (prefers-reduced-motion:reduce){
  .xh-burger span,.xh-burger::before,.xh-burger::after,.xm,.xh-nav a,.xf-nav a{transition:none}
}
