/*
 * BRVTAL — Concept 05 public shell (#599, parent #583).
 * Authored header, overlay navigation, persistent mobile nav and footer.
 */
[data-concept="05"] .nav{
  height:var(--c5-header-h-desktop);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto auto;
  align-items:center;
  gap:clamp(8px,1.1vw,18px);
  padding:0 var(--c5-gutter-outer);
  background:rgba(5,5,5,.96);
  border-bottom:var(--c5-rule-thickness) solid var(--c5-rule-color);
  backdrop-filter:blur(10px)
}
[data-concept="05"] .nav .brand{
  display:flex;align-items:baseline;gap:8px;min-width:0;color:var(--c5-paper-dirty);text-decoration:none
}
[data-concept="05"] .nav .brand>span{font-size:clamp(20px,2vw,28px);font-weight:900;letter-spacing:-.045em}
[data-concept="05"] .nav .brand>small{
  color:var(--c5-paper-muted);font:700 7px/1 var(--theme-mono-font,"Space Mono",monospace);letter-spacing:.07em;white-space:nowrap
}
[data-concept="05"] .nav-center{display:none!important}
[data-concept="05"] .c5-header-nav{min-width:0;justify-self:center;gap:clamp(7px,1vw,18px)}
[data-concept="05"] .c5-header-nav a{font-size:clamp(8px,.72vw,10px);white-space:nowrap}
[data-concept="05"] .c5-header-nav a[aria-current="location"]{color:var(--c5-signal-green)}
[data-concept="05"] .c5-header-origin{
  color:var(--c5-paper-muted);font-size:8px;letter-spacing:.08em;white-space:nowrap
}
[data-concept="05"] .c5-header-ticket{
  min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 13px;
  background:var(--c5-signal-red);color:var(--c5-paper-dirty);text-decoration:none;
  font:700 9px/1 var(--theme-mono-font,"Space Mono",monospace);letter-spacing:.08em;white-space:nowrap
}
[data-concept="05"] .c5-header-ticket span{display:inline-block;transition:transform .18s ease}
[data-concept="05"] .nav-right{display:flex;align-items:center;justify-content:flex-end;gap:2px;min-width:max-content}
[data-concept="05"] .nav-right .sound,[data-concept="05"] .nav-right .menu{min-height:44px}

/* Overlay menu */
[data-concept="05"] .c5-menu-panel .menu-panel-inner{
  align-items:stretch;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;
  gap:22px;padding:calc(var(--c5-header-h-desktop) + 26px) var(--c5-gutter-outer) 28px
}
[data-concept="05"] .c5-menu-panel .menu-label{
  color:var(--c5-signal-green);font-size:9px;letter-spacing:.1em
}
[data-concept="05"] .c5-menu-nav{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;
  border-top:1px solid var(--c5-rule-color)
}
[data-concept="05"] .c5-menu-nav a{
  display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;min-height:74px;padding:12px;
  border-bottom:1px solid var(--c5-rule-color);color:var(--c5-paper-dirty);text-decoration:none
}
[data-concept="05"] .c5-menu-nav a:nth-child(odd){border-right:1px solid var(--c5-rule-color)}
[data-concept="05"] .c5-menu-nav a>span{
  color:var(--c5-signal-green);font:700 9px/1 var(--theme-mono-font,"Space Mono",monospace)
}
[data-concept="05"] .c5-menu-nav a>strong{
  min-width:0;font-size:clamp(34px,4.6vw,72px);line-height:.82;letter-spacing:-.04em;overflow-wrap:anywhere
}
[data-concept="05"] .c5-menu-nav a[aria-current="location"] strong{color:var(--c5-signal-green)}
[data-concept="05"] .c5-menu-panel .menu-footer{
  color:var(--c5-paper-muted);font-size:8px;letter-spacing:.08em
}

