:root {
  --navy: #050b13; --gold: #e9bd58; --gold2: #ffdd88; --paper: #f8f5ed;
  --blue: #102b63; --coral: #ff7154; --max: 1160px; --overlap: 24px;
  --panel: max(56.25vw, 100svh);
  --display: 'DIN Condensed', Impact, 'Arial Narrow', sans-serif;
  --sans: 'Helvetica Neue', Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 70px; }
body { margin: 0; background: var(--navy); color: #fff; font: 16px/1.45 var(--sans); }
body.menu-open, body.dialog-open { overflow: hidden; }
main { isolation: isolate; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img, video { display: block; max-width: 100%; }
figure { margin: 0; }
.container { width: min(calc(100% - 12vw), var(--max)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 5px; }
.site-header { position: fixed; z-index: 60; inset: 0 0 auto; display: grid; height: 76px; grid-template-columns: 1fr auto 1fr; align-items: center; padding-inline: 4.5vw; transition: background .25s, height .25s; }
.site-header.is-scrolled { height: 64px; background: rgba(3,9,16,.94); border-bottom: 1px solid #ffffff22; backdrop-filter: blur(14px); }
.wordmark span { font-family: 'Snell Roundhand', 'Segoe Script', cursive; font-size: clamp(25px,2.3vw,38px); font-style: italic; white-space: nowrap; }
.main-nav, .footer nav { display: flex; gap: clamp(22px,2.8vw,44px); }
.main-nav a, .footer nav a { font-family: var(--display); font-size: 16px; letter-spacing: .12em; text-transform: uppercase; }
.main-nav a:hover, .footer nav a:hover { color: var(--gold); }
.header-booking { justify-self: end; padding: 7px 30px; border: 1px solid var(--gold); border-radius: 999px; color: var(--gold); font: 18px var(--display); letter-spacing: .1em; text-transform: uppercase; }
.menu-toggle { display: none; border: 0; background: none; color: #fff; cursor: pointer; }
.menu-toggle i { display: block; width: 24px; height: 2px; margin: 5px; background: currentColor; }
.button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 10px; padding: 3px 28px 0; border: 1px solid transparent; border-radius: 999px; font: 17px var(--display); letter-spacing: .07em; text-transform: uppercase; cursor: pointer; transition: transform .25s, box-shadow .25s; text-align: center; }
.button:hover { transform: translateY(-2px); box-shadow: 0 10px 28px #0004; }
.button svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.button-gold { background: linear-gradient(120deg,var(--gold2),var(--gold)); color: #09111d; }
.button-outline { border-color: var(--gold); background: #03091144; color: #fff; }
.button-dark { border-color: var(--gold); background: #030911b3; color: #fff; }
.button-coral { background: linear-gradient(110deg,#ff9870,var(--coral)); color: #090f18; }
.compact { min-height: 40px; padding-inline: 22px; font-size: 17px; }
main > section { min-height: var(--panel); }
/* Real scroll-driven stacking: each next panel rises over the previous one.
   Taller mobile panels scroll fully before their last screen becomes sticky. */
.cinematic-panels main > section { position: sticky; top: min(0px,calc(100svh - var(--section-height,var(--panel)))); }
.hero { z-index: 1; position: relative; display: flex; align-items: center; overflow: hidden; background: #02070d; isolation: isolate; }
.hero-video, .hero-shade, .hero-grain, .music-video, .music-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-video { object-fit: cover; object-position: center; transform: scaleX(-1); }
.hero-shade { background: linear-gradient(90deg,#02070dd1 0%,#02070d66 47%,transparent 80%),linear-gradient(0deg,#02070d70,transparent 40%); }
.hero-grain { pointer-events: none; opacity: .1; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E"); }
.hero-content { position: relative; z-index: 2; padding-top: 40px; padding-bottom: 110px; }
.hero h1 { max-width: 82%; margin: 0; font: clamp(70px,7.5vw,128px)/1 var(--display); letter-spacing: -.025em; text-transform: uppercase; background: linear-gradient(#fff 35%,#fff2cd 72%,#edc36a); background-clip: text; color: transparent; }
.hero-content > p { margin: 16px 0 24px; font-size: clamp(16px,1.15vw,19px); letter-spacing: .02em; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 16px; }
.credentials { position: absolute; z-index: 3; inset: auto 0 0; padding-bottom: var(--overlap); border-top: 1px solid #e9bd585e; background: #030a12b8; backdrop-filter: blur(8px); }
.credential-row { display: grid; grid-template-columns: repeat(4,1fr); }
.credential-row > div { display: flex; height: 72px; align-items: center; justify-content: center; gap: 12px; position: relative; }
.credential-row > div + div::before { position: absolute; left: 0; height: 25px; width: 1px; background: var(--gold); content: ''; }
.credential-row svg { width: 32px; height: 32px; flex: none; fill: none; stroke: var(--gold); stroke-width: 1.6; }
.credential-row span { font: clamp(14px,1.2vw,20px) var(--display); letter-spacing: .035em; text-transform: uppercase; }
.overlay-section { position: relative; margin-top: calc(-1 * var(--overlap)); border-radius: 24px 24px 0 0; box-shadow: 0 -10px 32px #0003; overflow: hidden; }
/* Content stays visible without JS; sticky positioning supplies panel overlap. */
.tour { z-index: 2; background: var(--paper); color: #07152b; }
.music { z-index: 3; background: var(--navy); }
.story { z-index: 4; background: linear-gradient(180deg,#ddd1c8,#d9cbc2 75%,#d5cac9); color: #07152b; }
.career { z-index: 5; background: #040b13; }
.backstage { z-index: 6; background: #050d16; }
.booking { z-index: 7; background: #050b12; }
.tour-overlay { position: relative; display: flex; min-height: var(--panel); flex-direction: column; justify-content: center; gap: 34px; overflow: hidden; padding: 110px 0 100px; }
.tour-overlay::before { position: absolute; inset: 0; background: linear-gradient(90deg,#f8f5edfc,#f8f5edf8,#f8f5edfc),url('./assets/tour-atmosphere.webp') center/cover; content: ''; }
.tour-brush { position: absolute; z-index: 1; width: 65%; height: 46px; transform: skewX(-24deg) rotate(-12deg); opacity: .8; }
.tour-brush.red { top: 10%; left: -33%; background: linear-gradient(90deg,transparent,#d91f32,transparent); }
.tour-brush.blue { right: -27%; bottom: 12%; background: linear-gradient(90deg,transparent,#1554b3,transparent); }
.tour-showcase { position: relative; z-index: 2; display: grid; height: clamp(280px,24vw,380px); grid-template-columns: 29% 48% 23%; align-items: center; }
.tour-logo { width: 100%; max-width: 100%; margin-left: 0; filter: drop-shadow(0 12px 14px #07152b20); }
.tour-copy { position: relative; z-index: 2; padding-inline: 22px 0; }
.tour-copy h2 { margin: 0; color: var(--blue); font: clamp(32px,3vw,48px)/1.05 var(--display); letter-spacing: -.02em; text-transform: uppercase; }
.tour-copy strong { display: block; margin-top: 16px; padding-block: 12px; border-block: 2px solid var(--gold); font: clamp(31px,2.9vw,47px)/1.05 var(--display); letter-spacing: -.02em; text-transform: uppercase; }
.tour-copy p { margin: 16px 0 0; color: var(--blue); font: clamp(14px,1.05vw,17px)/1.9 var(--display); letter-spacing: .085em; text-align: center; text-transform: uppercase; }
.tour-person { width: 105%; max-width: 105%; align-self: end; margin: 0 0 0 -2%; max-height: 100%; object-fit: contain; object-position: bottom; }
.tour-card-row { position: relative; z-index: 3; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.tour-card { width: 100%; min-width: 0; position: relative; aspect-ratio: 1.65/1; min-height: 140px; overflow: hidden; padding: 0; border: 1px solid #dba939; border-radius: 8px; background: var(--cover) center/cover no-repeat; cursor: pointer; transition: transform .25s,box-shadow .25s; }
.tour-card[style*='mallorca-filming'] { background-position: center 37%; }
.tour-card:hover { transform: translateY(-4px); box-shadow: 0 12px 25px #07152b26; }
.tour-card span { position: absolute; inset: auto 0 0; display: flex; min-height: 38px; align-items: center; justify-content: center; gap: 6px; padding: 6px; background: #fffef6f2; color: var(--blue); font: clamp(14px,1.1vw,17px)/1.15 var(--display); text-transform: uppercase; }
.tour-card svg { width: 23px; height: 23px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.7; }
.tour-button { position: relative; z-index: 4; align-self: center; border-radius: 8px; box-shadow: 0 4px 14px #07152b22; }
.music-video { object-fit: cover; object-position: center 52%; filter: none; transform: none; }
.music-shade { background: linear-gradient(90deg,#030b149e,transparent 60%),linear-gradient(0deg,#030a1299,transparent 52%); }
.music-layout { position: relative; z-index: 2; display: grid; min-height: var(--panel); grid-template-columns: 43% 57%; align-items: center; gap: 0; padding-block: 80px 100px; }
.music h2 { margin: 0; font: clamp(38px,3.8vw,62px)/1.04 var(--display); letter-spacing: -.02em; text-transform: uppercase; text-shadow: 0 4px 20px #0006; }
.song-area { align-self: end; padding-bottom: 3vw; }
.song-row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.song-card { width: 100%; min-width: 0; position: relative; display: flex; aspect-ratio: 1.65/1; min-height: 118px; align-items: flex-end; justify-content: space-between; gap: 6px; overflow: hidden; padding: 14px; border: 1px solid var(--gold); border-radius: 10px; background: linear-gradient(0deg,#02080ff2,transparent 85%),var(--cover) center/cover no-repeat; color: #fff; text-align: left; cursor: pointer; }
.song-card span { font: clamp(15px,1.05vw,18px)/1.25 var(--display); }
.song-card svg { width: 36px; height: 36px; flex: none; fill: none; stroke: #fff; stroke-width: 1.6; }
.song-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; margin-top: 20px; }
.story-layout { width: 100%; max-width: none; display: grid; min-height: var(--panel); grid-template-columns: 53% 47%; align-items: stretch; }
.story-copy { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 110px clamp(48px,7vw,135px) 110px; }
.section-label { display: flex; align-items: center; gap: 18px; margin: 0 0 16px; color: var(--gold); font: 18px var(--display); letter-spacing: .13em; text-transform: uppercase; }
.section-label::after { width: 100px; height: 1px; background: var(--gold); content: ''; }
.section-label.dark { color: #233b62; }
.section-label.coral { color: var(--coral); }
.section-label.coral::after { background: var(--coral); }
.story h2, .career h2, .backstage h2, .booking h2 { margin: 0; font-family: var(--display); font-weight: 400; letter-spacing: -.02em; line-height: .98; text-transform: uppercase; }
.story h2 { font-size: clamp(38px,3.65vw,60px); color: #121416; }
.story-intro { max-width: 580px; margin: 22px 0 0; color: #344158; font-size: clamp(16px,1.1vw,18px); line-height: 1.65; }
.story-icons { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 40px; }
.story-icons div { display: flex; flex-direction: column; min-height: 96px; align-items: center; justify-content: center; gap: 14px; padding: 0 8px; border-right: 1px solid #d19c3173; text-align: center; }
.story-icons div:last-child { border-right: 0; }
.story-icons svg { width: 38px; height: 38px; fill: none; stroke: #173564; stroke-width: 1.5; }
.story-icons span { font: clamp(14px,1.1vw,20px)/1.2 var(--display); letter-spacing: .04em; text-transform: uppercase; }
.story-portrait { position: relative; display: flex; align-items: center; min-width: 0; overflow: hidden; }
.story-portrait img { width: 100%; height: auto; object-fit: contain; object-position: center; }
/* The approved photo already includes Alessandro's signature. */
.story-portrait figcaption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.career-layout { display: grid; min-height: var(--panel); grid-template-columns: 23% 26% 31% 20%; align-items: center; padding-block: 120px 110px; }
.career-title { position: relative; z-index: 2; padding-right: 22px; }
.career h2 { font-size: clamp(32px,2.8vw,47px); }
.award-image, .career-media { position: relative; height: clamp(300px,28vw,440px); align-self: center; min-width: 0; overflow: hidden; }
.award-image img, .career-media img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.award-image img { object-position: 53% center; }
.award-image::after, .career-media::after { position: absolute; inset: 0; background: linear-gradient(0deg,#040b1366,transparent 50%); content: ''; }
.career-facts { padding: 0 24px; }
.career-facts p { position: relative; display: grid; gap: 2px; margin: 0; padding: 10px 0 10px 24px; border-left: 1px solid var(--gold); }
.career-facts p::before { position: absolute; top: 20px; left: -4px; width: 7px; height: 7px; border-radius: 50%; background: var(--gold2); content: ''; }
.career-facts strong { color: var(--gold); font: 23px var(--display); text-transform: uppercase; }
.career-facts span { font: clamp(14px,1.05vw,17px)/1.4 var(--display); letter-spacing: .025em; text-transform: uppercase; }
.career-media figcaption { position: absolute; z-index: 2; bottom: 20px; left: 20px; font: 18px var(--display); letter-spacing: .1em; text-transform: uppercase; }
.backstage { box-shadow: inset 0 1px #e9bd5855, 0 -10px 32px #0003; }
.backstage-layout { display: grid; min-height: var(--panel); grid-template-columns: 22% repeat(3,minmax(0,1fr)); gap: 20px; align-items: center; padding-block: 120px 110px; }
.backstage-copy { padding-right: 10px; }
.backstage h2 { font-size: clamp(38px,3.5vw,60px); }
.backstage-copy > p:not(.section-label) { margin-block: 22px; color: #d1d5da; font-size: clamp(15px,1.05vw,18px); }
.backstage figure { position: relative; height: clamp(280px,25vw,400px); min-height: 280px; overflow: hidden; }
.backstage figure img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.backstage figure::after { position: absolute; inset: 0; background: linear-gradient(0deg,#030910c9,transparent 45%); content: ''; }
.backstage figcaption { position: absolute; z-index: 2; inset: auto 16px 20px; border-left: 1px solid var(--gold); padding-left: 12px; font: 20px var(--display); letter-spacing: .06em; text-transform: uppercase; }
.booking { display: flex; align-items: center; }
.booking-bg, .booking-shade { position: absolute; inset: 0; }
.booking-bg { background: url('./assets/booking-stage.webp') 35% center/cover no-repeat; transform: scaleX(-1); }
.booking-shade { background: linear-gradient(90deg,#030910e8 0%,#03091085 48%,transparent 85%); }
.booking-content { position: relative; z-index: 2; padding-block: 110px 100px; }
.booking h2 { max-width: 65%; font-size: clamp(48px,5vw,84px); background: linear-gradient(#fff 45%,#ffe8b6); background-clip: text; color: transparent; }
.booking-content > p:not(.section-label) { font-size: clamp(16px,1.15vw,19px); }
.booking-actions { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 28px; }
.booking-contact { display: flex; flex-wrap: wrap; gap: 30px; margin-top: 30px; font: 20px var(--display); letter-spacing: .06em; }
.booking-contact a { display: flex; align-items: center; gap: 10px; }
.booking-contact svg { width: 26px; height: 26px; fill: none; stroke: var(--gold); stroke-width: 1.6; }
.footer { border-top: 1px solid #e9bd5873; background: #02070c; }
.footer-row { display: grid; min-height: 105px; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.footer nav { gap: 28px; }
.socials { display: flex; justify-self: end; gap: 14px; }
.socials a { display: grid; width: 38px; height: 38px; place-items: center; }
.socials svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.video-dialog, .tour-dialog { padding: 0; border: 1px solid #ffffff33; border-radius: 18px; background: #060e18; color: #fff; box-shadow: 0 35px 90px #000b; }
.video-dialog { width: min(1100px,calc(100% - 30px)); }
.video-dialog video { width: 100%; max-height: 86svh; border-radius: 18px; }
.video-dialog::backdrop, .tour-dialog::backdrop { background: #00050ae6; backdrop-filter: blur(8px); }
.dialog-close { position: absolute; z-index: 5; top: 12px; right: 12px; display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid #ffffff66; border-radius: 50%; background: #02080fe6; color: #fff; font-size: 25px; cursor: pointer; }
.tour-dialog { width: min(1050px,calc(100% - 30px)); max-height: 90svh; overflow: auto; padding: 36px; }
.tour-dialog-head { display: grid; grid-template-columns: 230px 1fr; align-items: center; gap: 35px; }
.tour-dialog-head h2 { margin: 0; font: 48px/1 var(--display); text-transform: uppercase; }
.tour-dialog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 25px 0; }
.tour-dialog-grid article { padding: 20px; border: 1px solid #ffffff24; border-radius: 12px; background: #0b1928; }
.tour-dialog-grid h3 { margin: 0 0 10px; color: var(--gold); font: 23px var(--display); text-transform: uppercase; }
.tour-dialog-grid p { margin: 5px 0; color: #d1d8e0; font-size: 14px; }
@media (max-width: 1100px) {
  .site-header { grid-template-columns: 1fr auto auto; gap: 25px; }
  .main-nav { gap: 24px; }
  .tour-showcase { grid-template-columns: 32% 45% 23%; }
  .tour-copy { padding-left: 14px; }
  .tour-copy h2 { font-size: 3.2vw; }
  .tour-copy strong { font-size: 3.1vw; }
  .tour-copy p { font-size: 14px; }
  .tour-card-row { gap: 10px; }
  .tour-card { min-height: 130px; }
  .tour-card span { font-size: 14px; }
  .song-card { padding: 10px; }
  .song-card svg { width: 28px; }
  .song-actions .button { padding-inline: 18px; font-size: 17px; }
  .career-facts { padding-inline: 18px; }
  .career-facts p { padding-left: 15px; }
  .backstage-layout { gap: 14px; }
  .backstage figcaption { font-size: 17px; }
  .footer-row { grid-template-columns: auto 1fr auto; }
  .footer nav { justify-content: center; gap: 18px; }
}
@media (max-width: 980px) {
  :root { --overlap: 20px; --panel: 100svh; }
  html { scroll-padding-top: 62px; }
  .container { width: calc(100% - 36px); }
  .site-header, .site-header.is-scrolled { height: 64px; grid-template-columns: 1fr auto; padding-inline: 18px; backdrop-filter: none; }
  .wordmark span { font-size: 28px; }
  .menu-toggle { display: block; z-index: 62; min-width: 44px; min-height: 44px; }
  .header-booking { display: none; }
  .main-nav { position: fixed; inset: 0; flex-direction: column; align-items: flex-start; justify-content: center; gap: 25px; padding: 70px 12vw; background: #030910fa; visibility: hidden; opacity: 0; transition: opacity .25s,visibility .25s; }
  .main-nav.is-open { visibility: visible; opacity: 1; }
  .main-nav a { font-size: 32px; }
  .button { font-size: 19px; min-height: 48px; padding-inline: 24px; }
  .hero { min-height: max(740px,100svh); }
  .hero-video { object-position: 45% center; }
  .hero-shade { background: linear-gradient(0deg,#02070de8 0%,#02070d55 70%,#02070d33); }
  .hero-content { padding: 115px 0 210px; align-self: end; }
  .hero h1 { max-width: 100%; font-size: clamp(58px,16vw,96px); line-height: .95; }
  .hero-content > p { max-width: 350px; margin: 18px 0 24px; font-size: 17px; }
  .hero-actions { flex-direction: column; align-items: flex-start; gap: 12px; }
  .credentials { padding-bottom: 28px; }
  .credential-row { width: 100%; grid-template-columns: 1fr 1fr; }
  .credential-row > div { height: 66px; gap: 8px; padding: 8px; border-bottom: 1px solid #ffffff1a; }
  .credential-row > div:nth-child(3)::before { display: none; }
  .credential-row svg { width: 25px; height: 25px; }
  .credential-row span { font-size: 14px; }
  .overlay-section { border-radius: 20px 20px 0 0; }
  .tour-overlay { min-height: var(--panel); gap: 24px; padding: 84px 0 66px; }
  .tour-showcase { height: auto; grid-template-columns: 52% 48%; row-gap: 20px; }
  .tour-logo { grid-column: 1; width: 115%; max-width: 115%; margin-left: -6%; align-self: center; }
  .tour-person { grid-column: 2; grid-row: 1; width: 100%; max-width: 100%; margin: 0; max-height: 300px; }
  .tour-copy { grid-column: 1/-1; grid-row: 2; padding: 0; text-align: center; }
  .tour-copy h2 { font-size: clamp(31px,8.5vw,48px); }
  .tour-copy strong { font-size: clamp(30px,8vw,46px); }
  .tour-copy p { font-size: 15px; letter-spacing: .05em; }
  .tour-card-row { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .tour-card { aspect-ratio: 1.35; min-height: 140px; }
  .tour-card span { min-height: 43px; font-size: 14px; }
  .tour-card svg { width: 18px; height: 18px; }
  .tour-button { max-width: calc(100% - 36px); }
  .music-video { object-position: 57% center; }
  .music-shade { background: linear-gradient(0deg,#030a12c9 0%,transparent 85%),linear-gradient(90deg,#030a1266,transparent); }
  .music-layout { min-height: max(860px,100svh); grid-template-columns: 1fr; gap: 150px; padding: 80px 0 70px; }
  .music h2 { font-size: clamp(38px,10.5vw,62px); align-self: start; }
  .song-area { padding: 0; }
  .song-row { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .song-card { min-height: 130px; aspect-ratio: 1.25; padding: 12px; }
  .song-card:first-child { grid-column: 1/-1; aspect-ratio: 2.3; min-height: 150px; }
  .song-card span { font-size: 18px; }
  .song-card svg { width: 33px; height: 33px; }
  .song-actions { flex-direction: column; gap: 12px; }
  .song-actions .button { width: 100%; font-size: 19px; }
  .story-layout { width: 100%; min-height: auto; grid-template-columns: 1fr; }
  .story-copy { padding: 70px 18px 50px; }
  .story h2 { font-size: clamp(36px,10.2vw,60px); }
  .story-intro { font-size: 16px; }
  .story-icons { margin-top: 30px; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 0; }
  .story-icons div { min-height: 96px; }
  .story-icons div:nth-child(2) { border-right: 0; }
  .story-icons span { font-size: 16px; }
  .story-portrait { aspect-ratio: 1; }
  .story-portrait img { height: auto; object-position: center; }
  .career-layout { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 0; padding: 70px 0 75px; }
  .career-title { grid-column: 1/-1; padding: 0; }
  .career h2 { font-size: clamp(35px,9.5vw,57px); }
  .award-image { height: 330px; min-height: 330px; }
  .career-facts { padding: 0 0 0 16px; }
  .career-facts p { padding: 10px 0 10px 13px; }
  .career-facts strong { font-size: 23px; }
  .career-facts span { font-size: 14px; }
  .career-media { grid-column: 1/-1; height: auto; min-height: 235px; aspect-ratio: 1.5; }
  .backstage-layout { grid-template-columns: 1fr; gap: 22px; min-height: auto; padding: 70px 0; }
  .backstage-copy { padding: 0 0 10px; }
  .backstage h2 { font-size: clamp(38px,10.5vw,62px); }
  .backstage-copy > p:not(.section-label) { font-size: 16px; }
  .backstage figure { height: auto; min-height: 240px; aspect-ratio: 1.35; }
  .backstage figcaption { font-size: 22px; }
  .booking-bg { background-position: 30% center; }
  .booking-shade { background: linear-gradient(0deg,#030910f5 0%,#03091099 52%,#03091022); }
  .booking { align-items: end; min-height: max(860px,100svh); }
  .booking-content { padding: 230px 0 70px; }
  .booking h2 { max-width: 100%; font-size: clamp(42px,11vw,65px); }
  .booking-content > p:not(.section-label) { font-size: 16px; }
  .booking-actions, .booking-contact { flex-direction: column; align-items: flex-start; gap: 16px; }
  .booking-actions .button { width: 100%; }
  .booking-contact { font-size: 20px; }
  .footer-row { grid-template-columns: 1fr; justify-items: center; gap: 28px; padding: 38px 0; }
  .footer nav { flex-wrap: wrap; gap: 18px 24px; }
  .socials { justify-self: center; }
  .tour-dialog { padding: 60px 20px 25px; }
  .tour-dialog-head { grid-template-columns: 1fr; gap: 20px; }
  .tour-dialog-head img { width: 190px; }
  .tour-dialog-head h2 { font-size: 36px; }
  .tour-dialog-grid { grid-template-columns: 1fr; }
  .video-dialog { width: calc(100% - 20px); }
}
@media (min-width: 640px) and (max-width: 980px) {
  .container { width: calc(100% - 80px); }
  .hero h1 { font-size: clamp(70px,10vw,86px); }
  .tour-showcase { height: 290px; grid-template-columns: 29% 48% 23%; }
  .tour-logo { width: 100%; max-width: 100%; margin: 0; }
  .tour-person { grid-column: 3; width: 100%; max-height: 290px; }
  .tour-copy { grid-column: 2; grid-row: 1; padding-left: 18px; text-align: left; }
  .tour-copy h2 { font-size: 34px; }
  .tour-copy strong { font-size: 33px; }
  .tour-copy p { font-size: 13px; letter-spacing: .02em; }
  .tour-card-row { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .tour-card { aspect-ratio: 1.25; min-height: 135px; }
  .tour-card span { font-size: 12px; }
  .tour-card svg { display: none; }
  .music-layout { min-height: var(--panel); grid-template-columns: 38% 62%; gap: 0; padding-block: 100px; }
  .music h2 { align-self: center; font-size: 42px; }
  .song-row { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
  .song-card, .song-card:first-child { grid-column: auto; aspect-ratio: 1.1; min-height: 125px; padding: 9px; }
  .song-card span { font-size: 15px; }
  .song-card svg { width: 26px; height: 26px; }
  .song-actions { flex-direction: row; }
  .song-actions .button { width: auto; font-size: 17px; }
  .story-layout { min-height: var(--panel); grid-template-columns: 53% 47%; }
  .story-copy { padding: 90px 40px; }
  .story h2 { font-size: 42px; }
  .story-portrait { aspect-ratio: auto; }
  .career-layout { grid-template-columns: 23% 26% 31% 20%; gap: 0; padding-block: 100px; }
  .career-title { grid-column: auto; padding-right: 12px; }
  .career h2 { font-size: 30px; }
  .award-image, .career-media { grid-column: auto; height: 330px; min-height: 330px; aspect-ratio: auto; }
  .career-facts { padding-inline: 15px; }
  .career-facts strong { font-size: 21px; }
  .career-facts span { font-size: 13px; }
  .career-media figcaption { font-size: 15px; left: 12px; }
  .backstage-layout { min-height: var(--panel); grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; align-content: center; }
  .backstage-copy { grid-column: 1/-1; }
  .backstage h2 { font-size: 46px; }
  .backstage figure { height: 32vw; min-height: 240px; aspect-ratio: auto; }
  .backstage figcaption { font-size: 18px; inset-inline: 12px; }
}
@media (max-width: 360px) {
  .container { width: calc(100% - 28px); }
  .story-layout { width: 100%; }
  .hero h1 { font-size: 16vw; }
  .credential-row span { font-size: 12px; }
  .credential-row svg { width: 21px; }
  .tour-card span { font-size: 12px; }
  .tour-card svg { display: none; }
  .career-facts { padding-left: 12px; }
  .career-facts strong { font-size: 21px; }
  .career-facts span { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button, .tour-card, .main-nav, .site-header { transition: none; }
}

/* Requested opening sequence; content and layout remain complete without JS. */
.hero h1 { background: none; color: #fff; perspective: 900px; }
.name-word { display: inline-block; white-space: nowrap; }
.name-letter { display: inline-block; background: linear-gradient(#fff 35%,#fff2cd 72%,#edc36a); background-clip: text; color: transparent; transform-origin: 50% 100%; }
.letter-drop-ready .name-letter { animation: letter-place .95s cubic-bezier(.3,.15,.35,1) calc(.15s + var(--letter-index) * .11s) both; }
@keyframes letter-place {
  0% { opacity: 0; transform: translateY(-65svh) rotate(-7deg); }
  64% { opacity: 1; }
  82% { transform: translateY(4px) rotate(1deg); }
  93% { transform: translateY(-2px); }
  100% { opacity: 1; transform: translateY(0) rotate(0); }
}
.typed-word { display: inline-block; }
.type-character { position: relative; }
.is-typing .type-character { opacity: 0; }
.is-typing .type-character.is-written { opacity: 1; }
.type-character.is-current::after { position: absolute; right: -2px; top: .05em; height: 1em; width: 1px; background: var(--gold2); content: ''; }
.hero-content > .hero-tagline { max-width: 650px; margin: -2px 0 18px; }
.hero h1 { line-height: .92; }
.hero-honors { display: flex; flex-wrap: wrap; gap: 12px 30px; margin-bottom: 30px; perspective: 950px; }
.hero-award { position: relative; display: flex; align-items: center; gap: 10px; color: var(--gold2); font: clamp(20px,1.6vw,24px)/1.2 var(--display); letter-spacing: .035em; text-transform: uppercase; text-shadow: 0 2px 12px #000b; transform-style: preserve-3d; }
.hero-award > svg { width: 30px; height: 30px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; }
.hero-award > span { background: linear-gradient(110deg,#edc468 20%,#ffe8a4 42%,#fffef0 50%,#ffe8a4 58%,#edc468 80%); background-size: 300% 100%; background-clip: text; color: transparent; }
.hero-sequence:not(.honors-arrive) .hero-award { visibility: hidden; }
.honors-arrive .hero-award { animation: award-flight 3.4s cubic-bezier(.18,.7,.2,1) both; }
.honors-arrive .hero-award:nth-child(2) { animation-delay: .35s; }
.honors-arrive .hero-award > span { animation: award-sheen 7s ease-in-out 3.6s infinite; }
.award-glint { position: absolute; top: -5px; right: 10%; width: 15px; height: 15px; opacity: 0; background: #fff6d3; clip-path: polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%); pointer-events: none; }
.honors-arrive .award-glint { animation: star-glint 5.5s ease-in-out 4s infinite; }
.honors-arrive .hero-award:nth-child(2) .award-glint { left: 8%; right: auto; animation-delay: 5.8s; }
@keyframes award-flight {
  0% { opacity: 0; transform: translate3d(20px,-35px,500px) rotateY(-245deg) rotateZ(-8deg) scale(1.6); }
  18% { opacity: .8; }
  65% { opacity: 1; transform: translate3d(0,-6px,50px) rotateY(-12deg) rotateZ(2deg) scale(1.05); }
  86% { transform: translate3d(0,1px,0) rotateY(4deg) rotateZ(0) scale(1); }
  100% { opacity: 1; transform: translate3d(0,0,0) rotateY(0) rotateZ(0) scale(1); }
}
@keyframes award-sheen { 0%,45%,100% { background-position: 100% 50%; } 70%,85% { background-position: 0 50%; } }
@keyframes star-glint { 0%,65%,100% { opacity: 0; transform: scale(.3) rotate(0); } 75% { opacity: .95; transform: scale(1.1) rotate(45deg); } 88% { opacity: 0; transform: scale(.6) rotate(90deg); } }
.credentials { border: 0; background: transparent; backdrop-filter: none; text-shadow: 0 2px 6px #000,0 0 18px #000; }
.credential-row { width: min(calc(100% - 36px),600px); grid-template-columns: repeat(2,minmax(0,1fr)); }
.credential-row > div { height: 62px; }
.credential-row svg { width: 27px; height: 27px; }
.credential-row span { font-size: 17px; }
.scroll-focus-panels main > section { filter: blur(var(--panel-blur,0px)); opacity: var(--panel-opacity,1); }
.music-copy { max-width: 400px; padding-right: 28px; }
.music-intro { max-width: 380px; margin: 25px 0 0; font-size: 16px; line-height: 1.7; color: #fff9ed; text-shadow: 0 2px 10px #000c; }
.music-story-title { display: inline-block; transform-origin: left center; }
.title-word { display: inline-block; transform-origin: left bottom; }
.title-enter .title-word { animation: heading-arrive 1.9s cubic-bezier(.25,.46,.45,.94) calc(.25s + var(--word-index) * .14s) both; }
@keyframes heading-arrive { from { opacity: 0; transform: translateY(18px) rotate(2deg); } to { opacity: 1; transform: translateY(0) rotate(0); } }
.story-intro p { margin: 0 0 16px; }
.story-intro p:last-child { margin-bottom: 0; }
.story-icons { margin-top: 32px; }
.career-layout { grid-template-columns: 22% 22% 28% 28%; }
.press-carousel { height: auto; min-height: 0; aspect-ratio: auto; overflow: visible; padding-left: 8px; }
.press-carousel::after { display: none; }
.press-carousel h3 { margin: 0 0 18px; color: var(--gold2); font: 21px var(--display); letter-spacing: .08em; text-transform: uppercase; }
.press-frame { position: relative; aspect-ratio: 16/10; overflow: hidden; border-radius: 8px; background: #09131c; }
.press-slide { position: absolute; inset: 0; opacity: 0; transform: translateX(25%); transition: opacity .9s,transform 1.15s cubic-bezier(.2,.7,.2,1); pointer-events: none; }
.press-slide.is-active { opacity: 1; transform: translateX(0); }
.press-slide img { width: 100%; height: 100%; object-fit: cover; }
.press-controls { display: flex; align-items: center; justify-content: center; gap: 9px; margin-top: 12px; }
.press-controls[hidden] { display: none; }
.press-controls > button { display: grid; width: 40px; height: 40px; padding: 0; place-items: center; border: 1px solid #e9bd5855; border-radius: 50%; color: var(--gold2); background: transparent; font-size: 25px; cursor: pointer; }
.press-controls [data-slide-pause] { font-size: 14px; }
.press-dots { display: flex; gap: 0; }
.press-dots button { display: grid; width: 24px; height: 36px; padding: 0; place-items: center; border: 0; background: none; cursor: pointer; }
.press-dots button::after { width: 5px; height: 5px; border-radius: 50%; background: #ffffff55; content: ''; }
.press-dots button[aria-pressed="true"]::after { background: var(--gold2); box-shadow: 0 0 8px #e9bd5866; }
.press-caption { margin: 8px 0 18px; color: #abb7c4; font-size: 12px; text-align: center; }
.press-links { display: grid; gap: 0; }
.press-links a { display: flex; justify-content: space-between; gap: 8px; padding: 10px 0; border-top: 1px solid #ffffff16; color: #edf0f3; font-size: 13px; line-height: 1.4; }
.press-links a:hover { color: var(--gold2); }
.press-more { margin-top: 10px; font-size: 13px; }
.press-more summary { color: var(--gold2); cursor: pointer; padding-block: 8px; }
@media (max-width: 980px) {
  .hero-honors { gap: 10px 24px; margin-bottom: 25px; }
  .hero-award { font-size: 20px; }
  .hero-award > svg { width: 25px; height: 25px; }
  .credential-row > div { border: 0; height: 56px; gap: 7px; }
  .credential-row span { font-size: 15px; }
  .credential-row svg { width: 22px; height: 22px; }
  .credentials { padding-bottom: 36px; }
  .hero-content { padding-bottom: 135px; }
  .music-layout { gap: 85px; }
  .music-copy { max-width: 460px; padding-right: 0; }
  .music-intro { margin-top: 22px; font-size: 16px; }
  .career-layout { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .press-carousel { grid-column: 1/-1; min-height: 0; height: auto; aspect-ratio: auto; padding: 20px 0 0; }
  .press-frame { aspect-ratio: 16/10; }
  .press-controls > button { width: 44px; height: 44px; }
  .press-links a, .press-more { font-size: 14px; }
}
@media (min-width: 640px) and (max-width: 980px) {
  .music-layout { gap: 0; }
  .music-copy { padding-right: 22px; }
  .career-layout { grid-template-columns: 22% 22% 28% 28%; }
  .press-carousel { grid-column: auto; padding: 0 0 0 6px; min-height: 0; height: auto; }
  .press-controls { gap: 3px; flex-wrap: wrap; }
  .press-dots button { width: 17px; }
  .press-controls > button { width: 32px; height: 36px; }
  .press-links a, .press-more { font-size: 12px; }
  .story-copy { padding-inline: 32px; }
}
@media (max-width: 360px) {
  .hero-award { font-size: 18px; }
  .credential-row span { font-size: 13px; }
  .credential-row svg { width: 20px; height: 20px; }
}

/* Featured German TV appearance leads the existing press collection. */
.press-feature { display: flex; align-items: center; gap: 12px; padding: 14px; margin-bottom: 20px; border: 1px solid #e9bd5870; border-radius: 8px; background: linear-gradient(120deg,#e9bd581b,#e9bd5805); }
.press-feature small { display: block; margin-bottom: 4px; color: var(--gold2); font-size: 11px; letter-spacing: .075em; text-transform: uppercase; }
.press-feature strong { font: 20px/1.15 var(--display); color: #fff9e8; letter-spacing: .025em; }
.press-feature .feature-play { display: grid; flex: none; place-items: center; width: 34px; height: 34px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold2); font-size: 12px; }
.press-feature:hover { border-color: var(--gold2); background: #e9bd5823; }
@media (max-width: 980px) { .hero h1 { line-height: .9; } }

/* Give each animated word its own gold fill so it stays visible in Safari. */
.booking h2 { background: none; color: #fff; }
.booking h2 .title-word { background: linear-gradient(#fff 45%,#ffe8b6); background-clip: text; color: transparent; }

/* Warm light provides a pause before the monochrome final panel. */
.backstage { background: linear-gradient(135deg,#faf6ee,#eee3d2); color: #302721; }
.backstage .section-label { color: #95672d; }
.backstage .section-label::after { background: #b08950; }
.backstage-copy > p:not(.section-label) { color: #65564b; }
.backstage .button-outline { color: #382d23; border-color: #b18b51; background: transparent; }
.backstage figure { border-radius: 8px; box-shadow: 0 12px 26px #6e4b291c; }
.backstage figcaption { color: #fff8ec; }
.backstage figure img { filter: sepia(.08) saturate(1.04); }
.story-intro strong { color: #7c5426; font-weight: 600; }
.career-layout { grid-template-columns: 20% 30% 25% 25%; padding-block: 90px 85px; }
.award-image { height: auto; min-height: 0; aspect-ratio: 4/3; overflow: hidden; border-radius: 8px; background: #15130f; }
.award-image img { position: static; width: 100%; height: 100%; object-fit: contain; filter: sepia(.1) saturate(1.06); }
.award-image::after { display: none; }
.career h2 .title-word { background: linear-gradient(#fff7e8,#dcb77d); background-clip: text; color: transparent; }
.press-feature { display: block; padding: 0; overflow: hidden; border-color: #d5ae6566; background: #10161c; }
.feature-image { position: relative; display: block; aspect-ratio: 16/9; overflow: hidden; }
.press-feature .feature-image img { position: static; width: 100%; height: 100%; object-fit: cover; }
.feature-image::after { position: absolute; inset: 0; background: linear-gradient(0deg,#030910bc,transparent 65%); content: ''; }
.press-feature .feature-play { position: absolute; z-index: 2; top: 50%; left: 50%; width: 48px; height: 48px; transform: translate(-50%,-50%); border-color: #ffe5a5; background: #070d14b0; color: #ffdf93; font-size: 17px; box-shadow: 0 3px 16px #0004; transition: background .25s,box-shadow .25s; }
.feature-kicker { position: absolute; z-index: 2; left: 12px; bottom: 10px; color: #fff4d3; font: 13px/1.2 var(--display); letter-spacing: .075em; text-transform: uppercase; }
.feature-copy { display: block; padding: 12px 14px; }
.feature-copy > span { display: flex; justify-content: space-between; margin-top: 6px; color: #b9c2cb; font-size: 12px; }
.press-feature:hover .feature-play { background: #805d24de; box-shadow: 0 0 24px #edc46844; }
@media (max-width: 980px) {
  .career-layout { grid-template-columns: repeat(2,minmax(0,1fr)); padding-block: 70px 75px; }
  .award-image { height: auto; min-height: 0; aspect-ratio: 4/3; }
}
@media (min-width: 640px) and (max-width: 980px) {
  .career-layout { grid-template-columns: 20% 30% 25% 25%; }
  .feature-copy { padding: 10px; }
  .feature-kicker { left: 8px; font-size: 11px; }
  .press-feature .feature-play { width: 38px; height: 38px; }
}

@media (max-width: 639px) {
  .award-image { grid-column: 1/-1; }
  .career-facts { grid-column: 1/-1; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 14px; padding: 0; }
  .career-facts p { padding-left: 14px; }
}

/* Local Mosel photo: warm colour is limited to the photograph. */
.tour-card[style*='mosel-river'] { background: #e6dac5; }
.tour-card[style*='mosel-river']::before { position: absolute; inset: 0; background: var(--cover) center 45%/cover no-repeat; filter: sepia(.14) saturate(1.24) contrast(1.04) brightness(.97); content: ''; }
.tour-card[style*='mosel-river'] > span { z-index: 1; }

/* Career: clear editorial columns and compact achievement cards. */
.career-layout { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 56px; align-items: center; padding-block: 88px 64px; }
.career-overview { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.career-title { padding: 0; }
.career-title .section-label { margin-bottom: 12px; }
.career h2 { font-size: clamp(36px,3vw,46px); line-height: 1.04; }
.career-overview .award-image { width: 100%; max-width: 480px; margin-inline: auto; border: 1px solid #dcb77d22; }
.career-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 0; }
.career-facts p { align-content: start; gap: 7px; margin: 0; padding: 14px 12px; border: 1px solid #ffffff14; border-radius: 9px; background: #ffffff04; }
.career-facts p::before { display: none; }
.career-facts strong { font-size: 24px; color: #e8c889; }
.career-facts span { font-size: 13px; line-height: 1.4; color: #c2cad2; letter-spacing: .035em; }
.press-carousel { padding: 0; min-width: 0; }
.press-carousel h3 { font-size: 22px; margin-bottom: 18px; }
.press-secondary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; align-items: start; }
.press-gallery, .press-appearances { min-width: 0; }
.press-gallery .press-controls { gap: 5px; flex-wrap: wrap; }
.press-gallery .press-caption { margin-bottom: 0; }
.press-appearances .press-links a { padding-block: 11px; }
.feature-copy { padding: 15px 18px; }
.press-feature strong { font-size: 23px; }
@media (max-width: 980px) {
  .career-layout { grid-template-columns: 1fr; gap: 40px; padding-block: 82px 70px; }
  .career-overview { gap: 24px; }
  .career-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .career-facts p { padding: 15px; }
  .career-title { grid-column: auto; }
  .press-carousel { grid-column: auto; padding: 0; }
  .career h2 { font-size: clamp(36px,8.5vw,46px); }
}
@media (min-width: 640px) and (max-width: 980px) {
  .career-overview { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; align-items: center; }
  .career-title { grid-column: 1/-1; }
  .career-facts { grid-column: auto; gap: 10px; }
  .career-facts p { padding: 12px; }
  .press-carousel { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; align-items: start; }
  .press-carousel h3 { grid-column: 1/-1; margin: 0; }
  .press-feature { margin: 0; }
  .press-secondary { gap: 12px; }
}

@media (max-width: 980px) { .press-secondary { grid-template-columns: 1fr; gap: 22px; } }

/* The first album and the upcoming chapter sit inside the existing music panel. */
.album-feature { display: grid; grid-template-columns: 96px minmax(0,1fr); gap: 16px; align-items: center; margin-top: 26px; padding: 14px; border: 1px solid #e9bd5847; border-radius: 12px; background: #040b13bd; }
.album-photo { width: 100%; height: auto; border-radius: 7px; object-fit: contain; }
.album-copy { min-width: 0; }
.album-eyebrow { margin: 0 0 6px; color: #e8c889; font-size: 11px; line-height: 1.5; letter-spacing: .055em; }
.album-copy h3 { margin: 0; font: 30px/1.1 var(--display); letter-spacing: .025em; color: #fff4d9; }
.album-note { margin: 9px 0 0; color: #e0e4e7; font-size: 13px; line-height: 1.6; }
.album-coming { display: flex; align-items: flex-start; gap: 7px; margin: 12px 0 0; padding-top: 10px; border-top: 1px solid #e9bd582b; color: #f2d58d; font-size: 12px; line-height: 1.5; }
.album-coming svg { width: 15px; height: 15px; flex: none; margin-top: 1px; fill: none; stroke: currentColor; stroke-width: 1.6; }
@media (max-width: 360px) { .album-feature { grid-template-columns: 82px minmax(0,1fr); gap: 12px; padding: 12px; } }

/* Warm wine, copper and ivory, with smaller images and room between details. */
.career { background: radial-gradient(ellipse at 8% 5%,#5b3439 0%,transparent 58%),linear-gradient(135deg,#35252a,#211c23 76%); color: #f6e9dc; }
.career-layout { width: min(1080px,calc(100% - 96px)); grid-template-columns: 1fr 1fr; gap: clamp(64px,7vw,108px); padding-block: 110px 100px; }
.career-overview { gap: 32px; }
.career .section-label { color: #dbb08b; font-size: 14px; letter-spacing: .18em; margin-bottom: 16px; }
.career .section-label::after { width: 58px; background: #bd8a69; }
.career h2 { font-size: clamp(30px,2.55vw,38px); line-height: 1.12; letter-spacing: -.012em; }
.career h2 .title-word { background: none; color: #f7eadc; }
.career-overview .award-image { width: 100%; max-width: 300px; margin: 0; border: 1px solid #d4ad8629; border-radius: 10px; box-shadow: 0 16px 38px #130d1629; }
.career-facts { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 28px; }
.career-facts p { padding: 16px 0; gap: 6px; border: 0; border-top: 1px solid #ddbb9833; border-radius: 0; background: none; }
.career-facts strong { font-size: 21px; color: #e6b997; font-weight: 400; }
.career-facts span { font: 12px/1.65 var(--sans); color: #d8c7c1; letter-spacing: 0; text-transform: none; }
.career .press-carousel { width: 100%; max-width: 420px; justify-self: end; }
.career .press-carousel h3 { margin-bottom: 24px; color: #dbb08b; font-size: 17px; letter-spacing: .14em; }
.career .press-feature { margin-bottom: 30px; border: 1px solid #dab49335; border-radius: 12px; background: #ffffff05; box-shadow: 0 18px 40px #120c1829; }
.career .press-feature:hover { border-color: #d6aa85aa; background: #ffffff09; }
.career .feature-copy { padding: 17px 20px; }
.career .press-feature strong { font-size: 20px; color: #f5e5d3; }
.career .feature-copy > span { color: #d7c0b5; font-size: 12px; }
.career .feature-kicker { font-size: 11px; letter-spacing: .08em; }
.career .press-feature .feature-play { width: 42px; height: 42px; font-size: 14px; border-color: #f3d4af; color: #f3d4af; background: #302126b0; }
.career .press-secondary { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 24px; }
.career .press-frame { border-radius: 9px; background: #382c32; }
.career .press-controls { gap: 2px; margin-top: 10px; }
.career .press-controls > button { width: 32px; height: 32px; border-color: #d7b48b55; color: #e6c09d; font-size: 20px; }
.career .press-controls [data-slide-pause] { font-size: 12px; }
.career .press-dots button { width: 18px; height: 32px; }
.career .press-dots button[aria-pressed="true"]::after { background: #e6c09d; box-shadow: none; }
.career .press-caption { color: #cfb5ad; font-size: 11px; line-height: 1.5; }
.career .press-links a { color: #ead8cc; border-color: #dabc9c2b; font-size: 12px; padding-block: 13px; }
.career .press-links a:hover, .career .press-more summary { color: #e6b997; }
.career .press-more { font-size: 12px; }

/* One accessible popup for local clips, music videos and TV appearances. */
.video-dialog { width: min(960px,calc(100% - 32px)); max-height: 92svh; overflow: auto; border: 1px solid #d4ad8655; background: #221b20; }
.video-dialog-head { position: relative; display: flex; align-items: center; min-height: 76px; padding: 18px 76px 18px 24px; }
.video-dialog-head p { margin: 0; color: #f4e5d5; font: 22px/1.3 var(--display); letter-spacing: .02em; }
.video-dialog .dialog-close { top: 16px; right: 16px; width: 40px; height: 40px; border-color: #d9bb9955; background: #30242b; }
.video-stage { background: #000; }
.video-stage video, .video-stage iframe { display: block; width: 100%; height: auto; aspect-ratio: 16/9; min-height: 200px; max-height: 68svh; border: 0; border-radius: 0; object-fit: contain; }
.video-stage [hidden], .video-choices[hidden] { display: none; }
.video-choices { display: flex; flex-wrap: wrap; gap: 10px; padding: 18px 24px 22px; }
.video-choices button { padding: 10px 14px; border: 1px solid #dab89933; border-radius: 30px; background: transparent; color: #d9c5ba; font: 13px/1.4 var(--sans); cursor: pointer; }
.video-choices button[aria-pressed="true"], .video-choices button:hover { border-color: #d9b188; background: #d9b18815; color: #f4d8b6; }
.video-choices button:focus-visible { outline: 2px solid #f3d4af; outline-offset: 3px; }
@media (max-width: 980px) {
  .career-layout { width: min(720px,calc(100% - 64px)); grid-template-columns: 1fr; gap: 64px; padding-block: 96px 88px; }
  .career-overview { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 30px 40px; }
  .career-title { grid-column: 1/-1; }
  .career-overview .award-image { grid-column: auto; }
  .career-facts { grid-column: auto; gap: 0 20px; }
  .career-facts p { padding-block: 12px; }
  .career .press-carousel { display: block; max-width: none; }
  .career .press-feature { max-width: 420px; }
  .career .press-secondary { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
  .career .press-controls > button { width: 40px; height: 40px; }
  .career .press-links a { font-size: 13px; }
}
@media (max-width: 639px) {
  .career-layout { width: calc(100% - 48px); gap: 52px; padding-block: 90px 80px; }
  .career-overview { display: flex; gap: 30px; }
  .career h2 { font-size: 31px; }
  .career-overview .award-image { max-width: 260px; }
  .career-facts { gap: 0 24px; }
  .career-facts p { padding-block: 16px; }
  .career .press-secondary { grid-template-columns: 1fr; gap: 28px; }
  .career .press-gallery { max-width: 260px; }
  .career .press-controls > button { width: 44px; height: 44px; }
  .career .press-links a { font-size: 14px; padding-block: 14px; }
  .video-dialog { width: calc(100% - 20px); border-radius: 12px; }
  .video-dialog-head { min-height: 72px; padding: 16px 68px 16px 18px; }
  .video-dialog-head p { font-size: 19px; }
  .video-choices { gap: 8px; padding: 16px; }
  .video-choices button { font-size: 12px; }
}

/* The first desktop entrance also applies on touch screens: real stacked
   panels and scroll-driven blur. Fully hidden/sharp panels need no filter. */
.scroll-focus-panels main > section[data-focus-progress="0.000"],
.scroll-focus-panels main > section[data-focus-progress="1.000"] { filter: none; }
@media (max-width: 980px), (pointer: coarse) {
  .hero-grain { display: none; }
  .honors-arrive .hero-award > span, .honors-arrive .award-glint { animation-iteration-count: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .name-letter, .hero-award, .hero-award > span, .award-glint, .title-word { animation: none !important; }
  .hero-sequence .hero-award { visibility: visible; }
  .is-typing .type-character { opacity: 1; }
}

/* Local marketing proposal: keep the approved cinematic panels and typography.
   The new hierarchy uses restrained image sizes, ivory, ink and warm brass. */
.live { z-index: 2; background: linear-gradient(120deg,#f8f4ec,#eee5d8); color: #192a3b; }
.story { z-index: 3; }
.tour { z-index: 4; }
.career { z-index: 5; }
.music { z-index: 6; }
.booking { z-index: 7; }
.hero-profession { font-size: 12px !important; letter-spacing: .14em !important; text-transform: uppercase; color: #eee4d4; margin: 0 0 25px !important; }
.main-nav { gap: clamp(20px,2.1vw,32px); }
.hero h1 { font-size: clamp(70px,7vw,112px); }
.live-layout { display: grid; min-height: var(--panel); grid-template-columns: .82fr 1.18fr; gap: clamp(56px,7vw,110px); align-items: center; padding-block: 110px; }
.live-copy { min-width: 0; }
.live .section-label { font-size: 14px; color: #896943; margin-bottom: 22px; }
.live .section-label::after { width: 65px; background: #ad8a55; }
.live h2 { margin: 0; font: 400 clamp(40px,3.7vw,60px)/1.06 var(--display); letter-spacing: -.01em; text-transform: uppercase; }
.live-intro { max-width: 345px; margin: 28px 0; font-size: 15px; line-height: 1.85; color: #59616a; }
.live .button { font-size: 15px; min-height: 44px; }
.live-reach { display: flex; gap: 20px; align-items: flex-start; margin-top: 46px; padding-top: 25px; border-top: 1px solid #b29a7e66; }
.live-reach > strong { font: 400 47px/1 var(--display); color: #8e6b35; white-space: nowrap; }
.live-reach > strong > span { font-size: 28px; vertical-align: top; }
.live-reach p { margin: 0 0 8px; font-size: 12px; font-weight: 500; color: #253846; }
.live-reach div > span { display: block; max-width: 260px; font-size: 11px; line-height: 1.9; color: #6e706f; }
.live-visual { min-width: 0; }
.live-film { position: relative; display: block; aspect-ratio: 16/9; border-radius: 12px; overflow: hidden; box-shadow: 0 28px 60px #59432b20; background: #13212c; }
.live-film::after { position: absolute; inset: 0; content: ''; background: linear-gradient(0deg,#09111baf,transparent 65%); pointer-events: none; }
.live-film img { width: 100%; height: 100%; object-fit: cover; }
.live-play { position: absolute; z-index: 2; left: 50%; top: 50%; transform: translate(-50%,-50%); display: grid; width: 70px; height: 70px; place-items: center; border: 1px solid #fff0c980; border-radius: 50%; background: #121b26a8; color: #fff2d1; transition: background .3s,box-shadow .3s; }
.live-play svg { width: 57px; height: 57px; fill: none; stroke: currentColor; stroke-width: 1; }
.live-film:hover .live-play { background: #7e6337d9; box-shadow: 0 0 35px #efcc7733; }
.live-film-label { position: absolute; z-index: 2; left: 24px; bottom: 22px; color: #fff8e9; font: 25px/1.25 var(--display); }
.live-film-label span { display: block; margin-top: 5px; color: #e4d8c5; font: 10px/1.5 var(--sans); text-transform: uppercase; letter-spacing: .13em; }
.live-caption { display: flex; justify-content: space-between; gap: 18px; padding: 18px 2px; font-size: 11px; color: #747573; }
.live-caption a { color: #745a35; }
.live-caption a:hover { text-decoration: underline; }
.story-copy { padding: 95px clamp(48px,6.1vw,100px); }
.story-intro { font-size: 15px; line-height: 1.8; max-width: 450px; }
.story-icons { margin-top: 26px; }
.story-icons div { min-height: 70px; gap: 9px; }
.story-icons svg { width: 27px; height: 27px; }
.story-icons span { font-size: 13px; }
.story-moments { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 28px; max-width: 450px; }
.story-moments figure { min-width: 0; }
.story-moments img { width: 100%; aspect-ratio: 2.25; object-fit: cover; border-radius: 6px; }
.story-moments figure:first-child img { object-position: center 40%; }
.story-moments figcaption { margin-top: 7px; font-size: 10px; line-height: 1.5; color: #675b53; }
.tour-overlay { gap: 32px; padding-block: 100px; }
.tour-showcase { height: clamp(250px,22vw,340px); }
.tour-logo { max-width: 94%; }
.tour-card-row { gap: 22px; }
.tour-card { aspect-ratio: 1.8; }
.career { background: radial-gradient(ellipse at 100% 0,#e9dbc880,transparent 60%),#f5f0e8; color: #203243; }
.career-layout { width: min(1080px,calc(100% - 12vw)); display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,.8fr); gap: 38px 88px; padding-block: 90px; align-content: center; align-items: start; }
.career-title { grid-column: 1/-1; }
.career .section-label { color: #886d49; font-size: 13px; margin-bottom: 18px; }
.career .section-label::after { background: #b09260; }
.career h2 { font-size: clamp(36px,3.1vw,48px); line-height: 1.08; color: #203243; }
.career h2 .title-word { color: #203243; background: none; }
.career .press-carousel { max-width: none; justify-self: stretch; }
.career .press-carousel h3 { font: 12px/1.5 var(--sans); color: #7d6b56; letter-spacing: .1em; text-transform: uppercase; margin: 0 0 16px; }
.career .press-feature { border: 1px solid #c8b79d70; background: #fffaf3; border-radius: 10px; margin-bottom: 22px; box-shadow: 0 15px 35px #60482c0e; }
.career .press-feature:hover { border-color: #ad8d59; background: #fffdf8; }
.career .feature-copy { padding: 15px 19px; }
.career .press-feature strong { font-size: 21px; color: #26384b; }
.career .feature-copy > span { color: #897052; }
.career .feature-kicker { font-size: 11px; }
.career .press-feature .feature-play { width: 58px; height: 58px; font-size: 18px; background: #0b172ba8; border-color: #f0d8a4; }
.career .press-secondary { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: 25px; }
.career .press-frame { aspect-ratio: 16/10; background: #e7daca; }
.career .press-controls { margin-top: 7px; gap: 1px; }
.career .press-controls > button { width: 32px; height: 32px; border-color: #b7a08470; color: #806342; }
.career .press-dots button { width: 17px; height: 32px; }
.career .press-dots button::after { background: #ae9f8c80; }
.career .press-dots button[aria-pressed="true"]::after { background: #8d6c37; }
.career .press-caption { color: #827463; }
.career .press-links a { color: #334357; border-color: #b7a08450; font-size: 11px; padding-block: 10px; }
.career .press-links a:hover, .career .press-more summary { color: #8b672f; }
.career .press-more { font-size: 11px; }
.career-overview { display: flex; flex-direction: column; align-items: stretch; gap: 20px; padding-left: 34px; border-left: 1px solid #c7b79e80; }
.award-heading { display: flex; align-items: center; gap: 10px; color: #9b793e; font: 12px/1.5 var(--sans); text-transform: uppercase; letter-spacing: .1em; }
.award-heading svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.award-editorial-title { margin: 0; font: 400 29px/1.13 var(--display); letter-spacing: .01em; color: #203243; text-transform: uppercase; }
.career-overview .award-image { width: 100%; max-width: 300px; margin: 0; aspect-ratio: 4/3; border-radius: 8px; background: transparent; border: 1px solid #a68d6b35; box-shadow: none; }
.career-overview .award-image img { object-fit: contain; }
.award-records { display: grid; gap: 19px; }
.award-records p { margin: 0; }
.award-records span { display: block; margin-bottom: 7px; color: #897050; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.award-records strong { font: 400 15px/1.5 var(--sans); color: #344052; }
.career-more { font-size: 11px; color: #806742; }
.career-more summary { cursor: pointer; padding-block: 9px; }
.career-facts { gap: 0 18px; margin-top: 8px; }
.career-facts p { border-color: #c7b79e80; padding: 12px 0; }
.career-facts strong { color: #8b6f41; font-size: 19px; }
.career-facts span { color: #706a62; font-size: 11px; }
.music-layout { grid-template-columns: 42% 58%; gap: 0; }
.music-copy { max-width: 440px; padding-right: 44px; }
.music-intro { font-size: 15px; }
.music-selection-label { margin: 0 0 18px; color: #f5e4c9; font-size: 11px; letter-spacing: .11em; text-transform: uppercase; text-shadow: 0 2px 10px #000; }
.song-area { padding-bottom: 5vw; }
.album-feature { background: #071422b0; border-color: #dbc69d55; padding: 16px; margin-top: 30px; }
.booking h2 { font-size: clamp(48px,4.65vw,76px); }
@media (max-width: 1100px) and (min-width: 981px) {
  .live-layout { gap: 48px; }
  .career-layout { gap: 34px 50px; }
  .career-overview { padding-left: 25px; }
}
@media (max-width: 980px) {
  .main-nav { gap: 25px; }
  .hero h1 { font-size: clamp(62px,10vw,86px); }
  .live-layout { grid-template-columns: 1fr; padding-block: 95px 75px; gap: 40px; }
  .live h2 { font-size: clamp(39px,7vw,54px); }
  .live-intro { max-width: 480px; }
  .live-reach { max-width: 480px; margin-top: 32px; }
  .live-film-label { left: 18px; bottom: 18px; }
  .live-caption { flex-wrap: wrap; }
  .story-copy { padding: 90px 32px 50px; }
  .story-intro { max-width: 580px; }
  .story-icons { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; }
  .story-icons div { min-height: 76px; padding-inline: 5px; }
  .story-icons div:nth-child(2) { border-right: 1px solid #d19c3173; }
  .story-moments { max-width: 580px; }
  .tour-overlay { padding-block: 90px 70px; }
  .tour-showcase { height: auto; }
  .tour-logo { max-width: 115%; }
  .tour-card-row { gap: 12px; }
  .tour-card { aspect-ratio: 1.35; }
  .career-layout { width: calc(100% - 64px); grid-template-columns: 1fr; padding-block: 92px 80px; gap: 38px; }
  .career-title { grid-column: auto; }
  .career .press-feature { max-width: none; }
  .career-overview { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px; padding-left: 0; padding-top: 35px; border-left: 0; border-top: 1px solid #c7b79e80; }
  .award-heading, .award-editorial-title { grid-column: 1/-1; }
  .award-heading { margin-bottom: -10px; }
  .career-overview .award-image { grid-column: 1; grid-row: 3; max-width: none; }
  .award-records { grid-column: 2; grid-row: 3; align-content: start; }
  .career-more { grid-column: 1/-1; }
  .music-layout { grid-template-columns: 1fr; gap: 72px; }
  .music-copy { max-width: 480px; padding-right: 0; }
  .song-area { padding-bottom: 0; }
  .music-selection-label { line-height: 1.7; }
}
@media (min-width: 640px) and (max-width: 980px) {
  .live-layout { grid-template-columns: .9fr 1.1fr; gap: 30px; }
  .live h2 { font-size: 39px; }
  .live-intro { font-size: 14px; }
  .live-reach { gap: 15px; }
  .live-caption { font-size: 10px; }
  .tour-showcase { height: 270px; }
  .tour-card { aspect-ratio: 1.25; }
  .career .press-secondary { grid-template-columns: .7fr 1.3fr; }
  .music-layout { grid-template-columns: 42% 58%; gap: 0; }
  .music-copy { padding-right: 26px; }
}
@media (max-width: 639px) {
  .hero-profession { max-width: 300px; font-size: 10px !important; line-height: 1.8; }
  .live-layout { width: calc(100% - 48px); }
  .live h2 { font-size: 42px; }
  .live-intro { font-size: 15px; margin-block: 24px; }
  .live-reach { gap: 18px; }
  .live-reach > strong { font-size: 42px; }
  .live-reach p { font-size: 11px; }
  .live-play { width: 55px; height: 55px; }
  .live-play svg { width: 45px; height: 45px; }
  .live-film-label { font-size: 20px; left: 15px; bottom: 14px; }
  .live-film-label span { font-size: 9px; }
  .story-copy { padding-inline: 24px; }
  .story h2 { font-size: clamp(35px,9.5vw,48px); }
  .story-moments { gap: 12px; }
  .story-moments img { aspect-ratio: 1.7; }
  .story-icons span { font-size: 12px; }
  .story-portrait { aspect-ratio: auto; }
  .career-layout { width: calc(100% - 48px); }
  .career .press-secondary { grid-template-columns: 1fr; gap: 24px; }
  .career .press-gallery { max-width: 220px; }
  .career .press-links a { font-size: 13px; padding-block: 13px; }
  .career .press-more { font-size: 13px; }
  .career .press-controls > button { width: 40px; height: 40px; }
  .career .press-dots button { width: 20px; height: 40px; }
  .career-overview { display: flex; flex-direction: column; gap: 22px; }
  .career-overview .award-image { max-width: 300px; }
  .award-records strong { font-size: 14px; }
  .music-layout { padding-block: 90px 75px; }
}

/* Temporary local comparison, built from the existing artist page. */

 .visual-live {position:relative;min-height:1080px;overflow:hidden;display:flex;align-items:center;background:#f3ede3;color:#223343}
 .visual-live h2 {margin:0;font:400 66px/1.06 var(--display);text-transform:uppercase;letter-spacing:-.015em}
 .visual-live .visual-copy {position:relative;z-index:3;width:520px;margin-left:12vw;padding-top:30px}
 .visual-live .section-label {font-size:14px;color:#8c6b40;margin-bottom:27px}
 .visual-live .section-label::after {width:62px;background:#ad8a52}
 .visual-live .visual-intro {max-width:380px;font-size:16px;line-height:1.85;color:#59626a;margin:28px 0}
 .visual-live .visual-film {position:absolute;inset:0 0 0 34%;overflow:hidden}
 .visual-live .visual-film img {width:100%;height:100%;object-fit:cover;object-position:64% center}
 .visual-live .visual-film {mask-image:linear-gradient(90deg,transparent 0%,#0002 12%,#000a 28%,#000 43%)}
 .visual-live .visual-film::after {position:absolute;inset:0;content:'';background:linear-gradient(0deg,#0c152170,transparent 45%)}
 .visual-live:not(.alternative) .visual-film {top:64px}
 .visual-live .visual-film .visual-blur {position:absolute;inset:0;filter:blur(18px);mask-image:linear-gradient(90deg,#000 0%,#000 27%,transparent 52%);pointer-events:none}
 .visual-live .visual-play {position:absolute;z-index:3;top:47%;left:76%;display:grid;place-items:center;width:83px;height:83px;border:1px solid #f6e1b5a0;border-radius:50%;background:#101c2d70;color:#fff3d4}
 .visual-play svg {width:65px;height:65px;fill:none;stroke:currentColor;stroke-width:1}
 .visual-live .visual-caption {position:absolute;z-index:3;right:6vw;bottom:100px;color:#fff5dd;text-align:right;font:25px/1.3 var(--display)}
 .visual-live .visual-caption span {display:block;margin-top:9px;font:10px/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase}
 .visual-reach {display:flex;gap:22px;margin:36px 0 0;align-items:center;color:#846436}
 .visual-reach strong {font:400 43px/1 var(--display);white-space:nowrap}
 .visual-reach span {font-size:12px;line-height:1.6;color:#727067}
 .visual-proof {max-width:400px;margin-top:38px}
 .visual-proof .proof-label {color:#8e7858;font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 9px}
 .visual-proof h3 {margin:0;font:400 24px/1.3 var(--display);color:#374557}
 .visual-proof p {margin:8px 0 0;font-size:12px;line-height:1.75;color:#767169}
 .visual-proof .proof-link {font-size:10px;color:#927343;margin-top:8px;display:block}
 .visual-live .button {font-size:16px;min-height:45px}
 .visual-live.alternative {background:#111a23;color:#fff4df}
 .visual-live.alternative .visual-film {inset:0;mask-image:none}
 .visual-live.alternative .visual-film img {object-position:center 44%;filter:sepia(.1) saturate(1.06)}
 .visual-live.alternative .visual-film::after {background:linear-gradient(90deg,#0c1621f7 0%,#101924d9 23%,#10192466 46%,transparent 65%),linear-gradient(0deg,#101924d9,transparent 45%)}
 .visual-live.alternative .visual-copy {width:600px}
 .visual-live.alternative .visual-intro {color:#e8dfcf;max-width:380px}
 .visual-live.alternative .section-label {color:#e1be7a}
 .visual-live.alternative .visual-play {left:62%;top:42%;background:#111b2680}
 .visual-live.alternative .visual-reach strong {color:#e0bc7b}
 .visual-live.alternative .visual-reach span {color:#cfbfaa}
 .visual-live.alternative .proof-label {color:#c8b99e}
 .visual-live.alternative .visual-proof h3 {color:#f6ead3}
 .visual-live.alternative .visual-proof p {color:#c7beb0}
 .visual-live.alternative .proof-link {color:#dfbb77}
 .visual-live.alternative .visual-caption {right:6vw;bottom:125px}
 .story-copy {padding-left:100px;padding-right:70px}
 .story h2 {font-size:57px}
 .story-intro,.story-icons,.story-moments {width:100%;max-width:640px}
 .story-intro {font-size:15px;line-height:1.85}
 .story-icons {grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:30px}
 .story-icons div {min-width:0;min-height:84px;padding:0 10px;gap:12px}
 .story-icons svg {width:32px;height:32px;flex:none}
 .story-icons span {font-size:14px;white-space:nowrap}
 .story-moments {grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:28px}
 .story-moments img {aspect-ratio:1.9;object-fit:cover;width:100%}
 .story-moments figcaption {font-size:10px;line-height:1.6;max-width:180px}
 .career-overview .award-image {aspect-ratio:4/3;max-width:300px}
 .career-overview .award-image img {object-fit:contain;background:#e8dfd1}
 .career .press-frame img {object-position:center 65%}
 .career .press-controls {display:none}
 .career .press-caption {margin-top:10px;text-align:left;color:#8c7350}
 .music-intro {max-width:380px;font-size:15px;line-height:1.8}
 .music-numbers {font-size:12px;color:#ecd3a1;margin:20px 0 0;line-height:1.8}

.visual-live[hidden]{display:none!important}
.c-video-backdrop{position:absolute;inset:0;overflow:hidden;background:#14212d;pointer-events:none}
.c-video-backdrop iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:none;opacity:0;transition:opacity .6s}
.c-video-backdrop.is-playing iframe{opacity:1}
[data-live-variant=C] .visual-film::after{z-index:2}
[data-live-variant=C] .visual-play{z-index:3}
.visual-live{min-height:var(--panel)}
.visual-live h2{font-size:clamp(40px,3.44vw,66px)}
.visual-live .visual-copy{margin-left:12vw;width:34%;max-width:520px;padding:120px 0 110px}
.visual-live.alternative .visual-copy{width:36%;max-width:600px}
.visual-live:not(.alternative) .visual-film::before{content:'';position:absolute;inset:0;z-index:1;backdrop-filter:blur(14px);mask-image:linear-gradient(90deg,#000 0%,#000 6%,transparent 24%);pointer-events:none}
.visual-live .visual-film video{width:100%;height:100%;object-fit:cover;object-position:20% center}
.visual-live[data-live-variant=A] .visual-film{mask-image:linear-gradient(90deg,transparent 0%,#0002 7%,#000b 17%,#000 28%)}
.visual-live .visual-caption{bottom:125px}
.visual-play{transition:background .3s,transform .3s}
.visual-play:hover{background:#152236ad;transform:scale(1.05)}
.visual-live .button svg{width:24px;height:24px}
.visual-live .button{width:max-content;max-width:100%}
.visual-live .visual-play svg{width:65px;height:65px}
.story-copy{padding-left:clamp(32px,5.2vw,100px);padding-right:clamp(32px,3.6vw,70px)}
.story h2{font-size:clamp(40px,3vw,57px)}
.hamburg-video{display:block;position:relative;overflow:hidden;border-radius:8px;background:#162c3e;color:#fff;aspect-ratio:4/3}
.hamburg-video img{width:100%;height:100%;object-fit:cover;object-position:center}
.hamburg-video:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071729ed,transparent 70%)}
.hamburg-play{position:absolute;z-index:1;top:34%;left:43%;width:34px;height:34px;border:1px solid #fff9;border-radius:50%;display:grid;place-items:center;font-size:12px;background:#09172970}
.hamburg-label{position:absolute;z-index:1;left:14px;right:12px;bottom:12px;display:grid;gap:6px;font-size:12px;line-height:1.4}
.hamburg-label strong{font-weight:500}
.hamburg-label>span{font-size:10px;color:#e4c998}
.hamburg-caption{font-size:10px;line-height:1.7;color:#8c7350;margin-top:12px}






@media(min-width:981px) and (max-width:1500px){
.visual-live .visual-copy{margin-left:8vw;width:37%;padding:105px 0 85px}.visual-live .visual-intro{font-size:14px;margin:22px 0}.visual-proof{margin-top:25px}.visual-reach{margin-top:25px}.visual-live .section-label{margin-bottom:22px}
.story-intro{font-size:14px}.story-icons span{font-size:12px}.story-icons div{padding-inline:4px}.story-copy{padding-block:100px}.story-moments{gap:12px}.story-moments figcaption{font-size:9px}
}
@media(max-width:980px){
.visual-live{min-height:100svh;align-items:flex-start;display:block}
.visual-live .visual-copy,.visual-live.alternative .visual-copy{width:57%;margin-left:7vw;padding:100px 0 220px;max-width:480px}
.visual-live h2{font-size:clamp(38px,6vw,52px)}
.visual-live .visual-film{left:25%}.visual-live .visual-caption{right:6vw;bottom:105px;font-size:22px}
.visual-live .visual-play{left:75%;top:49%;width:68px;height:68px}
.visual-live.alternative .visual-play{left:77%;top:48%}
.visual-live .visual-intro{font-size:14px}.visual-live .visual-reach{gap:16px}.visual-reach span{font-size:11px}
.story-copy{padding:90px 32px 50px}.story-icons span{font-size:14px}.story-moments figcaption{font-size:10px}.story h2{font-size:44px}
}
@media(max-width:639px){
.visual-live .visual-copy,.visual-live.alternative .visual-copy{margin:0;width:auto;max-width:none;padding:100px 24px 365px}
.visual-live h2{font-size:42px;max-width:300px}.visual-live .section-label{font-size:12px;margin-bottom:24px}
.visual-live .visual-intro{max-width:300px;line-height:1.8;margin:24px 0}
.visual-reach strong{font-size:38px}.visual-reach span{font-size:10px}.visual-proof{max-width:320px;margin-top:30px}.visual-proof h3{font-size:23px}
.visual-live .visual-film,.visual-live:not(.alternative) .visual-film{inset:auto 0 0;height:360px;mask-image:linear-gradient(0deg,#000 0%,#000 55%,transparent 100%)}
.visual-live .visual-film img{object-position:center}
.visual-live:not(.alternative) .visual-film::before{display:none}
.visual-live .visual-film video{object-position:20% center}
.visual-live[data-live-variant=A] .visual-film{mask-image:linear-gradient(0deg,#000 0%,#000 70%,transparent 100%)}
.visual-live .visual-film .visual-blur{display:none}
.visual-live .visual-play,.visual-live.alternative .visual-play{top:auto;bottom:164px;left:calc(50% - 34px)}
.visual-live .visual-caption,.visual-live.alternative .visual-caption{bottom:92px;right:24px;left:24px;text-align:center;font-size:22px}
.visual-live.alternative .visual-film{inset:0;height:100%;mask-image:none}.visual-live.alternative .visual-film img{object-position:65% center}
.visual-live.alternative .visual-film::after{background:linear-gradient(180deg,#0c1621ef 0%,#101924e8 45%,#10192466 80%,#101924cb 100%)}
.story-copy{padding-inline:24px}.story h2{font-size:40px}.story-intro{font-size:14px}
.story-icons{gap:0;margin-top:26px}.story-icons div{padding:0 3px;gap:10px}.story-icons svg{width:25px;height:25px}.story-icons span{font-size:11px}
.story-moments{gap:10px}.story-moments img{aspect-ratio:1.3}.story-moments figcaption{font-size:9px}
.career .press-secondary{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px}
.hamburg-label{left:10px;bottom:10px;font-size:11px}.hamburg-video{aspect-ratio:3/4}.hamburg-play{top:27%;left:calc(50% - 17px)}

}
@media(max-width:360px){.visual-live h2{font-size:38px}.story-icons span{font-size:10px}.story h2{font-size:36px}.career .press-secondary{grid-template-columns:1fr}.hamburg-video{aspect-ratio:4/3}}
.live-format-stage[hidden],.video-stage[hidden],.format-back[hidden]{display:none!important}
[data-live-variant=A] .c-video-backdrop iframe{left:20%;transform:translate(-20%,-50%)}
.live-format-stage{padding:30px 32px 34px;background:#f4eee4;color:#223343}
.live-format-intro{margin:0 0 24px;font:14px/1.7 var(--sans);color:#796c59}
.live-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.live-format-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #ab946538;border-radius:10px;background:#fcf8f1;text-decoration:none;color:inherit}
.live-format-photo>img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center 35%}
.live-format-copy{padding:23px 24px 25px}
.format-kicker{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#927445}
.live-format-copy h3{margin:11px 0 13px;font:36px/1 var(--display);text-transform:uppercase}
.live-format-copy p{font:13px/1.8 var(--sans);color:#687078;margin:0 0 20px}
.format-watch{display:flex;align-items:center;gap:9px;font:16px/1.4 var(--display);color:#8c6b37;background:none;border:0;padding:0;letter-spacing:.025em}
.format-watch svg{width:24px;height:24px;fill:none;stroke:currentColor}
.format-watch:disabled{color:#aaa18f}
.live-format-card[href]:hover{box-shadow:0 6px 25px #44371b15}
.format-back{background:none;border:1px solid #bca3796b;border-radius:5px;color:#e8d7b8;font:14px/1.4 var(--display);padding:7px 9px;margin-right:14px;white-space:nowrap}
@media(max-width:639px){.live-format-stage{padding:22px 18px}.live-format-grid{gap:14px}.live-format-photo>img{aspect-ratio:1;object-position:center}.live-format-copy{padding:17px 12px}.live-format-copy h3{font-size:29px}.format-kicker{font-size:8px}.live-format-copy p{font-size:11px;line-height:1.75}.format-watch{font-size:14px;gap:5px}.format-back{font-size:12px;margin-right:8px}.video-dialog-head{flex-wrap:wrap;gap:8px}}

.live-format-copy{display:flex;flex:1;flex-direction:column}
.format-kicker{display:block;min-height:14px}
.format-watch{margin-top:auto;min-height:28px}
.live-format-photo>img.format-band-photo{object-position:center 38%}
@media(max-width:639px){.live-format-photo>img{aspect-ratio:16/10}.format-kicker{min-height:28px;line-height:1.6}.live-format-copy p{flex:1}.video-dialog{max-height:calc(100svh - 32px);overflow:auto}.live-format-grid{align-items:stretch}}

.c-video-backdrop .live-loop-poster,.c-video-backdrop .live-loop-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.c-video-backdrop .live-loop-video{opacity:0;transition:opacity .35s ease}
.c-video-backdrop.has-frame .live-loop-video{opacity:1}
[data-live-variant=A] .c-video-backdrop .live-loop-poster,[data-live-variant=A] .c-video-backdrop .live-loop-video{object-position:20% center}
@media(max-width:639px){.live-format-photo>img.format-band-photo{aspect-ratio:16/9;object-position:center}}

/* Align the live moment with the centre of the right half of the section. */
[data-live-variant=A] .visual-play{left:calc(75% - 41.5px)}
[data-live-variant=A] .c-video-backdrop .live-loop-poster,[data-live-variant=A] .c-video-backdrop .live-loop-video{object-position:35% center}
.live-format-photo{position:relative;overflow:hidden;flex-shrink:0}
.live-format-photo>img{display:block}
.live-format-photo-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:54px;height:54px;border:1px solid #f7e3bea8;border-radius:50%;background:#14212f70;color:#fff4dc;box-shadow:0 3px 18px #0002;transition:background .25s,box-shadow .25s}
.live-format-photo-play svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1}
.live-format-card:hover .live-format-photo-play,.live-format-card:focus-visible .live-format-photo-play{background:#14212fb0;box-shadow:0 3px 24px #0004}
/* The page remains clearly recognisable around the in-page player. */
.video-dialog::backdrop{background:rgba(16,26,37,.28);backdrop-filter:blur(1.5px)}
.video-dialog{width:min(840px,calc(100% - 48px));border-color:#b09a7955;box-shadow:0 20px 70px #14212f45;background:#f4eee4;scrollbar-gutter:stable}
.video-dialog-head{background:#f4eee4;border-bottom:1px solid #ab946530}
.video-dialog-head p{color:#223343}
.video-dialog .dialog-close{background:#fcf8f1;color:#223343;border-color:#ab946560}
.video-dialog .format-back{color:#79603e}
@media(max-width:980px) and (min-width:640px){[data-live-variant=A] .visual-play{left:calc(75% - 34px)}}
@media(max-width:639px){
 [data-live-variant=A] .visual-play{left:calc(50% - 34px)}
 [data-live-variant=A] .c-video-backdrop .live-loop-poster,[data-live-variant=A] .c-video-backdrop .live-loop-video{object-position:50% center}
 .live-format-photo-play{width:42px;height:42px}.live-format-photo-play svg{width:23px;height:23px}
 .video-dialog{width:calc(100% - 40px);max-height:calc(100svh - 64px)}
 .live-format-stage{padding:22px 16px}.live-format-grid{gap:12px}
 .live-format-copy{padding-inline:10px}
 .live-format-copy h3{font-size:27px}
}
/* A quiet pair of photographs, leaving the award copy room to breathe. */
@media(min-width:981px){.career-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:64px}.career-overview{padding-left:30px}}
.awards-gallery{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%;align-items:start}
.award-cover,.award-slide{margin:0;min-width:0}
.award-photo-frame,.award-slide-frame{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;border-radius:6px;background:#e8dfd1}
.award-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:44% center;display:block}
.award-slide-frame .award-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.8s ease-in-out;pointer-events:none}
.award-slide-frame .award-slide.is-active{opacity:1;z-index:1}
.award-slide-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:sepia(.04) saturate(1.04)}
.award-slide-interview img{object-position:64% 32%;transform:scale(1.28);transform-origin:78% 35%}
.award-cover figcaption,.award-slide-caption{margin:12px 0 0;color:#334052;font:11px/1.65 var(--sans)}
.award-cover figcaption span,.award-slide-caption span{display:block;margin-top:3px;color:#8c7455;font-size:9px;letter-spacing:.02em}
.award-gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:1px;gap:0}
.award-gallery-dots{display:flex;flex:1;justify-content:space-between;min-width:0}
.award-gallery-controls button{appearance:none;border:0;background:transparent;color:#806c50;padding:0;cursor:pointer;height:44px;min-width:24px;flex:1}
.award-gallery-dots button:after{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#baa98e;transition:background .5s,transform .5s}
.award-gallery-dots button[aria-pressed=true]:after{background:#7b5b32;transform:scale(1.35)}
.award-gallery-controls .award-gallery-pause{flex:0 0 32px;font-size:12px;letter-spacing:-2px}
.award-gallery-controls button:focus-visible{outline:2px solid #9b793e;outline-offset:-3px;border-radius:4px}
@media(max-width:980px){.awards-gallery{grid-column:1;grid-row:3;gap:16px}.award-photo-frame,.award-slide-frame{aspect-ratio:3/4}.award-cover figcaption,.award-slide-caption{font-size:10px}}
@media(max-width:639px){.awards-gallery{grid-column:auto;grid-row:auto;max-width:420px;gap:16px}.award-photo-frame,.award-slide-frame{aspect-ratio:3/4}.award-records{display:grid;grid-template-columns:1fr 1fr;gap:22px}.award-records strong{font-size:12px}.award-records span{font-size:9px}.award-gallery-controls .award-gallery-pause{flex-basis:26px}.award-cover figcaption,.award-slide-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.award-slide-frame .award-slide{transition:none}}

/* Quiet emphasis for the two proof points above TV and awards. */
.career .press-carousel>h3,.career .award-heading{width:fit-content;max-width:100%;padding:0;border:0;border-radius:0;background:none;color:#5e482a;font:600 14px/1.45 var(--sans);letter-spacing:.075em;text-transform:uppercase}
.career .press-carousel>h3{margin:0 0 16px}
.career .award-heading{gap:10px}
.career .award-heading svg{width:28px;height:28px;flex:none;color:#9b7332;stroke-width:1.8}
@media(max-width:639px){.career .press-carousel>h3,.career .award-heading{font-size:13px;padding:0}.career .award-heading svg{width:26px;height:26px}}

.career .press-carousel>h3{display:flex;align-items:center;gap:10px}
.career .tv-heading-icon{width:28px;height:28px;flex:none;fill:none;stroke:currentColor;color:#9b7332;stroke-width:1.8}
@media(max-width:639px){.career .tv-heading-icon{width:26px;height:26px}}

/* Readable secondary text and flexible controls across screen shapes. */
.story-moments figcaption{font-size:12px;line-height:1.65}
.visual-proof p:not(.proof-label){font-size:14px;line-height:1.75;color:#645e54}
.visual-proof .proof-label{font-size:12px;color:#77603e}
.visual-proof .proof-link{font-size:12px;min-height:44px;display:inline-flex;align-items:center;color:#775a32}
.visual-reach span{font-size:13px;color:#625e55}
.music-numbers{font-size:14px}
.hamburg-caption{font-size:12px;color:#735c3e}
.hamburg-label>span{font-size:12px}
.award-cover figcaption,.award-slide-caption{font-size:12px;line-height:1.65}
.award-cover figcaption span,.award-slide-caption span{font-size:11px;color:#735c3e}
.award-records span{font-size:12px;color:#735c3e;line-height:1.6}
.award-records strong{font-size:14px;line-height:1.6}
.career-more,.career .press-more{font-size:13px}
.career-more summary,.career .press-more summary{min-height:44px;align-content:center}
.career .press-links a{font-size:14px;min-height:44px;align-items:center}
.live-format-copy p{font-size:14px;line-height:1.7;hyphens:auto;overflow-wrap:break-word}
.format-kicker{font-size:11px;line-height:1.6;color:#775a32}
.live-format-intro{color:#625746}
.format-watch{min-height:44px}
.video-dialog-head{position:sticky;top:0;z-index:6}
.video-dialog .dialog-close{width:44px;height:44px;right:12px;top:12px}
.tour-dialog>.dialog-close{position:sticky;top:12px;margin:-24px -24px -20px auto}
@media(max-width:980px){
 .main-nav{max-height:100svh;overflow-y:auto;overscroll-behavior:contain}
 .album-feature{grid-template-columns:minmax(64px,24%) minmax(0,1fr);gap:14px;padding:14px}
 .album-eyebrow,.album-coming{font-size:13px}
 .album-note{font-size:14px}
 .story-icons span{font-size:12px}
 .tour-dialog>.dialog-close{margin:-48px -8px 4px auto}
}
@media(max-width:639px){
 .hero-profession{font-size:12px!important;letter-spacing:.08em!important}
 .visual-live .visual-intro,.story-intro{font-size:15px;line-height:1.8}
 .visual-reach span{font-size:13px;line-height:1.7}
 .story-icons span{font-size:12px;white-space:normal;text-align:center}
 .story-moments{gap:12px}
 .live-format-copy p{font-size:14px}
 .format-kicker{font-size:11px;min-height:35px}
 .award-cover figcaption,.award-slide-caption{font-size:12px}
 .award-records strong{font-size:14px}
}
@media(max-width:359px){
 .live-format-grid{grid-template-columns:1fr}
 .live-format-copy{padding:18px}
 .live-format-photo>img{aspect-ratio:16/9}
 .format-kicker{min-height:0}
 .live-format-copy h3{font-size:30px}
 .award-gallery-controls{flex-wrap:wrap}
 .award-gallery-dots{flex-basis:100%}
 .award-gallery-controls .award-gallery-pause{margin-left:auto}
}
@media(max-height:540px) and (max-width:980px){
 .main-nav{justify-content:flex-start;padding:76px 12vw 28px;gap:12px}
}
@media(orientation:landscape) and (max-height:540px){
 .video-dialog{max-height:calc(100svh - 24px)}
 .video-stage video,.video-stage iframe{min-height:0;max-height:calc(100svh - 150px)}
 .live-format-stage{padding:18px 24px}
 .live-format-photo>img,.live-format-photo>img.format-band-photo{aspect-ratio:21/9}
 .live-format-copy{padding:16px}
 .live-format-copy h3{font-size:30px}
}

.visual-live .visual-caption span{font-size:12px}
.career .feature-kicker{font-size:12px}
.hamburg-label strong{font-size:12px}

.video-choices button{color:#5e482a;border-color:#b09a7970;min-height:44px}
.video-choices button[aria-pressed="true"],.video-choices button:hover{color:#223343;background:#e9cf9b55;border-color:#9b793e}

.story-moments figcaption{hyphens:auto;overflow-wrap:anywhere}

/* Keep text readable even when a background video reaches a bright frame. */
.hero-shade{background:linear-gradient(90deg,#02070de0 0%,#02070dcc 54%,#02070d85 68%,#02070d30 100%)}
.music-shade{background:linear-gradient(90deg,#07121de0 0%,#07121dd1 43%,#07121db8 55%,#07121d55 100%)}
.music-copy{min-width:0}
.music-intro{color:#fff7ed;text-shadow:none}
.music-numbers{color:#f2dba9;text-shadow:none}
.song-area{position:relative;isolation:isolate;min-width:0}
.song-area::before{content:'';position:absolute;inset:-32px -28px;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent,#07121ddd 28px,#07121ddd calc(100% - 28px),transparent);mask-image:linear-gradient(transparent,#000 32px,#000 calc(100% - 32px),transparent)}
.music-selection-label{font-size:12px;color:#fff1d8;text-shadow:none}
.song-card{background:linear-gradient(0deg,#02080ff5 0%,#02080fe8 30%,transparent 78%),var(--cover) center/cover no-repeat}
.booking-shade{background:linear-gradient(90deg,#030910eb 0%,#030910d9 53%,#030910a6 67%,#03091033 100%)}
.booking-content>p:not(.section-label){max-width:600px;line-height:1.7}
.visual-live .visual-caption{text-shadow:0 2px 10px #0009}
.visual-live .visual-film::after{z-index:2;background:linear-gradient(0deg,#0c1521e8 0%,#0c1521c7 150px,transparent 330px)}
@media(min-width:640px){
 .visual-live[data-live-variant=A] .visual-film{left:48%;mask-image:linear-gradient(90deg,transparent,#000 22%)}
 .visual-live[data-live-variant=A] .visual-copy{max-width:520px;width:34%}
}
@media(min-width:640px) and (max-width:980px){
 .visual-live[data-live-variant=A] .visual-copy{width:40%;max-width:none;padding-bottom:100px}
 .visual-live .visual-intro{font-size:15px}
 .visual-live .visual-reach{flex-wrap:wrap}
 .visual-live .visual-reach span{font-size:13px}
 .visual-live .visual-caption{left:58%;right:5vw;bottom:85px;font-size:22px}
 .visual-live .visual-caption span{letter-spacing:.08em}
}
@media(max-width:980px){
 .hero-shade{background:linear-gradient(90deg,#02070de0,#02070dbf)}
 .music-shade{background:#07121dc7}
 .booking-shade{background:linear-gradient(180deg,#03091080 0,#030910d6 190px,#030910e6 100%)}
 .music-layout{column-gap:24px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
 .music-copy{padding-right:0}
 .music-intro{font-size:16px;line-height:1.85}
 .music-numbers{font-size:14px;line-height:1.8}
}
@media(max-width:639px){
 .music-layout{grid-template-columns:minmax(0,1fr);gap:56px}
 .music-copy{max-width:none}
 .music-intro{max-width:none}
 .visual-live .visual-caption{bottom:75px}
 .visual-live .visual-film::after{background:linear-gradient(0deg,#0c1521e0 0%,#0c1521b8 145px,transparent 300px)}
}

@media(min-width:981px) and (max-width:1500px){.visual-live[data-live-variant=A] .visual-copy{width:37%}}

/* Let the live film remain fully visible before the next mobile panel rises. */
@media(max-width:639px){
 #live{--live-content-height:100svh;--live-viewing-room:clamp(360px,65svh,680px);height:calc(var(--live-content-height) + var(--live-viewing-room));min-height:0;overflow:clip}
 .cinematic-panels #live{position:relative;top:auto}
 .cinematic-panels #live .visual-live{position:sticky;top:min(0px,calc(100svh - var(--live-content-height)))}
}
@media(max-width:639px) and (prefers-reduced-motion:reduce){
 #live{height:auto}
 .cinematic-panels #live .visual-live{position:relative;top:auto}
}
@media(max-width:639px) and (max-height:480px){
 .visual-live{--live-film-height:calc(100svh - 96px)}
 .visual-live .visual-copy{padding-bottom:calc(var(--live-film-height) + 24px)}
 .visual-live[data-live-variant=A] .visual-film{height:var(--live-film-height)}
 .visual-live[data-live-variant=A] .visual-play{bottom:clamp(64px,calc(50svh - 68px),164px)}
 .visual-live .visual-caption{bottom:24px}
}

/* The Hero introduces the name; the menu signature appears later, gently. */
.site-header>.wordmark{opacity:0;visibility:hidden;pointer-events:none;transition:opacity 2.2s ease,visibility 0s linear 2.2s}
.site-header.is-brand-visible>.wordmark{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 2.2s ease,visibility 0s}
@media(prefers-reduced-motion:reduce){.site-header>.wordmark,.site-header.is-brand-visible>.wordmark{transition:none}}

/* Compact language flags stay available in the header on every screen. */
.site-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}
.language-switch{position:relative;z-index:63;color:#fff;font:14px/1.4 var(--sans)}
.language-switch summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:6px;min-width:48px;min-height:44px;cursor:pointer;border-radius:8px}
.language-switch summary::-webkit-details-marker{display:none}
.language-switch svg{width:24px;height:15px;border-radius:2px;box-shadow:0 0 0 1px #ffffff40;flex:none}
.language-chevron{font-size:15px;color:var(--gold)}
.language-switch summary:hover{background:#ffffff0d}
.language-options{position:absolute;right:0;top:calc(100% + 8px);display:grid;min-width:160px;padding:8px;background:#07111cf5;border:1px solid #b995503d;border-radius:12px;box-shadow:0 16px 32px #0004}
.language-options a{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border-radius:7px}
.language-options a:hover,.language-options a[aria-current=page]{background:#ffffff0b;color:var(--gold)}
@media(min-width:981px) and (max-width:1200px){.site-header{gap:16px;padding-inline:3vw}.site-header .wordmark span{font-size:28px}.main-nav{gap:18px}.header-booking{padding-inline:16px}.header-actions{gap:8px}}
@media(max-width:980px){.site-header,.site-header.is-scrolled{grid-template-columns:minmax(0,1fr) 44px 48px;gap:8px;padding-inline:14px}.site-header>.wordmark{grid-column:1;grid-row:1}.site-header .wordmark span{font-size:clamp(20px,5.5vw,28px)}.menu-toggle{grid-column:2;grid-row:1}.header-actions{grid-column:3;grid-row:1;z-index:63}.header-booking{display:none}}
html[lang=es] .button{letter-spacing:.035em}


/* Artist navigation: disclosures preserve the cinematic panels beneath. */
.main-nav{gap:clamp(16px,1.6vw,25px);align-items:center}
.main-nav>a,.main-nav summary{white-space:nowrap}
.nav-dropdown{position:relative}
.nav-dropdown summary{list-style:none;display:flex;align-items:center;gap:6px;min-height:44px;cursor:pointer;font:16px var(--display);letter-spacing:.12em;text-transform:uppercase}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary>span{color:var(--gold);font-size:14px;transition:transform .2s}
.nav-dropdown[open] summary>span{transform:rotate(180deg)}
.nav-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:225px;max-width:calc(100vw - 32px);padding:12px;display:grid;gap:3px;background:#08131bf7;border:1px solid #d0af6945;border-radius:12px;box-shadow:0 20px 48px #0005;color:#f6f1e8}
.nav-dropdown:not([open])>.nav-panel{display:none}
.main-nav .nav-panel a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:6px;font:14px/1.4 var(--sans);letter-spacing:0;text-transform:none;white-space:normal}
.nav-panel a:hover{background:#ffffff09;color:var(--gold)}
.service-panel{left:auto;right:0;width:470px;grid-template-columns:1fr 1fr;gap:16px}
.nav-group{display:grid;align-content:start;gap:3px;min-width:0}
.nav-group+.nav-group{border-left:1px solid #d0af692b;padding-left:14px}
.nav-group-label{margin:8px 12px 6px;font:10px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#d5ba80}
.nav-booking-mobile{display:none}
.site-header :is(a,summary,button):focus-visible,.footer a:focus-visible,.section-text-link:focus-visible{outline:2px solid var(--gold);outline-offset:5px;border-radius:4px}
.section-text-link{display:inline-flex;align-items:center;gap:14px;font:14px/1.5 var(--sans);border-bottom:1px solid currentColor;padding-bottom:5px;max-width:100%;color:inherit}
.section-text-link:hover{color:var(--gold)}
.story-biography{margin:0 0 22px;color:#5d4932}
.music-discography{margin-top:20px;color:#f4e2bb}
.footer-row{grid-template-columns:auto minmax(0,1fr) auto;padding-block:28px;gap:28px}
.footer-row nav{flex-wrap:wrap;justify-content:center;gap:12px 22px}
.footer-row nav a{font-size:14px}
.footer-details{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px 26px;border-top:1px solid #ffffff16;color:#c3c6ca}
.footer-details address,.footer-details nav{display:flex;flex-wrap:wrap;gap:14px 24px;font:13px/1.6 var(--sans);font-style:normal}
.footer-details nav a{font:12px/1.6 var(--sans);letter-spacing:0;text-transform:none}
@media(min-width:1181px) and (max-width:1350px){.site-header{padding-inline:3vw;gap:16px}.site-header .wordmark span{font-size:28px}.main-nav{gap:16px}.main-nav>a,.nav-dropdown summary{font-size:15px}.header-actions{gap:8px}}
@media(max-width:1180px){
 .site-header,.site-header.is-scrolled{height:64px;grid-template-columns:minmax(0,1fr) 44px 48px;gap:8px;padding-inline:14px;backdrop-filter:none}
 .site-header>.wordmark{grid-column:1;grid-row:1}
 .site-header .wordmark span{font-size:clamp(20px,5.5vw,28px)}
 .menu-toggle{display:block;grid-column:2;grid-row:1;z-index:64}
 .header-actions{grid-column:3;grid-row:1;z-index:63}
 .header-booking{display:none}
 .main-nav{position:fixed;inset:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:5px;padding:82px 7vw 28px;background:#030910fa;visibility:hidden;opacity:0;max-height:100svh;overflow-y:auto;overscroll-behavior:contain;transition:opacity .25s,visibility .25s}
 .main-nav.is-open{visibility:visible;opacity:1}
 .main-nav>a,.nav-dropdown summary{font-size:24px;min-height:44px;display:flex;align-items:center;width:100%;padding-block:5px}
 .nav-dropdown{width:100%}
 .nav-panel,.service-panel{position:static;margin:5px 0 10px;min-width:0;width:100%;max-width:100%;box-shadow:none;grid-template-columns:1fr;padding:10px}
 .nav-group+.nav-group{border-left:0;border-top:1px solid #d0af692b;padding:10px 0 0;margin-top:8px}
 .main-nav .nav-panel a{font-size:15px}
 .main-nav>.nav-booking-mobile{display:flex;width:auto;align-self:flex-start;color:var(--gold);border:1px solid var(--gold);border-radius:999px;min-height:44px;padding:8px 22px;margin-top:12px;font-size:20px}
 .footer-row{grid-template-columns:1fr;justify-items:center;gap:24px}
 .footer-details{flex-direction:column;align-items:center;text-align:center}
 .footer-details address,.footer-details nav{justify-content:center}
}
@media(max-width:400px){.main-nav{padding-inline:20px}.footer-details address{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){.nav-dropdown summary>span{transition:none}}
