/*! SNOWY-Z — Bespoke Sub-Brand Styles */

.view-snowy-z {
  --sz-void: #08080f;
  --sz-periwinkle: #8fa3ff;
  --sz-periwinkle-bright: #c2ceff;
  --sz-pink: #ff5fc4;
  --sz-font: 'Oswald', var(--font-display);
}
.view-snowy-z .sz-eyebrow {
  font-family: var(--font-mono); font-size: .74rem; letter-spacing: .2em; text-transform: uppercase;
  color: var(--sz-periwinkle-bright); display: inline-flex; align-items: center; gap: 10px;
}
.view-snowy-z .sz-eyebrow::before { content: ''; width: 26px; height: 1px; background: var(--sz-pink); }
.view-snowy-z h2 { font-family: var(--sz-font); font-weight: 600; text-transform: uppercase; letter-spacing: .01em; }
.view-snowy-z .sz-btn-primary { background: linear-gradient(120deg, var(--sz-periwinkle), var(--sz-pink)); color: #08080f; }
.view-snowy-z .sz-btn-primary:hover { box-shadow: 0 0 28px rgba(143,163,255,.5); }

.sz-hero { position: relative; min-height: 96vh; display: flex; align-items: flex-end; overflow: hidden; background: var(--sz-void); }
.sz-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }
.sz-hero__scrim {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 60% 55% at 50% 25%, rgba(143,163,255,.18), transparent 60%),
    linear-gradient(to top, var(--sz-void) 10%, rgba(8,8,15,.4) 45%, rgba(8,8,15,.4) 100%);
}
.sz-hero__content { position: relative; z-index: 2; padding: calc(var(--nav-h) + 3rem) 0 5rem; }
.sz-hero__title {
  font-family: var(--sz-font); font-weight: 700; font-size: clamp(4rem, 11vw, 8.5rem); line-height: .88;
  letter-spacing: .01em; text-transform: uppercase; margin: .6rem 0 1.1rem; color: #fff;
  text-shadow: 0 0 50px rgba(143,163,255,.35);
}
.sz-hero__tagline { font-family: var(--font-mono); color: var(--mist); font-size: clamp(1rem, 1.6vw, 1.2rem); max-width: 44ch; margin-bottom: 2rem; }
.sz-hero__cta { display: flex; gap: 14px; flex-wrap: wrap; }

.sz-quote { background: linear-gradient(180deg, var(--sz-void), var(--void) 60%); text-align: center; padding: clamp(3rem, 7vw, 5rem) 0; }
.sz-quote__mark { font-family: var(--sz-font); font-size: 5rem; color: var(--sz-pink); line-height: .5; margin-bottom: .5rem; opacity: .7; }
.sz-quote__text { font-family: var(--sz-font); font-size: clamp(1.4rem, 3vw, 2.1rem); text-transform: uppercase; max-width: 20ch; margin: 0 auto 1rem; color: #fff; line-height: 1.25; }
.sz-quote__attr { font-family: var(--font-mono); font-size: .8rem; color: var(--mist); }

.sz-discography__grid { display: grid; grid-template-columns: .55fr 1fr; gap: 50px; align-items: start; }
@media (max-width: 860px) { .sz-discography__grid { grid-template-columns: 1fr; } }
.sz-discography__art { border-radius: var(--radius-lg); overflow: hidden; border: 1px solid rgba(143,163,255,.25); position: sticky; top: 110px; box-shadow: 0 30px 80px -30px rgba(255,95,196,.25); }
.sz-discography__art img { width: 100%; display: block; }
.sz-discography h2 { font-size: var(--fs-h2); margin: .5rem 0 1.6rem; }
.sz-discography__release { font-family: var(--font-mono); font-size: .8rem; letter-spacing: .05em; text-transform: uppercase; color: var(--sz-periwinkle-bright); margin: 2rem 0 .6rem; padding-top: 1.2rem; border-top: 1px solid var(--line-soft); }
.sz-discography__release:first-of-type { margin-top: 0; border-top: none; padding-top: 0; }
.sz-discography__release span { color: var(--mist-dim); font-weight: 400; margin-left: 10px; text-transform: none; letter-spacing: normal; }
.view-snowy-z .track-row.is-active .track-row__title { color: var(--sz-periwinkle-bright); }
.view-snowy-z .track-row__eq span { background: var(--sz-pink); }
.view-snowy-z .track-row:hover { background: rgba(143,163,255,.06); }

.sz-gallery { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 760px) { .sz-gallery { grid-template-columns: repeat(2, 1fr); } }