/* Persistent mobile nav */
[data-concept="05"] .c5-bottom-nav{
  height:var(--c5-bottom-nav-h);padding-bottom:var(--c5-mobile-safe-bottom);
  transition:opacity .16s ease,visibility .16s ease
}
[data-concept="05"] .c5-bottom-nav[data-menu-state="hidden"]{
  opacity:0;visibility:hidden;pointer-events:none
}
[data-concept="05"] .c5-bottom-nav a{
  position:relative;gap:4px;min-width:0;min-height:44px;padding:5px 2px 4px;font-size:8px;letter-spacing:.04em
}
[data-concept="05"] .c5-bottom-nav a::before{
  content:"";position:absolute;left:18%;right:18%;top:0;height:2px;background:transparent
}
[data-concept="05"] .c5-bottom-nav a[aria-current="location"]{color:var(--c5-signal-green)}
[data-concept="05"] .c5-bottom-nav a[aria-current="location"]::before{background:var(--c5-signal-green)}
[data-concept="05"] .c5-bottom-icon{
  width:18px;height:15px;display:grid;place-items:center;color:currentColor;font:700 15px/1 var(--theme-mono-font,"Space Mono",monospace)
}
[data-concept="05"] .c5-bottom-icon[data-icon="nights"]::before{content:"◩"}
[data-concept="05"] .c5-bottom-icon[data-icon="artists"]::before{content:"◎"}
[data-concept="05"] .c5-bottom-icon[data-icon="sound"]::before{content:"≋"}
[data-concept="05"] .c5-bottom-icon[data-icon="records"]::before{content:"▣"}
[data-concept="05"] .c5-bottom-icon[data-icon="journal"]::before{content:"▤"}

/* Editorial closing spread */
[data-concept="05"] .c5-footer{
  position:relative;min-height:72vh;padding:clamp(62px,8vw,118px) var(--c5-gutter-outer) 34px;
  background:var(--c5-deep-black);border-top:1px solid var(--c5-rule-color);overflow:hidden
}
[data-concept="05"] .c5-footer::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.045;
  background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.07) 4px 5px),
    radial-gradient(circle at 82% 20%,var(--c5-signal-red),transparent 18%);
  mix-blend-mode:screen
}
[data-concept="05"] .c5-footer-grid{
  position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--c5-gutter-module);align-items:start
}
[data-concept="05"] .c5-footer-brand{
  grid-column:1/-1;padding-bottom:clamp(28px,4vw,54px);border-bottom:1px solid var(--c5-rule-color)
}
[data-concept="05"] .c5-footer-brand>span{
  display:block;margin-bottom:18px;color:var(--c5-signal-green);font-size:9px;letter-spacing:.09em
}
[data-concept="05"] .c5-footer-brand h2{
  margin:0;color:var(--c5-paper-dirty);font-size:clamp(92px,17vw,250px);
  line-height:.66;letter-spacing:-.07em;text-transform:uppercase
}
[data-concept="05"] .c5-footer-brand p{
  margin:22px 0 0;color:var(--c5-paper-muted);
  font:700 clamp(12px,1.1vw,16px)/1.4 var(--theme-mono-font,"Space Mono",monospace);letter-spacing:.05em
}
[data-concept="05"] .c5-footer-nav{
  grid-column:1/5;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px
}
[data-concept="05"] .c5-footer-nav a,
[data-concept="05"] .c5-footer-contact a,
[data-concept="05"] .c5-footer-socials a,
[data-concept="05"] .c5-footer-legal a{color:var(--c5-paper-dirty);text-decoration:none}
[data-concept="05"] .c5-footer-nav a{
  min-height:42px;display:flex;align-items:center;border-bottom:1px solid var(--c5-rule-color);
  font-size:9px;letter-spacing:.08em
}
[data-concept="05"] .c5-footer-contact{grid-column:6/9;display:flex;flex-direction:column;gap:10px}
[data-concept="05"] .c5-footer-contact>span{color:var(--c5-paper-muted);font-size:8px;letter-spacing:.08em}
[data-concept="05"] .c5-footer-contact a{
  width:max-content;min-height:42px;display:flex;align-items:center;border-bottom:1px solid var(--c5-signal-red);
  font-size:clamp(18px,2vw,28px);font-weight:800
}
[data-concept="05"] .c5-footer-socials{
  grid-column:10/-1;display:flex;flex-direction:column;align-items:flex-start;gap:8px
}
[data-concept="05"] .c5-footer-socials a{
  min-height:38px;display:flex;align-items:center;font-size:9px;letter-spacing:.08em
}
[data-concept="05"] .c5-footer-socials a[hidden],
[data-concept="05"] .c5-footer-legal a[hidden]{display:none!important}
[data-concept="05"] .c5-footer-legal{
  grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;
  margin-top:clamp(36px,6vw,78px);padding-top:18px;border-top:1px solid var(--c5-rule-color);
  color:var(--c5-paper-muted);font-size:8px;letter-spacing:.07em
}

