@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-4.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-5.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-6.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-7.woff2) format('woff2');
}

/* Silver portrait system. Photography and records carry the identity. */
:root{color-scheme:dark;--surface:#1c1d20;--raised:#27292d;--silver:#32353b;--text:#f2f2ef;--secondary:#b6b8be;--accent:#efb0c3;--on-accent:#2a1820;--line:#4d5057;--control-border:#92959d;--focus:#efb0c3;--display:'Manrope',sans-serif;--body:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--radius:12px;--gutter:clamp(24px,4vw,64px);--width:1440px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--surface);color:var(--text);font:400 1.125rem/1.6 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;text-wrap:balance}h1,h2{letter-spacing:-.055em;line-height:1.1}h3{letter-spacing:-.025em;line-height:1.3}em,i{font-style:normal}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button{border:0;background:none;padding:0}a,button,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:active,.button:active{transform:translateY(1px)}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}::selection{background:var(--accent);color:var(--on-accent)}.wrap{width:calc(100% - 2 * var(--gutter));max-width:var(--width);margin-inline:auto}.section{padding-block:72px}.light{background:var(--raised)}.eyebrow{font-size:.9375rem;font-weight:500;letter-spacing:.02em;color:var(--secondary);margin-bottom:24px}.small-muted,.preview-credit{font-size:.875rem;color:var(--secondary)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;z-index:100;left:20px;top:16px;padding:12px 20px;background:var(--raised);border-radius:8px;transform:translateY(-180%)}.skip:focus{transform:none}
/* Navigation is a quiet, predictable layer. */
.header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:88px;padding:16px max(var(--gutter),calc((100% - var(--width))/2));background:var(--surface);border-bottom:1px solid var(--line)}.wordmark{font:600 1.25rem/1.2 var(--display);letter-spacing:-.04em;display:inline-flex;align-items:center;min-height:44px;white-space:pre}.desktop-nav{display:flex;align-items:center;gap:24px;margin-left:auto}.desktop-nav a{font-size:1rem;min-height:44px;display:flex;align-items:center;color:var(--secondary);position:relative}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--text)}.desktop-nav a[aria-current=page]:after{content:'';position:absolute;height:2px;background:var(--text);bottom:1px;left:0;right:0}.header-actions{display:flex;align-items:center;gap:14px}.language{display:flex;align-items:center;font-size:.875rem}.language>span{display:none}.language button{min-width:44px;min-height:44px;color:var(--secondary);position:relative}.language button[aria-pressed=true]{font-weight:700;color:var(--text)}.language button[aria-pressed=true]:after{content:'';height:2px;width:15px;background:currentColor;position:absolute;left:50%;bottom:7px;transform:translateX(-50%)}.header-contact{display:flex;align-items:center;justify-content:center;gap:12px;border-radius:8px;padding:0 17px;min-height:44px;font-size:1rem;background:var(--silver);font-weight:500}.header-contact svg{display:none}.header-contact:hover{background:var(--line)}.icon-button{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:50%;flex-shrink:0}.icon-button:hover{background:var(--silver)}.menu-toggle{display:none}.mobile-nav{position:absolute;left:0;right:0;top:88px;z-index:19;background:var(--surface);padding:16px var(--gutter) 28px;border-bottom:1px solid var(--line);box-shadow:0 16px 28px #0000000a}.mobile-nav a{display:block;padding:13px 0;font-size:1.125rem}.mobile-nav a[aria-current=page]{font-weight:600;text-decoration:underline;text-underline-offset:6px}
/* Hero: a real portrait, an artist name, and a record to play. */
.hero{background:var(--silver);padding-block:32px 40px}.hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:stretch}.hero-content{display:flex;flex-direction:column;align-items:flex-start;padding-block:12px;min-width:0}.hero .eyebrow{margin-bottom:20px}.hero h1{font-size:clamp(4.5rem,6.7vw,7.25rem);letter-spacing:-.075em;line-height:1.01;font-weight:500;margin-left:-.055em}.hero-statement{font-size:1.3125rem;line-height:1.4;font-weight:500;max-width:30ch;margin-top:24px;letter-spacing:-.02em}.hero-copy{max-width:43ch;font-size:1.125rem;color:var(--secondary);line-height:1.6;margin-top:12px}.hero-buttons{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:8px;font-size:1rem;font-weight:600;line-height:1.5;text-align:center;transition:background .15s}.button.gold,.button.ink{background:var(--accent);color:var(--on-accent)}.button.gold:hover,.button.ink:hover{filter:brightness(1.1)}.button.outline{border:1px solid var(--control-border)}.text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:1rem;font-weight:500;line-height:1.5;color:var(--accent);width:fit-content}.text-link:hover span{text-decoration:underline;text-underline-offset:4px}.text-link svg{width:18px;height:18px}.hero .text-link{color:var(--text)}.hero-image{position:relative;min-width:0;min-height:560px;overflow:hidden;border-radius:var(--radius)}.hero-image img{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:50% 28%}.latest{display:flex;align-items:center;gap:16px;width:100%;max-width:460px;border-top:1px solid var(--control-border);margin-top:28px;padding-top:20px;text-align:left}.latest img{width:56px;height:56px;border-radius:5px}.latest>span:nth-child(2){flex:1}.latest small{display:block;font-size:.875rem;color:var(--secondary);margin-bottom:3px}.latest strong{display:block;font-size:1.125rem;font-weight:600}.latest-play{width:44px;height:44px;border:1px solid var(--control-border);border-radius:50%;display:grid;place-items:center}.latest:hover .latest-play{background:var(--text);color:var(--surface);border-color:var(--text)}
/* Record browsing */
.section-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:48px;margin-bottom:32px}.section-top>div:first-child{flex:1;min-width:0}.section-top h2{font-size:clamp(2.5rem,4.3vw,4rem)}.section-top .eyebrow{margin-bottom:18px}.section-intro,.home-music-intro{max-width:460px;color:var(--secondary);font-size:1.125rem}.section-intro .text-link,.home-music-intro .text-link{margin-top:15px}.music-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.music-toolbar .eyebrow{margin:0}.featured-tracks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.track-card{min-width:0}.track-art{position:relative;aspect-ratio:1;overflow:hidden;border-radius:10px;background:var(--silver)}.track-art img{width:100%;height:100%;object-fit:cover}.track-play{position:absolute;right:16px;bottom:16px;width:48px;height:48px;border-radius:50%;background:#fff;color:#242628;display:grid;place-items:center;box-shadow:0 2px 14px #0002}.track-play:hover{background:#e9e9e6}.track-play[aria-pressed=true]{background:#753449;color:#fff}.track-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-top:16px}.track-meta h3{font-size:1.375rem;font-weight:600}.track-meta small{display:block;color:var(--secondary);font-size:.875rem;margin-top:7px}.track-meta a{width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;color:var(--secondary)}.track-meta a:hover{color:var(--accent)}.preview-credit{margin-top:24px}.catalog-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin:48px 0 24px}.catalog-heading h2{font-size:2rem;letter-spacing:-.04em}.catalog-heading .eyebrow{margin:0}.catalog-row{display:flex;gap:22px;align-items:center;border-top:1px solid var(--line);padding:16px 0;min-height:88px}.catalog-number{color:var(--secondary);font-size:.8125rem;width:24px}.catalog-row>img{width:52px;height:52px;object-fit:cover;border-radius:5px}.catalog-track{flex:1;min-width:0}.catalog-track h3{font:500 1rem/1.4 var(--body);letter-spacing:0}.catalog-track span{font-size:.8125rem;color:var(--secondary);display:block;margin-top:4px}.catalog-duration{font-size:.875rem;color:var(--secondary);font-variant-numeric:tabular-nums}.catalog-row>a{display:grid;place-items:center;width:44px;height:44px;color:var(--secondary);flex-shrink:0}.platforms{display:flex;align-items:center;gap:32px;justify-content:space-between;padding-top:30px;margin-top:30px;border-top:1px solid var(--line)}.platforms>span{font-size:.875rem;color:var(--secondary)}.platforms>div{display:flex;flex-wrap:wrap;gap:28px}.platforms a{display:flex;align-items:center;gap:12px;min-height:44px;font-size:.9375rem}.platforms a:hover{text-decoration:underline;text-underline-offset:5px}
/* Portrait and biography */
.story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,4.5vw,72px)}.story-visual{min-width:0}.portrait-frame{overflow:hidden;border-radius:var(--radius);height:580px}.portrait-frame img{height:100%;width:100%;object-fit:cover;object-position:50% 24%}.story-copy .eyebrow{margin-bottom:24px}.story-copy h1{margin-bottom:24px}.story-copy p:not(.eyebrow){color:var(--secondary);margin-top:18px;max-width:48ch}.story-copy p.lead{color:var(--text);font-size:1.375rem;line-height:1.5;letter-spacing:-.02em}.story-copy .text-link{margin-top:24px}.china{background:var(--silver)}.china-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.china h2{font-size:clamp(2.25rem,3.3vw,3.25rem);max-width:13ch;margin-bottom:28px}.china-copy>p:not(.eyebrow){color:var(--secondary);max-width:40ch}.china-copy .text-link{margin-top:24px}.china-footnote{display:block;font-size:.8125rem;color:var(--secondary);margin-top:12px}.china-photo img{width:100%;aspect-ratio:1.4;object-fit:cover;border-radius:var(--radius)}.photo-caption{font-size:.8125rem;color:var(--secondary);display:block;margin-top:12px}
/* Collaboration */
.services{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;border-bottom:1px solid var(--line);padding:28px 0}.service-heading h3{font-size:1.75rem}.service-body p{font-size:1.125rem;color:var(--secondary);max-width:58ch}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.process-grid article>span{display:inline-grid;place-items:center;border-radius:50%;width:40px;height:40px;background:var(--silver);font-size:.875rem;font-weight:600}.process-grid h3{font-size:1.375rem;margin:22px 0 12px}.process-grid p{color:var(--secondary);font-size:1.125rem}.process .button{margin-top:40px}
/* Photographs and videos */
.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;align-items:start}.gallery-item{text-align:left;min-width:0}.gallery-item img{height:auto;aspect-ratio:4/5;width:100%;object-fit:cover;object-position:center top;border-radius:var(--radius)}.gallery-personal{margin-top:0}.gallery-item>span{display:flex;justify-content:space-between;gap:14px;align-items:center;min-height:52px;padding-top:10px}.gallery-item strong{font-weight:400;font-size:.9375rem}.gallery-item svg{width:20px;height:20px}.gallery-item:hover strong{text-decoration:underline;text-underline-offset:4px}.video-row{display:grid;grid-template-columns:.75fr 1fr 1fr;align-items:center;gap:32px;padding-top:32px;margin-top:36px;border-top:1px solid var(--line)}.video-label .eyebrow{margin-bottom:10px}.video-label p{font-family:var(--display);font-size:1.75rem;letter-spacing:-.04em}.video-link{display:flex;align-items:center;text-align:left;gap:16px;min-height:72px}.round-play{border:1px solid var(--control-border);border-radius:50%;width:48px;height:48px;display:grid;place-items:center;flex-shrink:0}.video-link>span:nth-child(2){flex:1}.video-link strong{font-size:1.0625rem;font-weight:600;display:block}.video-link small{display:block;color:var(--secondary);font-size:.8125rem;margin-top:5px}.video-link>svg{width:18px}.video-link:hover .round-play{background:var(--text);color:var(--surface)}
/* Footer and audio controls */
footer{padding:32px 0 20px;border-top:1px solid var(--line);background:var(--surface)}.footer-nav{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:16px}.footer-nav a{font-size:.9375rem;min-height:44px;display:flex;align-items:center}.footer-nav a:hover{text-decoration:underline;text-underline-offset:4px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-bottom:32px}.footer-top>div{display:flex;flex-wrap:wrap;gap:28px}.footer-top>div a{font-size:.9375rem;min-height:44px;display:flex;align-items:center;color:var(--secondary)}.back-top{display:grid;place-items:center;width:44px;height:44px;margin-left:auto}.back-top svg{transform:rotate(180deg)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:24px;justify-content:space-between;align-items:center;font-size:.8125rem;color:var(--secondary)}.footer-bottom button{font-size:.8125rem;min-height:44px}.footer-bottom button:hover{text-decoration:underline;text-underline-offset:3px}.player{position:fixed;z-index:40;left:24px;right:24px;bottom:20px;max-width:880px;margin:auto;display:flex;align-items:center;gap:20px;background:var(--raised);color:var(--text);border:1px solid var(--line);box-shadow:0 8px 45px #0002;border-radius:16px;padding:16px}.player>img{width:48px;height:48px;border-radius:5px}.player-track{width:190px;min-width:0}.player-track strong{font-size:.9375rem;line-height:1.4;display:block}.player-track span{display:block;font-size:.75rem;line-height:1.4;margin-top:4px;color:var(--secondary)}.player-progress{flex:1;min-width:70px}.player-progress input{width:100%;height:24px;margin:0;accent-color:var(--accent)}.player-progress span{display:block;text-align:right;font-size:.75rem;color:var(--secondary);font-variant-numeric:tabular-nums}.player>a{display:flex;align-items:center;gap:8px;font-size:.8125rem;min-height:44px;white-space:nowrap}.player>a svg{width:16px}
/* Native dialog semantics and local draft form */
dialog{margin:auto;padding:48px;border:1px solid var(--line);border-radius:18px;background:var(--raised);color:var(--text);max-height:90svh;width:calc(100% - 40px);max-width:720px;overflow:auto;box-shadow:0 20px 90px #0003}dialog::backdrop{background:#0009}dialog h2{font-size:2.5rem;margin:20px 0}.dialog-close{position:absolute;top:14px;right:14px;background:var(--raised);z-index:2}.dialog-description{color:var(--secondary);font-size:1rem}.notes-dialog p:not(.eyebrow){margin-top:20px;font-size:1rem;color:var(--secondary)}.source-list{padding-left:20px;font-size:.9375rem}.source-list li{margin-top:14px}.source-list a{text-decoration:underline;text-underline-offset:3px}.media-dialog{padding:0;max-width:1080px}.video-consent{padding:72px 40px 48px;display:flex;align-items:center;flex-direction:column;text-align:center}.video-consent p:not(.eyebrow){max-width:480px;color:var(--secondary);margin-bottom:28px}.video-consent .text-link{margin-top:16px}.video-shell{padding:64px 0 20px}.video-shell iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.video-fallback{display:block;text-align:center;font-size:.875rem;padding:20px}.lightbox-image{height:76svh;width:100%;object-fit:contain;background:#1c1d20}.lightbox-caption{padding:20px 24px;font-size:1rem}.inquiry-dialog label{display:block;font-size:.9375rem;font-weight:500;margin:24px 0 8px}.inquiry-dialog input,.inquiry-dialog select,.inquiry-dialog textarea{width:100%;display:block;border:1px solid var(--control-border);background:var(--raised);color:var(--text);border-radius:8px;padding:12px;font-size:1.0625rem;min-height:48px}.inquiry-dialog textarea{resize:vertical;min-height:150px}.form-note{font-size:.8125rem;color:var(--secondary);margin:20px 0}.inquiry-dialog .button{width:100%}.form-status{font-size:.875rem;margin-top:16px}.noscript{padding:24px;background:var(--silver)}
/* Responsive behaviour follows available space, not device names. */

@media(max-width:1150px){.header{gap:20px}.desktop-nav{gap:18px}.header-actions{gap:8px}.header-contact{display:none}.hero-layout{gap:36px}.hero h1{font-size:clamp(4rem,7vw,5.5rem)}.hero-buttons{gap:14px}.hero-image{min-height:540px}.portrait-frame{height:560px}.story-grid{gap:48px}.china-grid{gap:48px}.featured-tracks{gap:24px}.video-row{gap:26px}.process-grid{gap:32px}}
@media(max-width:1200px){.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center}.menu-toggle span{width:22px;height:2px;background:var(--text)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.header-actions{margin-left:auto}.header-contact{display:flex}}
@media(max-width:900px){.hero-layout{gap:28px;grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(3.75rem,8.2vw,5rem)}.hero-copy{font-size:1rem}.hero-statement{font-size:1.1875rem;margin-top:28px}.hero-buttons{align-items:flex-start;flex-direction:column;gap:8px}.hero-image{min-height:520px}.hero-image img{object-position:52% 25%}.hero-content{padding-top:14px}.latest{gap:12px;margin-top:28px}.latest small{font-size:.75rem}.latest strong{font-size:.9375rem}.latest img{width:48px;height:48px}.section{padding-block:64px}.section-top{align-items:flex-start;gap:32px}.section-intro,.home-music-intro{max-width:330px}.story-grid{grid-template-columns:.85fr 1fr;gap:40px}.portrait-frame{height:590px}.story-copy p.lead{font-size:1.1875rem}.story-copy p:not(.eyebrow){font-size:1rem}.china-grid{grid-template-columns:1fr;gap:40px}.china-copy{max-width:620px}.china-copy>p:not(.eyebrow){max-width:55ch}.china h2{max-width:20ch}.china-photo{max-width:720px}.service{grid-template-columns:.8fr 1fr;gap:32px}.service-heading h3{font-size:1.5rem}.process-grid{gap:24px}.gallery{gap:20px}.video-row{grid-template-columns:1fr 1fr}.video-label{grid-column:1/-1}.footer-top{flex-wrap:wrap}.footer-top>div{order:3;width:100%}.player{gap:12px}.player-track{width:160px}.player>a span{display:none}}
@media(max-width:650px){:root{--gutter:24px}.header{min-height:76px;padding-block:14px;gap:8px}.wordmark{font-size:1rem}.header-actions{gap:4px}.header-contact{display:none}.mobile-nav{top:76px}.hero{padding-block:24px 36px}.hero-layout{display:grid;grid-template-columns:1fr;gap:0;position:relative}.hero-content{display:contents}.hero .eyebrow{grid-row:1;margin:0 0 18px;font-size:.8125rem}.hero h1{grid-row:2;font-size:clamp(3.9rem,13.8vw,6.5rem);line-height:1.03;margin-bottom:28px;max-width:100%;letter-spacing:-.07em}.hero-image{grid-row:3;min-height:0;aspect-ratio:1.13;margin-bottom:26px;border-radius:10px}.hero-image img{min-height:0;max-height:none;height:100%;object-position:50% 29%}.hero-statement{grid-row:4;font-size:1.25rem;max-width:30ch;margin-top:0}.hero-copy{grid-row:5;margin-top:10px;font-size:1.0625rem;max-width:39ch}.hero-buttons{grid-row:6;flex-direction:row;align-items:center;gap:12px 20px;margin-top:24px}.button{padding:12px 18px;font-size:.9375rem}.hero .text-link{font-size:.9375rem}.latest{grid-row:7;margin-top:28px;padding-top:20px;max-width:none}.latest img{width:52px;height:52px}.latest small{font-size:.8125rem}.latest strong{font-size:1rem}.section{padding-block:60px}.section-top{display:block;margin-bottom:32px}.section-top .eyebrow{margin-bottom:14px}.section-top h2{font-size:2.5rem}.section-intro,.home-music-intro{max-width:100%;margin-top:22px;font-size:1.0625rem}.featured-tracks{grid-template-columns:1fr;gap:26px}.track-card{display:grid;grid-template-columns:108px 1fr;gap:20px;align-items:center}.track-card:first-child{display:block}.track-card:first-child .track-art{aspect-ratio:1}.track-card:first-child .track-meta{padding-top:18px}.track-card:not(:first-child){border-top:1px solid var(--line);padding-top:24px}.track-card:not(:first-child) .track-art{width:108px;height:108px;border-radius:6px}.track-card:not(:first-child) .track-play{width:44px;height:44px;right:8px;bottom:8px}.track-meta{padding:0;gap:4px;align-items:center}.track-meta h3{font-size:1.125rem}.track-card:first-child .track-meta h3{font-size:1.375rem}.track-meta small{font-size:.8125rem}.track-meta a{width:44px}.preview-credit{margin-top:22px}.music-toolbar{align-items:flex-start;gap:24px;font-size:.8125rem}.music-toolbar .eyebrow{font-size:.8125rem}.catalog-heading{margin-top:52px;gap:20px;align-items:center}.catalog-heading h2{font-size:1.5rem}.catalog-heading .eyebrow{font-size:.8125rem}.catalog-row{gap:12px;padding:14px 0;min-height:86px}.catalog-number,.catalog-duration{display:none}.catalog-row>img{width:44px;height:44px}.catalog-track h3{font-size:.9375rem}.catalog-track span{font-size:.75rem}.catalog-row>a{display:none}.platforms{display:block}.platforms>div{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;margin-top:12px}.platforms a{font-size:.875rem;justify-content:space-between}.story-grid{display:flex;flex-direction:column-reverse;gap:36px;align-items:stretch}.story-copy h1{margin-bottom:26px}.story-copy p:not(.eyebrow){font-size:1.0625rem}.story-copy p.lead{font-size:1.3125rem}.portrait-frame{height:auto;aspect-ratio:.85}.portrait-frame img{object-position:center 22%}.story-copy .text-link{margin-top:20px}.china h2{font-size:2.5rem}.china-copy>p:not(.eyebrow){font-size:1.0625rem}.china-photo img{aspect-ratio:1.1}.service{grid-template-columns:1fr;gap:16px;padding:28px 0}.service-heading h3{font-size:1.5rem}.service-body p{font-size:1.0625rem}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid article{display:grid;grid-template-columns:40px 1fr;gap:4px 20px}.process-grid article>span{grid-row:1/3}.process-grid h3{margin:4px 0 8px;font-size:1.25rem}.process-grid p{grid-column:2}.gallery{grid-template-columns:1fr 1fr;gap:28px 16px}.gallery-tall{grid-column:1/-1}.gallery-tall img{height:auto;aspect-ratio:.85;object-position:center 25%}.gallery-personal{margin:0}.gallery-personal img,.gallery-lights img{height:auto;aspect-ratio:.8}.gallery-item>span{align-items:start;padding-top:14px;gap:8px}.gallery-item strong{font-size:.875rem}.gallery-item svg{width:16px;height:16px;margin-top:2px}.video-row{grid-template-columns:1fr;gap:20px;margin-top:40px;padding-top:36px}.video-link{border-bottom:1px solid var(--line);padding-bottom:20px}.video-label{grid-column:auto}.footer-nav{gap:6px 22px;margin-bottom:20px}.footer-top{gap:12px;padding-bottom:24px}.footer-top>div{gap:18px}.footer-bottom{align-items:flex-start;gap:8px;flex-direction:column;padding-top:24px}.footer-bottom button{padding:0;font-size:.8125rem}.player{left:12px;right:12px;bottom:12px;padding:12px;gap:8px;flex-wrap:wrap}.player-track{flex:1;width:auto;min-width:80px}.player-track strong{font-size:.875rem}.player-track span{font-size:.75rem}.player>img{width:40px;height:40px}.player-progress{order:6;flex-basis:calc(100% - 100px)}.player>a{order:7;font-size:.8125rem}.player>a span{display:inline}.player>.icon-button{width:44px;height:44px}dialog{padding:48px 24px 28px;width:calc(100% - 24px);max-height:92svh}dialog h2{font-size:2rem}.media-dialog{padding:0}.video-consent{padding:72px 24px 32px}.video-consent p:not(.eyebrow){font-size:1rem}.source-list{font-size:.875rem}.lightbox-image{height:68svh}.lightbox-caption{padding:18px}.inquiry-dialog label{font-size:.9375rem}}
@media(max-width:370px){:root{--gutter:20px}.header .wordmark{font-size:.875rem}.header-actions{gap:0}.language button{min-width:40px}.hero h1{font-size:3.75rem}.hero-buttons{gap:4px;align-items:flex-start;flex-direction:column}.track-card{grid-template-columns:96px 1fr;gap:14px}.track-card:not(:first-child) .track-art{width:96px;height:96px}.track-meta a{display:none}.player>img{display:none}}
:root .latest{border-color:#777b82}:root .hero-image img,:root .portrait-frame img{filter:brightness(.94)}:root .track-play{background:#f7f7f5;color:#242628}:root .track-play[aria-pressed=true]{background:#efb0c3;color:#2a1820}
@media(prefers-contrast:more){:root{--secondary:#f2f2ef;--line:#999;--control-border:#ddd}.text-link{text-decoration:underline;text-underline-offset:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(forced-colors:active){.button,.header-contact,.latest-play,.track-play{border:1px solid ButtonText}.desktop-nav a[aria-current=page]{text-decoration:underline}.language button[aria-pressed=true]{text-decoration:underline}}
/* Text enlargement must not force horizontal scrolling or hide navigation. */
.header{flex-wrap:wrap}.wordmark{white-space:normal;word-spacing:.08em;letter-spacing:-.025em;max-width:100%}.header-actions{flex-shrink:0}.mobile-nav{position:relative;top:auto}.hero-layout>*,.story-grid>*,.china-grid>*,.section-top>*,.service>*,.process-grid>*,.paths-grid>*,.contact-grid>*,.special-grid>*{min-width:0}h1,h2,h3,p,label,.text-link,.button,.catalog-track,.wordmark{overflow-wrap:anywhere}.text-link{max-width:100%}.text-link span,.button span{min-width:0}.language button{min-width:44px}.footer-top>div{min-width:0}.catalog-heading{flex-wrap:wrap}.player-track{overflow-wrap:anywhere}.hero h1{letter-spacing:-.065em}

/* Page rhythm and deliberately brief home-page pathways. */
.breadcrumb{display:flex;align-items:center;gap:12px;color:var(--secondary);font-size:.875rem;padding-block:12px 0;min-height:56px}.breadcrumb a{min-height:44px;display:flex;align-items:center}.breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}.breadcrumb>span[aria-hidden]{color:var(--secondary)}.inner-page .section:first-of-type{padding-top:32px}.page-title{font-size:clamp(2.75rem,4.8vw,4.5rem);max-width:15ch}.home-paths{padding-block:56px 64px;background:var(--surface)}.paths-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.home-path .eyebrow{margin-bottom:20px}.home-path h2{font-size:clamp(2rem,3vw,2.75rem);max-width:16ch}.home-path>p:not(.eyebrow){color:var(--secondary);font-size:1.125rem;margin-top:18px;max-width:44ch}.home-path .text-link{margin-top:20px}.home-path+.home-path{padding-left:48px;border-left:1px solid var(--line)}.special-release{padding-block:48px;background:var(--silver)}.special-grid{display:grid;grid-template-columns:1fr 2fr;gap:48px;align-items:center}.special-chinese{font-family:serif;font-size:clamp(4rem,8vw,8rem);line-height:1.1;color:var(--text);text-align:center}.special-grid h2{font-size:2.75rem;margin-bottom:20px}.special-grid h2 span{font-size:1.5rem;letter-spacing:0}.special-grid p:not(.eyebrow){color:var(--secondary);max-width:48ch}.special-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:20px}.audio-videos{padding-block:0 48px}.audio-videos .video-row{margin-top:0;border-top:0;padding-top:32px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,4.5vw,72px);align-items:start}.contact-page-copy h1{max-width:12ch;margin-bottom:30px}.contact-page-copy .lead{font-size:1.25rem;line-height:1.6;color:var(--secondary);max-width:37ch}.contact-availability{margin-top:24px;font-size:1rem;max-width:44ch;color:var(--secondary)}.contact-page-copy>.text-link{margin-top:22px}.contact-form{padding:32px;background:var(--raised);border:1px solid var(--line);border-radius:var(--radius)}.contact-form .eyebrow{display:none}.contact-form h2{font-size:1.75rem;margin-bottom:14px}.contact-form .dialog-description{font-size:1rem}.contact-form label:first-of-type{margin-top:28px}
@media(max-width:1150px){.paths-grid{gap:56px}.home-path+.home-path{padding-left:48px}}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:40px;max-width:680px}.contact-page-copy h1{max-width:16ch}.contact-page-copy .lead{max-width:48ch}.contact-form{padding:32px}.paths-grid{gap:36px}.home-path+.home-path{padding-left:32px}.home-paths h2{font-size:2rem}.page-title{font-size:clamp(2.5rem,5vw,4rem)}.special-grid{gap:32px}}
@media(max-width:650px){.breadcrumb{padding-top:10px;min-height:54px}.inner-page .section:first-of-type{padding-top:30px}.page-title{font-size:2.75rem;max-width:14ch}.home-paths{padding-block:56px}.paths-grid{grid-template-columns:1fr;gap:36px}.home-path+.home-path{padding:36px 0 0;border-left:0;border-top:1px solid var(--line)}.home-path h2{font-size:2rem;max-width:18ch;min-height:0}.home-path>p:not(.eyebrow){margin-top:16px}.home-path .eyebrow{margin-bottom:14px}.home-path .text-link{margin-top:14px}.special-release{padding-block:48px}.special-grid{grid-template-columns:1fr;gap:24px}.special-chinese{display:none}.special-grid h2{font-size:2.5rem}.special-links{gap:8px 24px}.audio-videos{padding-bottom:48px}.audio-videos .video-row{padding-top:40px}.contact-page-copy h1{font-size:2.75rem}.contact-page-copy .lead{font-size:1.0625rem}.contact-form{padding:24px}.contact-form .dialog-description{font-size:1rem}.contact-form h2{font-size:1.75rem}}

