/* RUSICH master header (forces same header on all pages) */

/* ---- Layout ---- */
header.hk-header{
  background:#000 !important;
  border-bottom:3px solid #ce2029 !important;
  position:sticky !important;
  top:0 !important;
  z-index:10000 !important;
  /* Use min-height + safe-area padding so the header doesn't get clipped on mobile */
  min-height:75px !important;
  height:auto !important;
  padding-top: env(safe-area-inset-top, 0px) !important;
  display:flex !important;
  align-items:center !important;
}

/* =============================
   MAIN SITE LINK (TOP LEVEL)
   ============================= */
.hk-nav__main-site { margin-left: 6px; }

.hk-main-site-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ce2029;
  font-weight: 900;
  position: relative;
  letter-spacing: 0.04em;
}

.hk-main-site-link:hover { color: #ff2d39; }

.hk-main-site-icon {
  display: inline-flex;
  transition: transform 0.2s ease, opacity 0.2s ease;
  opacity: 0.95;
}

.hk-main-site-link:hover .hk-main-site-icon {
  transform: translateX(2px) translateY(-2px);
  opacity: 1;
}

.hk-main-site-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
  opacity: 0.9;
}

.hk-main-site-link:hover::after { transform: scaleX(1); }

@media (max-width: 980px) {
  .hk-nav__main-site { margin-left: 0; }
}

header.hk-header .hk-header-container,
header.hk-header .header-container{
  max-width:1200px !important;
  margin:0 auto !important;
  width:100% !important;
  min-height:75px !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:0 20px !important;
  box-sizing:border-box !important;
}

header.hk-header .hk-logo-link{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  text-decoration:none !important;
  color:#fff !important;
}

header.hk-header .hk-logo-img{
  height:45px !important;
  width:auto !important;
  display:block !important;
}

header.hk-header .hk-logo-text{
  font-size:20px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  line-height:1.1 !important;
  color:#fff !important;
}

header.hk-header .hk-logo-sub{
  display:block !important;
  font-size:10px !important;
  color:#aaa !important;
  font-weight:400 !important;
  text-transform:none !important;
}

/* ---- Typography lock (prevents header looking different on some pages) ---- */
header.hk-header,
header.hk-header *{
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ---- Menu ---- */
header.hk-header nav.hk-nav{
  position:relative !important;
}

header.hk-header nav.hk-nav ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

header.hk-header nav.hk-nav > ul{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
}

header.hk-header nav.hk-nav li{
  position:relative !important;
}

header.hk-header nav.hk-nav a{
  display:block !important;
  padding:0 15px !important;
  line-height:75px !important;
  height:75px !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  transition:color .2s ease, background .2s ease !important;
  white-space:nowrap !important;
}

/* ---- Burger (mobile) ---- */
header.hk-header .hk-burger{
  display:none !important;
  width:44px !important;
  height:44px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.04) !important;
  cursor:pointer !important;
  padding:0 !important;
  align-items:center !important;
  justify-content:center !important;
}

header.hk-header .hk-burger span{
  display:block !important;
  width:20px !important;
  height:2px !important;
  background:#fff !important;
  margin:4px 0 !important;
  border-radius:2px !important;
}

header.hk-header nav.hk-nav a:hover{
  color:#ce2029 !important;
}

/* "Основной сайт" — выделение + микро-анимация */
header.hk-header a.hk-main-site-link{
  color:#ce2029 !important;
  position:relative !important;
}

header.hk-header a.hk-main-site-link .hk-main-site-icon{
  display:inline-flex !important;
  width:18px !important;
  height:18px !important;
  align-items:center !important;
  justify-content:center !important;
  transform:translateX(0) !important;
  transition:transform .18s ease !important;
}

header.hk-header a.hk-main-site-link:hover .hk-main-site-icon{
  transform:translateX(-2px) !important;
}

@keyframes hkPulseRed {
  0%{ box-shadow:0 0 0 0 rgba(206,32,41,.35); }
  70%{ box-shadow:0 0 0 10px rgba(206,32,41,0); }
  100%{ box-shadow:0 0 0 0 rgba(206,32,41,0); }
}

header.hk-header a.hk-main-site-link{
  border:1px solid rgba(206,32,41,.35) !important;
  border-radius:12px !important;
  line-height:44px !important;
  height:44px !important;
  padding:0 12px !important;
  margin-top:15px !important;
  margin-bottom:15px !important;
  animation: hkPulseRed 2.4s ease-out infinite !important;
  background:rgba(206,32,41,.06) !important;
}

