/* Slimm J — four photo-derived colours, two type families. */
:root {
 --ink:#101010; --paper:#f4efe6; --accent:#ef9f38; --stone:#b8b1a8;
 --font-display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
 --font-text:'DM Sans',Arial,Helvetica,sans-serif;
 --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem;
 --space-5:1.5rem; --space-6:2rem; --space-7:3rem; --space-8:4rem;
 --space-9:6rem; --space-10:9rem;
 --page-gutter:clamp(1.25rem,5vw,6rem); --content-width:1728px;
 --border:1px solid color-mix(in srgb,var(--stone) 35%,transparent);
 --button-height:48px; --card-gap:clamp(1rem,2vw,2rem); --radius:2px;
 --ease:cubic-bezier(.2,.7,.2,1); --duration:240ms;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--paper);font:400 1rem/1.65 var(--font-text);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}img{display:block;max-width:100%;height:auto}picture{display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.35}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}main:focus{outline:none}::selection{background:var(--accent);color:var(--ink)}[hidden]{display:none!important}p{margin:0 0 var(--space-5)}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:600;line-height:.98;letter-spacing:-.025em}h1{font-size:clamp(4.5rem,12vw,12rem);text-transform:uppercase}h2{font-size:clamp(3rem,7vw,7rem);text-transform:uppercase}h3{font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1.05}a,button{transition:color var(--duration),background var(--duration),border-color var(--duration),transform var(--duration)}.section{max-width:var(--content-width);margin-inline:auto;padding:var(--space-8) var(--page-gutter)}.section-tight{padding-top:0}.eyebrow{font-size:.68rem;font-weight:600;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;color:var(--stone);margin:0 0 var(--space-5)}.title-period{color:var(--accent)}.small-copy,.source-note,.catalogue-note{font-size:.8rem;color:var(--stone);line-height:1.7}.lede{font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.6}.small-copy{margin:0}.text-link{display:inline-flex;gap:1rem;align-items:center;min-height:44px;font-size:.78rem;font-weight:600;border-bottom:1px solid currentColor;line-height:1.4;padding-block:.6rem}.text-link:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-height:var(--button-height);padding:.85rem 1.25rem;background:var(--accent);border:1px solid var(--accent);color:var(--ink);font-size:.8rem;font-weight:600;border-radius:var(--radius)}.button:hover{background:var(--paper);border-color:var(--paper);transform:translateY(-2px)}.button-light{background:var(--paper);border-color:var(--paper)}.button-light:hover{background:var(--accent);border-color:var(--accent)}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.circle-button{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border:var(--border);border-radius:50%;background:transparent;font-size:1.3rem}.circle-button:not(:disabled):hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}.placeholder{font-size:.85rem;line-height:1.65;border-left:2px solid var(--accent);padding:.45rem .9rem;color:var(--stone);overflow-wrap:anywhere}.skip-link{position:fixed;top:1rem;left:1rem;padding:.75rem 1rem;background:var(--paper);color:var(--ink);z-index:100;transform:translateY(-180%)}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Persistent navigation; ordinary links remain available without JavaScript. */