/* A larger reading scale for spacious desktop windows. Relative type keeps
   browser text preferences intact; spacing stays compact rather than zooming. */
@media (min-width:1100px) {
  html { font-size:clamp(108%, calc(72% + .48vw), 132%); }
  :root { --width:1480px; --gutter:clamp(32px,3.5vw,64px); }
  body { line-height:1.5; }
  .section { padding-block:50px; }
  .eyebrow { margin-bottom:18px; }
  .header { gap:23px; padding-block:13px; min-height:84px; }
  .desktop-nav { gap:21px; }
  .desktop-nav a, .language button, .header-contact { min-height:50px; }
  .header-actions { gap:12px; }
  .header-contact { padding-inline:22px; }
  .language button { min-width:46px; }
  .button { min-height:56px; padding:12px 27px; }
  .button svg { width:24px; height:24px; }
  .text-link { min-height:48px; }
  .text-link svg { width:23px; height:23px; }
  .hero { padding-block:24px 30px; }
  .hero-layout { grid-template-columns:minmax(0,1fr) minmax(0,1.03fr); gap:36px; }
  .hero-content { padding-block:8px; }
  .hero .eyebrow { margin-bottom:16px; }
  .hero h1 { font-size:clamp(5.8rem,9.6vw,8.6rem); line-height:.98; }
  .hero-statement { font-size:1.4rem; line-height:1.3; margin-top:20px; max-width:none; }
  .hero-copy { max-width:46ch; line-height:1.5; margin-top:10px; }
  .hero-buttons { gap:16px; margin-top:22px; }
  .hero-buttons > .text-link {
    min-height:56px; padding:11px 21px; border:1px solid var(--control-border);
    border-radius:8px; font-weight:600;
  }
  .hero-buttons > .text-link:hover { background:var(--surface); }
  .hero-image { min-height:0; }
  .latest { max-width:none; gap:18px; margin-top:22px; padding-top:18px; }
  .latest img { width:66px; height:66px; }
  .latest-play { width:54px; height:54px; flex-shrink:0; }
  .latest-play svg { width:26px; height:26px; }
  .section-top { gap:36px; margin-bottom:26px; }
  .section-top h2 { font-size:clamp(2.7rem,4.416vw,4rem); }
  .section-top .eyebrow { margin-bottom:14px; }
  .section-intro, .home-music-intro { max-width:42ch; line-height:1.5; }
  .section-intro .text-link, .home-music-intro .text-link { margin-top:10px; }
  .page-title { font-size:clamp(3rem,5.376vw,4.5rem); }
  .featured-tracks, .gallery { gap:24px; }
  .track-play { width:58px; height:58px; }
  .track-play svg { width:26px; height:26px; }
  .track-meta { padding-top:14px; }
  .track-meta a { width:52px; height:52px; }
  .catalog-row { gap:20px; padding-block:14px; min-height:94px; }
  .catalog-row > img { width:64px; height:64px; }
  .catalog-row > a { width:52px; height:52px; }
  .catalog-row .icon-button { width:52px; height:52px; }
  .story-grid, .china-grid, .contact-grid { gap:40px; }
  .story-visual { align-self:stretch; }
  .portrait-frame { position:relative; height:100%; min-height:600px; }
  .portrait-frame img { position:absolute; inset:0; }
  .story-copy h1 { margin-bottom:20px; }
  .story-copy p:not(.eyebrow) { margin-top:16px; }
  .story-copy p.lead { line-height:1.4; }
  .story-copy .text-link { margin-top:18px; }
  .china h2 { font-size:clamp(2.6rem,3.84vw,3.5rem); margin-bottom:20px; }
  .service { gap:36px; padding-block:24px; }
  .service-heading h3 { font-size:1.7rem; }
  .process-grid { gap:32px; }
  .process-grid h3 { margin-top:16px; }
  .process .button { margin-top:28px; }
  .gallery-item strong { font-size:1rem; }
  .round-play { width:56px; height:56px; }
  .home-paths { padding-block:44px 48px; }
  .paths-grid { gap:36px; }
  .home-path + .home-path { padding-left:36px; }
  .home-path h2 { font-size:clamp(2.2rem,3.456vw,3rem); }
  .home-path .eyebrow { margin-bottom:14px; }
  .home-path > p:not(.eyebrow) { margin-top:16px; }
  .home-path .text-link { margin-top:14px; }
  .contact-form { padding:28px; }
  .contact-form label { margin-top:18px; }
  .inquiry-dialog input, .inquiry-dialog select { min-height:56px; }
  .contact-page-copy .lead { line-height:1.5; }
}

