/* Canonical SypherScore navigation. Keep this file as the single header contract. */

:root {
  --cine-nav-h: 64px;
  --cine-nav-pad-x: 28px;
  --cine-nav-gap: 20px;
  --cine-nav-tab-gap: 5px;
  --cine-nav-tab-h: 34px;
}

html body nav.cine-nav.cine-nav {
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: var(--cine-nav-gap) !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: var(--cine-nav-h) !important;
  height: var(--cine-nav-h) !important;
  padding: 15px var(--cine-nav-pad-x) !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 0 !important;
  background: rgba(0,0,0,.88) !important;
  box-shadow: none !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  overflow: visible !important;
}

html body nav.cine-nav.cine-nav .cine-nav-brand {
  flex: 0 0 auto !important;
  max-width: none !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 4.8px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

html body nav.cine-nav.cine-nav .cine-nav-brand span {
  color: rgba(255,255,255,.45) !important;
  font-weight: 400 !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tabs {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: var(--cine-nav-tab-gap) !important;
  height: var(--cine-nav-tab-h) !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tab {
  position: relative !important;
  flex: 0 0 var(--cine-nav-tab-w, 118px) !important;
  width: var(--cine-nav-tab-w, 118px) !important;
  height: var(--cine-nav-tab-h) !important;
  min-width: var(--cine-nav-tab-w, 118px) !important;
  min-height: var(--cine-nav-tab-h) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 16px !important;
  box-sizing: border-box !important;
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(255,255,255,.55) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 3px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(1) { --cine-nav-tab-w: 96px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(2) { --cine-nav-tab-w: 154px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(3) { --cine-nav-tab-w: 112px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(4) { --cine-nav-tab-w: 144px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(5) { --cine-nav-tab-w: 112px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(6) { --cine-nav-tab-w: 96px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(7) { --cine-nav-tab-w: 126px; }
html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(8) { --cine-nav-tab-w: 126px; }

html body nav.cine-nav.cine-nav .cine-nav-tab:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.30) !important;
  background: transparent !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tab.active {
  color: #fff !important;
  border-color: rgba(255,255,255,.80) !important;
  background: transparent !important;
  box-shadow: 0 0 8px rgba(255,255,255,.28), inset 0 0 0 1px rgba(255,255,255,.08) !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tab.cup-new {
  color: rgba(255,255,255,.86) !important;
  border-color: transparent !important;
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.028) 0 1px, transparent 1px 6px),
    rgba(255,255,255,.025) !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tab.cup-new::before {
  content: "" !important;
  position: absolute !important;
  inset: 2px !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent) !important;
  opacity: .45 !important;
}

html body nav.cine-nav.cine-nav .cine-nav-tab.cup-new::after {
  content: "NEW" !important;
  position: absolute !important;
  top: -8px !important;
  right: -7px !important;
  z-index: 2 !important;
  padding: 1px 3px !important;
  border: 1px solid #ff8080 !important;
  background: #ff5a5a !important;
  color: #fff !important;
  font-size: 7px !important;
  line-height: 1 !important;
  letter-spacing: 1px !important;
}

html body nav.cine-nav.cine-nav .cine-nav-right {
  flex: 0 0 92px !important;
  width: 92px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  height: var(--cine-nav-tab-h) !important;
  white-space: nowrap !important;
}

html body nav.cine-nav.cine-nav:not(:has(.cine-nav-right))::after {
  content: "" !important;
  flex: 0 0 92px !important;
  width: 92px !important;
  height: var(--cine-nav-tab-h) !important;
  pointer-events: none !important;
}

html body nav.cine-nav.cine-nav .cine-nav-btn {
  flex: 0 0 92px !important;
  width: 92px !important;
  min-width: 92px !important;
  height: var(--cine-nav-tab-h) !important;
  min-height: var(--cine-nav-tab-h) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 16px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(255,255,255,.70) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

html body nav.cine-nav.cine-nav .cine-nav-btn:hover {
  background: rgba(255,255,255,.10) !important;
  box-shadow: 0 0 10px rgba(255,255,255,.20) !important;
}

@media (max-width: 1600px) and (min-width: 1181px) {
  html body nav.cine-nav.cine-nav {
    --cine-nav-pad-x: 18px;
    --cine-nav-gap: 16px;
  }

  html body nav.cine-nav.cine-nav .cine-nav-brand {
    letter-spacing: 3px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab,
  html body nav.cine-nav.cine-nav .cine-nav-btn {
    padding-left: 8px !important;
    padding-right: 8px !important;
    letter-spacing: 2px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(1) { --cine-nav-tab-w: 82px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(2) { --cine-nav-tab-w: 128px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(3) { --cine-nav-tab-w: 92px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(4) { --cine-nav-tab-w: 116px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(5) { --cine-nav-tab-w: 90px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(6) { --cine-nav-tab-w: 78px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(7) { --cine-nav-tab-w: 104px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(8) { --cine-nav-tab-w: 104px; }

  html body nav.cine-nav.cine-nav .cine-nav-tabs {
    justify-content: center !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab.cup-new::after {
    top: 0 !important;
    right: 0 !important;
  }
}

@media (max-width: 1400px) and (min-width: 1181px) {
  html body nav.cine-nav.cine-nav {
    --cine-nav-pad-x: 14px;
    --cine-nav-gap: 12px;
    --cine-nav-tab-gap: 4px;
  }

  html body nav.cine-nav.cine-nav .cine-nav-brand {
    font-size: 11px !important;
    letter-spacing: 2.4px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab,
  html body nav.cine-nav.cine-nav .cine-nav-btn {
    font-size: 10px !important;
    letter-spacing: 1.5px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-right,
  html body nav.cine-nav.cine-nav:not(:has(.cine-nav-right))::after {
    flex-basis: 78px !important;
    width: 78px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-btn {
    flex-basis: 78px !important;
    width: 78px !important;
    min-width: 78px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(1) { --cine-nav-tab-w: 72px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(2) { --cine-nav-tab-w: 116px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(3) { --cine-nav-tab-w: 82px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(4) { --cine-nav-tab-w: 104px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(5) { --cine-nav-tab-w: 80px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(6) { --cine-nav-tab-w: 70px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(7) { --cine-nav-tab-w: 94px; }
  html body nav.cine-nav.cine-nav .cine-nav-tab:nth-child(8) { --cine-nav-tab-w: 96px; }
}

@media (max-width: 1180px) {
  html body nav.cine-nav.cine-nav {
    --cine-nav-h: auto;
    --cine-nav-tab-h: 32px;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 10px !important;
    height: auto !important;
    min-height: 88px !important;
    padding: 8px 10px 7px !important;
    overflow: visible !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-brand {
    flex: 0 0 auto !important;
    max-width: 100% !important;
    font-size: 12px !important;
    letter-spacing: 3px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-right {
    flex: 0 0 auto !important;
    width: auto !important;
    height: var(--cine-nav-tab-h) !important;
    margin-left: auto !important;
  }

  html body nav.cine-nav.cine-nav:not(:has(.cine-nav-right))::after {
    display: none !important;
    content: none !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-btn {
    flex-basis: auto !important;
    width: auto !important;
    min-width: 78px !important;
    height: var(--cine-nav-tab-h) !important;
    min-height: var(--cine-nav-tab-h) !important;
    padding: 7px 12px !important;
    font-size: 10px !important;
    letter-spacing: 1.8px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tabs {
    flex: 1 1 100% !important;
    order: 3 !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tabs::-webkit-scrollbar {
    display: none !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab {
    flex-basis: auto !important;
    width: auto !important;
    min-width: auto !important;
    height: var(--cine-nav-tab-h) !important;
    min-height: var(--cine-nav-tab-h) !important;
    padding: 7px 12px !important;
    font-size: 10px !important;
    letter-spacing: 1.8px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab.cup-new::after {
    top: 0 !important;
    right: 0 !important;
  }
}

@media (max-width: 640px) {
  html body nav.cine-nav.cine-nav {
    --cine-nav-tab-h: 30px;
    gap: 7px !important;
    min-height: 86px !important;
    padding: 8px 8px 6px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-brand {
    min-width: 0 !important;
    max-width: calc(100vw - 16px) !important;
    overflow: hidden !important;
    color: #fff !important;
    font-size: 11px !important;
    letter-spacing: 2.2px !important;
    text-overflow: ellipsis !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-brand span {
    letter-spacing: 1.8px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-right {
    display: none !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tabs {
    width: 100% !important;
    height: var(--cine-nav-tab-h) !important;
    gap: 4px !important;
    padding-bottom: 1px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab {
    height: var(--cine-nav-tab-h) !important;
    min-height: var(--cine-nav-tab-h) !important;
    padding: 6px 10px !important;
    font-size: 9px !important;
    letter-spacing: 1.45px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab.active {
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-tab.cup-new::after {
    display: none !important;
    content: none !important;
  }
}

@media (max-width: 390px) {
  html body nav.cine-nav.cine-nav .cine-nav-brand {
    font-size: 10px !important;
    letter-spacing: 1.8px !important;
  }

  html body nav.cine-nav.cine-nav .cine-nav-brand span {
    display: none !important;
  }
}