/* ---- Dropdown ---- */
header.hk-header .hk-dropdown{
  position:absolute !important;
  top:75px !important;
  left:0 !important;
  min-width:200px !important;
  background:#111 !important;
  border-top:2px solid #ce2029 !important;
  border-radius:12px !important;
  padding:8px 0 !important;
  display:none !important;
  flex-direction:column !important;
  box-shadow:0 18px 40px rgba(0,0,0,.55) !important;
  transform:none !important;
  opacity:1 !important;
  visibility:visible !important;
}

header.hk-header li:hover > .hk-dropdown,
header.hk-header li:focus-within > .hk-dropdown{
  display:flex !important;
}

header.hk-header .hk-dropdown a{
  height:auto !important;
  line-height:44px !important;
  font-size:12px !important;
  padding:0 16px !important;
  border-bottom:1px solid #222 !important;
}

header.hk-header .hk-dropdown li:last-child a{
  border-bottom:none !important;
}

/* ---- Small screens: switch to burger menu to prevent header clipping/overflow ---- */
@media (max-width: 860px){
  header.hk-header .hk-header-container,
  header.hk-header .header-container{
    padding:0 12px !important;
  }

  /* Keep header in one line (logo + burger) and avoid wrapping */
  header.hk-header .hk-header-container{ position: relative; flex-wrap: nowrap; }

  /* Pin burger to the right so it never jumps under the logo */
  header.hk-header .hk-burger{
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2147483647;
    pointer-events: auto;
  }

  /* Any decorative overlays must not block taps */
  .glow-overlay, .noise, .grain, .scanlines{ pointer-events: none !important; }

  /* Show burger */
  header.hk-header .hk-burger{
    display:flex !important;
  }

  /* Hide inline nav; use an overlay panel instead */
  header.hk-header nav.hk-nav{
    display:none !important;
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    top:calc(75px + env(safe-area-inset-top, 0px)) !important;
    background:rgba(0,0,0,0.98) !important;
    border-bottom:1px solid rgba(255,255,255,0.08) !important;
    z-index:10001 !important;
  }
  /* opened state (JS toggles is-open/open) */
  header.hk-header nav.hk-nav.is-open,
  header.hk-header nav.hk-nav.open{ display:block !important; }

  header.hk-header nav.hk-nav > ul{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:10px 10px 14px !important;
    max-height:calc(100vh - (75px + env(safe-area-inset-top, 0px))) !important;
    overflow:auto !important;
  }

  header.hk-header nav.hk-nav a{
    height:auto !important;
    line-height:1.2 !important;
    padding:14px 12px !important;
    font-size:14px !important;
    border-radius:12px !important;
  }

  /* Dropdown on mobile (if used) */
  header.hk-header .has-dropdown > .hk-dropdown{
    position:static !important;
    display:none !important;
    width:auto !important;
    margin:6px 0 0 !important;
    border:1px solid rgba(255,255,255,0.10) !important;
  }
  header.hk-header .has-dropdown.open > .hk-dropdown{ display:block !important; }
}

/* === MOBILE NAV OVERRIDES (fix hidden/unclickable menu) === */
@media (max-width: 768px) {
  /* Force drawer behavior on mobile (disable tile-grid mobile override from hockey.css) */
  .hk-nav {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    right: -340px !important;
    width: 320px !important;
    height: 100vh !important;
    padding-top: 86px !important;
  }
  .hk-nav.is-open { right: 0 !important; }

  .hk-nav ul {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .hk-nav li { width: 100% !important; }
  .hk-nav a {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
  }

  /* Keep header in one line; burger always clickable */
  .hk-header__inner { position: relative !important; }
  .hk-burger {
    position: absolute !important;
    top: 50% !important;
    right: 16px !important;
    transform: translateY(-50%) !important;
  }
}


/* --- MOBILE MENU FIX (v9) --- */
@media (max-width: 980px){
  header.hk-header .hk-burger{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border-radius: 12px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    pointer-events: auto;
    z-index: 1002;
  }
  header.hk-header .hk-nav{ display: none; }
  header.hk-header.hk-open .hk-nav{
    display: block;
    position: fixed;
    left: 12px;
    right: 12px;
    top: 72px;
    max-height: calc(100vh - 96px);
    overflow: auto;
    z-index: 1001;
  }
}


/* --- MAIN SITE LINK STYLE --- */
.hk-mainlink{
  color: var(--rusich-red, #c62828) !important;
  font-weight: 700;
  position: relative;
}
.hk-mainlink::after{
  content:"↗";
  font-size: 0.9em;
  margin-left: 6px;
  opacity: .9;
  display: inline-block;
  transform: translateY(-1px);
  transition: transform .18s ease, opacity .18s ease;
}
.hk-mainlink:hover::after{
  transform: translateY(-3px);
  opacity: 1;
}