@media (min-width:1800px) {
  :root { --width:1680px; }
}

/* One movement vocabulary: a soft arrival, a precise response, a quiet exit. */
:root {
  --motion-fast: 180ms;
  --motion-ui: 320ms;
  --motion-image: 700ms;
  --ease-out: cubic-bezier(.22, 1, .36, 1);
  --ease-ui: cubic-bezier(.2, .65, .3, 1);
}

/* Temporary only; motion-boot.js releases this even if GSAP cannot load. */
@media (prefers-reduced-motion: no-preference) {
  :root[data-motion-pending] .hero-content > *,
  :root[data-motion-pending] .hero-image,
  :root[data-motion-pending] .inner-page h1 { visibility: hidden; }
}

/* The extra inset protects accents and descenders without moving the baseline. */
.motion-line-mask {
  overflow: visible !important;
  clip-path: inset(-.14em -.05em);
}
.motion-line { transform-origin: 0 100%; }
.motion-photo { display: block; overflow: hidden; border-radius: var(--radius); }
.gallery-item > .motion-photo { display: block; min-height: 0; padding: 0; }
.gallery-item > .motion-photo img { border-radius: 0; }
.china-photo > .motion-photo img { border-radius: 0; }

.desktop-nav a::after {
  content: ''; position: absolute; height: 2px; background: currentColor;
  bottom: 1px; left: 0; right: 0; transform: scaleX(0); transform-origin: right;
}
.desktop-nav a[aria-current=page]::after { transform: scaleX(1); }