.site-header{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;min-height:86px;padding:1rem var(--page-gutter);background:var(--ink);border-bottom:var(--border)}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;flex-shrink:0}.brand img{width:132px;height:27px}.brand span{font-size:.52rem;letter-spacing:.4em;margin-left:.4rem;color:var(--stone)}.site-header nav{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:center}.site-header nav a{padding:.65rem .15rem;font-size:.75rem;color:var(--stone);position:relative}.site-header nav a:hover,.site-header nav [aria-current]{color:var(--paper)}.site-header nav [aria-current]:after{content:'';position:absolute;bottom:.2rem;left:.15rem;right:.15rem;height:2px;background:var(--accent)}.menu-toggle{border:var(--border);background:none;min-height:44px;padding:.5rem .8rem;font-size:.75rem}.menu-toggle span{margin-left:.8rem}.site-header[data-enhanced] nav{width:100%;padding-block:1rem;display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem}.site-header[data-enhanced] nav a{padding:.7rem .25rem;font-size:1rem}
/* Home: oversized masthead and an asymmetrical portrait spread. */
.home-hero{max-width:var(--content-width);margin:auto;padding:var(--space-7) var(--page-gutter) var(--space-6)}.hero-title .eyebrow{margin-bottom:1rem}.hero-title h1{font-size:clamp(6rem,24vw,27rem);line-height:.82;letter-spacing:-.035em;position:relative;z-index:1;white-space:nowrap}.hero-composition{display:grid;gap:2rem;margin-top:2rem}.hero-note{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}.hero-note>p{font-size:1.25rem;line-height:1.5}.vertical-label{display:none}.hero-photo{position:relative;overflow:hidden}.hero-photo img{width:100%;aspect-ratio:1;object-fit:cover}.photo-label{position:absolute;bottom:.8rem;right:.8rem;padding:.35rem .6rem;background:var(--ink);font-size:.55rem;letter-spacing:.12em}.hero-scroll{display:flex;justify-content:space-between;align-items:center;border-bottom:var(--border);padding:1.5rem 0 .75rem;font-size:.6rem;letter-spacing:.18em;color:var(--stone)}.hero-scroll span{font-size:1.5rem}.latest-block{display:grid;background:var(--paper);color:var(--ink)}.latest-art img{width:100%;aspect-ratio:1;object-fit:cover}.latest-copy{padding:2rem 1.5rem}.latest-copy .eyebrow{color:var(--ink)}.latest-copy h2{font-size:clamp(3.4rem,7vw,7rem);max-width:8ch;margin-bottom:1.5rem}.latest-copy>p:not(.eyebrow){color:var(--ink);margin-bottom:1.5rem}.latest-copy .button-light{background:var(--ink);border-color:var(--ink);color:var(--paper)}.latest-copy .button-light:hover{background:var(--accent);color:var(--ink)}.latest-copy>.text-link{margin-top:1.5rem}.latest-copy>.text-link:hover{color:var(--ink);border-bottom-width:2px}.editorial-intro{border-top:var(--border);display:grid;gap:1rem}.editorial-intro>div{max-width:900px}.editorial-intro h2{margin-bottom:2rem}.editorial-intro p:not(.eyebrow){max-width:38rem;color:var(--stone);font-size:1.1rem}.section-heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:2.5rem}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:1rem}.video-grid{display:grid;gap:2.5rem var(--card-gap)}.video-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--paper);border:var(--border)}.video-frame picture,.video-frame img{width:100%;height:100%;object-fit:cover}.video-frame iframe{display:block;border:0;width:100%;height:100%}.video-play{position:absolute;inset:0;display:grid;place-items:center;background:color-mix(in srgb,var(--ink) 20%,transparent);border:0}.video-play span{display:grid;place-items:center;width:62px;height:62px;border:1px solid var(--paper);border-radius:50%;background:var(--ink);font-size:1.1rem;padding-left:.15rem}.video-play:hover span{background:var(--accent);color:var(--ink)}.video-card h3{font-size:1.8rem;line-height:1.1;margin:1rem 0 .5rem}.video-card>.text-link{font-size:.7rem;color:var(--stone)}.video-card>.text-link:hover{color:var(--paper)}.gallery-teaser{display:grid;gap:2rem;align-items:center;background:var(--paper);color:var(--ink)}.gallery-teaser .eyebrow{color:var(--ink)}.gallery-teaser h2{margin-bottom:2rem}.gallery-teaser picture{border:1px solid var(--ink)}.gallery-teaser img{width:100%}
/* Page titles and a native scrolling, card-snapped release catalogue. */
.page-intro{padding-top:var(--space-7);padding-bottom:var(--space-7)}.page-intro h1{margin-bottom:1.5rem}.page-intro>p:last-child{max-width:34rem;color:var(--stone);margin-bottom:0}.release-filter,.gallery-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}.release-filter button,.gallery-filters button{min-height:44px;border:var(--border);padding:.55rem 1.1rem;background:none;border-radius:var(--radius);font-size:.8rem}.release-filter [aria-pressed=true],.gallery-filters [aria-pressed=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}.release-carousel{--visible:1;position:relative}.release-track{display:flex;gap:var(--card-gap);overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--stone) var(--ink);padding-bottom:1rem;position:relative}.release-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.release-track.is-dragging a{pointer-events:none}.release-card{flex:0 0 calc((100% - (var(--visible) - 1)*var(--card-gap))/var(--visible));min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.cover-wrap{position:relative;overflow:hidden;background:var(--paper)}.cover-wrap img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform 500ms var(--ease)}.release-card:hover .cover-wrap img{transform:scale(1.025)}.cover-number{position:absolute;top:.75rem;left:.75rem;background:var(--ink);color:var(--paper);padding:.2rem .45rem;font-size:.6rem}.card-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem;margin-top:1rem;color:var(--stone);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.release-card h3{font-size:clamp(1.9rem,3vw,2.8rem);margin:.5rem 0 1rem;min-height:2.1em;overflow-wrap:anywhere}.release-links{display:flex;flex-wrap:wrap;gap:.25rem .8rem}.platform-button{font-size:.68rem;display:inline-flex;align-items:center;gap:.4rem;min-height:44px;border-bottom:1px solid var(--stone)}.platform-button:hover{color:var(--accent);border-color:var(--accent)}.slider-footer{display:flex;flex-direction:column;gap:1.25rem;padding-top:1rem}.slider-nav{display:flex;align-items:center;gap:1rem}.slider-status{font-size:.72rem;color:var(--stone);min-width:6rem;text-align:center;margin:0}.slider-dots{display:flex;flex-wrap:wrap;gap:0}.slider-dots button{min-width:30px;min-height:44px;background:none;border:0;padding:.5rem;position:relative}.slider-dots button:after{content:'';display:block;width:6px;height:6px;border-radius:50%;background:var(--stone);transition:transform 200ms}.slider-dots [aria-current=true]:after{background:var(--accent);transform:scale(1.5)}.filter-empty{padding:2rem;border:var(--border)}.catalogue-note{margin-top:2rem;max-width:42rem}.catalogue-section{border-top:var(--border)}
/* Biography: portrait, long-form story, sound, timeline, quote slot. */
.about-hero{display:grid;gap:2.5rem;align-items:center}.about-hero h1{margin-bottom:2rem}.about-hero .lede{margin-bottom:.6rem}.origin{font-size:.8rem;color:var(--stone);margin:0}.about-hero img{width:100%}.bio-section{background:var(--paper);color:var(--ink);display:grid;gap:1.5rem}.bio-section .eyebrow,.bio-section .placeholder{color:var(--ink)}.bio-section h2{margin-bottom:2rem}.bio-section>div>p{max-width:48rem}.bio-notes{display:grid;gap:1.5rem;margin-block:2.5rem}.bio-notes h3{margin-bottom:1rem}.bio-section .source-note{color:var(--ink);font-size:.72rem;margin-top:2rem}.source-note a{text-decoration:underline}.sound-section{display:grid;gap:2rem;border-bottom:var(--border)}.sound-section>div:last-child{align-self:center}.sound-section>div>p:first-child{font-size:1.2rem}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:grid;grid-template-columns:5rem 1fr;gap:1rem;border-top:var(--border);padding:1.5rem 0}.timeline-year{font:600 2.5rem/1 var(--font-display);color:var(--accent)}.timeline p{max-width:44rem;font-size:.9rem;margin:0}.milestone-slot{margin-top:1.5rem}.quote-section{border-top:var(--border);border-bottom:var(--border)}.quote-slot{max-width:850px;margin-block:2rem}.quote-slot .placeholder:first-child{font-family:var(--font-display);font-size:clamp(2rem,5vw,4rem);line-height:1.2;color:var(--paper)}.booking-section h2{max-width:11ch;margin-bottom:2rem}
/* Three supplied portraits; categories appear only when the data warrants them. */
.gallery-grid{display:grid;grid-template-columns:1fr;gap:2rem var(--card-gap)}.gallery-item{margin:0;min-width:0}.gallery-open{display:block;position:relative;overflow:hidden;background:var(--paper)}.gallery-open img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform 500ms var(--ease)}.gallery-open:hover img{transform:scale(1.025)}.gallery-item figcaption{display:flex;gap:1.25rem;margin-top:1rem;font-size:.73rem;color:var(--stone)}.gallery-item figcaption>span{color:var(--accent)}.gallery-expand{position:absolute;right:.75rem;bottom:.75rem;width:44px;height:44px;display:grid;place-items:center;background:var(--paper);color:var(--ink);font-size:1.3rem}.lightbox{border:0;margin:0;padding:1rem;background:var(--ink);color:var(--paper);width:100vw;height:100dvh;max-width:none;max-height:none;position:fixed;inset:0}.lightbox::backdrop{background:var(--ink)}.lightbox[open]{display:flex;flex-direction:column}.lightbox-top{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.lightbox-top p{font-size:.8rem;color:var(--stone);margin:0}.lightbox-close{min-height:48px;background:none;border:var(--border);padding:.5rem 1rem;font-size:.8rem}.lightbox-close span{margin-left:1rem;font-size:1.4rem}.lightbox-panel{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:center;margin:auto;width:100%;max-width:1100px}.lightbox-panel figure{order:-1;flex:0 0 100%;margin:0;text-align:center}.lightbox-panel img{max-height:65dvh;width:auto;max-width:100%;object-fit:contain;margin:auto;touch-action:pan-y}.lightbox-panel figcaption{font-size:.8rem;margin:1rem 0;color:var(--stone)}.lightbox-panel>.circle-button{margin:.5rem}.lightbox-error{color:var(--paper);font-size:.9rem}
/* One footer across every page. */
.site-footer{border-top:var(--border);padding:var(--space-8) var(--page-gutter) var(--space-6);max-width:var(--content-width);margin:auto}.footer-top{display:grid;gap:2rem}.footer-top h2{font-size:clamp(3.3rem,8vw,7rem);margin-bottom:1.5rem}.footer-top .placeholder{display:inline-block;margin-bottom:0}.booking-link{font-size:1.2rem;border-bottom:1px solid var(--accent)}.footer-socials{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.5rem;align-self:end}.social-link{display:flex;gap:.7rem;align-items:center;min-height:48px;font-size:.75rem}.social-link svg{width:23px;height:23px;flex-shrink:0}.social-link:hover{color:var(--accent)}.footer-bottom{display:flex;flex-direction:column;gap:.7rem;border-top:var(--border);margin-top:3rem;padding-top:1.5rem;font-size:.65rem;color:var(--stone)}.footer-bottom a{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center}
/* Reveal is progressive enhancement: content is always visible if scripts fail. */
[data-reveal]{opacity:1;transform:none}.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity 650ms var(--ease),transform 650ms var(--ease)}.reveal-ready.is-visible{opacity:1;transform:none}
@media(min-width:600px){.release-carousel{--visible:2}.video-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item:first-child{grid-row:span 2}.gallery-item:first-child .gallery-open img{aspect-ratio:1/1.8;object-position:center}.bio-notes{grid-template-columns:1fr 1fr}.slider-footer{flex-direction:row;justify-content:space-between;align-items:center}.lightbox-panel{flex-wrap:nowrap}.lightbox-panel figure{order:0;flex:1}.lightbox-panel img{max-height:74dvh}.lightbox{padding:2rem}.footer-bottom{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center}}
@media(min-width:800px){.section{padding-top:var(--space-9);padding-bottom:var(--space-9)}.section-tight{padding-top:0}.site-header{flex-wrap:nowrap}.site-header nav,.site-header[data-enhanced] nav{display:flex;width:auto;padding:0;gap:1.5rem}.site-header[data-enhanced] nav a{font-size:.78rem;padding:.6rem .15rem}.brand img{width:150px;height:30px}.home-hero{padding-top:3rem}.hero-title{position:relative;z-index:2}.hero-title .eyebrow{margin-bottom:1.5rem}.hero-composition{grid-template-columns:.7fr 1fr;gap:3rem;margin-top:-1.25rem}.hero-photo{margin-top:0}.hero-note{padding-bottom:1rem;position:relative}.hero-note>p{font-size:clamp(1.4rem,2.6vw,2.4rem)}.vertical-label{display:block;font-size:.55rem;letter-spacing:.18em;color:var(--stone);margin-bottom:auto;padding-block:3rem}.hero-photo img{aspect-ratio:1.14;object-position:50% 40%}.latest-block{grid-template-columns:1fr 1.05fr;align-items:stretch}.latest-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,5rem)}.latest-copy .button-row{gap:.7rem}.latest-copy .button{font-size:.7rem;gap:1rem}.editorial-intro{grid-template-columns:1fr 3fr;gap:3rem}.editorial-intro>.eyebrow{padding-top:.8rem}.gallery-teaser{grid-template-columns:1fr 1fr;gap:3rem}.gallery-teaser img{aspect-ratio:1.15;object-fit:cover}.page-intro{padding-top:var(--space-8);padding-bottom:var(--space-8)}.about-hero{grid-template-columns:1.15fr 1fr}.about-hero picture{align-self:stretch}.about-hero img{height:100%;object-fit:cover;object-position:center;min-height:450px}.bio-section{grid-template-columns:1fr 3fr;gap:3rem}.sound-section{grid-template-columns:1.3fr 1fr;gap:3rem}.timeline li{grid-template-columns:1fr 3fr;gap:3rem;padding-block:2rem}.timeline-year{font-size:4rem}.timeline p{font-size:1.1rem}.footer-top{grid-template-columns:1.5fr 1fr}.footer-socials{justify-self:end;gap:1rem 2.5rem}.gallery-grid{grid-template-columns:1.1fr 1fr;gap:2.5rem}.gallery-item:first-child .gallery-open img{aspect-ratio:1/1.67}}
@media(min-width:1000px){.release-carousel{--visible:3}.hero-note .button-row{gap:1.5rem}}
@media(min-width:1440px){.release-carousel{--visible:4}.hero-photo img{aspect-ratio:1.3}.hero-note{padding-bottom:2rem}.latest-copy h2{font-size:7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-ready{opacity:1;transform:none}}

.arrow-icon{width:16px;height:16px;flex-shrink:0;display:inline-block;vertical-align:middle}
/* Restored artist destinations and editorial coverage. */
.hero-socials{display:flex;flex-wrap:wrap;gap:.15rem 1.1rem;margin-top:1.5rem;max-width:31rem}.hero-socials .social-link{font-size:.68rem;color:var(--stone)}.hero-socials .social-link:hover{color:var(--accent)}.hero-socials .social-link svg{width:18px;height:18px}.footer-socials{min-width:0}.homepage-player{grid-column:1/-1;min-width:0;background:var(--ink);color:var(--paper);border:var(--border);padding:1.25rem}.player-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:1rem}.player-heading .eyebrow{margin:0;color:var(--stone)}.player-heading .text-link{font-size:.7rem}.apple-player{display:block;width:100%;height:360px;border:0;border-radius:8px;background:var(--ink)}.news-section{border-top:var(--border)}.news-grid{display:grid;gap:1rem var(--card-gap)}.news-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;border:var(--border);padding:1.5rem;min-width:0;transition:border-color var(--duration),background var(--duration)}.news-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--paper) 3%,var(--ink))}.news-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;color:var(--stone);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;padding-right:1.5rem;margin-bottom:1.5rem}.news-number{position:absolute;top:1.5rem;right:1.5rem;color:var(--accent);font-size:.65rem}.news-card h3{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.08;margin:0 0 1.25rem;max-width:22ch}.news-date{font-size:.72rem;color:var(--stone);margin-bottom:1.5rem}.news-card .text-link{margin-top:auto;font-size:.75rem}.booking-link{overflow-wrap:anywhere}
@media(min-width:700px){.news-grid{grid-template-columns:1fr 1fr}.news-card{padding:2rem}.news-number{top:2rem;right:2rem}.apple-player{height:300px}.homepage-player{padding:1.5rem 2rem}}
/* Cinematic portrait slides: compositor-friendly opacity and transform only. */
.home-hero .hero-title{animation:masthead-enter 900ms var(--ease) both}.home-hero .hero-note>p,.home-hero .hero-note>.button-row,.hero-socials{animation:copy-enter 850ms var(--ease) both}.home-hero .hero-note>p{animation-delay:100ms}.home-hero .hero-note>.button-row{animation-delay:200ms}.hero-socials{animation-delay:300ms}.hero-photo{position:relative;aspect-ratio:1;background:var(--ink);isolation:isolate}.hero-visual{position:absolute;inset:0;overflow:hidden;touch-action:pan-y}.hero-frame{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity 1000ms var(--ease);will-change:opacity}.hero-frame.is-active{opacity:1;pointer-events:auto;z-index:1}.hero-frame picture,.hero-frame img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.hero-frame--1 img{object-position:50% 40%}.hero-frame--2 img{object-position:50% 25%}.hero-frame--3 img{object-position:50% 35%}.hero-frame--1.is-active img{animation:portrait-pan 8s linear both}.hero-frame--2.is-active img{animation:portrait-rise 8s linear both}.hero-frame--3.is-active img{animation:portrait-zoom 8s linear both}.hero-photo:not(.is-playing) .hero-frame img{animation-play-state:paused}.hero-photo-controls{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:.25rem;padding:.5rem .75rem;background:color-mix(in srgb,var(--ink) 90%,transparent);color:var(--paper)}.hero-photo-dots,.hero-photo-actions{display:flex;align-items:center;gap:.1rem}.hero-photo-controls button{display:grid;place-items:center;min-width:36px;min-height:44px;padding:.4rem;border:0;background:transparent;font-size:.65rem;line-height:1}.hero-photo-dots button{color:var(--stone);position:relative}.hero-photo-dots [aria-pressed=true]{color:var(--accent)}.hero-photo-dots [aria-pressed=true]:after{content:'';position:absolute;bottom:.3rem;left:.7rem;right:.7rem;height:2px;background:var(--accent)}.hero-photo-actions [data-hero-play]{min-width:55px;font-size:.65rem}.hero-photo-actions [data-hero-prev],.hero-photo-actions [data-hero-next]{font-size:1.1rem}.hero-photo-controls button:hover{color:var(--accent)}.hero-photo-progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--stone);z-index:4;pointer-events:none}.hero-photo-progress span{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}.is-playing .hero-photo-progress span{animation:portrait-progress 8s linear both}.reveal-ready[data-reveal=left]{transform:none}.reveal-ready[data-reveal=right]{transform:none}.reveal-ready.is-visible[data-reveal]{transform:none}.news-card:nth-child(2),.video-card:nth-child(2){transition-delay:100ms}.news-card:nth-child(3),.video-card:nth-child(3){transition-delay:160ms}.news-card:nth-child(4),.video-card:nth-child(4){transition-delay:220ms}
@keyframes masthead-enter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes copy-enter{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}@keyframes portrait-pan{from{transform:scale(1.065) translateX(-1%)}to{transform:scale(1.02) translateX(1%)}}@keyframes portrait-rise{from{transform:scale(1.09) translateY(1.5%)}to{transform:scale(1.035) translateY(-1%)}}@keyframes portrait-zoom{from{transform:scale(1.025)}to{transform:scale(1.10)}}@keyframes portrait-progress{to{transform:scaleX(1)}}
@media(min-width:800px){.hero-photo{aspect-ratio:1.14}.hero-photo-controls{padding:.65rem 1rem}.hero-photo-dots button{min-width:44px}.hero-frame img{aspect-ratio:auto!important}}
@media(min-width:1440px){.hero-photo{aspect-ratio:1.3}}
@media(prefers-reduced-motion:reduce){.home-hero .hero-title,.home-hero .hero-note>p,.home-hero .hero-note>.button-row,.hero-socials,.hero-frame img{animation:none!important}.hero-frame{transition:none!important;will-change:auto}.reveal-ready[data-reveal]{opacity:1;transform:none!important}.hero-photo-progress span{animation:none!important}}

