:root {
  --byno-black: #050505;
  --byno-black-deep: #020202;
  --byno-panel: #071018;
  --byno-panel-blue: #081b29;
  --byno-cyan: #22d3ee;
  --byno-ice: #7dd3fc;
  --byno-white: #f7fbfc;
  --byno-muted: #9da8ae;
  --byno-line: rgba(255, 255, 255, .1);
  --byno-cyan-line: rgba(34, 211, 238, .34);
  --byno-max: 80rem;
}

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  background: var(--byno-black);
  color: var(--byno-white);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  text-rendering: optimizeLegibility;
}
a { color: inherit; }
button, input, select, textarea { font: inherit; }
img, video, iframe { display: block; max-width: 100%; }
[data-media-fit="cover"] { object-fit: cover !important; }
[data-media-fit="contain"] { object-fit: contain !important; }
[data-media-position="center 30%"] { object-position: center 30%; }
[data-media-position="center 35%"] { object-position: center 35%; }
[data-media-position="50% 50%"] { object-position: 50% 50%; }

.skip {
  position: fixed;
  z-index: 2000;
  top: -5rem;
  left: 1rem;
  padding: .75rem 1rem;
  background: var(--byno-cyan);
  color: #001014;
  font-weight: 900;
}
.skip:focus { top: 1rem; }

.preview-banner {
  position: sticky;
  z-index: 80;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem 1.25rem;
  padding: .55rem 1rem;
  background: #f5d36f;
  color: #171000;
  font-size: .82rem;
}
.preview-banner a { font-weight: 900; }
.is-preview .site-header { top: 2.55rem; }

.byno-section {
  width: min(100%, var(--byno-max));
  margin-inline: auto;
  padding-inline: 1rem;
}