@media (prefers-reduced-motion: no-preference) {
  body, .header, .hero, .light, .home-paths, .china, .special-release,
  footer, .contact-form, .mobile-nav, .player, dialog {
    transition: background-color var(--motion-ui) var(--ease-ui), color var(--motion-ui) var(--ease-ui), border-color var(--motion-ui) var(--ease-ui);
  }
  .desktop-nav a, .language button, .icon-button, .header-contact,
  .latest-play, .round-play, .track-play, .theme-toggle {
    transition: color var(--motion-fast), background-color var(--motion-ui), border-color var(--motion-ui), box-shadow var(--motion-ui), transform var(--motion-ui) var(--ease-out);
  }
  .desktop-nav a::after {
    transition: transform var(--motion-ui) var(--ease-out);
  }
  .button, .hero-buttons > .text-link {
    transition: transform var(--motion-ui) var(--ease-out), background-color var(--motion-ui), box-shadow var(--motion-ui), border-color var(--motion-ui);
  }
  .text-link svg, .track-meta a svg,
  .gallery-item > span:last-child svg, .video-link > svg {
    transition: transform var(--motion-ui) var(--ease-out);
  }
  .menu-toggle span { transition: transform var(--motion-ui) var(--ease-out); }
  .theme-toggle::before { transition: transform var(--motion-ui) var(--ease-out), background-color var(--motion-ui); }
  .track-art img, .gallery-item img {
    transition: transform var(--motion-image) var(--ease-out);
  }
  .inquiry-dialog input, .inquiry-dialog select, .inquiry-dialog textarea {
    transition: border-color var(--motion-fast), box-shadow var(--motion-fast);
  }
  .mobile-nav:not([hidden]) { animation: menu-arrive 260ms var(--ease-out) both; }
  .mobile-nav:not([hidden]) a { animation: detail-arrive 350ms var(--ease-out) both; }
  .mobile-nav a:nth-child(2) { animation-delay: 25ms; }
  .mobile-nav a:nth-child(3) { animation-delay: 50ms; }
  .mobile-nav a:nth-child(4) { animation-delay: 75ms; }
  .mobile-nav a:nth-child(5) { animation-delay: 100ms; }
  .player:not([hidden]) { animation: player-arrive 400ms var(--ease-out) both; }
  dialog[open] { animation: dialog-arrive 300ms var(--ease-out) both; }
  dialog[open]::backdrop { animation: veil-arrive 250ms ease-out both; }
  .form-status:not(:empty) { animation: detail-arrive 280ms var(--ease-out) both; }
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .desktop-nav a:hover::after, .desktop-nav a:focus-visible::after {
    transform: scaleX(1); transform-origin: left;
  }
  .button:hover, .hero-buttons > .text-link:hover, .header-contact:hover {
    transform: translateY(-2px); box-shadow: 0 5px 14px #00000012;
  }
  .button.gold:hover, .button.ink:hover { filter: none; }
  .text-link:hover svg, .track-meta a:hover svg, .video-link:hover > svg { transform: translateX(4px); }
  .track-card:hover .track-art img, .track-card:focus-within .track-art img,
  .gallery-item:hover img, .gallery-item:focus-visible img { transform: scale(1.035); }
  .track-play:hover, .latest:hover .latest-play, .video-link:hover .round-play { transform: scale(1.06); }
  .gallery-item:hover > span:last-child svg { transform: rotate(90deg); }
}

.button:active, .hero-buttons > .text-link:active, .header-contact:active,
.track-play:active, .latest:active .latest-play { transform: translateY(0) scale(.98); }
.inquiry-dialog input:focus-visible, .inquiry-dialog select:focus-visible,
.inquiry-dialog textarea:focus-visible { border-color: var(--focus); }