/* Slide section content inside its own clipping boundary, preserving document width. */
.section[data-reveal=left],.section[data-reveal=right]{overflow:clip}
.reveal-ready[data-reveal=left]>*{transform:translateX(-25px);transition:transform 650ms var(--ease)}
.reveal-ready[data-reveal=right]>*{transform:translateX(25px);transition:transform 650ms var(--ease)}
.reveal-ready.is-visible[data-reveal]>*{transform:none}
@media(prefers-reduced-motion:reduce){.reveal-ready[data-reveal]>*{transform:none!important}}


/* Keep the restored portrait and its bag fully visible in the About hero. */
.about-hero img.about-bag-portrait{width:100%;height:auto;min-height:0;aspect-ratio:1;object-fit:contain}
.footer-label{display:flex;align-items:center;gap:1rem;color:var(--paper);font-size:.85rem;letter-spacing:.04em}
.footer-label img{width:64px;height:64px;object-fit:contain;background:#fff;padding:5px;border-radius:2px;flex-shrink:0}
.footer-credit{display:inline-flex;align-items:center;gap:.4rem}
.footer-credit a{text-decoration:underline;text-underline-offset:3px}
.footer-credit a:hover{color:var(--paper)}
/* The one release catalogue drifts rightward without cloning its cards. */
.release-track.is-auto-enabled{scroll-snap-type:none;scroll-behavior:auto;overflow-anchor:none}
[data-slider-play][aria-pressed=true]{color:var(--accent);border-color:var(--accent)}
/* Page content enters once; images get a separate, gentle lift. */
.reveal-ready{transition-duration:850ms;transition-timing-function:cubic-bezier(.16,1,.3,1)}
.reveal-ready[data-reveal=left]>*,.reveal-ready[data-reveal=right]>*{transition-duration:850ms;transition-timing-function:cubic-bezier(.16,1,.3,1)}
.reveal-ready[data-reveal=left]>*{transform:translateX(-32px)}
.reveal-ready[data-reveal=right]>*{transform:translateX(32px)}
.reveal-ready.is-visible[data-reveal]>*{transform:none}
@media(prefers-reduced-motion:reduce){
 .reveal-ready,.reveal-ready[data-reveal]>*{opacity:1;transform:none!important;transition:none!important}
}
