/* Shared refinement system */
:root{--section-space:clamp(56px,6vw,96px)}
html{scroll-padding-top:100px}
header{position:fixed;padding:16px var(--gutter);background:#eddbc4f5;border-bottom:1px solid #182a2426;backdrop-filter:blur(10px)}
header nav{gap:clamp(14px,1.6vw,26px);font-size:14px}
.button,.button.small{min-height:48px;font-size:16px;padding:13px 20px}
h2{letter-spacing:-.035em;line-height:1.12}
.eyebrow{font-size:14px;letter-spacing:.06em}
.hero,.motion-paused .hero{height:115svh;min-height:760px}
.hero-stage,.motion-paused .hero-stage{height:100svh;min-height:700px;position:sticky;top:0}
.hero-content{top:18%;width:42%;opacity:1!important}
.hero .eyebrow{font-size:16px;line-height:1.5;max-width:420px;margin-bottom:12px}
.hero-event{font-size:18px;line-height:1.55;margin:0 0 22px}
.album-collage{max-width:340px}
.album{min-height:0;padding:var(--section-space) 0 90px}
.album-layout{grid-template-columns:.7fr 1fr;gap:10%}.cover-button{max-width:380px;justify-self:center}
.album-title{max-width:460px}.album-copy p{font-size:clamp(20px,2vw,28px)}
.album-forest{opacity:.45;max-height:160px}
.cover-hint{opacity:1;font-size:14px;padding:10px}
.artwork-link{display:block;border:0;background:none;text-decoration:underline;text-underline-offset:5px;padding:14px 0;font-size:16px;min-height:48px}
.listen{padding:var(--section-space) 0}.listen-layout{grid-template-columns:.65fr 1fr;gap:8%}
.listen-sleeve{max-width:350px}.listen h2{font-size:clamp(38px,4.3vw,66px)}
.snippet-actions{justify-content:flex-start;gap:20px}
#snippet-repeat{border:0;background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:5px;padding-inline:4px}
#snippet-repeat[aria-pressed="true"]{background:transparent;color:var(--brick);font-weight:bold}
.snippet-timeline{position:relative;margin-top:20px}.snippet-wave{margin:0;height:72px}
.snippet-seek{position:absolute;inset:0;width:100%;height:72px;opacity:0;cursor:ew-resize}
.snippet-timeline:focus-within{outline:2px solid var(--brick);outline-offset:5px}
.snippet-time{justify-content:flex-end}#snippet-status{margin-top:10px}
.live-intro{padding-top:var(--section-space);padding-bottom:32px;gap:6%}
.live-intro h2{font-size:clamp(36px,4.4vw,66px)}
.live-updates{flex-basis:40%}.live-updates .concert-date{font-size:clamp(26px,2.8vw,42px);white-space:normal}
.gallery{padding:var(--section-space) 0 90px}.gallery h2,.contact h2{font-size:clamp(38px,4.3vw,66px)}
.contact{padding:var(--section-space) 0 80px}.contact footer p,.contact footer .eyebrow,.social-links{font-size:14px}
.motion-toggle{min-height:44px;font-size:14px;bottom:16px}.motion-label{display:inline!important}
.motion-toggle>span:first-child{font-size:20px}
#mini-listen{position:fixed;z-index:31;bottom:16px;left:20px;display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:12px 18px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);box-shadow:0 4px 24px #0003;max-width:calc(100vw - 190px);font-size:14px}
#mini-listen[hidden]{display:none}#mini-listen button{background:var(--ink);color:var(--paper);border:0;min-height:44px;padding:10px 14px;font-size:14px}
#mini-listen a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center}
#gallery-status{font-size:16px;margin:12px 44px 12px 0}#gallery-image{touch-action:pan-y}
@media(max-width:1050px){header{padding-inline:24px}header nav{gap:12px;font-size:14px}.wordmark{width:120px}.button.small{padding-inline:12px;font-size:14px}}
@media(max-width:900px){.menu-toggle{display:flex;align-items:center;gap:12px;min-height:48px;border:1px solid var(--ink);background:var(--paper);padding:10px 14px;font-size:16px}header nav{display:none;position:absolute;left:24px;right:24px;top:80px;background:var(--paper);padding:20px;border:1px solid #182a2433;box-shadow:0 12px 25px #0002;max-height:calc(100svh - 100px);overflow:auto}header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}header nav>a{font-size:16px;min-height:48px}header nav .button{margin-top:8px;font-size:16px}}
@media(max-width:850px){.listen-layout{grid-template-columns:1fr;gap:36px}.listen-copy{grid-row:1}.listen-sleeve{max-width:230px;width:65%;grid-row:2}.listen-stamp{font-size:12px;padding:10px 12px}.listen-intro{margin-bottom:24px}.listen-ticket{font-size:16px}}
@media(max-width:720px){html{scroll-padding-top:96px}header{padding:14px 24px}.hero,.motion-paused .hero{height:100svh;min-height:740px}.hero-stage,.motion-paused .hero-stage{height:100svh;min-height:740px;position:relative}.hero-content{top:108px;width:calc(100% - 48px);max-width:430px;transform:none!important}.album-collage{width:66%;max-width:260px}.hero .eyebrow{font-size:14px;max-width:310px;line-height:1.5}.hero-event{font-size:16px}.hero .button{font-size:16px;min-height:48px;padding:13px 18px}.hero-landscape{background-position:65% bottom;background-size:auto 68%}.scroll-cue{font-size:14px;bottom:4%}.album-layout{grid-template-columns:1fr;gap:30px}.album{padding-bottom:60px}.cover-button{max-width:280px;width:76%}.album-title{width:82%;max-width:330px}.album .eyebrow,.eyebrow{font-size:14px}.album-copy .button,.live .button,.gallery .button{font-size:16px}.live-intro{padding-top:56px;gap:28px}.live-updates{width:100%;flex:auto}.live-updates .concert-date{font-size:32px}.live-updates p{font-size:20px}.concert-times{font-size:16px}.gallery h2,.contact h2{font-size:42px}.social-links{font-size:14px;gap:20px;flex-wrap:wrap}.social-links a{min-height:44px}.contact footer p,.contact footer .eyebrow{font-size:14px}.motion-toggle{right:12px;bottom:12px;font-size:12px;padding:8px}.motion-toggle>span:first-child{display:none}#mini-listen{left:12px;bottom:64px;max-width:calc(100vw - 24px);gap:10px;padding:10px 12px}#mini-listen>span{display:none}.listen h2{font-size:40px}.snippet-heading h3{font-size:30px}.snippet-actions{gap:12px}}
@media(prefers-reduced-motion:reduce){.hero,.motion-paused .hero{height:115svh;min-height:760px}.hero-stage,.motion-paused .hero-stage{position:sticky;height:100svh;min-height:700px}@media(max-width:720px){.hero,.hero-stage,.motion-paused .hero,.motion-paused .hero-stage{height:100svh;min-height:740px;position:relative}}}
