/* Isolated portrait study: production index and banner remain unchanged. */
.artist-hero-portrait{background:var(--bg);border-top:0;border-bottom:0}
.artist-hero-portrait .artist-stage{width:100%;max-width:1120px;min-height:510px;height:510px;aspect-ratio:auto;padding:40px 7%;display:grid;grid-template-columns:46% 54%;gap:0;isolation:isolate}
.artist-hero-portrait .artist-stage:before,.artist-hero-portrait .artist-stage:after{display:none}
.artist-hero-portrait .artist-portrait{position:absolute;inset:auto auto 0 3%;height:100%;width:44%;object-fit:contain;object-position:center bottom;z-index:-1;filter:grayscale(1);mask-image:linear-gradient(to bottom,#000 80%,transparent 100%);mask-composite:add}
.artist-hero-portrait .artist-light{display:block;inset:0;background:radial-gradient(ellipse at 40% 58%,#a3ded50b,transparent 35%);animation:none;z-index:-2}
.artist-hero-portrait .artist-copy{grid-column:2;position:relative;padding:0 0 0 12px;max-width:470px;background:none}
.artist-hero-portrait .artist-copy h1{margin:24px 0 20px}
.artist-hero-portrait .artist-copy>.eyebrow{font-size:10px;letter-spacing:.19em;color:#9daaaa}
.artist-hero-portrait .artist-genres{font-size:10px;letter-spacing:.13em;color:#9daaaa}
.artist-hero-portrait .artist-statement{font-size:25px;margin:26px 0;line-height:1.45;color:#d9dfdf}
.artist-hero-portrait .artist-copy .button{border-radius:2px;background:#b8d8d4;padding:14px 20px;font-size:13px}
.artist-hero-portrait .artist-baseline{max-width:1120px;font-size:10px;padding:18px 7%;color:#8d9a9b}
@media(min-width:1600px){.artist-hero-portrait .artist-stage{height:550px}}
@media(max-width:680px){
.artist-hero-portrait .artist-stage{height:auto;min-height:0;display:block;padding:320px 8% 34px}
.artist-hero-portrait .artist-portrait{inset:0 auto auto 0;width:100%;height:370px;object-position:center top;mask-image:linear-gradient(to bottom,#000 72%,transparent)}
.artist-hero-portrait .artist-copy{padding:0;max-width:420px;margin:auto;text-align:center}
.artist-hero-portrait .artist-copy h1{max-width:330px;margin:18px auto}
.artist-hero-portrait .artist-copy>.eyebrow{font-size:9px}
.artist-hero-portrait .artist-genres{font-size:9px}
.artist-hero-portrait .artist-statement{font-size:22px;margin:20px 0}
.artist-hero-portrait .artist-baseline{justify-content:center}
}

/* Let the original black photo background merge into the page itself. */
.artist-hero-portrait .artist-portrait{mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 80%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 7%,#000 68%,transparent 100%);mask-composite:intersect}
.artist-hero-portrait .artist-light{display:none}
@media(max-width:680px){.artist-hero-portrait .artist-portrait{mask-image:linear-gradient(90deg,transparent,#000 13%,#000 84%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 65%,transparent 100%);mask-composite:intersect}}

.artist-hero-portrait .artist-stage{background:var(--bg)}

/* Darker portrait treatment, with a gradual return to the page background. */
.artist-hero-portrait{background:linear-gradient(to bottom,#06090a 0%,#06090a 78%,var(--bg) 100%)} 
.artist-hero-portrait .artist-stage{background:#06090a}
.artist-hero-portrait .artist-portrait{filter:grayscale(1) brightness(.76) contrast(1.08)}

.artist-hero-portrait{background:#06090a}.artist-hero-portrait .artist-stage{background:linear-gradient(#06090a 85%,var(--bg))}.artist-hero-portrait .artist-baseline{background:var(--bg)}
.artist-hero-portrait .artist-stage{background:#06090a}.artist-hero-portrait .artist-baseline{background:transparent}.artist-hero-portrait:after{content:"";position:absolute;inset:auto 0 0;height:35px;background:linear-gradient(transparent,var(--bg));pointer-events:none}
/* A brief scan every fourteen seconds; keep the portrait still between passes. */
.portrait-scan{position:absolute;inset:auto auto 0 3%;width:44%;height:100%;pointer-events:none;z-index:0;mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent 5%,#000 28%,#000 67%,transparent 94%),linear-gradient(#000 65%,transparent 96%);mask-composite:intersect;animation:portrait-scan-pass 14s linear infinite}
.portrait-scan img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:grayscale(1) brightness(2.5) contrast(1.2)}
@keyframes portrait-scan-pass{0%,78%{opacity:0;clip-path:inset(7% 0 92% 0)}79%{opacity:0.85;clip-path:inset(7% 0 92% 0)}92%{opacity:0.85;clip-path:inset(86% 0 13% 0)}94%,100%{opacity:0;clip-path:inset(94% 0 5% 0)}}
@media(max-width:680px){.portrait-scan{inset:0 auto auto 0;width:100%;height:370px}.portrait-scan img{object-position:center top}}
@media(prefers-reduced-motion:reduce){.portrait-scan{display:none;animation:none}}

/* Match the deeper black of the story section. */
.artist-hero-portrait,.artist-hero-portrait .artist-stage{background:#000}
.artist-hero-portrait .artist-portrait{filter:grayscale(1) brightness(.66) contrast(1.12)}


/* Alternating scan and hologram, with quiet pauses between effects. */
.artist-hero-portrait .artist-portrait,.portrait-scan,.portrait-hologram{transform:scale(1.07);transform-origin:50% 85%}
.portrait-hologram{position:absolute;inset:auto auto 0 3%;height:100%;width:44%;pointer-events:none;z-index:0;mix-blend-mode:screen;opacity:0;mask-image:repeating-linear-gradient(#000 0 1px,transparent 1px 4px),linear-gradient(#000 65%,transparent 96%);mask-composite:intersect;animation:portrait-hologram 14s ease-in-out infinite}
.portrait-hologram img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:grayscale(1) sepia(.4) hue-rotate(115deg) saturate(1.4) brightness(1.4)}
@keyframes portrait-hologram{0%,27%,47%,100%{opacity:0}32%{opacity:.18}36%{opacity:.4}40%{opacity:.26}43%{opacity:.35}}
.artist-hero-portrait .artist-copy{isolation:isolate}

@media(max-width:680px){.portrait-hologram{inset:0 auto auto 0;width:100%;height:370px}.portrait-hologram img{object-position:center top}}
@media(prefers-reduced-motion:reduce){.portrait-hologram,}

/* Brief old-projector instability between the portrait scans. */
.artist-hero-portrait .artist-copy:after{display:none;animation:none}
.portrait-hologram{animation:portrait-signal 14s linear infinite;mask-image:repeating-linear-gradient(#000 0 1px,transparent 1px 3px),linear-gradient(#000 55%,transparent 96%);mask-composite:intersect}
.portrait-hologram img{filter:grayscale(1) sepia(1) hue-rotate(150deg) saturate(2) brightness(1.5)}
@keyframes portrait-signal{
0%,32%,43%,100%{opacity:0;transform:scale(1.07) translateX(0);clip-path:inset(0)}
33%{opacity:.45;transform:scale(1.07) translateX(-3px);clip-path:inset(0)}
33.5%{opacity:.12;transform:scale(1.07) translateX(4px);clip-path:inset(22% 0 38%)}
34%{opacity:.5;transform:scale(1.07) translateX(-2px);clip-path:inset(0)}
35%{opacity:.27;transform:scale(1.07) translateX(1px);clip-path:inset(0)}
36%{opacity:.38;transform:scale(1.07) translateX(0);clip-path:inset(0)}
38%{opacity:.3;transform:scale(1.07) translateX(0);clip-path:inset(0)}
39%{opacity:.55;transform:scale(1.07) translateX(4px);clip-path:inset(35% 0 12%)}
39.5%{opacity:.18;transform:scale(1.07) translateX(-3px);clip-path:inset(0)}
40%{opacity:.4;transform:scale(1.07) translateX(1px);clip-path:inset(0)}
42%{opacity:.15;transform:scale(1.07) translateX(0);clip-path:inset(0)}
}
@media(prefers-reduced-motion:reduce){.portrait-hologram{display:none;animation:none}}