@keyframes menu-arrive { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
@keyframes detail-arrive { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes player-arrive { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }
@keyframes dialog-arrive { from { opacity: 0; transform: translateY(12px) scale(.99); } to { opacity: 1; transform: none; } }
@keyframes veil-arrive { from { opacity: 0; } to { opacity: 1; } }

@media (prefers-reduced-motion: reduce) {
  :root[data-motion-pending] .hero-content > *,
  :root[data-motion-pending] .hero-image,
  :root[data-motion-pending] .inner-page h1 { visibility: visible; }
  .button:active, .hero-buttons > .text-link:active, .header-contact:active,
  .track-play:active, .latest:active .latest-play { transform: none; }
}

/* On touch layouts, move the two words behind their own small masks. Browser
   chrome can change height without splitting text or rebuilding scroll scenes. */
@media (prefers-reduced-motion:no-preference) {
  [data-home-motion=native][data-native-arrival] .name-word {
    animation: home-name-enter 680ms cubic-bezier(.22,1,.36,1) backwards;
  }
  [data-home-motion=native][data-native-arrival] .name-mask + .name-mask .name-word { animation-delay: 65ms; }
  [data-home-motion=native][data-native-arrival] .opening-photo img {
    animation: home-portrait-enter 850ms cubic-bezier(.22,1,.36,1) backwards;
  }
  [data-home-motion=native] h2.home-revealed {
    animation: home-reveal-title 460ms cubic-bezier(.22,1,.36,1) backwards;
  }
  [data-home-motion=native] .home-revealed > img {
    animation: home-reveal-photo 640ms cubic-bezier(.22,1,.36,1) backwards;
  }
  @keyframes home-name-enter { from { transform:translateY(114%); } to { transform:translateY(0); } }
  @keyframes home-portrait-enter { from { transform:scale(1.035); } to { transform:scale(1); } }
  @keyframes home-reveal-title { from { transform:translateY(.28em); } to { transform:translateY(0); } }
  @keyframes home-reveal-photo { from { transform:scale(1.055); } to { transform:scale(1); } }
}

/* The photographic sequence is the site's one immersive moment. */
:root { --film-ink:#f4f3ef; --film-muted:#c2c2bf; --film-accent:#d6c7ac; }
.performance { position:relative; height:100svh; min-height:660px; background:#18191b; color:var(--film-ink); isolation:isolate; scroll-margin-top:-28px; }
:root[data-performance=pending] .performance,:root[data-performance=ready] .performance { height:290svh; min-height:1600px; }
.performance-sticky { position:sticky; top:0; width:100%; height:100svh; min-height:600px; overflow:hidden; isolation:isolate; }
.performance-sticky:after { content:''; position:absolute; z-index:2; inset:auto 0 0; height:35%; pointer-events:none; background:linear-gradient(transparent,#18191b 45%); }
.performance-player,.performance-fallback { position:absolute; inset:0; }
.performance-player { opacity:0; pointer-events:none; }
.performance[data-player=ready] .performance-player { opacity:1; }
.performance[data-player=ready] .performance-fallback { visibility:hidden; }
.performance-fallback { display:flex; justify-content:center; align-items:center; background:#18191b; overflow:hidden; }
.opening-photo picture { display:block; width:100%; height:100%; }
.performance-fallback picture { display:contents; }
.performance-fallback noscript:has(picture) { display:contents; }
.performance-fallback img { position:relative; height:82%; width:auto; margin-top:7%; object-fit:contain; mask-image:linear-gradient(#000 75%,transparent); }
.performance-top { position:absolute; z-index:3; top:32px; left:var(--gutter); right:var(--gutter); display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.performance-top .eyebrow { font-size:.8125rem; color:var(--film-muted); margin-bottom:8px; }
.performance-top h2 { color:var(--film-ink); font-size:clamp(1.75rem,2.5vw,2.75rem); }
.film-skip { display:flex; align-items:center; gap:16px; min-height:44px; padding:8px 16px; border:1px solid #797b7c; border-radius:24px; font-size:.875rem; background:#18191b; }
.film-skip:hover { background:#f4f3ef; color:#18191b; }
.performance-caption { position:absolute; z-index:3; bottom:120px; left:var(--gutter); right:var(--gutter); }
.performance-caption>[data-film-copy] { max-width:620px; }
.film-kicker { font:500 clamp(1.5rem,2.4vw,2.5rem)/1.2 var(--display); letter-spacing:-.035em; }
.film-detail { margin-top:10px; font-size:1rem; line-height:1.5; color:var(--film-muted); max-width:52ch; }
.film-console { position:absolute; z-index:5; left:var(--gutter); right:var(--gutter); bottom:25px; display:flex; justify-content:space-between; align-items:center; gap:16px; border-top:1px solid #454749; padding-top:14px; }
.film-chapters { display:flex; flex-wrap:wrap; gap:0 20px; }
.film-chapters button { min-height:44px; padding:8px 0; font-size:.875rem; color:var(--film-muted); border-bottom:1px solid transparent; }
.film-chapters button>span:first-child { display:none; }
.film-chapters button[aria-pressed=true] { color:var(--film-ink); border-color:currentColor; }
.film-chapters button:hover { color:var(--film-ink); }
.film-scroll-hint { display:none; }
.performance :focus-visible { outline-color:var(--film-accent); }
.performance:not([data-player=ready]) .film-console { display:none; }
.performance:not([data-player=ready]) .performance-caption { bottom:40px; }
@media(max-width:650px) {
 .performance,.performance-sticky { min-height:max(650px,36rem); }
 .performance-sticky { display:flex; flex-direction:column; justify-content:flex-end; padding-bottom:20px; }
 .performance-top { top:24px; display:block; }
 .performance-top h2 { font-size:1.75rem; }
 .film-skip { display:inline-flex; font-size:.8125rem; padding:8px 12px; gap:8px; margin-top:14px; }
 .performance-top .eyebrow { font-size:.75rem; }
 .performance .performance-caption { position:relative; bottom:auto; left:auto; right:auto; margin:0 var(--gutter) 20px; flex-shrink:0; }
 .film-kicker { font-size:1.5rem; }
 .film-detail { font-size:.9375rem; max-width:35ch; }
 .film-console { position:relative; bottom:auto; left:auto; right:auto; margin-inline:var(--gutter); flex-shrink:0; flex-direction:column; align-items:flex-start; gap:8px; padding-top:8px; }
 .film-chapters { gap:8px 20px; }
}
@media(prefers-reduced-motion:reduce) {
 :root[data-performance] .performance { height:auto; min-height:720px; }
 .performance-sticky { position:relative; height:720px; }
 .performance-player,.film-console { display:none!important; }
 .performance-fallback { visibility:visible!important; }
 .performance-caption { bottom:40px; }
}
@media(max-height:600px) { :root[data-performance] .performance { height:660px; min-height:660px; } .performance-sticky { position:relative; height:660px; min-height:660px; } }

/* Only the photographs occupy 3D layers; text and chapter controls stay still. */
.touch-orbit { position:absolute; inset:0; overflow:clip; transform-style:preserve-3d; perspective:720px; perspective-origin:50% 45%; background:radial-gradient(ellipse at 50% 44%,#323135 0%,#1e1f21 52%,#18191b 78%); }
.touch-panel,.touch-singer,.touch-cover { position:absolute; top:47%; left:50%; }
.touch-panel { width:clamp(86px,25.5vw,180px); aspect-ratio:1/1.27; border-radius:4px; overflow:hidden; background:#252529; box-shadow:0 4px 12px #0004; }
.touch-panel-photo { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 30%; }
.touch-panel span { position:absolute; inset:auto 0 0; padding:12px 5px 4px; font:500 clamp(8px,2.1vw,13px)/1.2 var(--body); color:#fff; background:linear-gradient(transparent,#0008); }
.touch-singer { z-index:1; width:auto; height:66%; max-width:none; object-fit:contain; mask-image:linear-gradient(#000 78%,transparent); }
.touch-cover { z-index:3; left:calc(50% + var(--slot)*min(30vw,190px)); width:min(28vw,178px); height:auto; aspect-ratio:1; border-radius:3px; }
:root[data-stage-engine=touch] .performance { --touch-window:100svh; }
:root[data-stage-engine=touch][data-performance=pending] .performance,
:root[data-stage-engine=touch][data-performance=ready] .performance { min-height:0; height:calc(var(--touch-travel,190svh) + var(--touch-window)); }
:root[data-stage-engine=touch] .performance-sticky { height:var(--touch-window); min-height:0; }
@media(max-height:600px) {
 :root[data-stage-engine=touch] .performance-sticky { position:sticky; }
 :root[data-stage-engine=touch] .performance-top { top:10px; }
 :root[data-stage-engine=touch] .performance-caption { left:var(--gutter); max-width:50%; bottom:68px; }
 :root[data-stage-engine=touch] .performance .performance-caption,
 :root[data-stage-engine=touch] .film-console { position:absolute; margin:0; }
 :root[data-stage-engine=touch] .film-console { left:var(--gutter); right:var(--gutter); bottom:6px; }
}

/* Artist portraits, original cover artwork, and a quiet reading hierarchy. */
:root { --stage:#18191b; --stage-soft:#232527; --stage-text:#f4f3ef; --stage-muted:#c2c2bf; --motion-ui:220ms; --motion-image:650ms; --ease-out:cubic-bezier(.2,.75,.25,1); --radius:10px; --width:1440px; --gutter:clamp(24px,4vw,64px); }
:root { --surface:#18191b; --raised:#232527; --silver:#2c2e30; --text:#f2f2ef; --secondary:#b6b8be; --accent:#d6c7ac; --on-accent:#242628; --focus:#d6c7ac; --line:#414447; }
html { font-size:100%; scroll-padding-top:28px; }
body { overflow-x:clip; font-size:1.0625rem; line-height:1.6; }
h1,h2 { letter-spacing:-.04em; line-height:1.12; text-wrap:balance; }
h3 { letter-spacing:-.025em; }
.section { padding-block:clamp(48px,5.5vw,84px); }
.eyebrow { font-size:.8125rem; font-weight:500; letter-spacing:.045em; margin-bottom:20px; }
.header { gap:22px; min-height:80px; padding-block:12px; border-bottom:1px solid var(--line); }
.wordmark { font-size:1.1875rem; font-weight:600; letter-spacing:-.04em; }
.desktop-nav { gap:22px; }
.desktop-nav a { font-size:.9375rem; min-height:44px; }
.header-actions { gap:10px; }
.header-contact { min-height:44px; padding-inline:18px; font-size:.9375rem; border-radius:24px; }
.language button { min-width:40px; min-height:44px; }
.button { min-height:48px; padding:12px 24px; font-size:.9375rem; border-radius:26px; font-weight:500; }
.text-link { min-height:44px; font-size:1rem; }
.button svg,.text-link svg { width:20px; height:20px; }
.button:hover,.header-contact:hover,.hero-buttons>.text-link:hover { transform:none; box-shadow:none; }
.button:active,.header-contact:active { transform:scale(.98); }
.button.gold:hover,.button.ink:hover { filter:brightness(1.14); }
/* A close, unobstructed portrait is the opening's defining visual. */
.home-page .header { background:var(--stage); color:var(--stage-text); border-color:#343638; --text:var(--stage-text); --secondary:var(--stage-muted); --silver:#2c2e30; --raised:#444649; --control-border:#696b6d; --focus:#d6c7ac; }
.home-page .header-contact { background:#303234; color:var(--stage-text); }
.home-page .hero.artist-opening { padding:0; background:var(--stage); color:var(--stage-text); overflow:hidden; }
.opening-scene { position:relative; isolation:isolate; min-height:560px; height:calc(100svh - 164px); max-height:780px; }
.opening-photo { position:absolute; inset:0 0 0 42%; z-index:-3; overflow:hidden; }
.opening-photo img { height:100%; width:100%; object-fit:cover; object-position:50% 24%; filter:brightness(.92) saturate(.9); }
.opening-shade { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,#18191b 32%,#18191be8 43%,#18191b22 66%,transparent 85%),linear-gradient(0deg,#18191b 0%,transparent 24%); }
.opening-layout { height:100%; display:flex; align-items:center; padding-block:38px; }
.opening-copy { width:46%; max-width:580px; position:relative; }
.opening-heading>.eyebrow { color:var(--stage-muted); margin-bottom:20px; }
.home-page .hero h1 { margin:0 0 26px -.04em; font:500 clamp(4.5rem,7.7vw,7.5rem)/.98 var(--display); letter-spacing:-.055em; text-transform:none; max-width:100%; }
.artist-opening .name-mask { display:block; width:fit-content; clip-path:inset(-.1em -.06em); }
.artist-opening .name-word { display:block; }
.artist-opening #hero-name { overflow-wrap:normal; }
.home-page .hero-statement { color:#d0d0cc; max-width:29ch; margin:0; font-size:1.125rem; font-weight:400; line-height:1.5; letter-spacing:0; }
.home-page .hero-buttons { margin-top:24px; gap:24px; }
.home-page .hero .button { background:#f4f3ef; color:#18191b; min-height:48px; padding:12px 23px; }
.home-page .hero .text-link { color:var(--stage-text); border:0; padding:0; border-radius:0; min-height:48px; font-size:.9375rem; font-weight:400; }
.home-page .hero .text-link:hover { background:none; }
.opening-release { display:flex; align-items:center; gap:14px; width:100%; max-width:352px; padding:22px 0 0; margin-top:32px; border-top:1px solid #595b5c; text-align:left; }
.release-art { width:56px; height:56px; flex-shrink:0; }
.release-art img { width:100%; height:100%; border-radius:5px; }
.release-info { flex:1; min-width:0; }
.opening-release small { display:block; font-size:.8125rem; color:var(--stage-muted); margin-bottom:3px; }
.opening-release strong { display:block; font-size:1rem; font-weight:500; }
.release-listen { display:none; }
.opening-release .latest-play { width:44px; height:44px; border-color:#8c8e8e; color:var(--stage-text); flex-shrink:0; }
.opening-release:hover .latest-play { background:var(--stage-text); color:var(--stage); }
.streaming-rail { position:relative; padding:16px 0; background:var(--surface); color:var(--text); border-block:1px solid var(--line); }
.artist-opening .streaming-rail { background:var(--stage); color:var(--stage-text); border-color:#343638; }
.streaming-rail>.wrap { display:flex; align-items:center; gap:28px; }
.streaming-label { flex:none; margin:0; font-size:.8125rem; color:var(--secondary); }
.artist-opening .streaming-label { color:var(--stage-muted); }
.streaming-services { flex:1; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.streaming-services a { display:flex; align-items:center; justify-content:center; min-height:48px; min-width:0; gap:9px; font-size:.875rem; line-height:1.25; font-weight:500; padding:8px 0; border-radius:6px; }
.streaming-services img { width:32px; height:32px; flex:none; object-fit:contain; border-radius:22%; }
.streaming-services a:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
/* Records are shown as released, with no invented physical packaging. */
.home-page .home-music { background:var(--surface); padding-block:64px; }
.section-top { gap:8%; align-items:end; margin-bottom:36px; }
.music-heading > .text-link { justify-self:end; }
.home-music h2,.section-top h2 { font-size:clamp(2.25rem,3.5vw,3.25rem); }
.section-top .page-title,.story-copy h1,.contact-page-copy h1 { font-size:clamp(3rem,5.25vw,4.5rem); line-height:1.08; letter-spacing:-.045em; }
.section-intro,.home-music-intro { font-size:1.0625rem; line-height:1.6; max-width:44ch; }
.featured-tracks { gap:28px; }
.track-art { overflow:hidden; border-radius:8px; background:none; }
.track-art>img { border-radius:0; box-shadow:none; }
.track-art:before,.track-art:after { display:none; }
.track-card:hover .track-art>img { transform:scale(1.025); }
.track-play { width:50px; height:50px; background:#f7f7f5; color:#242628; box-shadow:0 2px 12px #0002; border:0; }
.track-play[aria-pressed=true] { background:var(--accent); color:var(--on-accent); }
.track-meta { padding-top:16px; }
.track-meta h3 { font-size:1.25rem; font-weight:500; }
.track-meta small,.preview-credit { font-size:.8125rem; }
.catalog-heading { margin-top:54px; }
.catalog { display:grid; grid-template-columns:1fr 1fr; column-gap:48px; }
.catalog-row { min-height:96px; border-bottom:1px solid var(--line); gap:16px; }
.catalog-number { display:none; }
.catalog-row>img { width:54px; height:54px; border-radius:5px; }
.catalog-track h3 { font-size:1rem; }
.catalog-duration,.catalog-track span { font-size:.8125rem; }
.music .streaming-rail { margin-top:40px; border-bottom:0; }
.music .streaming-rail>.wrap { width:100%; }
.special-release { background:var(--silver); padding-block:54px; }
.special-chinese { font-size:clamp(4rem,8vw,7rem); color:var(--secondary); }
.special-grid h2,.china h2 { font-size:clamp(2rem,3.5vw,3rem); }
/* Portraits retain natural edges and colors. */
.story-grid { grid-template-columns:1fr 1fr; gap:8%; align-items:center; }
.story-visual { align-self:stretch; padding:0; }
.portrait-frame { border-radius:10px; min-height:550px; height:100%; overflow:hidden; }
.portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:50% 24%; }
.story-copy p:not(.eyebrow) { max-width:46ch; font-size:1.0625rem; }
.story-copy p.lead { font-size:1.25rem; line-height:1.5; }
.china { background:var(--silver); }
.china-grid { gap:7%; }
.china-photo>.motion-photo { border-radius:10px; }
/* Clear service descriptions, no interchangeable decorative cards. */
.services { display:block; border-top:1px solid var(--line); }
.service { display:grid; grid-template-columns:1fr 1.45fr; gap:8%; padding:30px 0; border:0; border-bottom:1px solid var(--line); background:none; border-radius:0; }
.service-heading h3 { font-size:1.5rem; line-height:1.25; margin:0; }
.service-body p { max-width:62ch; font-size:1.0625rem; line-height:1.65; }
.service-body { padding:0; }
.process { background:var(--silver); }
.process-grid { gap:40px; }
.process-grid article { border:0; padding:0; }
.process-grid article>span { font-size:.875rem; color:var(--secondary); font-variant-numeric:tabular-nums; }
.process-grid h3 { margin:14px 0 10px; font-size:1.1875rem; }
.process-grid p { font-size:1rem; }
.gallery { display:grid; grid-template-columns:1.15fr 1fr; gap:32px; align-items:start; padding:0; }
.gallery-item { background:none; border:0; border-radius:0; box-shadow:none; padding:0; transform:none; }
.gallery-tall { grid-row:span 2; }
.gallery-personal,.gallery-lights { margin:0; width:100%; }
.gallery-tall img { height:auto; aspect-ratio:.64; object-fit:cover; }
.gallery-personal img { height:auto; aspect-ratio:1.2; object-fit:cover; }
.gallery-lights img { height:auto; aspect-ratio:1.2; object-fit:cover; }
.gallery-item>.motion-photo { border-radius:8px; }
.gallery-item>span:last-child { padding:14px 0 0; }
.gallery-item strong { font-size:.9375rem; font-weight:500; }
.gallery-item:hover>span:last-child svg { transform:none; }
.video-row { gap:28px; }
.video-link { background:none; border:0; border-bottom:1px solid var(--line); border-radius:0; padding:24px 0; }
.video-link:hover { transform:none; }
.video-link strong { font-weight:500; }
/* Supporting links and contact use the same type and spacing as the music. */
.home-page .home-paths { background:var(--silver); padding-block:64px; }
.paths-grid { gap:7%; }
.home-path { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; align-items:start; }
.home-path+.home-path { border:0; padding:0; }
.path-photo { grid-column:2; grid-row:1/6; height:100%; min-height:280px; overflow:hidden; border-radius:8px; }
.path-photo img { height:100%; width:100%; object-fit:cover; }
.home-path--portrait .path-photo { align-self:center; width:100%; height:auto; min-height:0; aspect-ratio:auto; }
.home-path--portrait .path-photo img { display:block; height:auto; object-fit:contain; }
.home-page .home-path h2 { font-size:clamp(1.75rem,2.5vw,2.5rem); max-width:12ch; }
.home-path>p:not(.eyebrow) { font-size:1rem; line-height:1.55; margin-top:16px; }
.home-path .text-link { font-size:.9375rem; margin-top:16px; }
.contact-grid { gap:8%; }
.contact-page-copy h1 { max-width:100%; }
.contact-page-copy .lead { font-size:1.125rem; }
.contact-form { padding:32px; border-radius:12px; box-shadow:none; }
.contact-form h2 { font-size:1.5rem; }
.inquiry-dialog label { font-size:.9375rem; }
.inquiry-dialog input,.inquiry-dialog textarea,.inquiry-dialog select { background:var(--surface); border-radius:7px; font-size:1rem; }
footer { padding-top:42px; background:var(--stage); color:var(--stage-text); --text:var(--stage-text); --secondary:var(--stage-muted); --line:#444648; --accent:#d6c7ac; --focus:#d6c7ac; }
.footer-invitation { display:flex; align-items:center; justify-content:space-between; gap:32px; padding-bottom:34px; }
.footer-invitation>p { font-size:1rem; max-width:45ch; color:var(--secondary); }
.footer-hello { display:flex; align-items:center; gap:18px; font:500 1.75rem/1.25 var(--display); letter-spacing:-.035em; }
.footer-hello svg { width:28px; height:28px; }
.footer-nav { padding-top:24px; border-top:1px solid var(--line); gap:24px; margin-bottom:18px; }
.footer-nav a,.footer-top>div a,.footer-bottom { font-size:.8125rem; }
.footer-top { padding-bottom:20px; }
.footer-top>.wordmark { display:none; }
.footer-bottom { padding-block:20px; }
@view-transition { navigation:auto; }
::view-transition-group(root) { animation-duration:180ms; }
@media(min-width:1600px) { html { font-size:112.5%; } :root { --width:1600px; } .opening-copy { max-width:660px; } }
@media(max-width:1099px) {
 .streaming-rail>.wrap { display:block; }
 .streaming-label { text-align:center; margin-bottom:8px; }
 .streaming-services { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 18px; }
 .opening-copy { width:50%; }
 .home-page .hero h1 { font-size:clamp(3.75rem,8vw,6rem); }
 .opening-scene { min-height:600px; }
 .home-path { display:block; }
 .path-photo { min-height:0; height:250px; margin-bottom:24px; }
 .catalog { column-gap:28px; }
}
@media(max-width:800px) {
 .opening-copy { width:55%; }
 .opening-photo { left:38%; }
 .opening-shade { background:linear-gradient(90deg,#18191b 18%,#18191bcf 43%,transparent 86%),linear-gradient(0deg,#18191b,transparent 40%); }
 .gallery { gap:24px; }
 .service { grid-template-columns:1fr 1.35fr; gap:6%; }
 .service-heading h3 { font-size:1.375rem; }
}
@media(max-width:650px) {
 .header { min-height:72px; padding-block:12px; gap:10px; }
 .header .wordmark { font-size:1rem; overflow-wrap:normal; flex-shrink:0; }
 .header-actions { gap:2px; }
 .header-contact { display:none; }
 .language button { min-width:36px; }
 .section { padding-block:48px; }
 .opening-scene { display:flex; flex-direction:column; height:auto; min-height:0; max-height:none; }
 .opening-layout,.opening-copy { display:contents; }
 .opening-heading { order:1; padding:24px var(--gutter) 22px; }
 .opening-heading>.eyebrow { font-size:.8125rem; margin-bottom:14px; }
 .home-page .hero h1 { font-size:clamp(2rem,13vw,5rem); margin:0; line-height:1; }
 .artist-opening #hero-name { display:flex; flex-wrap:wrap; column-gap:.2em; }
 .opening-photo { position:relative; inset:auto; order:2; aspect-ratio:1.15; width:100%; z-index:0; }
 .opening-photo img { position:static; height:100%; object-position:50% 29%; filter:none; }
 .opening-shade { display:none; }
 .opening-intro { order:3; padding:24px var(--gutter) 0; }
 .home-page .hero-statement { font-size:1.0625rem; max-width:32ch; }
 .home-page .hero-buttons { flex-direction:row; align-items:center; gap:20px; margin:18px 0 0; }
 .home-page .hero .button { font-size:.9375rem; padding-inline:20px; }
 .home-page .hero .text-link { font-size:.9375rem; }
 .opening-release { order:4; width:calc(100% - var(--gutter)*2); max-width:none; margin:24px var(--gutter); padding-top:20px; gap:14px; }
 .release-art { width:48px; height:48px; }
 .streaming-rail { padding:16px 0; }
 .streaming-services { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
 .streaming-services a { flex-direction:column; gap:7px; font-size:.8125rem; min-height:64px; text-align:center; }
 .streaming-services a span { max-width:100%; overflow-wrap:anywhere; text-wrap:balance; }
 .home-page .home-music { padding-block:48px; }
 .section-top { display:block; margin-bottom:28px; }
 .music-heading > .text-link { margin-block-start:.5rem; }
 .section-top h2,.home-music h2 { font-size:2.25rem; }
 .section-top .page-title,.story-copy h1,.contact-page-copy h1 { font-size:2.75rem; }
 .section-intro,.home-music-intro { font-size:1.0625rem; margin-top:20px; }
 .featured-tracks { gap:24px; }
 .track-card:first-child .track-meta h3 { font-size:1.25rem; }
 .track-card:not(:first-child) .track-meta h3 { font-size:1.0625rem; }
 .catalog { grid-template-columns:1fr; }
 .catalog-row { min-height:88px; gap:12px; }
 .catalog-row>img { width:48px; height:48px; }
 .catalog-track h3 { font-size:.9375rem; }
 .catalog-heading { margin-top:36px; }
 .special-chinese { display:none; }
 .special-grid h2,.china h2 { font-size:2.25rem; }
 .story-grid { display:flex; flex-direction:column-reverse; gap:32px; }
 .story-visual { width:100%; }
 .portrait-frame { min-height:0; height:auto; aspect-ratio:.85; }
 .portrait-frame img { position:static; }
 .story-copy p.lead { font-size:1.1875rem; }
 .service { display:block; padding-block:24px; }
 .service-heading h3 { font-size:1.375rem; margin-bottom:12px; }
 .process-grid { gap:28px; }
 .process-grid article { display:grid; grid-template-columns:28px 1fr; gap:0 16px; }
 .process-grid h3 { margin:0 0 10px; }
 .process-grid article>span { margin-top:3px; }
 .gallery { grid-template-columns:1fr 1fr; gap:24px 16px; }
 .gallery-tall { grid-column:1/-1; grid-row:auto; }
 .gallery-tall img { aspect-ratio:.9; }
 .gallery-personal img,.gallery-lights img { aspect-ratio:.8; }
 .gallery-item strong { font-size:.8125rem; }
 .gallery-item>span:last-child { padding-top:10px; }
 .home-page .home-paths { padding-block:48px; }
 .paths-grid { gap:36px; }
 .home-path { display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
 .path-photo { height:100%; min-height:260px; margin:0; }
 .home-page .home-path h2 { font-size:1.75rem; }
 .home-path>p:not(.eyebrow) { font-size:.9375rem; }
 .home-path .eyebrow { font-size:.8125rem; margin-bottom:14px; }
 .contact-form { padding:24px; }
 .footer-invitation { display:block; padding-bottom:28px; }
 .footer-hello { margin-top:20px; font-size:1.5rem; }
 .footer-nav { gap:8px 24px; }
 .footer-top>div { flex-wrap:wrap; }
}
@media(max-width:370px) { :root { --gutter:20px; } .header .wordmark { max-width:none; font-size:.875rem; } .header-actions { gap:0; } .home-path { grid-template-columns:1fr; } .path-photo { grid-column:1; grid-row:auto; aspect-ratio:1.2; height:auto; min-height:0; margin-bottom:20px; } .home-page .home-path h2 { max-width:none; } }
@media(max-width:480px) {
 .home-path--portrait { display:block; }
 .home-path--portrait .path-photo { margin-bottom:20px; }
 .home-page .home-path--portrait h2 { max-width:none; }
}
@media(prefers-contrast:more) { :root { --secondary:#f2f2ef; --line:#9b9d9e; } }
@media(prefers-reduced-motion:reduce) { .track-card:hover .track-art>img,.gallery-item:hover img,.button:active,.header-contact:active { transform:none; } ::view-transition-group(root) { animation:none; } }
@media(forced-colors:active) { .opening-shade { background:Canvas; } .streaming-services img { filter:none; } }
@media(prefers-reduced-motion:no-preference) { :root[data-motion-pending] .opening-heading { visibility:hidden; } }

/* Responsive details support the music; the established layout stays still. */
:root { --motion-ui:300ms; --motion-image:800ms; --ease-out:cubic-bezier(.22,1,.36,1); }
.motion-char,.motion-word { transform-origin:0 100%; }
.service { position:relative; }
.service:after { content:''; position:absolute; bottom:-1px; left:0; right:0; height:1px; background:var(--secondary); transform:scaleX(var(--rule-progress,1)); transform-origin:left; }
.track-card { perspective:950px; }
.track-art { transform-style:preserve-3d; }
.track-art:focus-within { outline:2px solid var(--focus); outline-offset:5px; }
.streaming-services a { position:relative; }
.streaming-services a:after { content:''; position:absolute; bottom:1px; left:30%; right:30%; height:1px; background:currentColor; transform:scaleX(0); }
@media(prefers-reduced-motion:no-preference) {
 .button>span,.button>svg,.header-contact>span,.footer-hello svg,.streaming-services img,.streaming-services a:after { transition:transform var(--motion-ui) var(--ease-out); }
 .opening-release .release-art { transition:transform 450ms var(--ease-out); }
 .opening-release .latest-play { transition:transform 400ms var(--ease-out),background-color var(--motion-ui),color var(--motion-ui); }
 .track-card:focus-within .track-play { transform:scale(1.09); }
 .catalog-row { transition:background-color 240ms ease; }
 .catalog-row>img { transition:transform 400ms var(--ease-out); }
 .inquiry-dialog input:focus-visible,.inquiry-dialog select:focus-visible,.inquiry-dialog textarea:focus-visible { box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 15%,transparent); }
 .film-chapters button[aria-pressed=true] { animation:chapter-mark 350ms var(--ease-out); }
 .performance-caption>[data-film-copy]:not([hidden]) { animation:caption-phrase 450ms var(--ease-out) both; }
 .opening-release:active .release-art { transform:scale(.96); }
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .button:hover>span,.header-contact:hover>span { transform:translateX(3px); }
 .button:hover>svg { transform:translateX(-3px) scale(1.08); }
 .text-link:hover svg,.footer-hello:hover svg { transform:translate(5px,-3px); }
 .hero-buttons>.text-link:hover svg { transform:translateY(5px); }
 .opening-release:hover .release-art { transform:translateY(-4px) rotate(-3deg); }
 .opening-release:hover .latest-play { transform:scale(1.1); }
 .streaming-services a:hover img { transform:translateY(-4px); }
 .streaming-services a:hover:after,.streaming-services a:focus-visible:after { transform:scaleX(1); }
 .gallery-item:hover>span:last-child svg { transform:rotate(90deg); }
 .track-card:hover .track-play { transform:scale(1.09); }
 .catalog-row:hover { background:color-mix(in srgb,var(--secondary) 6%,transparent); }
 .catalog-row:hover>img { transform:scale(1.08) rotate(-2deg); }
 .video-link:hover .round-play { transform:scale(1.09); }
 .home-path:hover .text-link svg { transform:translate(5px,-3px); }
}
@keyframes chapter-mark { from { border-color:transparent; } to { border-color:currentColor; } }
@keyframes caption-phrase { from { opacity:.5; transform:translateY(16px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce) {
 .service:after { transform:none; }
 .streaming-services a:focus-visible:after { transform:scaleX(1); }
 .track-art { transform:none!important; }
}

/* Motion follows real playback; the three bars are a status, not a waveform. */
.playback-meter { position:absolute; display:flex; align-items:center; justify-content:center; gap:3px; width:32px; height:28px; padding:6px; margin:0; border-radius:14px; color:#f4f3ef; background:#18191be8; pointer-events:none; opacity:0; visibility:hidden; z-index:3; transition:opacity 180ms ease; }
.playback-meter>i { display:block; flex:0 0 3px; width:3px; height:15px; border-radius:2px; background:currentColor; transform:scaleY(.4); transform-origin:center; animation:preview-bar 860ms ease-in-out infinite alternate; animation-play-state:paused; }
.playback-meter>i:nth-child(2) { animation-delay:-430ms; transform:scaleY(.85); }
.playback-meter>i:nth-child(3) { animation-delay:-160ms; transform:scaleY(.6); }
[data-playback-state=playing]>.playback-meter { opacity:1; visibility:visible; }
[data-playback-motion=running]>.playback-meter>i { animation-play-state:running; }
.track-art>.playback-meter { left:16px; bottom:16px; }
.release-art { position:relative; }
.release-art>.playback-meter { left:50%; top:50%; transform:translate(-50%,-50%); width:28px; height:25px; }
.catalog-row { position:relative; }
.catalog-row>.playback-meter { left:11px; top:50%; transform:translateY(-50%); }
.player-track { position:relative; padding-right:24px; }
.player-track>.playback-meter { display:flex; right:0; top:3px; width:18px; height:18px; padding:0; margin:0; background:none; color:var(--accent); }
.player-track>.playback-meter>i { height:13px; }
@keyframes preview-bar { 0% { transform:scaleY(.3); } 100% { transform:scaleY(1); } }

/* A selected photograph grows into its detail view; controls never wait. */
.media-dialog[data-media-type=photo][open] { animation:none; }
.media-dialog[data-photo-entering] { overflow:visible; background:transparent; border-color:transparent; box-shadow:none; }
.media-dialog[data-photo-entering] .lightbox-image { transform-origin:center; will-change:transform,clip-path; }
.media-dialog[data-photo-entering] .lightbox-caption { opacity:0; }
.media-dialog[data-media-type=photo] .lightbox-caption { transition:opacity 180ms ease; }
@media(max-width:650px) {
 .track-card:not(:first-child) .track-art>.playback-meter { left:8px; bottom:8px; width:26px; height:24px; padding:4px; gap:2px; }
 .catalog-row>.playback-meter { left:8px; }
}
@media(prefers-reduced-motion:reduce) {
 .playback-meter { transition:none; }
 .playback-meter>i { animation:none; }
 .media-dialog[data-media-type=photo] .lightbox-caption { transition:none; }
}
@media(forced-colors:active) { .playback-meter { background:Canvas; color:CanvasText; border:1px solid CanvasText; } }

.opening-release .release-link { display:flex; flex:1; gap:inherit; align-items:center; min-width:0; min-height:44px; }
.release-platform { display:inline-flex; align-items:center; gap:4px; margin-top:4px; color:var(--stage-muted); font-size:.8125rem; }
.release-platform svg { width:12px; height:12px; }
.opening-release .release-link:hover strong,.video-target:hover strong { text-decoration:underline; text-underline-offset:.16em; }
.video-target { display:flex; align-items:center; justify-content:space-between; gap:12px; flex:1; min-width:0; min-height:48px; }
.video-target svg { width:18px; height:18px; flex-shrink:0; }
.track-meta a,.catalog-row>a { display:grid; min-width:44px; min-height:44px; }
.track-meta a svg,.catalog-row>a svg { width:21px; height:21px; }
@media(max-width:370px) {
 .catalog-row,.track-meta { gap:6px; }
 .catalog-row>img { width:40px; height:40px; }
}

.artist-intro,.artist-essay,.live-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:clamp(2rem,6vw,6rem); }
.artist-intro { align-items:center; }
.artist-letter .page-title,.live-feature .page-title { margin-bottom:clamp(1.25rem,2.2vw,2rem); }
.artist-intro-copy>p:not(.eyebrow),.artist-paragraphs p,.live-invitation p { max-width:57ch; color:var(--secondary); }
.artist-intro-copy>p+p,.artist-paragraphs p+p,.live-invitation p+p { margin-top:1em; }
.artist-intro-copy>.artist-lead,.live-feature .artist-lead { font-size:clamp(1.18rem,1.6vw,1.6rem); line-height:1.42; color:var(--text); }
.artist-portrait { margin:0; min-height:0; height:auto; width:100%; border-radius:var(--radius); overflow:hidden; aspect-ratio:694/533; }
.artist-portrait img { position:static; display:block; width:100%; height:100%; object-fit:cover; }
.artist-process,.live-booking { background:var(--silver); }
.artist-essay { grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); }
.artist-essay h2 { font-size:clamp(2rem,3.6vw,3.7rem); max-width:13ch; }
.artist-paragraphs .artist-pull { margin-block:1.25em; font:500 clamp(1.4rem,2.2vw,2.25rem)/1.25 var(--display); letter-spacing:-.03em; color:var(--text); max-width:30ch; }
.artist-paragraphs p[data-i18n="writingProduce"] a { color:var(--text); text-decoration:underline; text-underline-offset:.18em; }
.artist-letter-link { display:inline-block; min-height:44px; align-content:center; text-decoration:underline; text-underline-offset:.2em; color:var(--text); }
.artist-paragraphs .artist-signoff { margin-top:1rem; color:var(--text); font:500 1.3rem/1.4 var(--display); }
.home-path .path-photo img[src$="/yazzmin-live.webp"] { object-position:65% 38%; }
.live-grid { grid-template-rows:auto 1fr; row-gap:1.5rem; }
.live-intro .page-title { font-size:clamp(2.5rem,4.9vw,5rem); max-width:14ch; line-height:1.02; }
.live-photo {
  grid-column:2;
  grid-row:1/span 2;
  margin:0 auto;
  width:100%;
  max-width:29rem;
  max-width:min(29rem, 60svh);
}
.live-photo img { display:block; width:100%; height:auto; object-fit:contain; }
.live-booking .artist-essay { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); }
.live-booking a.button { margin-top:1.4rem; }
.project-intro { display:grid; grid-template-columns:1fr 1.45fr; align-items:start; gap:8%; margin-bottom:clamp(1.75rem,3vw,3rem); }
.project-intro .page-title { max-width:12ch; font-size:clamp(2.6rem,4.8vw,4.75rem); line-height:1.06; }
.project-opening p { font-size:clamp(1.0625rem,1.35vw,1.25rem); line-height:1.55; max-width:51ch; color:var(--secondary); }
.project-opening p+p,.project-services p+p { margin-top:.65em; }
.project-jump,.project-services .text-link { margin-top:.5rem; }
.project-services h2 { font-size:clamp(1.35rem,2vw,2rem); line-height:1.25; }
.project-services em { font-style:italic; color:var(--text); }
.project-invitation { padding-bottom:0; }
@media(max-width:800px) {
 .project-intro { grid-template-columns:1fr 1.35fr; gap:6%; }
}
@media(max-width:650px) {
 .project-intro { display:block; }
 .project-intro .page-title { margin-bottom:1.25rem; }
 .project-services h2 { margin-bottom:.65rem; }
}
.china-report { margin-top:1.5rem; padding-top:1.25rem; border-top:1px solid var(--line); }
html:has(#changchun:target) { scroll-behavior:auto; }
.china-report h3 { font-size:1.15rem; }
.china-report p { margin-block:.4rem; color:var(--secondary); max-width:55ch; }
.china-report .text-link { margin-top:.25rem; }
@media(max-width:750px) {
 .artist-intro,.artist-essay,.live-grid { display:flex; flex-direction:column; align-items:stretch; gap:1.75rem; }
 .artist-intro-copy,.live-intro { order:0; }
 .artist-portrait { aspect-ratio:694/533; min-height:0; height:auto; }
 .artist-essay h2 { max-width:100%; }
 .live-intro .page-title { font-size:clamp(2.3rem,8.8vw,3.7rem); }
}

/* The supplied white wordmark is printed on black. Carry the same black
   through the header so its original rectangle and lettering stay intact. */
.header,
.home-page .header {
  background: #000;
  color: #f4f3ef;
  border-color: #323232;
}
.header .wordmark {
  display: flex;
  align-items: center;
  flex: none;
  min-height: 44px;
  width: clamp(110px, 10vw, 146px);
}
.header .wordmark img {
  display: block;
  width: 100%;
  height: auto;
}
.header .header-actions { gap: clamp(8px, 1.2vw, 18px); }
.header .language button {
  display: grid;
  place-items: center;
  flex: none;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border-radius: 7px;
}
.language-flag {
  display: block;
  width: 24px;
  height: auto;
  overflow: hidden;
  stroke: none;
  stroke-linecap: butt;
  stroke-linejoin: miter;
  border-radius: 2px;
  box-shadow: 0 0 0 1px #666;
}
.header .language button[aria-pressed=true]::after {
  width: 14px;
  bottom: 6px;
  border-radius: 1px;
  background: #f4f3ef;
}
.header-buy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  min-height: 44px;
  padding: 0 19px;
  gap: 8px;
  border-radius: 999px;
  background: #eeddbc;
  color: #181613;
  font-size: .9375rem;
  font-weight: 650;
  line-height: 1.2;
}
.header-buy svg { width: 17px; height: 17px; }
.shop-slot { display: inline-grid; }
/* Retain the exact target box when its link is floating. Its top edge
   is the stable handover point in both scroll directions. */
[data-page="music"] .shop-slot {
  inline-size: 7rem;
  min-block-size: max(44px, 1.25rem);
}

/* With JavaScript off or loading slowly, keep the music shop in the sticky
   navigation. Enhanced pages keep just the purchase link on screen. */
[data-page="music"] .header:not(.shop-scroll-ready) {
  position: sticky;
  top: 0;
}
.shop-floats .header-buy {
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(16px, env(safe-area-inset-bottom));
  padding-inline: 18px;
  border: 1px solid #1b1916;
  box-shadow: 0 3px 14px #0005;
}
body:has(.player:not([hidden]), .cookie-notice:not([hidden])) .shop-floats .header-buy {
  top: max(16px, env(safe-area-inset-top));
  bottom: auto;
}
@supports not selector(:has(*)) {
  .shop-floats .header-buy { top: 16px; bottom: auto; }
}
@media (prefers-reduced-motion:no-preference) {
  .shop-floats .header-buy { animation: shop-arrival 180ms var(--ease-out); }
  @keyframes shop-arrival { from { transform: translateY(3px); } to { transform: translateY(0); } }
}
.footer-nav a[aria-current=page] {
  color: var(--text);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: .42em;
}
.header a:focus-visible,
.header button:focus-visible { outline: 2px solid #f5f1e9; outline-offset: 2px; }
@media (hover:hover) {
  .header-buy:hover { background: #fff0cf; }
  .header .language button:hover { background: #222; }
}
@media (max-width:650px) {
  .header { gap: 8px; padding-inline: min(var(--gutter), 3.6vw); }
  .header .wordmark { width: clamp(82px, 24vw, 112px); }
  .header .header-actions { gap: 6px; }
  .header-buy { padding-inline: 14px; font-size: .875rem; }
  .header-buy svg { display: none; }
  [data-page="music"] .shop-slot { inline-size: 4.85rem; }
}
@media (max-width:360px) {
  .header { padding-inline: 8px; gap: 3px; }
  .header .header-actions { gap: 2px; }
  .header-buy { padding-inline: 11px; }
  [data-page="music"] .shop-slot { inline-size: 4.4rem; }
}
@media (forced-colors:active) {
  .header-buy { border: 1px solid LinkText; }
  .language-flag, .header .wordmark img { forced-color-adjust: none; }
  .header .language button[aria-pressed=true]::after { background: ButtonText; }
}

.contact-social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 1.25rem;
  margin-block-start: 1.25rem;
  padding-block-start: .75rem;
  border-top: 1px solid var(--line);
}
.contact-social a {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  min-height: 44px;
  color: var(--text);
  font-size: .875rem;
  text-underline-offset: .25em;
}
.contact-social a:is(:hover,:focus-visible) { text-decoration: underline; }
.contact-social svg { width: 1.05rem; height: 1.05rem; flex: none; }
#contact-email { color: var(--text); text-decoration: underline; text-underline-offset: .25em; overflow-wrap: anywhere; }
#inquiry-fields { display: grid; min-width: 0; border: 0; padding: 0; margin: 0; }
.inquiry-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1.25rem; }
.inquiry-actions .text-link { margin: 0; padding-inline: 0; color: var(--text); font-size: .9rem; }
.contact-social svg { display: block; }

.legal-page { padding-block:clamp(34px,5vw,78px); }
.legal-page h1 { margin-bottom:clamp(24px,3vw,48px); overflow-wrap:anywhere; }
.legal-body { max-width:72ch; }
.legal-body section+section,.legal-body button+section { margin-top:32px; }
.legal-body h2 { font:600 clamp(1.2rem,2vw,1.6rem)/1.22 var(--display); margin-bottom:12px; }
.legal-body p,.legal-body dd { color:var(--secondary); }
.legal-body p+p,.legal-body dl { margin-top:10px; }
.legal-body dl { display:grid; grid-template-columns: minmax(10em,1fr) 1.5fr; gap:7px 16px; }
.legal-body dd { margin:0; }
.legal-body a,.cookie-notice p a,#cookie-dialog p a,.legal-setting-action,.choice-dismiss { text-decoration:underline; text-underline-offset:.2em; }
.legal-body code { overflow-wrap:anywhere; font-size:.9em; }
.legal-setting-action { padding:8px 0; min-height:44px; color:var(--text); }
.footer-legal { display:flex; gap:4px 22px; flex-wrap:wrap; padding-bottom:24px; }
.footer-legal a,.footer-legal button { display:inline-flex; align-items:center; color:inherit; font:inherit; font-size:.875rem; min-height:44px; text-decoration:underline; text-underline-offset:4px; }
.cookie-notice,#cookie-dialog { --privacy-bg:var(--raised); color:var(--text); background:var(--privacy-bg); border:1px solid var(--line); box-shadow:0 9px 42px #0003; }
.cookie-notice { position:fixed; right:max(14px, env(safe-area-inset-right)); bottom:max(14px,env(safe-area-inset-bottom)); z-index:70; width:min(31rem,calc(100% - 28px)); padding:22px; border-radius:14px; max-height:55dvh; overflow:auto; overscroll-behavior:contain; }
.cookie-notice[hidden],#cookie-dialog [hidden] { display:none; }
.cookie-notice h2,#cookie-dialog h2 { font:600 1.18rem/1.22 var(--display); margin:0 0 8px; letter-spacing:-.025em; }
.cookie-notice p,#cookie-dialog p { font-size:.9rem; line-height:1.5; margin:0; color:var(--secondary); }
.choice-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.choice-actions button { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:6px 14px; border:1px solid var(--control-border); border-radius:7px; background:var(--surface); color:var(--text); font-size:.875rem; line-height:1.25; font-weight:500; }
.choice-actions [data-choice=accept],.choice-actions [data-choice=reject] { flex:1; }
.choice-actions button:hover,.choice-actions button:focus-visible { border-color:var(--text); background:var(--silver); }
#cookie-dialog { position:fixed; inset:0; margin:auto; width:min(32rem,calc(100% - 24px)); max-height:calc(100dvh - 24px); padding:clamp(18px,4vw,32px); border-radius:14px; overflow:auto; overscroll-behavior:contain; }
#cookie-dialog::backdrop { background:#10111599; }
#cookie-dialog h2 { font-size:1.55rem; }
#cookie-dialog p+p { margin-top:10px; }
#cookie-dialog fieldset { border:0; padding:0; margin:20px 0 0; }
#cookie-dialog label { min-height:46px; display:flex; gap:12px; align-items:center; border-top:1px solid var(--line); cursor:pointer; font-size:1rem; }
#cookie-dialog label:last-child { border-bottom:1px solid var(--line); }
#cookie-dialog input { width:20px; height:20px; padding:0; margin:0; accent-color:var(--text); }
.choice-dismiss { min-height:44px; padding:4px 0; margin:4px 0 0; font-size:.875rem; color:var(--secondary); }
@media(max-width:480px) {
 .cookie-notice { width:100%; right:0; bottom:0; border-radius:14px 14px 0 0; padding:14px 16px max(12px,env(safe-area-inset-bottom)); }
 .cookie-notice p { font-size:.8125rem; line-height:1.4; }
 .choice-actions { gap:5px; }
 .choice-actions button { padding:6px 9px; }
 .legal-body dl { grid-template-columns:1fr; gap:1px; }
 .legal-body dt:not(:first-child) { margin-top:8px; }
}
.footer-legal [aria-current=page] { text-decoration-thickness:2px; font-weight:600; }
.legal-body address { margin-top:12px; font-style:normal; line-height:1.7; overflow-wrap:anywhere; }

/* Release artwork, sleeve credits and a four-part clock. */
.release-countdown {
  --release-ink:#f8f2e9;
  --release-muted:#c6bfba;
  --release-coral:#ff826d;
  background:radial-gradient(ellipse at 13% 82%, #332522 0%, transparent 62%), #161618;
  border-bottom:1px solid #3b3533;
  color:var(--release-ink);
}
.release-layout {
  display:grid;
  grid-template-columns:minmax(0,32%) minmax(0,1fr);
  grid-template-rows:1fr 1fr;
  column-gap:clamp(2rem,6vw,6rem);
  row-gap:clamp(1.25rem,2.5vw,2.75rem);
  align-items:center;
  padding-block:clamp(2.75rem,5.5vw,5.5rem);
}
.release-cover {
  grid-column:1;
  grid-row:1 / span 2;
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1;
  border-radius:3px;
  box-shadow:0 16px 35px -14px #0009;
}
.release-heading,.release-timing { grid-column:2; min-width:0; }
.release-heading { align-self:end; }
.release-timing { align-self:start; }
.release-kicker {
  display:flex;
  align-items:center;
  gap:.7rem;
  color:var(--release-muted);
  font:600 .75rem/1.35 var(--display);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.release-kicker::before { content:""; width:1.75em; height:2px; background:var(--release-coral); }
.release-heading h2 {
  margin:.12em 0 .13em;
  color:inherit;
  font:500 clamp(2.75rem,6.2vw,6.25rem)/1.02 var(--display);
  letter-spacing:-.065em;
}
.release-heading h2 em { color:inherit; font:italic normal 1.06em/1 Georgia,serif; letter-spacing:-.065em; }
.release-byline { margin:0; color:var(--release-muted); font-size:clamp(.875rem,1.25vw,1.125rem); line-height:1.45; }
.release-byline span { white-space:nowrap; }
.release-clock {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-block:1px solid #645851;
  padding-block:clamp(.9rem,1.5vw,1.6rem);
}
.release-countdown:not([data-countdown-ready]) .release-clock { visibility:hidden; }
.release-clock [data-unit] { display:grid; align-content:start; justify-items:center; min-width:0; }
.release-clock [data-unit]+[data-unit] { border-inline-start:1px solid #554b47; }
.release-clock [data-value] {
  display:block;
  color:var(--release-ink);
  font:400 clamp(2.45rem,6.4vw,6.5rem)/1 var(--body);
  font-variant-numeric:tabular-nums lining-nums;
  letter-spacing:-.055em;
}
.release-clock [data-unit="seconds"] [data-value] { color:var(--release-coral); }
.release-clock [data-i18n] { margin-top:.48em; color:var(--release-muted); font-size:clamp(.75rem,1vw,.95rem); }
.release-date { display:flex; align-items:center; gap:.6rem; margin-top:1rem; color:var(--release-muted); font-size:clamp(.83rem,1.12vw,1rem); }
.release-dial {
  display:inline-block;
  flex:none;
  position:relative;
  width:.95em;
  height:.95em;
  border:1px solid currentColor;
  border-radius:50%;
}
.release-dial::after { content:""; position:absolute; left:46%; bottom:46%; width:1px; height:34%; background:currentColor; }
@media (prefers-reduced-motion:no-preference) {
  .release-clock [data-value].is-ticking { animation:release-tick .22s cubic-bezier(.16,1,.3,1) both; }
  @keyframes release-tick { from { transform:translateY(.075em); } to { transform:translateY(0); } }
}
@media (max-width:700px) {
  .release-layout {
    grid-template-columns:clamp(104px,29vw,184px) minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:clamp(.875rem,3.5vw,1.5rem);
    row-gap:1.5rem;
    padding-block:2.25rem;
  }
  .release-cover,.release-heading { grid-row:1; }
  .release-heading { align-self:center; }
  .release-heading h2 { font-size:clamp(2.15rem,7.8vw,3.5rem); }
  .release-byline { font-size:.85rem; }
  .release-byline span { display:block; }
  .release-kicker { gap:.4rem; font-size:.67rem; letter-spacing:.09em; }
  .release-kicker::before { width:1.1em; }
  .release-timing { grid-column:1 / -1; }
  .release-clock [data-value] { font-size:clamp(2.4rem,10.8vw,4.5rem); }
}

[data-cms-lines]{white-space:pre-line}
.cms-media-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr));gap:clamp(1rem,3vw,3rem);margin-block:clamp(2rem,5vw,5rem)}
.cms-media-blocks figure{margin:0;min-width:0}
.cms-media-blocks :is(img,video){display:block;width:100%;height:auto;max-height:min(82vh,60rem);object-fit:contain;background:var(--ink,#111)}
.cms-media-blocks figcaption{margin-top:.75rem;font-size:1rem;line-height:1.5;white-space:pre-line}
.cms-youtube{display:flex;align-items:center;flex-wrap:wrap;gap:1rem}
.cms-youtube figcaption{flex-basis:100%}
.cms-dialog-video{display:block;max-height:80vh;width:100%}
[data-cms-preview] :is([data-cms-copy],[data-cms-text],[data-cms-image],[data-cms-link],[data-cms-field],[data-cms-clip],[data-cms-block]):is(:hover,:focus-visible){outline:2px solid #917dba;outline-offset:2px;cursor:pointer}
[data-cms-preview]:not([data-cms-choices="notice"]) #cookie-notice{display:none!important}
[data-cms-preview][data-cms-choices="notice"] #cookie-notice{display:block!important}
[data-cms-preview][data-cms-choices="dialog"] #cookie-dialog{display:block;z-index:75}
