/* Approved hero: untouched artwork with editable HTML overlaid. */
.hero { aspect-ratio:1672/941; min-height:0; max-width:1800px; display:block; background:#050507; }
.hero .performers { position:absolute; inset:0; width:100%; height:100%; margin:0; mask-image:none; }
.hero .performers:after { display:none; }
.hero .performers img { width:100%; height:100%; object-fit:contain; }
.hero .site-header { position:absolute; inset:0 0 auto; padding:2% 3.6%; align-items:flex-start; flex-wrap:nowrap; }
.hero .brand-the { font-size:clamp(18px,1.6vw,29px); letter-spacing:.22em; }
.hero .brand-name { font-size:clamp(34px,3.7vw,66px); letter-spacing:.035em; line-height:1; font-weight:300; }
.hero .brand-record { display:inline-block; color:transparent; width:.76em; margin:0 .04em 0 .01em; background:radial-gradient(ellipse at center,transparent 42%,#f5f3f0 43% 45%,transparent 46% 49%,#f5f3f0 50% 52%,transparent 53% 56%,#f5f3f0 57% 59%,transparent 60% 63%,#f5f3f0 64% 66%,transparent 67%); }
.hero .genres { font-size:clamp(12px,.9vw,16px); color:#e8ce80; letter-spacing:.3em; gap:.85em; margin-top:1.1em; }
.hero .genres b { color:inherit; }
.hero nav { font-size:clamp(14px,1.05vw,19px); letter-spacing:.13em; gap:3.2vw; margin-left:auto; }
.hero nav a { padding:.8em 0; }
.hero nav .nav-contact { border:2px solid #efdfa2; border-radius:999px; padding:.8em 1.8em; color:#efdfa2; }
.hero .hero-copy { position:absolute; top:33.3%; left:3.6%; width:39%; margin:0; padding:0; }
.hero h1 { font-size:clamp(40px,5.3vw,95px); font-weight:400; line-height:.98; letter-spacing:-.065em; white-space:nowrap; text-shadow:0 2px 15px #0008; }
.hero h1 span { display:block; }
.hero h1 .headline-gold { font-size:.84em; line-height:1.15; color:#e6c783; }
.hero .hero-copy p { max-width:31em; width:79%; font-size:clamp(16px,1.38vw,25px); line-height:1.4; margin:1.5em 0 1.4em; color:#f5f3f0; text-shadow:0 2px 8px #000; }
.hero .hero-actions { gap:.7vw; margin:0; flex-wrap:nowrap; }
.hero .button { border-radius:999px; min-height:0; padding:.8em 1.7em; font-size:clamp(14px,1.02vw,18px); letter-spacing:.13em; }
.hero .watch-button { background:linear-gradient(#ebc888,#b79358); color:#100d08; font-weight:600; border:1px solid #e7c887; }
.hero .play { width:2em; height:2em; border:0; color:#edcb8e; background:#21190c; }
.hero .enquire-button { border:2px solid #eedb98; color:#f5f3f0; background:#05050785; min-width:11em; }
.hero .button:hover { filter:brightness(1.12); }
.hero .arrow { display:none; }
.hero-coda { position:absolute; bottom:4.4%; left:50%; transform:translateX(-50%); text-align:center; color:#e8ce80; font-size:clamp(12px,.9vw,16px); letter-spacing:.3em; white-space:nowrap; }
.hero-coda span { display:block; font-size:32px; line-height:1; margin-top:5px; }
@media(min-width:1800px) { .hero h1 { font-size:95px; } }
@media(max-width:1000px) {
 .hero { aspect-ratio:auto; display:flex; flex-direction:column; }
 .hero .site-header { position:relative; padding:24px 5%; flex-wrap:wrap; gap:24px; }
 .hero .brand-name { font-size:48px; }
 .hero .genres { font-size:13px; }
 .hero nav { gap:24px; font-size:14px; }
 .hero .performers { position:relative; inset:auto; height:auto; aspect-ratio:1672/941; order:1; }
 .hero .hero-content { order:2; }
 .hero .hero-copy { position:relative; top:auto; left:auto; width:auto; margin:24px 5% 0; }
 .hero h1 { font-size:clamp(38px,7vw,66px); }
 .hero .hero-copy p { width:100%; max-width:34em; font-size:18px; }
 .hero .hero-actions { gap:12px; flex-wrap:wrap; }
 .hero .button { min-height:54px; font-size:14px; }
 .hero-coda { position:relative; bottom:auto; left:auto; transform:none; order:3; margin:36px 5% 0; font-size:12px; white-space:normal; }
}
@media(max-width:600px) {
 .hero .site-header { display:block; padding:24px 6% 10px; }
 .hero .brand-name { font-size:clamp(30px,8.2vw,48px); }
 .hero .brand-the { font-size:18px; }
 .hero .genres { font-size:clamp(10px,2.5vw,14px); letter-spacing:.19em; gap:.6em; }
 .hero nav { justify-content:space-between; gap:8px; margin-top:22px; font-size:11px; }
 .hero nav .nav-contact { padding:.8em 1em; }
 .hero .performers { aspect-ratio:1; }
 .hero .performers img { object-fit:cover; object-position:85% center; }
 .hero .hero-copy { margin:24px 6% 0; }
 .hero h1 { font-size:clamp(36px,9vw,54px); white-space:normal; letter-spacing:-.055em; }
 .hero h1 .headline-gold { font-size:.84em; }
 .hero .hero-copy p { font-size:18px; }
 .hero .button { padding:.75em 1.15em; font-size:12px; }
}
@media(min-width:1001px) {
 .hero .brand-name { font-size:clamp(34px,4.1vw,74px); }
 .hero h1 .headline-gold { font-size:.91em; }
 .hero .hero-copy p { width:77%; font-size:clamp(16px,1.42vw,25px); margin-top:1.2em; }
}
.hero .brand-record { background-size:100% 76%; background-repeat:no-repeat; background-position:center; }