@media(hover:hover) and (pointer:fine){
  [data-concept="05"] .c5-header-ticket:hover span{transform:translateX(3px)}
  [data-concept="05"] .c5-menu-nav a:hover strong,
  [data-concept="05"] .c5-footer a:hover{color:var(--c5-signal-green)}
}
@media(min-width:901px) and (max-width:1180px){
  [data-concept="05"] .c5-header-origin{display:none}
  [data-concept="05"] .nav{
    grid-template-columns:auto minmax(0,1fr) auto auto;
    gap:4px;
    padding-left:12px;
    padding-right:12px
  }
  [data-concept="05"] .nav .brand>small{display:none}
  [data-concept="05"] .nav .brand>span{font-size:18px}
  [data-concept="05"] .c5-header-nav{
    justify-self:stretch;
    justify-content:center;
    gap:5px
  }
  [data-concept="05"] .c5-header-nav a{font-size:7px;letter-spacing:.03em}
  [data-concept="05"] .c5-header-ticket{min-height:34px;padding:0 8px;font-size:8px}
  [data-concept="05"] .nav-right .sound,
  [data-concept="05"] .nav-right .menu{
    min-width:0;
    min-height:40px;
    padding-left:7px;
    padding-right:7px;
    font-size:8px
  }
}
@media(max-width:900px){
  [data-concept="05"] .nav{
    height:var(--c5-header-h-mobile);grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:0 12px
  }
  [data-concept="05"] .nav .brand>small,
  [data-concept="05"] .c5-header-nav,
  [data-concept="05"] .c5-header-origin,
  [data-concept="05"] .c5-header-ticket{display:none!important}
  [data-concept="05"] .nav-right{grid-column:2;gap:0}
  [data-concept="05"] .c5-menu-panel .menu-panel-inner{
    padding:calc(var(--c5-header-h-mobile) + 24px) 14px calc(var(--c5-bottom-nav-h) + 20px)
  }
  [data-concept="05"] .c5-menu-nav{grid-template-columns:1fr;overflow:auto;align-content:start}
  [data-concept="05"] .c5-menu-nav a,
  [data-concept="05"] .c5-menu-nav a:nth-child(odd){min-height:58px;border-right:0}
  [data-concept="05"] .c5-menu-nav a>strong{font-size:clamp(28px,9vw,40px)}
  [data-concept="05"] .c5-footer{
    min-height:auto;padding:74px 14px calc(var(--c5-bottom-nav-h) + 34px)
  }
  [data-concept="05"] .c5-footer-grid{grid-template-columns:1fr;gap:28px}
  [data-concept="05"] .c5-footer-brand,
  [data-concept="05"] .c5-footer-nav,
  [data-concept="05"] .c5-footer-contact,
  [data-concept="05"] .c5-footer-socials,
  [data-concept="05"] .c5-footer-legal{grid-column:1}
  [data-concept="05"] .c5-footer-brand h2{
    font-size:clamp(82px,27vw,108px);line-height:.7;overflow-wrap:anywhere
  }
  [data-concept="05"] .c5-footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  [data-concept="05"] .c5-footer-contact a,
  [data-concept="05"] .c5-footer-socials a{min-height:44px}
  [data-concept="05"] .c5-footer-legal{flex-wrap:wrap;margin-top:8px}
}
@media(prefers-reduced-motion:reduce){
  [data-concept="05"] .c5-bottom-nav,
  [data-concept="05"] .c5-header-ticket span{transition:none!important}
}
html.c5-visual-test [data-concept="05"] .c5-footer::before{display:none!important}