.site-header {
  position: sticky;
  z-index: 60;
  top: 0;
  border-bottom: 1px solid var(--byno-line);
  background: rgba(0, 0, 0, .8);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
.header-inner {
  min-height: 5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
.logo { flex: 0 0 auto; }
.logo img { width: 13.75rem; height: auto; }
.desktop-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.2rem;
}
.desktop-nav a,
.mobile-nav a,
.footer-nav a,
.footer-links a,
.cookie-settings {
  color: #c5cbd0;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .67rem;
  font-weight: 800;
}
.desktop-nav a:not(.byno-button),
.mobile-nav a,
.footer-nav a,
.footer-links a,
.cookie-settings { transition: color 180ms ease; }
.desktop-nav a:not(.byno-button):hover,
.desktop-nav a:not(.byno-button):focus-visible,
.desktop-nav a[aria-current="page"],
.mobile-nav a:hover,
.mobile-nav a:focus-visible,
.mobile-nav a[aria-current="page"],
.footer-nav a:hover,
.footer-nav a:focus-visible,
.footer-links a:hover,
.footer-links a:focus-visible,
.cookie-settings:hover,
.cookie-settings:focus-visible { color: var(--byno-cyan); }
.mobile-nav { display: none; border-top: 1px solid rgba(255,255,255,.07); overflow-x: auto; scrollbar-width: none; }
.mobile-nav::-webkit-scrollbar { display: none; }
.mobile-nav nav { width: max-content; display: flex; gap: 1.1rem; padding-block: .68rem; }
.mobile-nav a { white-space: nowrap; }

.byno-page {
  position: relative;
  isolation: isolate;
  min-height: 60vh;
  overflow: clip;
  background:
    radial-gradient(circle at 84% 9%, rgba(11, 75, 104, .24), transparent 31rem),
    radial-gradient(circle at 12% 32%, rgba(16, 73, 88, .14), transparent 27rem),
    linear-gradient(180deg, #030506 0%, #050505 46%, #020202 100%);
}
.byno-page::before {
  content: "";
  position: fixed;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: .13;
  background-image:
    linear-gradient(rgba(125, 211, 252, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(125, 211, 252, .08) 1px, transparent 1px);
  background-size: 42px 42px;
  -webkit-mask-image: linear-gradient(to bottom, #000, transparent 78%);
  mask-image: linear-gradient(to bottom, #000, transparent 78%);
}

.byno-eyebrow {
  margin: 0 0 1rem;
  color: var(--byno-cyan);
  text-transform: uppercase;
  letter-spacing: .22em;
  font-size: .68rem;
  font-weight: 900;
}
.byno-display,
.byno-heading,
.byno-card-title {
  margin: 0;
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .01em;
}
.byno-display { font-size: clamp(4.25rem, 9.2vw, 8.8rem); line-height: .84; }
.byno-display span { display: block; }
.byno-display .accent,
.accent { color: var(--byno-cyan); }
.byno-heading { font-size: clamp(3.15rem, 6.7vw, 6.1rem); line-height: .87; }
.byno-card-title { font-size: clamp(2rem, 3.7vw, 3.4rem); line-height: .91; }
.byno-lede {
  max-width: 43rem;
  margin: 1.8rem 0 0;
  color: #b9c2c7;
  font-size: clamp(1rem, 1.5vw, 1.18rem);
}
.byno-copy { color: #aeb8bd; }
.byno-copy p:first-child { margin-top: 0; }
.byno-copy p:last-child { margin-bottom: 0; }

.byno-actions { display: flex; flex-wrap: wrap; gap: .72rem; margin-top: 1.8rem; }
.byno-button {
  min-height: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .72rem 1.55rem;
  border: 1px solid var(--byno-cyan);
  background: var(--byno-cyan);
  color: #001318;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .68rem;
  font-weight: 900;
  cursor: pointer;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}
.byno-button:hover { background: var(--byno-ice); border-color: var(--byno-ice); transform: translateY(-1px); }
.byno-button.secondary { background: rgba(0,0,0,.18); color: #e6f7fa; border-color: rgba(125,211,252,.34); }
.byno-button.secondary:hover { background: rgba(34,211,238,.1); border-color: var(--byno-cyan); color: #fff; }
.byno-button.compact { min-height: 2.5rem; padding: .55rem 1rem; }
.byno-button.disabled { opacity: .55; cursor: not-allowed; }
.byno-text-link {
  color: var(--byno-ice);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .68rem;
  font-weight: 900;
}
.byno-text-link:hover { color: #fff; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--byno-ice);
  outline-offset: 4px;
}

.byno-page-hero { padding-block: clamp(5rem, 10vw, 9.4rem) clamp(3.8rem, 7vw, 6.8rem); border-bottom: 1px solid var(--byno-line); }
.byno-page-hero .byno-display { max-width: 67rem; }
.byno-hero-stage { position: relative; min-height: calc(100svh - 8.3rem); overflow: hidden; border-bottom: 1px solid var(--byno-line); }
.byno-hero-backdrop { position: absolute; z-index: -1; inset: 0 0 0 42%; opacity: .21; }
.byno-hero-backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #030506 0%, rgba(3,5,6,.92) 18%, rgba(3,5,6,.33) 68%, #030506 100%); }
.byno-hero-backdrop img { width: 100%; height: 100%; object-fit: cover; }
.byno-hero-grid { min-height: calc(100svh - 8.3rem); display: grid; grid-template-columns: minmax(0, .9fr) minmax(21rem, .5fr); align-items: center; gap: clamp(2.5rem, 5vw, 5.2rem); padding-block: clamp(3.5rem, 7vw, 6.5rem); }
.byno-hero-copy { position: relative; z-index: 1; }
.byno-hero-copy .byno-display { max-width: 53rem; }
.byno-signal-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1px; margin-top: 2.2rem; border: 1px solid rgba(125,211,252,.18); background: rgba(125,211,252,.18); }
.byno-signal { min-height: 5.3rem; padding: 1rem; background: rgba(2,8,11,.82); }
.byno-signal strong, .byno-signal span { display: block; }
.byno-signal strong { color: #f3fbfc; text-transform: uppercase; letter-spacing: .12em; font-size: .69rem; }
.byno-signal span { margin-top: .38rem; color: #839198; font-size: .79rem; }
.byno-empty-note { max-width: 35rem; margin-top: 2.1rem; padding: 1.25rem 1.4rem; border-left: 3px solid var(--byno-cyan); background: rgba(5,20,27,.74); }
.byno-empty-note strong { display: block; text-transform: uppercase; letter-spacing: .08em; }
.byno-empty-note span { display: block; margin-top: .25rem; color: var(--byno-muted); }
.byno-hero-empty { min-height: auto; }
.byno-hero-empty .byno-hero-grid { min-height: clamp(34rem, 70svh, 48rem); grid-template-columns: minmax(0, 54rem); }
.byno-hero-empty .byno-hero-backdrop { display: none; }

.byno-frame { position: relative; overflow: hidden; border: 1px solid rgba(125,211,252,.26); background: #02080b; box-shadow: 0 22px 70px rgba(0,0,0,.34); }
.byno-frame::after { content: ""; position: absolute; inset: .45rem; pointer-events: none; border: 1px solid rgba(125,211,252,.1); }
.byno-frame img, .byno-frame video { width: 100%; height: 100%; transition: transform 420ms cubic-bezier(.22,.75,.22,1); }
a:hover .byno-frame img, .byno-card:hover .byno-frame img { transform: scale(1.025); }
.byno-frame.poster { aspect-ratio: 4 / 5; background: #010507; }
.byno-frame.poster img { object-fit: contain; }
.byno-frame.photo { aspect-ratio: 4 / 5; }
.byno-frame.photo img { object-fit: cover; object-position: var(--media-position, 50% 50%); }
.byno-missing { min-height: 17rem; display: grid; place-items: center; color: #67747a; text-transform: uppercase; letter-spacing: .12em; font-size: .67rem; }

.byno-drop-card { display: grid; overflow: hidden; border: 1px solid rgba(125,211,252,.23); background: rgba(4,15,22,.94); box-shadow: 0 24px 80px rgba(0,0,0,.4); }
.byno-drop-card .drop-copy { padding: clamp(1.4rem, 3vw, 2.6rem); }
.byno-drop-card .drop-copy .byno-card-title { margin-top: .75rem; }
.byno-drop-card .drop-copy p { color: #aab5ba; }
.byno-hero-drop { align-self: center; }
.byno-hero-drop .byno-frame { max-height: 31rem; }
.byno-event-meta { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1px; margin-top: 1.3rem; border: 1px solid rgba(125,211,252,.13); background: rgba(125,211,252,.13); }
.byno-event-meta div { min-width: 0; padding: .8rem; background: rgba(2,9,13,.84); }
.byno-event-meta span, .byno-event-meta strong { display: block; }
.byno-event-meta span { color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .13em; font-size: .59rem; }
.byno-event-meta strong { margin-top: .25rem; font-size: .83rem; overflow-wrap: anywhere; }
.byno-tag-row { display: flex; flex-wrap: wrap; gap: .45rem; }
.byno-tag { padding: .32rem .58rem; border: 1px solid rgba(34,211,238,.3); color: #b9f3f9; text-transform: uppercase; letter-spacing: .13em; font-size: .59rem; font-weight: 900; }
.byno-tag.muted { border-color: rgba(255,255,255,.13); color: #aeb7bb; }

.byno-main-drop { display: grid; grid-template-columns: minmax(18rem, .72fr) minmax(0, 1.28fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; padding-block: clamp(5rem, 10vw, 9rem); }
.byno-main-drop-copy .byno-lede { max-width: 39rem; }
.byno-section-rule { height: 1px; background: linear-gradient(90deg, transparent, rgba(34,211,238,.58), transparent); }
.byno-content-section { padding-block: clamp(5rem, 9vw, 8.2rem); }
.byno-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: clamp(2rem, 4vw, 3.5rem); }
.byno-section-heading .byno-copy { max-width: 34rem; margin: 0; }

.byno-team-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .9rem; }
.byno-team-card, .byno-gallery-card { position: relative; min-width: 0; display: block; overflow: hidden; border: 1px solid rgba(125,211,252,.2); background: #030b0f; color: #fff; text-decoration: none; }
.byno-team-card .byno-frame { border: 0; box-shadow: none; }
.byno-card-overlay { position: absolute; z-index: 2; inset: auto 0 0; padding: 3.5rem 1.15rem 1.15rem; background: linear-gradient(transparent, rgba(0,0,0,.95)); }
.byno-card-overlay strong { display: block; font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; text-transform: uppercase; letter-spacing: .02em; font-size: 1.75rem; line-height: 1; }
.byno-card-overlay span { display: block; margin-top: .35rem; color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .12em; font-size: .6rem; }
.byno-gallery-board { display: grid; grid-template-columns: 1.08fr .92fr; grid-auto-rows: minmax(15rem, 1fr); gap: .9rem; }
.byno-gallery-board .byno-gallery-card:first-child { grid-row: span 2; }
.byno-gallery-card .byno-frame { height: 100%; min-height: 15rem; border: 0; box-shadow: none; }
.byno-gallery-card .byno-frame img { object-fit: cover; object-position: var(--media-position,50% 50%); }
.byno-gallery-card.poster .byno-frame img { object-fit: contain; }
.byno-close { padding-block: clamp(5.2rem, 10vw, 9rem); text-align: center; }
.byno-close .byno-heading { max-width: 64rem; margin-inline: auto; }
.byno-close .byno-lede { margin-inline: auto; }
.byno-close .byno-actions { justify-content: center; }

.byno-event-section { padding-block: clamp(4.6rem, 8vw, 7.5rem); }
.byno-event-section + .byno-event-section { border-top: 1px solid var(--byno-line); }
.byno-event-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.byno-event-grid.is-single { grid-template-columns: minmax(0,1fr); }
.byno-event-grid.is-single .byno-event-card { grid-template-columns: minmax(17rem,24rem) minmax(0,1fr); }
.byno-event-grid.is-single .byno-poster-frame { height: 100%; min-height: 28rem; aspect-ratio: auto; }
.byno-event-grid.archive-count-1 { grid-template-columns: minmax(0,1fr); }
.byno-event-grid.archive-count-1 .byno-drop-card { grid-template-columns: minmax(15rem, 24rem) minmax(0,1fr); }
.byno-event-grid.archive-count-1 .byno-frame { height: 100%; min-height: 28rem; aspect-ratio: auto; }
.byno-event-grid.archive-count-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.byno-empty-state { padding: clamp(1.8rem, 4vw, 3rem); border: 1px solid rgba(125,211,252,.18); background: rgba(4,15,22,.76); }
.byno-empty-state h2 { margin: 0; font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; font-size: clamp(2.2rem,5vw,4.2rem); line-height: .9; text-transform: uppercase; }
.byno-empty-state p { max-width: 38rem; margin: 1rem 0 0; color: var(--byno-muted); }

.byno-event-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--byno-line); }
.byno-event-hero-backdrop { position: absolute; z-index: -1; inset: 0; opacity: .16; }
.byno-event-hero-backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,#030506 0%,rgba(3,5,6,.88) 48%,rgba(3,5,6,.53) 100%); }
.byno-event-hero-backdrop img { width: 100%; height: 100%; object-fit: cover; filter: blur(1px); transform: scale(1.04); }
.byno-event-hero-grid { min-height: 43rem; display: grid; grid-template-columns: minmax(0,1.15fr) minmax(17rem,.55fr); gap: clamp(2.5rem,6vw,6rem); align-items: center; padding-block: clamp(4.5rem,8vw,7.5rem); }
.byno-event-hero .byno-display { font-size: clamp(4rem,8vw,8rem); }
.byno-event-poster { max-width: 27rem; justify-self: end; width: 100%; }
.byno-fact-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; margin-top: 1.8rem; border: 1px solid rgba(125,211,252,.16); background: rgba(125,211,252,.16); }
.byno-fact { min-width: 0; padding: 1rem; background: rgba(2,8,12,.86); }
.byno-fact span, .byno-fact strong { display: block; }
.byno-fact span { color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .13em; font-size: .59rem; }
.byno-fact strong { margin-top: .35rem; overflow-wrap: anywhere; }
.byno-event-body { display: grid; grid-template-columns: minmax(17rem,.72fr) minmax(0,1.28fr); gap: clamp(2rem,6vw,6rem); padding-block: clamp(5rem,9vw,8rem); }
.byno-event-aside { display: grid; align-content: start; gap: 1rem; }
.byno-panel { padding: clamp(1.35rem,3vw,2.25rem); border: 1px solid rgba(125,211,252,.2); background: rgba(4,16,23,.9); }
.byno-panel h2 { margin: 0 0 1rem; font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; font-size: clamp(2rem,4vw,3.3rem); line-height: .92; text-transform: uppercase; }
.byno-panel p { color: #aeb8bd; }
.byno-prose { max-width: 48rem; color: #bac3c7; font-size: 1.05rem; }
.byno-prose h2 { margin: 0 0 1.4rem; color: #fff; font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; font-size: clamp(2.8rem,5vw,4.8rem); line-height: .9; text-transform: uppercase; }
.byno-lineup { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem; margin: 2.2rem 0 0; padding: 0; list-style: none; }
.byno-lineup li { display: flex; justify-content: space-between; gap: 1rem; padding: .9rem 1rem; border: 1px solid rgba(255,255,255,.1); background: rgba(4,15,21,.76); font-weight: 900; text-transform: uppercase; }
.byno-event-media { padding-block: clamp(4.5rem,8vw,7rem); border-top: 1px solid var(--byno-line); }
.byno-media-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .9rem; }
.byno-media-grid .media { margin: 0; overflow: hidden; border: 1px solid rgba(125,211,252,.2); background: #02080b; }
.byno-media-grid .media img, .byno-media-grid .media video { width: 100%; height: 100%; object-fit: cover; }
.byno-media-grid .media.poster img { object-fit: contain; }
.byno-media-grid figcaption { padding: .75rem; color: #aab4b9; font-size: .78rem; }

.site-footer { border-top: 1px solid var(--byno-line); background: #020303; }
.footer-inner { display: grid; grid-template-columns: 1fr auto 1fr; align-items: start; gap: 2.5rem; padding-block: 3.5rem; }
.footer-brand strong { display: block; font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; font-size: 1.8rem; text-transform: uppercase; letter-spacing: .04em; }
.footer-brand span { display: block; margin-top: .45rem; color: #77838a; font-size: .82rem; }
.footer-nav { display: grid; grid-template-columns: repeat(2,auto); gap: .7rem 1.7rem; }
.footer-links { justify-self: end; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .65rem 1rem; max-width: 27rem; text-align: right; }
.footer-links span { width: 100%; color: #68747a; font-size: .75rem; }
.cookie-settings { border: 0; padding: 0; background: none; cursor: pointer; }
.cookie-panel .eyebrow { margin: 0 0 .35rem; color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .16em; font-size: .64rem; font-weight: 900; }
.cookie-panel .actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.cookie-panel .button { min-height: 2.7rem; display: inline-flex; align-items: center; justify-content: center; padding: .6rem 1rem; border: 1px solid var(--byno-cyan); background: var(--byno-cyan); color: #001318; text-transform: uppercase; letter-spacing: .12em; font-size: .64rem; font-weight: 900; cursor: pointer; }
.cookie-panel .button.secondary { border-color: rgba(125,211,252,.3); background: transparent; color: #e6f7fa; }

/* Markup vocabulary ported directly from the live React components. */
.byno-label {
  margin: 0 0 1rem;
  color: var(--byno-cyan);
  text-transform: uppercase;
  letter-spacing: .22em;
  font-size: .68rem;
  font-weight: 900;
}
.byno-accent { color: var(--byno-cyan); }
.byno-page-title span { display: block; }
.byno-section-title { font-size: clamp(3.15rem, 6.7vw, 6.1rem); line-height: .87; }
.byno-panel-title { font-size: clamp(2.3rem, 4.8vw, 4.5rem); line-height: .9; }
.byno-card-title { font-size: clamp(2rem, 3.7vw, 3.4rem); line-height: .91; }
.byno-cta,
.byno-cta-muted {
  min-height: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .72rem 1.55rem;
  border: 1px solid var(--byno-cyan);
  background: var(--byno-cyan);
  color: #001318;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .68rem;
  font-weight: 900;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}
.byno-cta:hover { background: var(--byno-ice); border-color: var(--byno-ice); transform: translateY(-1px); }
.byno-cta-muted { border-color: rgba(125,211,252,.34); background: rgba(0,0,0,.18); color: #e6f7fa; }
.byno-cta-muted:hover { border-color: var(--byno-cyan); background: rgba(34,211,238,.1); color: #fff; transform: translateY(-1px); }
.byno-cta.is-disabled { opacity: .55; cursor: not-allowed; }
.header-instagram { min-height: 2.65rem; padding-inline: 1rem; }

.byno-home-hero-grid {
  min-height: calc(100svh - 8.3rem);
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(21rem,.5fr);
  align-items: center;
  gap: clamp(2.5rem,5vw,5.2rem);
  padding-block: clamp(3.5rem,7vw,6.5rem);
}
.byno-home-copy { position: relative; z-index: 1; }
.byno-home-hero-title { max-width: 53rem; }
.byno-hero-stage > .byno-hero-backdrop { inset: 0 0 0 42%; }
.byno-hero-empty .byno-home-hero-grid { min-height: clamp(34rem,70svh,48rem); grid-template-columns: minmax(0,54rem); }
.byno-stat { min-height: 5.3rem; padding: 1rem; background: rgba(2,8,11,.82); }
.byno-stat strong, .byno-stat span { display: block; }
.byno-stat strong { text-transform: uppercase; letter-spacing: .12em; font-size: .69rem; }
.byno-stat span { margin-top: .38rem; color: #839198; font-size: .79rem; }
.byno-hero-drop { color: inherit; text-decoration: none; }
.byno-hero-drop > div { display: grid; }
.byno-hero-poster { aspect-ratio: 4/5; max-height: 31rem; }
.byno-poster-frame {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/5;
  border: 1px solid rgba(125,211,252,.26);
  background: #02080b;
  box-shadow: 0 22px 70px rgba(0,0,0,.34);
}
.byno-poster-frame::after { content: ""; position: absolute; inset: .45rem; pointer-events: none; border: 1px solid rgba(125,211,252,.1); }
.byno-poster-frame img { width: 100%; height: 100%; object-fit: contain !important; transition: transform 420ms cubic-bezier(.22,.75,.22,1); }
.byno-card-interactive:hover .byno-poster-frame img,
.byno-hero-drop:hover .byno-poster-frame img { transform: scale(1.018); }
.byno-hero-event-copy { padding: 1.35rem; }
.byno-chip-row { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; color: #9ba6ab; text-transform: uppercase; letter-spacing: .12em; font-size: .6rem; }
.byno-chip,
.byno-chip-cyan { padding: .32rem .58rem; border: 1px solid rgba(255,255,255,.13); }
.byno-chip-cyan { border-color: rgba(34,211,238,.3); color: #b9f3f9; }
.byno-event-quick { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .25rem 1rem; margin: 1rem 0 1.3rem; }
.byno-event-quick strong { text-transform: uppercase; }
.byno-event-quick span { color: #89969c; font-size: .82rem; }
.byno-split-rule { border-block: 1px solid rgba(255,255,255,.07); background: rgba(2,7,10,.8); }
.byno-split-rule p { margin: 0; padding-block: .9rem; color: #718087; text-align: center; text-transform: uppercase; letter-spacing: .2em; font-size: .62rem; }

.byno-main-drop { display: block; padding-block: clamp(5rem,10vw,9rem); }
.byno-main-event { display: grid; grid-template-columns: minmax(18rem,.72fr) minmax(0,1.28fr); }
.byno-main-event-copy { min-width: 0; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(1.6rem,4vw,3.2rem); }
.byno-main-event-copy > p { max-width: 44rem; color: #adb7bc; }
.byno-main-event .byno-fact-grid { margin-top: 1.5rem; }
.byno-main-event .byno-frame { min-width: 0; padding: 1rem; box-shadow: none; }
.byno-main-event .byno-frame span,
.byno-main-event .byno-frame strong { display: block; }
.byno-main-event .byno-frame span { color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .12em; font-size: .59rem; }
.byno-main-event .byno-frame strong { margin-top: .25rem; overflow-wrap: anywhere; }

.byno-home-team,
.byno-home-gallery { padding-block: clamp(5rem,9vw,8.2rem); }
.byno-home-heading { display: grid; grid-template-columns: minmax(16rem,.65fr) minmax(0,1.35fr); gap: clamp(2rem,5vw,5rem); align-items: end; }
.byno-home-heading > div:first-child > p:last-child { max-width: 31rem; color: #aeb8bd; }
.byno-home-team-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .9rem; }
.byno-card { color: inherit; text-decoration: none; }
.byno-resident-card,
.byno-gallery-preview { position: relative; min-width: 0; overflow: hidden; border: 1px solid rgba(125,211,252,.2); background: #030b0f; }
.byno-media-strip { position: relative; height: 100%; min-height: 20rem; overflow: hidden; }
.byno-media-strip > img { width: 100%; height: 100%; object-fit: cover; transition: transform 420ms cubic-bezier(.22,.75,.22,1); }
.byno-card-interactive:hover .byno-media-strip > img { transform: scale(1.025); }
.byno-media-caption { position: absolute; z-index: 2; inset: auto 0 0; padding: 4rem 1.15rem 1.15rem; background: linear-gradient(transparent,rgba(0,0,0,.96)); }
.byno-media-caption h3 { font-size: 1.75rem; line-height: 1; }
.byno-media-caption strong { display: block; font-family: Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; text-transform: uppercase; font-size: 1.75rem; line-height: 1; }
.byno-media-caption p { margin: .45rem 0 0; color: #d1d7da; font-size: .8rem; }
.byno-media-caption span { display: block; margin-top: .55rem; color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .12em; font-size: .59rem; }
.byno-gallery-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2.3rem; }
.byno-gallery-heading > p { max-width: 31rem; color: #aeb8bd; }
.byno-gallery-preview.is-poster .byno-media-strip > img { object-fit: contain !important; }
.byno-close-section { padding-block: clamp(5rem,9vw,8rem); }
.byno-close-card { grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 2rem; padding: clamp(1.5rem,4vw,3.2rem); }
.byno-close-card p { max-width: 40rem; color: #aeb8bd; }
.byno-close-actions { display: flex; flex-wrap: wrap; gap: .7rem; }

.byno-page-hero .byno-page-title { max-width: 70rem; }
.byno-empty-card { display: block; padding: clamp(1.8rem,4vw,3rem); }
.byno-empty-card p { max-width: 38rem; margin: 0; color: var(--byno-muted); }
.byno-event-card { min-width: 0; display: grid; grid-template-columns: minmax(13rem,.7fr) minmax(0,1.3fr); overflow: hidden; border: 1px solid rgba(125,211,252,.21); background: rgba(4,15,22,.94); }
.byno-event-card-copy { min-width: 0; display: flex; flex-direction: column; justify-content: space-between; gap: 1.4rem; padding: clamp(1.25rem,3vw,2.2rem); }
.byno-event-card-copy .byno-card-title { margin-top: .8rem; overflow-wrap: break-word; }
.byno-event-card-copy > div > p { color: #aab5ba; }
.byno-event-dates { display: flex; flex-wrap: wrap; gap: .4rem 1rem; margin-top: .75rem; color: #e0e9ec; font-weight: 800; }
.byno-card-action { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.byno-card-action strong { color: #718087; text-transform: uppercase; letter-spacing: .1em; font-size: .58rem; }
.archive-count-1 .byno-event-card { grid-template-columns: minmax(17rem,24rem) minmax(0,1fr); }
.archive-count-1 .byno-poster-frame { height: 100%; min-height: 28rem; aspect-ratio: auto; }

.byno-event-backdrop { position: absolute; z-index: -1; inset: 0; opacity: .16; }
.byno-event-backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,#030506 0%,rgba(3,5,6,.88) 48%,rgba(3,5,6,.53) 100%); }
.byno-event-backdrop img { width: 100%; height: 100%; object-fit: cover; filter: blur(1px); transform: scale(1.04); }
.byno-event-detail .byno-event-hero-grid { min-height:0; grid-template-columns:minmax(0,1fr) minmax(18.75rem,26.25rem); gap:clamp(2.5rem,6vw,5rem); align-items:end; padding-block:clamp(3.5rem,7vw,5rem); }
.byno-event-hero-poster { width:min(100%,23.75rem); aspect-ratio:113/160; justify-self:end; }
.byno-event-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; max-width:56rem; margin-top:2rem; }
.byno-event-fact { min-width:0; padding:1rem; border:1px solid rgba(125,211,252,.2); background:rgba(2,8,12,.86); box-shadow:inset 0 0 0 1px rgba(34,211,238,.035); }
.byno-event-fact span,
.byno-event-fact strong { display:block; }
.byno-event-fact span { color:#67e8f9; text-transform:uppercase; letter-spacing:.18em; font-size:.625rem; font-weight:900; }
.byno-event-fact strong { margin-top:.55rem; color:#fff; font-size:.9rem; line-height:1.45; text-transform:uppercase; overflow-wrap:anywhere; }
.byno-event-hero-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; margin-top: 1.8rem; border: 1px solid rgba(125,211,252,.16); background: rgba(125,211,252,.16); }
.byno-event-hero-facts > div { min-width: 0; padding: 1rem; background: rgba(2,8,12,.86); }
.byno-event-hero-facts span,
.byno-event-hero-facts strong { display: block; }
.byno-event-hero-facts span { color: var(--byno-cyan); text-transform: uppercase; letter-spacing: .13em; font-size: .59rem; }
.byno-event-hero-facts strong { margin-top: .35rem; overflow-wrap: anywhere; }
.byno-event-content { padding-block: clamp(5rem,9vw,8rem); }
.byno-event-info-grid { display: grid; grid-template-columns: minmax(17rem,.72fr) minmax(0,1.28fr); gap: clamp(2rem,6vw,6rem); }
.byno-event-info-grid aside { display: grid; align-content: start; gap: 1rem; }
.byno-practical,
.byno-night-copy { display: block; padding: clamp(1.35rem,3vw,2.25rem); }
.byno-practical-list { display:grid; gap:0; margin-top:1.5rem; }
.byno-practical-list div { min-width:0; display:grid; grid-template-columns:minmax(5.5rem,.42fr) minmax(0,1fr); gap:1rem; align-items:start; padding:.85rem 0; border-bottom:1px solid rgba(255,255,255,.09); }
.byno-practical-list div:last-child { border-bottom: 0; padding-bottom: 0; }
.byno-practical-list span,
.byno-practical-list strong { display: block; }
.byno-practical-list span { color:#67e8f9; text-transform:uppercase; letter-spacing:.15em; font-size:.61rem; font-weight:900; }
.byno-practical-list strong { color:#f5f7f8; font-size:.875rem; line-height:1.55; overflow-wrap:anywhere; }
.byno-keep-up { padding: 1.25rem; border: 1px solid rgba(125,211,252,.18); background: rgba(4,15,22,.78); }
.byno-night-copy p { color: #bac3c7; font-size: 1.04rem; }
.byno-lineup-panel { margin-top:1.25rem; padding:clamp(1.35rem,3vw,2.25rem); border:1px solid rgba(125,211,252,.2); background:radial-gradient(circle at 100% 0,rgba(34,211,238,.08),transparent 22rem),rgba(4,15,22,.82); }
.byno-lineup-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.byno-lineup-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:.75rem; margin-top:1.5rem; }
.byno-lineup-grid.lineup-count-1 { grid-template-columns:minmax(0,min(100%,32rem)); }
.byno-lineup-name { position:relative; min-width:0; display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:4rem; padding:.85rem 1rem .85rem 1.25rem; border:1px solid rgba(255,255,255,.11); background:linear-gradient(90deg,rgba(34,211,238,.08),rgba(2,9,13,.76) 28%); }
.byno-lineup-name::before { content:""; position:absolute; inset:0 auto 0 0; width:2px; background:#22d3ee; opacity:.75; }
.byno-lineup-name strong { color:#fff; font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; font-size:clamp(1.45rem,2.6vw,2.1rem); font-weight:400; line-height:.95; text-transform:uppercase; letter-spacing:.02em; }
.byno-lineup-name span { flex:0 0 auto; color:#7dd3fc; text-transform:uppercase; letter-spacing:.12em; font-size:.62rem; font-weight:800; }
.byno-event-media { padding-top:clamp(3.5rem,7vw,5.5rem); }
.byno-event-featured-row { margin-top:2rem; }
.byno-event-media-card { min-width:0; overflow:hidden; padding:.75rem; }
.byno-event-media-card.is-featured { width:min(100%,26.25rem); }
.byno-event-media-card.is-video { align-self:start; }
.byno-media-kicker { display: flex; justify-content: space-between; padding: .8rem 1rem; color: #aab5ba; text-transform: uppercase; letter-spacing: .12em; font-size: .6rem; }
.byno-media-kicker strong { color:#67e8f9; }
.byno-event-video-frame { display:flex; align-items:center; justify-content:center; min-height:0; background:#000; }
.byno-event-video-frame video { display:block; width:100%; height:auto; max-height:40rem; object-fit:contain; background:#000; }
.byno-event-still { min-height:0; aspect-ratio:4/5; }
.byno-event-media-card.is-poster .byno-event-still img { object-fit:contain !important; }
.byno-event-media-caption { margin:0; padding:.85rem .35rem .2rem; color:#aab4b9; font-size:.8rem; line-height:1.5; }
.byno-event-poster-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin-top:2rem; }
.byno-event-poster-grid.poster-count-1 { grid-template-columns:minmax(0,min(100%,23.75rem)); }
.byno-event-poster-card { min-width:0; aspect-ratio:113/160; }
.byno-event-other-media { display:grid; gap:1rem; margin-top:2rem; }
.byno-event-other-media.media-count-1 { grid-template-columns:minmax(0,min(100%,32rem)); }

.footer-inner > p { margin: 0; color: #77838a; font-size: .8rem; }
.footer-actions { justify-self: end; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .65rem 1rem; max-width: 27rem; text-align: right; }
.footer-actions a,
.footer-actions button { border: 0; padding: 0; background: none; color: #c5cbd0; text-decoration: none; text-transform: uppercase; letter-spacing: .14em; font-size: .67rem; font-weight: 800; cursor: pointer; }
.footer-actions a:hover,
.footer-actions a:focus-visible,
.footer-actions button:hover,
.footer-actions button:focus-visible { color: var(--byno-cyan); }
.footer-actions span { width: 100%; color: #68747a; font-size: .75rem; }

/* Shared media-frame parity with the approved Next.js public frontend.
   These layers deliberately add definition without changing media sizing or fitting. */
.byno-poster-frame {
  border-color: rgba(34, 211, 238, .34);
  background: #020202;
  box-shadow:
    0 22px 64px rgba(0, 0, 0, .52),
    0 0 0 1px rgba(14, 165, 233, .08),
    0 0 26px rgba(34, 211, 238, .09);
}
.byno-poster-frame::after {
  inset: 0;
  border: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, .09), transparent 18%, transparent 76%, rgba(34, 211, 238, .12));
}
.byno-card {
  position: relative;
  isolation: isolate;
  border-color: rgba(34, 211, 238, .18);
  background:
    radial-gradient(circle at 18% 0%, rgba(34, 211, 238, .08), transparent 34%),
    linear-gradient(180deg, rgba(7, 24, 35, .72), rgba(4, 10, 14, .84));
  box-shadow:
    inset 0 1px 0 rgba(125, 211, 252, .075),
    0 18px 50px rgba(0, 0, 0, .24);
}
.byno-card::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 255, 255, .06), transparent 36%, rgba(34, 211, 238, .035));
  opacity: .65;
}
.byno-card > * { position: relative; z-index: 1; }
.byno-card-interactive {
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.byno-card-interactive:hover,
.byno-card-interactive:focus-within,
.byno-card-interactive:focus-visible {
  border-color: rgba(34, 211, 238, .34);
  background:
    radial-gradient(circle at 18% 0%, rgba(34, 211, 238, .095), transparent 34%),
    linear-gradient(180deg, rgba(8, 30, 42, .84), rgba(4, 13, 18, .9));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .055),
    0 22px 58px rgba(0, 0, 0, .34),
    0 0 28px rgba(34, 211, 238, .08);
  transform: translateY(-2px);
}
.byno-card-interactive:focus-visible {
  outline: 2px solid rgba(103, 232, 249, .82);
  outline-offset: 3px;
}
.byno-media-strip {
  border: 1px solid rgba(34, 211, 238, .17);
  background: rgba(0, 0, 0, .54);
}
.byno-media-strip::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, .08), transparent 34%, rgba(0, 0, 0, .9)),
    linear-gradient(90deg, rgba(0, 0, 0, .32), transparent 48%);
}
.byno-media-strip::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  border: 1px solid rgba(34, 211, 238, .08);
  background: linear-gradient(135deg, rgba(255, 255, 255, .08), transparent 26%, transparent 70%, rgba(34, 211, 238, .08));
  opacity: .74;
}
.byno-media-caption { z-index: 3; }
.byno-resident-media::after {
  background:
    linear-gradient(180deg, rgba(0, 0, 0, .02), transparent 22%, rgba(0, 0, 0, .94)),
    linear-gradient(90deg, rgba(0, 0, 0, .2), transparent 58%);
}
.byno-resident-media > img { filter: saturate(1.05) contrast(1.04); }
.byno-card-interactive:hover .byno-media-strip > img,
.byno-card-interactive:focus-within .byno-media-strip > img { transform: scale(1.035); }

/* Phase 4.2 Batch 2: The Team, resident profiles and Sets. */
.b2-page-hero {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.1);
  background:
    radial-gradient(circle at top left, rgba(34,211,238,.16), transparent 30rem),
    radial-gradient(circle at 90% 0%, rgba(37,99,235,.12), transparent 28rem);
}
.b2-page-hero .byno-section { padding-block: 3.5rem; }
.b2-page-hero .byno-page-title { margin-top: 1.25rem; }
.b2-page-hero .byno-lede { max-width: 42rem; margin-top: 1.75rem; color: rgba(255,255,255,.7); }
.b2-team-owner,
.b2-team-residents,
.b2-photographer,
.b2-profile-content,
.b2-set-spotlight,
.b2-more-sets,
.b2-sets-empty { padding-block: 2.5rem; }
.b2-photographer,
.b2-more-sets,
.b2-sets-empty { padding-bottom: 5rem; }
.b2-owner-layout { display: grid; gap: 1.5rem; align-items: end; }
.b2-owner-heading { max-width: 34rem; }
.b2-owner-card { width: min(100%,36rem); }
.b2-person-link { display: block; height: 100%; color: inherit; text-decoration: none; }
.b2-person-card { height: 100%; overflow: hidden; padding: .75rem; }
.b2-person-media { min-height: 0; aspect-ratio: 4/5; }
.b2-person-overlay { position: absolute; z-index: 3; inset: auto 0 0; padding: 1rem; }
.b2-person-overlay p { margin: 0; color: #a5f3fc; text-transform: uppercase; letter-spacing: .18em; font-size: .625rem; font-weight: 900; }
.b2-person-overlay h2 { margin-top: .5rem; color: #fff; }
.b2-person-overlay span { display: block; margin-top: .5rem; color: rgba(255,255,255,.58); text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 800; }
.b2-person-copy { padding: .75rem; }
.b2-person-copy p { margin: 0; color: rgba(255,255,255,.66); font-size: .875rem; line-height: 1.75; }
.b2-person-copy strong { display: inline-flex; margin-top: 1.25rem; color: #a5f3fc; text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; transition: color 180ms ease; }
.b2-person-link:hover .b2-person-copy strong,
.b2-person-link:focus-visible .b2-person-copy strong { color: #fff; }
.b2-section-intro { max-width: 48rem; margin-bottom: 2rem; }
.b2-section-intro .byno-section-title { margin-top: 1rem; }
.b2-section-intro > p:last-child { margin: 1.25rem 0 0; color: rgba(255,255,255,.66); line-height: 2; }
.b2-team-grid { display: grid; gap: 1.25rem; }
.b2-team-grid.team-count-1 { grid-template-columns: minmax(0,min(100%,45rem)); }
.b2-photographer-panel { display: grid; gap: 1.5rem; padding: 1.5rem; align-items: center; }
.b2-photographer-panel > div:first-child > p:last-child { max-width: 42rem; color: rgba(255,255,255,.68); line-height: 2; }
.b2-photographer-card { min-width: 0; }

.b2-profile-hero { position: relative; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.1); }
.b2-profile-backdrop { position: absolute; inset: 0; opacity: .28; }
.b2-profile-backdrop > img { width: 100%; height: 100%; object-fit: cover !important; }
.b2-profile-backdrop::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#000,rgba(0,0,0,.75),rgba(0,0,0,.35)); }
.b2-profile-backdrop > span { position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,transparent,rgba(0,0,0,.45),#050505); }
.b2-profile-hero-grid { position: relative; display: grid; gap: 2.5rem; align-items: end; padding-block: 3.5rem; }
.b2-profile-hero-grid .byno-page-title { margin-top: 1.25rem; }
.b2-profile-hero-grid .byno-lede { max-width: 48rem; margin-top: 1.75rem; color: rgba(255,255,255,.76); }
.b2-profile-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 2rem; }
.b2-profile-tags .byno-chip-cyan { padding: .5rem .75rem; border: 1px solid rgba(34,211,238,.3); color: #cffafe; text-transform: uppercase; letter-spacing: .16em; font-size: .625rem; font-weight: 900; }
.b2-profile-portrait { width: min(100%,23.75rem); aspect-ratio: 3/4; margin-inline: auto; }
.b2-profile-portrait img,
.b2-set-portrait img { object-fit: cover !important; }
.b2-profile-layout { display: grid; gap: 1.5rem; }
.b2-profile-layout.no-aside { grid-template-columns: minmax(0,1fr); }
.b2-profile-aside { display: grid; align-content: start; gap: 1.25rem; }
.b2-profile-facts,
.b2-profile-links,
.b2-profile-about,
.b2-embed-card { padding: 1.25rem; }
.b2-profile-facts dl { display: grid; gap: 1rem; margin: 1.5rem 0 0; }
.b2-profile-facts dl > div { color: rgba(255,255,255,.72); font-size: .875rem; }
.b2-profile-facts dt { display: inline; color: #fff; font-weight: 800; }
.b2-profile-facts dt::after { content:": "; }
.b2-profile-facts dd { display: inline; margin: 0; }
.b2-profile-links > div { display: grid; gap: .75rem; margin-top: 1.25rem; }
.b2-profile-links .byno-cta,
.b2-profile-links .byno-cta-muted { width: 100%; }
.b2-profile-main { min-width: 0; display: grid; gap: 1.5rem; }
.b2-profile-about .byno-panel-title { margin-top: .75rem; }
.b2-profile-prose { display: grid; gap: 1.25rem; margin-top: 1.5rem; color: rgba(255,255,255,.7); line-height: 2; }
.b2-profile-prose p { margin: 0; }
.b2-profile-embeds { display: grid; gap: 1.5rem; }
.b2-embed-card .byno-card-title { margin-top: .75rem; }
.b2-embed-frame { margin-top: 1.25rem; overflow: hidden; background: #000; }
.b2-embed-frame iframe,
.b2-soundcloud-frame iframe { width: 100%; border: 0; background: #000; }
.b2-embed-card > .byno-text-link { display: inline-flex; margin-top: 1rem; }

.b2-resident-gallery { position: relative; isolation: isolate; overflow: hidden; padding: .75rem; border: 1px solid rgba(255,255,255,.1); background: radial-gradient(circle at 18% 0%,rgba(34,211,238,.12),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015)); box-shadow: 0 25px 50px rgba(0,0,0,.35); }
.b2-resident-gallery > header { display:flex; align-items:end; justify-content:space-between; gap:1rem; padding-bottom:1rem; border-bottom:1px solid rgba(255,255,255,.1); }
.b2-resident-gallery > header .byno-label { margin-bottom:0; }
.b2-resident-gallery > header h2 { margin:.5rem 0 0; font-size:1.5rem; line-height:1.05; text-transform:uppercase; }
.b2-resident-gallery > header > p { flex:0 0 auto; margin:0; color:rgba(255,255,255,.38); text-transform:uppercase; letter-spacing:.18em; font-size:.68rem; font-weight:700; }
.b2-gallery-stage { position:relative; margin-top:1rem; overflow:hidden; border:1px solid rgba(255,255,255,.1); background:#000; box-shadow:0 25px 50px rgba(0,0,0,.4); }
.b2-gallery-open { position:relative; isolation:isolate; width:100%; height:clamp(18.75rem,70vw,35rem); display:flex; align-items:center; justify-content:center; overflow:hidden; border:0; padding:0; background:#000; color:#fff; cursor:pointer; touch-action:manipulation; }
.b2-gallery-wash { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 35%; opacity:.2; filter:blur(2rem) saturate(1.25); transform:scale(1.1); }
.b2-gallery-open > span { position:absolute; inset:0; background:radial-gradient(circle at center,transparent 0%,rgba(0,0,0,.2) 46%,rgba(0,0,0,.78) 100%); }
.b2-gallery-main { position:relative; z-index:1; max-width:100%; max-height:100%; object-fit:contain; transition:transform 500ms ease; }
.b2-gallery-open:hover .b2-gallery-main,
.b2-gallery-open:focus-visible .b2-gallery-main { transform:scale(1.01); }
.b2-gallery-arrow,
.b2-lightbox-close { position:absolute; z-index:4; width:3rem; height:3rem; display:grid; place-items:center; border:1px solid rgba(255,255,255,.15); background:rgba(0,0,0,.65); color:#fff; font-size:1.25rem; cursor:pointer; touch-action:manipulation; transition:border-color 180ms ease,background 180ms ease; }
.b2-gallery-arrow:hover,
.b2-gallery-arrow:focus-visible,
.b2-lightbox-close:hover,
.b2-lightbox-close:focus-visible { border-color:rgba(103,232,249,.55); background:rgba(34,211,238,.15); }
.b2-gallery-arrow.previous { left:1rem; top:50%; transform:translateY(-50%); }
.b2-gallery-arrow.next { right:1rem; top:50%; transform:translateY(-50%); }
.b2-gallery-thumbs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; margin-top:1rem; }
.b2-gallery-thumb { position:relative; aspect-ratio:4/3; overflow:hidden; border:1px solid rgba(255,255,255,.1); padding:0; background:#000; opacity:.58; cursor:pointer; touch-action:manipulation; transition:border-color 180ms ease,opacity 180ms ease; }
.b2-gallery-thumb img { width:100%; height:100%; object-fit:cover; object-position:center 35%; transition:transform 300ms ease; }
.b2-gallery-thumb:hover,
.b2-gallery-thumb:focus-visible { border-color:rgba(103,232,249,.4); opacity:1; }
.b2-gallery-thumb:hover img { transform:scale(1.04); }
.b2-gallery-thumb.is-selected { border-color:rgba(103,232,249,.8); opacity:1; box-shadow:0 0 0 1px rgba(34,211,238,.28),0 0 20px rgba(34,211,238,.18); }
.b2-gallery-thumb::after { content:""; position:absolute; inset:auto 0 0; height:.25rem; background:rgba(255,255,255,.1); }
.b2-gallery-thumb.is-selected::after { background:#67e8f9; }
.b2-gallery-lightbox { position:fixed; z-index:999; inset:0; padding:4rem .75rem; background:rgba(0,0,0,.93); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.b2-gallery-lightbox[hidden] { display:none; }
.b2-gallery-lightbox > div { position:relative; width:min(100%,72rem); height:100%; display:flex; align-items:center; justify-content:center; margin:auto; }
.b2-gallery-lightbox img { max-width:100%; max-height:78vh; object-fit:contain; border:1px solid rgba(255,255,255,.1); background:#000; box-shadow:0 25px 70px rgba(0,0,0,.7); }
.b2-lightbox-close { top:-3.25rem; right:0; }

.b2-set-spotlight-grid { display:grid; gap:1.5rem; padding:1rem; }
.b2-set-artist { min-width:0; }
.b2-set-portrait { width:100%; aspect-ratio:4/5; }
.b2-set-artist > .byno-label { margin-top:1.5rem; }
.b2-set-artist > h2 { margin-top:.75rem; }
.b2-set-artist > p:not(.byno-label) { color:rgba(255,255,255,.66); font-size:.875rem; line-height:1.75; }
.b2-sets-grid { display:grid; gap:1.25rem; }
.b2-set-card { min-width:0; overflow:hidden; padding:1rem; }
.b2-set-card-top { display:grid; min-width:0; gap:1.25rem; align-items:start; }
.b2-set-card-image { position:relative; min-width:0; min-height:0; width:100%; aspect-ratio:4/5; overflow:hidden; }
.b2-set-card-copy { position:relative; min-width:0; overflow-wrap:anywhere; }
.b2-set-card-copy .byno-label { margin-bottom:0; }
.b2-set-card-copy h3 { margin-top:.75rem; }
.b2-set-card-copy > span { display:block; margin-top:.5rem; color:rgba(255,255,255,.42); text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; font-weight:800; }
.b2-set-card-copy > p { color:rgba(255,255,255,.66); font-size:.875rem; line-height:1.75; }
.b2-set-card-copy .byno-cta-muted { margin-top:1.25rem; }
.b2-soundcloud { min-width:0; }
.b2-set-card > .b2-soundcloud { margin-top:1.25rem; }
.b2-soundcloud-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.b2-soundcloud-heading .byno-label { margin-bottom:0; }
.b2-soundcloud-heading h3 { margin-top:.65rem; }
.b2-soundcloud-heading .byno-text-link { flex:0 0 auto; }
.b2-soundcloud-frame { overflow:hidden; padding:.75rem; background:#000; }

@media (min-width:390px) {
  .b2-gallery-thumbs { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (min-width:640px) {
  .b2-page-hero .byno-section,
  .b2-profile-hero-grid { padding-block:5rem; }
  .b2-team-owner,
  .b2-team-residents,
  .b2-photographer,
  .b2-profile-content,
  .b2-set-spotlight,
  .b2-more-sets { padding-block:3.5rem; }
  .b2-photographer,
  .b2-more-sets { padding-bottom:5rem; }
  .b2-profile-facts,
  .b2-profile-links,
  .b2-profile-about,
  .b2-embed-card { padding:1.5rem; }
  .b2-resident-gallery { padding:1.25rem; }
  .b2-gallery-thumbs { grid-template-columns:repeat(5,minmax(0,1fr)); gap:.75rem; }
  .b2-set-spotlight-grid { padding:1.5rem; }
  .b2-set-card { padding:1.25rem; }
  .b2-set-card-top { grid-template-columns:minmax(8.75rem,10.625rem) minmax(0,1fr); }
}
@media (min-width:768px) {
  .b2-team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b2-team-grid.team-count-1 { grid-template-columns:minmax(0,min(100%,45rem)); }
  .b2-gallery-thumbs { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media (min-width:1024px) {
  .b2-owner-layout { grid-template-columns:minmax(0,.42fr) minmax(0,1fr); }
  .b2-profile-hero-grid { grid-template-columns:minmax(0,1fr) minmax(17.5rem,23.75rem); }
  .b2-profile-portrait { margin-inline:0; }
  .b2-profile-layout { grid-template-columns:22.5rem minmax(0,1fr); }
  .b2-photographer-panel { grid-template-columns:minmax(0,1fr) minmax(16.25rem,23.75rem); padding:2rem; }
  .b2-set-spotlight-grid { grid-template-columns:20rem minmax(0,1fr); padding:2rem; }
  .b2-gallery-thumbs { grid-template-columns:repeat(6,minmax(0,1fr)); }
}
@media (min-width:1280px) {
  .b2-team-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .b2-team-grid.team-count-1 { grid-template-columns:minmax(0,min(100%,45rem)); }
  .b2-team-grid.team-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b2-profile-embeds.embed-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b2-sets-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b2-sets-grid.sets-count-1 { grid-template-columns:minmax(0,1fr); }
}

/* Phase 4.2 Batch 3: Gallery, Gallery details, About and Contact. */
.b3-page-hero {
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.1);
  background:
    radial-gradient(circle at top left,rgba(34,211,238,.15),transparent 30rem),
    radial-gradient(circle at 92% 0,rgba(37,99,235,.1),transparent 26rem),
    #050505;
}
.b3-page-hero .byno-section { padding-block:3.5rem; }
.b3-page-hero .byno-page-title { margin-top:1.25rem; }
.b3-page-hero .byno-lede { max-width:44rem; margin-top:1.75rem; color:rgba(255,255,255,.7); }
.b3-page-hero .byno-actions { margin-top:2rem; }
.b3-gallery-collections,
.b3-photographer,
.b3-in-frame,
.b3-gallery-video,
.b3-promo-section,
.b3-lead-section,
.b3-resident-group,
.b3-video-section,
.b3-collection-waiting,
.b3-statement,
.b3-about-points,
.b3-about-values,
.b3-contact-content { padding-block:2.5rem; }
.b3-photographer,
.b3-video-section,
.b3-collection-waiting,
.b3-about-values,
.b3-contact-content { padding-bottom:5rem; }
.b3-gallery-heading { display:grid; gap:1.25rem; align-items:end; margin-bottom:1.5rem; }
.b3-gallery-heading .byno-section-title { margin-top:1rem; }
.b3-gallery-heading > p { max-width:35rem; margin:0; color:rgba(255,255,255,.66); line-height:1.8; }
.b3-gallery-grid { display:grid; gap:1.25rem; }
.b3-collection-card { min-width:0; overflow:hidden; color:inherit; text-decoration:none; }
.b3-collection-card[hidden] { display:none; }
.b3-collection-media { min-height:0; aspect-ratio:5/4; }
.b3-collection-card.is-lead .b3-collection-media,
.b3-collection-card.is-photo .b3-collection-media { aspect-ratio:4/5; }
.b3-collection-card.is-poster .b3-collection-media { aspect-ratio:113/160; background:#000; }
.b3-collection-card.is-poster .b3-collection-media > img { object-fit:contain !important; }
.b3-collection-overlay { position:absolute; z-index:3; inset:auto 0 0; padding:5rem 1rem 1rem; background:linear-gradient(transparent,rgba(0,0,0,.96)); }
.b3-collection-overlay > div { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; margin-bottom:.8rem; }
.b3-collection-overlay > div > span:not(.byno-chip-cyan),
.b3-collection-overlay > strong { color:rgba(255,255,255,.58); text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; }
.b3-collection-overlay .byno-label { margin:0 0 .45rem; }
.b3-collection-overlay .byno-card-title { margin:0; }
.b3-collection-overlay > strong { display:block; margin-top:.5rem; }
.b3-collection-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1rem; }
.b3-collection-copy p { margin:0; color:rgba(255,255,255,.66); font-size:.875rem; line-height:1.75; }
.b3-collection-copy span { color:#a5f3fc; text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; font-weight:900; }
.b3-photographer-panel { display:grid; gap:1.25rem; align-items:center; padding:1.25rem; }
.b3-photographer-image { width:6rem; height:6rem; overflow:hidden; border-radius:50%; }
.b3-photographer-image img { object-fit:cover !important; }
.b3-photographer-panel .byno-panel-title { margin-top:.65rem; font-size:clamp(1.75rem,4vw,2.5rem); }
.b3-photographer-panel p:not(.byno-label) { margin:.65rem 0 0; color:rgba(255,255,255,.66); }

.b3-collection-hero { position:relative; isolation:isolate; overflow:hidden; border-bottom:1px solid rgba(255,255,255,.1); background:#050505; }
.b3-collection-backdrop { position:absolute; z-index:-1; inset:0; opacity:.32; }
.b3-collection-backdrop img { width:100%; height:100%; object-fit:cover !important; filter:saturate(.8); }
.b3-collection-backdrop span { position:absolute; inset:0; background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.76) 48%,rgba(0,0,0,.42)),linear-gradient(180deg,transparent,#050505); }
.b3-collection-hero .byno-section { padding-block:4rem; }
.b3-collection-hero .byno-page-title { max-width:60rem; margin-top:1.25rem; }
.b3-collection-hero .byno-lede { max-width:44rem; margin-top:1.5rem; color:rgba(255,255,255,.75); }
.b3-collection-hero .byno-actions { margin-top:2rem; }
.b3-in-frame .byno-drop-card { max-width:55rem; padding:1.5rem; }
.b3-in-frame .byno-panel-title { margin-top:.7rem; }
.b3-in-frame p:last-child { max-width:40rem; margin:1rem 0 0; color:rgba(255,255,255,.66); line-height:1.8; }
.b3-detail-heading { max-width:50rem; margin-bottom:1.75rem; }
.b3-detail-heading .byno-section-title { margin-top:.8rem; }
.b3-promo-video { width:min(100%,26.25rem); padding:.75rem; }
.b3-promo-video video { display:block; width:100%; max-height:44rem; background:#000; }
.b3-promo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.b3-promo-card { min-width:0; aspect-ratio:113/160; }
.b3-promo-card img { object-fit:contain !important; }
.b3-lead-grid { display:grid; gap:1.25rem; align-items:start; }
.b3-lead-image { min-width:0; overflow:hidden; padding:.75rem; }
.b3-lead-image .byno-media-strip { min-height:0; aspect-ratio:4/5; }
.b3-lead-image.is-secondary .byno-media-strip { aspect-ratio:16/10; }
.b3-media-label { position:absolute; z-index:3; inset:auto 0 0; padding:3rem 1rem 1rem; background:linear-gradient(transparent,rgba(0,0,0,.9)); color:#fff; text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; font-weight:900; }
.b3-resident-group { display:grid; gap:1.5rem; border-top:1px solid rgba(255,255,255,.1); }
.b3-resident-name .byno-panel-title { margin-top:.65rem; }
.b3-resident-images { display:grid; gap:.9rem; }
.b3-resident-image { min-width:0; overflow:hidden; padding:.5rem; }
.b3-resident-image .byno-media-strip { min-height:0; aspect-ratio:4/5; }
.b3-resident-image.is-featured .byno-media-strip { min-height:26rem; aspect-ratio:auto; }
.b3-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.b3-video-card { min-width:0; padding:.75rem; }
.b3-video-card .byno-label { min-height:2.2rem; margin:.25rem .25rem .75rem; }
.b3-video-card video { display:block; width:100%; max-height:32rem; aspect-ratio:9/16; background:#000; object-fit:contain; }

.b3-about-hero { border-bottom-color:rgba(34,211,238,.28); }
.b3-statement-panel { display:grid; gap:2rem; padding:1.5rem; background:radial-gradient(circle at 90% 0,rgba(34,211,238,.1),transparent 28rem),#020608; }
.b3-statement-heading .byno-panel-title { margin-top:.8rem; }
.b3-statement-heading > span { display:block; width:4rem; height:2px; margin:1.5rem 0; background:#22d3ee; }
.b3-statement-heading > p:last-child { max-width:19rem; color:rgba(255,255,255,.58); line-height:1.7; }
.b3-statement blockquote { margin:0; padding:0 0 0 1.5rem; border-left:2px solid rgba(34,211,238,.7); }
.b3-statement blockquote > div { display:grid; gap:1.25rem; color:rgba(255,255,255,.8); font-size:clamp(1.05rem,2vw,1.25rem); line-height:1.85; }
.b3-statement blockquote p { margin:0; }
.b3-statement blockquote footer { display:grid; gap:.2rem; margin-top:1.75rem; }
.b3-statement blockquote footer strong { text-transform:uppercase; letter-spacing:.13em; }
.b3-statement blockquote footer span { color:#67e8f9; text-transform:uppercase; letter-spacing:.18em; font-size:.68rem; }
.b3-about-points { display:grid; gap:1.5rem; }
.b3-about-points article { padding-top:1.25rem; border-top:1px solid rgba(255,255,255,.16); }
.b3-about-points article > p:last-child { margin:1rem 0 0; color:rgba(255,255,255,.68); line-height:1.85; }
.b3-about-values { display:grid; gap:2rem; border-block:1px solid rgba(255,255,255,.11); }
.b3-about-values .byno-section-title { margin-top:1rem; }
.b3-about-values > p { margin:0; color:rgba(255,255,255,.7); line-height:1.9; }

.b3-contact-grid { display:grid; gap:1.25rem; align-items:start; }
.b3-direct-contact,
.b3-contact-form-panel { min-width:0; padding:1.5rem; }
.b3-direct-contact .byno-panel-title,
.b3-contact-form-panel .byno-panel-title { margin-top:.8rem; }
.b3-direct-contact > p:not(.byno-label),
.b3-contact-form-panel > p:not(.byno-label) { color:rgba(255,255,255,.66); line-height:1.8; }
.b3-direct-contact .byno-cta { width:100%; margin-top:1.5rem; }
.b3-public-form { display:grid; gap:1.15rem; margin-top:1.75rem; }
.b3-contact-field-grid { display:grid; gap:1.15rem; }
.b3-public-form label { display:grid; gap:.45rem; color:#fff; font-size:.85rem; }
.b3-public-form label > strong { font-size:.78rem; text-transform:uppercase; letter-spacing:.11em; }
.b3-public-form label > span { color:rgba(255,255,255,.5); font-size:.75rem; line-height:1.5; }
.b3-public-form input,
.b3-public-form select,
.b3-public-form textarea { width:100%; min-height:3.35rem; padding:.85rem 1rem; border:1px solid rgba(255,255,255,.14); border-radius:0; background:#020608; color:#fff; font:inherit; box-shadow:none; }
.b3-public-form select { color-scheme:dark; }
.b3-public-form textarea { min-height:11rem; resize:vertical; line-height:1.6; }
.b3-public-form input::placeholder,
.b3-public-form textarea::placeholder { color:rgba(255,255,255,.35); }
.b3-public-form input:hover,
.b3-public-form select:hover,
.b3-public-form textarea:hover { border-color:rgba(103,232,249,.35); }
.b3-public-form input:focus-visible,
.b3-public-form select:focus-visible,
.b3-public-form textarea:focus-visible { outline:2px solid rgba(103,232,249,.82); outline-offset:2px; border-color:#67e8f9; }
.b3-public-form :user-invalid { border-color:rgba(248,113,113,.65); }
.b3-public-form .form-note { margin:0; color:rgba(255,255,255,.47); font-size:.72rem; line-height:1.6; }
.b3-public-form .byno-cta { width:100%; border:1px solid #22d3ee; cursor:pointer; }
.b3-public-form .byno-cta:disabled { cursor:wait; opacity:.62; }
.public-feedback { position:relative; z-index:3; margin-block:1.25rem; padding:1rem 1.25rem; border:1px solid rgba(255,255,255,.14); background:#071015; }
.public-feedback strong,
.public-feedback span { display:block; }
.public-feedback span { margin-top:.35rem; color:rgba(255,255,255,.68); }
.public-feedback.success { border-color:rgba(34,211,238,.55); }
.public-feedback.error { border-color:rgba(248,113,113,.65); }

@media (min-width:640px) {
  .b3-page-hero .byno-section,
  .b3-collection-hero .byno-section { padding-block:5rem; }
  .b3-gallery-collections,
  .b3-photographer,
  .b3-in-frame,
  .b3-gallery-video,
  .b3-promo-section,
  .b3-lead-section,
  .b3-resident-group,
  .b3-video-section,
  .b3-statement,
  .b3-about-points,
  .b3-about-values,
  .b3-contact-content { padding-block:3.5rem; }
  .b3-photographer,
  .b3-video-section,
  .b3-about-values,
  .b3-contact-content { padding-bottom:5rem; }
  .b3-gallery-heading { grid-template-columns:minmax(0,1fr) minmax(16rem,32rem); }
  .b3-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-gallery-grid.gallery-count-1 { grid-template-columns:minmax(0,min(100%,45rem)); }
  .b3-gallery-grid.gallery-count-3 .b3-collection-card.is-lead { grid-row:span 2; }
  .b3-gallery-grid.gallery-count-3 .b3-collection-card:not(.is-lead) .b3-collection-media { aspect-ratio:5/3; }
  .b3-photographer-panel { grid-template-columns:6rem minmax(0,1fr) auto; padding:1.5rem; }
  .b3-promo-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
  .b3-resident-images { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-resident-images.image-count-1 { grid-template-columns:minmax(0,min(100%,35rem)); }
  .b3-resident-images.image-count-3 .b3-resident-image.is-featured { grid-row:span 2; }
  .b3-video-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
  .b3-statement-panel { padding:2rem; }
  .b3-about-points { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .b3-contact-field-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-direct-contact,
  .b3-contact-form-panel { padding:2rem; }
}
@media (min-width:900px) {
  .b3-lead-grid.lead-count-2 { grid-template-columns:minmax(0,5fr) minmax(0,7fr); }
  .b3-lead-image.is-secondary { margin-top:4rem; }
  .b3-resident-group { grid-template-columns:13.75rem minmax(0,1fr); }
  .b3-contact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-contact-grid.no-direct { grid-template-columns:minmax(0,min(100%,50rem)); }
}
@media (min-width:1024px) {
  .b3-promo-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .b3-resident-images.image-count-3 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-about-values { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); align-items:center; }
}
@media (min-width:1280px) {
  .b3-gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .b3-gallery-grid.gallery-count-1 { grid-template-columns:minmax(0,min(100%,45rem)); }
  .b3-gallery-grid.gallery-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-gallery-grid.gallery-count-3 .b3-collection-card.is-lead { grid-row:auto; }
  .b3-gallery-grid.gallery-count-3 .b3-collection-card:not(.is-lead) .b3-collection-media { aspect-ratio:5/4; }
  .b3-resident-images { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .b3-resident-images.image-count-1 { grid-template-columns:minmax(0,min(100%,35rem)); }
  .b3-resident-images.image-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-resident-images.image-count-3 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .b3-video-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media (max-width: 1023px) {
  .header-instagram { display: none; }
  .byno-event-detail .byno-event-hero-grid { grid-template-columns:minmax(0,1fr); }
  .byno-home-hero-grid { min-height: auto; grid-template-columns: 1fr; padding-block: 5.5rem; }
  .byno-hero-stage > .byno-hero-backdrop { inset: 28% 0 0 22%; }
  .byno-hero-drop { width: min(100%,35rem); }
  .byno-hero-grid { min-height: auto; grid-template-columns: 1fr; padding-block: 5.5rem; }
  .byno-hero-backdrop { inset: 28% 0 0 22%; }
  .byno-hero-drop { width: min(100%, 35rem); }
  .byno-main-drop { grid-template-columns: minmax(15rem,.7fr) minmax(0,1fr); }
  .byno-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .byno-home-heading { grid-template-columns: 1fr; }
  .byno-home-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .byno-event-hero-grid { min-height: auto; }
  .byno-event-hero-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .byno-fact-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .is-preview .site-header { top: 4.6rem; }
  .desktop-nav { display: none; }
  .mobile-nav { display: block; }
  .header-inner { min-height: 4.3rem; justify-content: center; }
  .logo img { width: 9.75rem; }
  .byno-display { font-size: clamp(3.55rem,15vw,6rem); }
  .byno-heading { font-size: clamp(2.75rem,12vw,4.6rem); }
  .byno-main-drop,
  .byno-event-body,
  .byno-event-hero-grid { grid-template-columns: 1fr; }
  .byno-main-event,
  .byno-event-info-grid,
  .byno-event-media-layout { grid-template-columns: 1fr; }
  .byno-event-hero-poster { justify-self: start; width: min(100%,26rem); }
  .byno-main-drop .byno-frame { width: min(100%,31rem); }
  .byno-event-poster { justify-self: start; width: min(100%,26rem); }
  .byno-section-heading { display: block; }
  .byno-section-heading .byno-copy { margin-top: 1rem; }
  .byno-gallery-board { grid-template-columns: 1fr; grid-auto-rows: auto; }
  .byno-gallery-board .byno-gallery-card:first-child { grid-row: auto; }
  .byno-gallery-card .byno-frame { min-height: 20rem; }
  .byno-event-grid,
  .byno-event-grid.archive-count-1,
  .byno-event-grid.archive-count-2 { grid-template-columns: 1fr; }
  .byno-event-grid.archive-count-1 .byno-drop-card { grid-template-columns: 1fr; }
  .byno-event-grid.archive-count-1 .byno-frame { min-height: 0; aspect-ratio: 4/5; }
  .byno-event-grid.is-single .byno-event-card { grid-template-columns: 1fr; }
  .byno-event-grid.is-single .byno-poster-frame { min-height: 0; height: auto; aspect-ratio: 4/5; }
  .archive-count-1 .byno-event-card,
  .byno-event-card { grid-template-columns: 1fr; }
  .archive-count-1 .byno-poster-frame { min-height: 0; height: auto; aspect-ratio: 4/5; }
  .byno-media-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer-inner { grid-template-columns: 1fr; text-align: center; }
  .footer-nav { justify-content: center; }
  .footer-links { justify-self: center; justify-content: center; text-align: center; }
  .footer-actions { justify-self: center; justify-content: center; text-align: center; }
}

@media (max-width: 639px) {
  .preview-banner { align-items: flex-start; justify-content: flex-start; }
  .preview-banner span { width: 100%; }
  .byno-hero-stage, .byno-hero-grid { min-height: auto; }
  .byno-hero-grid { padding-block: 4rem 4.8rem; }
  .byno-hero-backdrop { inset: 35% -45% 0 15%; opacity: .16; }
  .byno-lede { font-size: 1rem; }
  .byno-actions .byno-button { flex: 1 1 9.5rem; padding-inline: .75rem; }
  .byno-signal-grid { grid-template-columns: 1fr; }
  .byno-home-team-grid { grid-template-columns: 1fr; }
  .byno-signal { min-height: 0; }
  .byno-main-drop { padding-block: 4.5rem; }
  .byno-team-grid { grid-template-columns: 1fr; }
  .byno-event-meta { grid-template-columns: 1fr; }
  .byno-fact-grid { grid-template-columns: 1fr 1fr; }
  .byno-event-hero-grid { padding-block: 4rem; }
  .byno-lineup, .byno-media-grid { grid-template-columns: 1fr; }
  .byno-lineup-list { grid-template-columns: 1fr; }
  .byno-close { text-align: left; }
  .byno-close .byno-heading, .byno-close .byno-lede { margin-inline: 0; }
  .byno-close .byno-actions { justify-content: flex-start; }
}

@media (min-width: 640px) {
  .byno-section { padding-inline: 1.5rem; }
  .byno-lineup-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .byno-event-poster-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
  .byno-event-poster-grid.poster-count-1 { grid-template-columns:minmax(0,min(100%,23.75rem)); }
  .byno-event-poster-grid.poster-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .byno-event-other-media { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .byno-event-other-media.media-count-1 { grid-template-columns:minmax(0,min(100%,32rem)); }
}

@media (min-width: 1024px) {
  .byno-event-poster-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .byno-event-poster-grid.poster-count-1 { grid-template-columns:minmax(0,min(100%,23.75rem)); }
  .byno-event-poster-grid.poster-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .byno-event-poster-grid.poster-count-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .byno-event-other-media { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .byno-event-other-media.media-count-1 { grid-template-columns:minmax(0,min(100%,32rem)); }
  .byno-event-other-media.media-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (min-width: 1280px) {
  .byno-event-facts { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .byno-frame img, .byno-frame video, .byno-button { transform: none !important; }
}

/* Phase 7 custom Event billing and running order */
.byno-event-notice{margin:1.25rem 0;padding:1rem 1.1rem;border:1px solid rgba(101,210,236,.38);background:rgba(5,24,31,.8)}.byno-event-notice strong{display:block;color:var(--byno-white);font-family:var(--byno-display);font-size:1.15rem;text-transform:uppercase}.byno-event-notice p{margin:.35rem 0 0}.byno-event-notice.is-cancelled{border-color:rgba(255,130,138,.55);background:rgba(91,23,31,.25)}.byno-custom-lineup{padding-block:clamp(4rem,8vw,7.5rem);overflow:hidden}.byno-lineup-intro{display:grid;gap:.75rem;max-width:52rem;margin-bottom:clamp(2rem,5vw,4rem)}.byno-lineup-intro h2,.byno-lineup-section h3{overflow-wrap:anywhere}.byno-lineup-sections{display:grid;gap:clamp(2.7rem,7vw,6rem)}.byno-lineup-section{position:relative;min-width:0;padding-top:1.15rem;border-top:1px solid rgba(101,210,236,.32)}.byno-lineup-section-title{margin:0 0 1.35rem;color:var(--byno-cyan);font-size:.72rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.byno-lineup-artists{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.byno-lineup-artist{min-width:0}.byno-lineup-name{display:block;color:var(--byno-white);font-family:var(--byno-display);font-weight:900;line-height:.92;text-transform:uppercase;overflow-wrap:anywhere;word-break:normal}.byno-lineup-name a{color:inherit;text-decoration:none}.byno-lineup-name a:hover,.byno-lineup-name a:focus-visible{color:var(--byno-cyan)}.byno-lineup-artist-links{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin-top:.6rem}.byno-lineup-artist-links a{color:var(--byno-cyan);font-size:.7rem;font-weight:850;letter-spacing:.11em;text-decoration:none;text-transform:uppercase}.byno-lineup-artist-links a:hover,.byno-lineup-artist-links a:focus-visible{color:var(--byno-white);text-decoration:underline;text-underline-offset:.22rem}.byno-lineup-section.is-hero .byno-lineup-artists{gap:1.25rem}.byno-lineup-section.is-hero .byno-lineup-name{font-size:clamp(3rem,9vw,8.1rem);letter-spacing:-.035em}.byno-lineup-section.is-featured .byno-lineup-name{font-size:clamp(2.35rem,6.5vw,5.6rem);letter-spacing:-.025em}.byno-lineup-section.is-standard .byno-lineup-artists{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem}.byno-lineup-section.is-standard .byno-lineup-name{font-size:clamp(1.75rem,4vw,3.5rem)}.byno-lineup-section.is-compact .byno-lineup-artists{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem 1.5rem}.byno-lineup-section.is-compact .byno-lineup-name{font-size:clamp(1.3rem,2.7vw,2.25rem);line-height:1}.byno-lineup-section.is-preview-hidden{opacity:.52}.byno-lineup-section.is-preview-hidden::after{content:'Hidden in public';position:absolute;right:0;top:.75rem;color:var(--byno-muted);font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.byno-lineup-artist.is-preview-hidden{opacity:.45}.byno-running-order{padding-block:clamp(3.5rem,7vw,6.5rem)}.byno-running-head{display:grid;gap:.75rem;max-width:48rem;margin-bottom:2rem}.byno-running-list{margin:0;padding:0;border-top:1px solid rgba(101,210,236,.28);list-style:none}.byno-running-entry{display:grid;grid-template-columns:minmax(8rem,.55fr) minmax(0,1.8fr) minmax(7rem,.6fr);gap:1.25rem;align-items:baseline;padding:1rem 0;border-bottom:1px solid rgba(101,210,236,.2)}.byno-running-entry time{color:var(--byno-cyan);font-family:var(--byno-display);font-size:1.3rem;font-weight:900}.byno-running-entry strong{margin:0;color:var(--byno-white);font-size:1rem;font-weight:800;overflow-wrap:anywhere}.byno-running-entry>span{color:var(--byno-muted);font-size:.72rem;font-weight:800;letter-spacing:.11em;text-align:right;text-transform:uppercase}.byno-running-entry.is-preview-hidden{opacity:.45}.byno-visitor-info{margin-top:1rem}.byno-visitor-list{display:grid;gap:1rem;margin-top:1.2rem}.byno-visitor-list article{display:grid;grid-template-columns:minmax(7rem,.45fr) minmax(0,1.55fr);gap:1rem;padding-top:1rem;border-top:1px solid rgba(101,210,236,.18)}.byno-visitor-list h3{margin:0;color:var(--byno-cyan);font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.byno-visitor-list p{margin:0;color:var(--byno-white);white-space:pre-line}.byno-event-hero-poster{height:auto;align-self:start}.byno-event-hero-poster img{height:auto;max-height:min(74vh,52rem);object-fit:contain}.byno-event-final-actions{display:flex;flex-wrap:wrap;gap:.75rem}
@media(max-width:900px){.byno-lineup-section.is-compact .byno-lineup-artists{grid-template-columns:repeat(2,minmax(0,1fr))}.byno-running-entry{grid-template-columns:7rem minmax(0,1fr)}.byno-running-entry>span{grid-column:2;text-align:left}}
@media(max-width:639px){.byno-event-hero-poster{order:-1;width:min(100%,25rem);margin-inline:auto}.byno-lineup-section.is-standard .byno-lineup-artists,.byno-lineup-section.is-compact .byno-lineup-artists{grid-template-columns:1fr}.byno-lineup-section.is-hero .byno-lineup-name{font-size:clamp(2.7rem,15vw,5.4rem)}.byno-lineup-section.is-featured .byno-lineup-name{font-size:clamp(2.2rem,12vw,4.2rem)}.byno-lineup-section.is-standard .byno-lineup-name{font-size:clamp(1.8rem,9vw,3rem)}.byno-running-entry{grid-template-columns:1fr;gap:.25rem;padding:1rem 0}.byno-running-entry>span{grid-column:auto}.byno-visitor-list article{grid-template-columns:1fr;gap:.4rem}.byno-event-final-actions,.byno-event-final-actions .byno-button{width:100%}}
/* Adaptive Event artwork.
   The server supplies purpose, intrinsic dimensions and a bounded shape class.
   Posters stay complete; editorial cover photos use their saved focal point. */
.byno-event-image {
  --event-focus-x: 50%;
  --event-focus-y: 50%;
  min-width: 0;
  min-height: 0;
  height: auto;
  align-self: center;
  justify-self: stretch;
  aspect-ratio: auto;
}
.byno-event-image img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain !important;
  object-position: var(--event-focus-x) var(--event-focus-y);
}
.byno-event-image.fit-cover { aspect-ratio: 8 / 5; }
.byno-event-image.fit-cover.is-square { aspect-ratio: 1; }
.byno-event-image.fit-cover.is-portrait { aspect-ratio: 4 / 5; }
.byno-event-image.fit-cover.is-extreme-wide { aspect-ratio: 2 / 1; }
.byno-event-image.fit-cover.is-extreme-tall { aspect-ratio: 3 / 4; }
.byno-event-image.fit-cover.is-unknown { aspect-ratio: 8 / 5; }
.byno-event-image.fit-cover img {
  height: 100%;
  object-fit: cover !important;
}
.byno-event-image.fit-contain.is-extreme-wide { aspect-ratio: 2 / 1; }
.byno-event-image.fit-contain.is-extreme-tall { aspect-ratio: 3 / 4; }
.byno-event-image.fit-contain.is-unknown { aspect-ratio: 4 / 5; }
.byno-event-image.fit-contain.is-extreme-wide img,
.byno-event-image.fit-contain.is-extreme-tall img,
.byno-event-image.fit-contain.is-unknown img {
  height: 100%;
}.byno-event-image.is-low-resolution {
  width: min(100%, 18rem);
  max-width: 18rem;
  justify-self: center;
}
.focus-x-0 { --event-focus-x: 0%; }
.focus-x-10 { --event-focus-x: 10%; }
.focus-x-20 { --event-focus-x: 20%; }
.focus-x-30 { --event-focus-x: 30%; }
.focus-x-40 { --event-focus-x: 40%; }
.focus-x-50 { --event-focus-x: 50%; }
.focus-x-60 { --event-focus-x: 60%; }
.focus-x-70 { --event-focus-x: 70%; }
.focus-x-80 { --event-focus-x: 80%; }
.focus-x-90 { --event-focus-x: 90%; }
.focus-x-100 { --event-focus-x: 100%; }
.focus-y-0 { --event-focus-y: 0%; }
.focus-y-10 { --event-focus-y: 10%; }
.focus-y-20 { --event-focus-y: 20%; }
.focus-y-30 { --event-focus-y: 30%; }
.focus-y-40 { --event-focus-y: 40%; }
.focus-y-50 { --event-focus-y: 50%; }
.focus-y-60 { --event-focus-y: 60%; }
.focus-y-70 { --event-focus-y: 70%; }
.focus-y-80 { --event-focus-y: 80%; }
.focus-y-90 { --event-focus-y: 90%; }
.focus-y-100 { --event-focus-y: 100%; }

.byno-home-hero-grid.has-no-event-media {
  grid-template-columns: minmax(0, 54rem);
}
.byno-hero-drop.has-no-event-media > div,
.byno-main-event.has-no-event-media,
.byno-event-card.has-no-event-media,
.byno-event-detail .byno-event-hero-grid.has-no-event-media {
  grid-template-columns: minmax(0, 1fr);
}
.byno-hero-poster.byno-event-image,
.byno-main-event-media,
.byno-event-card-media {
  width: 100%;
  max-height: none;
}
.byno-main-event,
.byno-event-card {
  align-items: center;
}
.byno-event-grid.is-single .byno-event-image,
.byno-event-grid.archive-count-1 .byno-event-image,
.archive-count-1 .byno-event-image {
  height: auto;
  min-height: 0;
}
.byno-event-detail .byno-event-hero-grid {
  align-items: center;
}
.byno-event-hero-poster.byno-event-image {
  width: min(100%, 23.75rem);
  justify-self: end;
  aspect-ratio: auto;
}
.byno-event-hero-poster.is-square { width: min(100%, 27rem); }
.byno-event-hero-poster.is-landscape { width: min(100%, 32rem); }
.byno-event-hero-poster.is-extreme-wide { width: min(100%, 35rem); }
.byno-event-hero-poster.is-extreme-tall { width: min(100%, 21rem); }
.byno-event-hero-poster.fit-cover.is-landscape,
.byno-event-hero-poster.fit-cover.is-square,
.byno-event-hero-poster.fit-cover.is-portrait {
  width: min(100%, 32rem);
}
.byno-event-poster-card {
  min-width: 0;
  aspect-ratio: auto;
}
.byno-event-poster-card .byno-event-image {
  width: 100%;
}

@media (max-width: 767px) {
  .byno-home-hero-grid.has-no-event-media,
  .byno-hero-drop.has-no-event-media > div,
  .byno-main-event,
  .byno-event-card,
  .byno-event-detail .byno-event-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .byno-event-hero-poster.byno-event-image {
    order: -1;
    width: min(100%, 29rem);
    margin-inline: auto;
    justify-self: center;
  }

}
