@font-face{font-family:EditorialFallback;src:local('Georgia')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#F5F6E6;color:#0F1820;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #63493E;outline-offset:6px}button{border:0}img{display:block;width:100%;height:auto}p{line-height:1.65}h1,h2,p,figure{margin:0}h1,h2{font-weight:500;letter-spacing:-.065em;line-height:.99}h1{font-size:clamp(58px,6.6vw,106px)}h2{font-size:clamp(44px,4.6vw,72px)}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}h1 em{color:#63493E}.wrap{max-width:1440px;width:calc(100% - 104px);margin:auto}.header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d1cec4}.wordmark{font-size:38px;letter-spacing:-3px;font-weight:800;display:inline-flex;align-items:baseline}.wordmark span{font-size:23px;letter-spacing:-1.3px;margin-left:5px}.wordmark sup{font-size:10px;letter-spacing:0;align-self:flex-start;padding-top:9px;margin-left:3px}.header nav{display:flex;gap:36px;align-items:center;font-size:13px}.header nav a{padding:10px 0}.nav-contact{margin-left:25px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:55px;padding-top:48px;padding-bottom:52px}.hero-copy{padding-top:19px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:600;line-height:1.5}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4B5320;margin-right:8px;vertical-align:middle}.hero h1{margin:42px 0 25px}.intro{font-size:17px;color:#64635b;margin-bottom:28px}.button{padding:19px 24px;font-size:12px;display:inline-flex;gap:38px;align-items:center}.button span{font-size:20px;line-height:12px}.dark{background:#0F1820;color:#fff}.button:hover{background:#63493E;color:white}.hero-note{display:flex;align-items:center;gap:18px;margin-top:55px}.mini-mark{font-size:34px;letter-spacing:-4px;font-weight:bold;border-right:1px solid #b6b3a7;padding-right:20px}.hero-note p{font-size:10px;letter-spacing:.7px;color:#67675c;line-height:1.6}.hero-image{position:relative;min-height:580px;overflow:hidden;background:#493e31}.hero-image>img{height:100%;position:absolute;object-fit:cover;object-position:center 43%;filter:saturate(.65)}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#171c16aa,transparent 50%)}.hero-image figcaption{position:absolute;z-index:1;bottom:30px;left:30px;color:#fff}.hero-image figcaption>span{font-size:9px;letter-spacing:1.6px;opacity:.8}.play-film{display:flex;align-items:center;gap:13px;background:transparent;color:#fff;margin-top:15px;padding:0;font-size:12px}.play-icon{border:1px solid #ffffff88;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:10px}.image-index{position:absolute;right:22px;top:24px;z-index:2;font-size:9px;letter-spacing:1.5px;color:#fff;writing-mode:vertical-rl}.ticker{background:#4B5320;color:#F5F6E6;display:flex;justify-content:space-around;gap:40px;white-space:nowrap;overflow:hidden;padding:20px;font-size:11px;letter-spacing:2px}.section{padding-top:88px;padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:47px}.small-label{font-size:11px;color:#6c6b61}#release-content{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.release-art{aspect-ratio:1;background:#C5D1D8;color:#4B5320;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:28px;overflow:hidden;background-image:repeating-radial-gradient(ellipse at 50% 50%,transparent 0,transparent 4px,#72744910 5px,transparent 6px)}.art-number{font-size:clamp(130px,20vw,310px);font-weight:900;letter-spacing:-.12em;line-height:1;transform:rotate(-11deg);padding-right:.12em;align-self:center}.art-bottom{display:flex;justify-content:space-between;font-size:10px;font-weight:600;letter-spacing:1.2px}.art-bottom>span{font-size:24px}.release-copy h2{margin:25px 0}.release-copy>p:not(.eyebrow){font-size:15px;max-width:370px;color:#65645b}.release-copy .release-note{margin-top:16px;font-size:13px!important}.orange{color:#63493E}.text-link{background:none;padding:0 0 12px;border-bottom:1px solid currentColor;font-size:12px;display:inline-flex;justify-content:space-between;gap:35px;margin-top:30px}.text-link:hover{color:#63493E}.text-link span{font-size:20px;line-height:15px}.story{background:#e9ecdc}.story-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;margin-bottom:45px;align-items:end}.story-copy p{max-width:440px;font-size:15px;color:#65645b}.story-copy p+p{margin-top:18px}.community img{aspect-ratio:2.3;object-fit:cover;object-position:center 60%;filter:saturate(.7)}.community figcaption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.6px;margin-top:16px}.session-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}.session-grid p:not(.session-date){font-size:15px;color:#65645b;margin-top:28px;max-width:330px}.session-date{font-size:9px;letter-spacing:1.6px;color:#77776b;margin-top:55px}.film-card{padding:0;position:relative;background:#0F1820;height:460px;overflow:hidden;color:#fff}.film-card img{height:100%;object-fit:cover;object-position:50% 35%;filter:brightness(.75) saturate(.5);transition:transform .5s}.film-card:hover img{transform:scale(1.025)}.film-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;border:1px solid #ffffffaa;display:grid;place-items:center;font-size:18px;background:#ffffff15}.film-caption{position:absolute;bottom:25px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.4px}.connect{position:relative;overflow:hidden;background:#4B5320;color:#F5F6E6;padding:80px 0}.connect .wrap{position:relative;z-index:1}.connect h2{margin:28px 0 30px;font-size:clamp(56px,6vw,90px)}.light{background:#F5F6E6;color:#4B5320}.connect p:last-child{font-size:11px;margin-top:22px;color:#cfcebf}.connect-art{position:absolute;right:5%;top:20px;font-size:390px;letter-spacing:-60px;font-weight:900;transform:rotate(-12deg);color:#c9ccac12;user-select:none}footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;padding:40px 0;gap:28px}footer p,footer>a:not(.wordmark){font-size:11px}footer small{font-size:10px;color:#77776b;grid-column:1/-1;border-top:1px solid #d1cec4;padding-top:24px}dialog{background:#161b15;color:#F5F6E6;border:1px solid #6e7165;max-width:900px;width:92vw;max-height:92dvh;padding:20px}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.dialog-top h2{font:12px Arial;letter-spacing:1px}.dialog-top button{background:transparent;color:#fff;padding:10px;font-size:12px}dialog video{display:block;max-height:70dvh;width:100%;background:black}.film-description{font-size:11px;color:#c3c6ba;margin-top:12px}.skip{position:fixed;top:-100px;left:15px;background:#fff;padding:15px;z-index:10}.skip:focus{top:10px}.song-list{display:grid;gap:24px;grid-column:1/-1}.song-card{border-top:1px solid #b5b5a7;padding:24px 0;display:flex;gap:30px;align-items:center}.song-card img{width:120px;aspect-ratio:1;object-fit:cover}.song-card h3{font-size:25px;font-weight:500;margin:5px 0}.song-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:15px}.song-links a{border-bottom:1px solid;font-size:13px}.song-page{max-width:820px;padding:80px 0}.song-page h1{font-size:64px;margin:25px 0}.lyrics{white-space:pre-wrap;font:18px/1.8 Georgia,serif;margin:45px 0}.song-meta{font-size:13px;color:#68695d}.empty-note{padding:20px 0}.no-scroll{overflow:hidden}
@media(min-width:1600px){.hero-image{min-height:660px}}@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.header nav{gap:22px}.nav-contact{margin-left:0}.hero{gap:30px}.hero-image{min-height:540px}.hero h1{font-size:70px}.hero-note{margin-top:35px}#release-content,.story-copy,.session-grid{gap:45px}.release-art{padding:20px}}@media(max-width:720px){.wrap{width:calc(100% - 40px)}.header{height:82px;position:relative}.wordmark{font-size:34px}.wordmark span{font-size:21px}.menu-toggle{display:flex;gap:18px;background:none;padding:12px 0;font-size:12px}.header nav{display:none;position:absolute;left:-20px;right:-20px;top:81px;background:#F5F6E6;z-index:5;padding:20px;box-shadow:0 12px 20px #0001}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:10px}.hero{grid-template-columns:1fr;gap:32px;padding-top:32px;padding-bottom:32px}.hero-copy{padding-top:0}.hero h1{font-size:clamp(56px,11.5vw,82px);margin:28px 0 20px}.intro{font-size:16px}.hero-note{display:none}.hero-image{min-height:440px;max-height:540px;aspect-ratio:1.1}.hero-image>img{object-position:50% 40%}.ticker{justify-content:flex-start;gap:30px;padding:17px 20px;font-size:9px}.section{padding-top:55px;padding-bottom:55px}.section-heading{margin-bottom:30px;gap:15px}.small-label{font-size:10px;text-align:right}.eyebrow{font-size:9px;letter-spacing:1.3px}#release-content,.story-copy,.session-grid{grid-template-columns:1fr;gap:35px}.release-art{max-width:460px;width:100%;margin:auto}.art-number{font-size:65vw;max-height:280px}.release-copy h2{margin-top:18px}.story-copy{margin-bottom:32px}.community img{aspect-ratio:1.3;object-position:center}.community figcaption{font-size:8px;letter-spacing:1px}.film-card{height:420px}.session-date{margin-top:28px}.connect{padding:55px 0}.connect-art{font-size:280px;right:-100px;top:80px}.connect h2{font-size:58px}.connect p:last-child{max-width:240px}footer{grid-template-columns:1fr auto;gap:22px}footer p{grid-row:2;grid-column:1/-1}footer>a:not(.wordmark){font-size:10px}.song-page{padding:40px 0}.song-page h1{font-size:48px}.song-card{align-items:flex-start;gap:20px}.song-card img{width:80px}.song-card h3{font-size:22px}dialog{padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.header,.connect,footer,.song-links{display:none}.song-page{padding:0;max-width:none}.lyrics{color:#000}body{background:#fff}}
@media(max-width:720px){.hero-image{width:100%;min-width:0;aspect-ratio:auto;height:440px}.hero>*{min-width:0}}

.announcement{background:#4B5320;color:#F5F6E6;text-align:center;padding:13px 20px;font-size:11px;letter-spacing:.8px}.announcement span{margin-left:20px}.song-resources{margin:40px 0}.song-resources h2{font-size:28px;letter-spacing:-1px}

/* Brandbook: Apple Garamond Light + Louis George Cafe, page 13. */
@font-face{font-family:AppleGaramond;src:url('/assets/apple-garamond-light.ttf') format('truetype');font-weight:300 500;font-display:swap}
@font-face{font-family:AppleGaramond;src:url('/assets/apple-garamond-light-italic.ttf') format('truetype');font-style:italic;font-weight:300 500;font-display:swap}
@font-face{font-family:LouisGeorge;src:url('/assets/louis-george-cafe.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:LouisGeorge;src:url('/assets/louis-george-cafe-bold.ttf') format('truetype');font-weight:600 800;font-display:swap}
:root{--noir:#0F1820;--earth:#63493E;--army:#4B5320;--wind:#C5D1D8;--white:#F5F6E6}
body{font-family:LouisGeorge,Arial,sans-serif;background:var(--white);color:var(--noir)}
h1,h2{font-family:AppleGaramond,Georgia,serif;font-weight:300;letter-spacing:-.025em;line-height:.98}em{font-family:AppleGaramond,Georgia,serif;letter-spacing:-.025em}h1{font-size:clamp(70px,8.2vw,126px)}h2{font-size:clamp(50px,5.4vw,80px)}h1 em{color:var(--earth)}
.header{height:138px}.wordmark{display:block;font-size:initial;letter-spacing:normal;font-weight:400;padding:24px}.wordmark img{width:188px;height:auto}.header .wordmark{margin-left:-24px}.header nav{font-size:14px}.hero{gap:55px;padding-top:42px}.hero h1{margin:35px 0 28px}.intro{font-size:19px}.hero-note{margin-top:45px;gap:25px}.handwritten{font-family:AppleGaramond,Georgia,serif;font-size:27px;font-style:italic;transform:rotate(-7deg);color:var(--earth);border-right:1px solid #63493e55;padding-right:24px}.hero-note p{font-size:11px}.hero-image{min-height:590px}.hero-image .floral-image{object-position:center;filter:none}.hero-image:after{background:linear-gradient(0deg,#0f182066,transparent 40%)}.hero-image-words{position:absolute;top:23%;left:9%;right:5%;font:300 clamp(50px,5.5vw,86px)/.94 AppleGaramond,Georgia,serif;color:var(--white);letter-spacing:-2px;z-index:1;text-shadow:0 1px 14px #0f182033}.hero-image figcaption{left:9%;bottom:35px}.photo-link{display:block;color:var(--white);margin-top:13px;font-size:14px}.ticker{font-size:12px;letter-spacing:1.8px}.release-art{background:var(--wind);background-image:none;padding:30px;aspect-ratio:1;color:var(--noir)}.release-collage{position:relative;padding:12px 0 20px}.release-collage>img{border:8px solid var(--white);transform:rotate(-6deg);box-shadow:0 10px 20px #0f182016;filter:saturate(.7) sepia(.12);aspect-ratio:1.5;object-fit:cover}.paper-note{font:italic 32px/1.05 AppleGaramond,Georgia,serif;position:absolute;right:-9px;bottom:-3px;background:var(--white);padding:20px 24px;transform:rotate(7deg);box-shadow:0 4px 8px #0f182014;color:var(--earth)}.release-copy>p:not(.eyebrow),.story-copy p,.session-grid p:not(.session-date){font-size:17px}.story{background:#e9ecdc}.community img{filter:saturate(.7) sepia(.12)}.connect{background:var(--army)}.connect-art{font-family:AppleGaramond,Georgia,serif;letter-spacing:-25px;font-weight:300}.connect h2{font-size:clamp(65px,7.5vw,110px)}.lyrics{font-family:LouisGeorge,Arial,sans-serif}.song-page h1{font-size:78px}.song-card h3{font-family:AppleGaramond,Georgia,serif;font-size:38px}.song-resources h2{font-family:LouisGeorge,Arial,sans-serif;font-size:20px}.button,.text-link{font-size:14px}.section-heading .eyebrow{font-size:11px}.small-label{font-size:12px}footer .wordmark{margin-left:-24px}footer p{font-size:13px}.dialog-top h2{font-family:LouisGeorge,Arial,sans-serif}.wordmark img{background:var(--white)}
@media(max-width:1050px){.hero h1{font-size:82px}.hero-image{min-height:560px}.hero{gap:30px}.header nav{gap:20px}.wordmark img{width:170px}.hero-image-words{font-size:64px}}
@media(max-width:720px){.header{height:112px}.header nav{top:111px}.wordmark{padding:20px}.header .wordmark,footer .wordmark{margin-left:-20px}.wordmark img{width:155px}.hero{padding-top:30px}.hero h1{font-size:clamp(66px,15vw,95px);margin:28px 0 22px}.intro{font-size:18px}.hero-image{height:460px;min-height:0}.hero-image-words{font-size:70px;top:25%}.hero-note{display:none}.release-art{padding:25px}.paper-note{font-size:27px;padding:15px 18px}.release-collage{padding:5px 0 30px}.connect h2{font-size:70px}.release-copy h2{font-size:54px}.story-copy h2,.session-grid h2{font-size:58px}.song-page h1{font-size:58px}.announcement{font-size:10px}.announcement span{display:block;margin:5px 0 0}}


/* A tactile cassette, using the brandbook palette rather than a digital clock. */
.release-countdown { margin: 28px 0 22px; max-width: 440px; }
.cassette { position: relative; padding: 20px 22px 17px; background: var(--earth); color: var(--white); border: 1px solid #0f182066; border-radius: 13px; box-shadow: inset 0 0 0 4px #f5f6e612, 0 12px 24px #0f182013; transform: rotate(-2deg); transition: transform .65s cubic-bezier(.2,.7,.2,1), box-shadow .65s; }
.cassette-label { background: var(--white); color: var(--noir); padding: 14px 15px 12px; border-radius: 5px 5px 1px 1px; border-bottom: 5px solid var(--army); }
.cassette-top, .cassette-bottom { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:8px; letter-spacing:1.1px; }
.cassette-title { font:italic clamp(24px,2.4vw,34px)/1.1 AppleGaramond,Georgia,serif; margin:14px 0 9px; color:var(--earth); }
.cassette-date { font-size:9px; letter-spacing:1px; line-height:1.5; }
.tape-window { display:flex; align-items:center; justify-content:space-between; gap:10px; background:var(--noir); border:1px solid #f5f6e633; border-radius:35px; padding:10px 16px; margin:15px 7px 13px; box-shadow:inset 0 3px 8px #0005; }
.tape-reel { width:46px; height:46px; flex-shrink:0; border:8px solid #c5d1d855; border-radius:50%; background:repeating-conic-gradient(var(--wind) 0deg 24deg, transparent 24deg 60deg); position:relative; }
.tape-reel::after { content:''; position:absolute; inset:9px; border-radius:50%; background:var(--noir); }
.tape-counter { text-align:center; min-width:70px; }
.tape-counter > span { display:block; font:300 36px/1 AppleGaramond,Georgia,serif; font-variant-numeric:tabular-nums; }
.tape-counter small { display:block; font-size:7px; letter-spacing:1.4px; margin-top:4px; }
.cassette-bottom { font-size:7px; letter-spacing:.8px; min-height:24px; }
.tape-head { display:flex; justify-content:space-between; align-items:center; width:90px; height:27px; padding:0 15px; background:#0f182033; border:1px solid #f5f6e622; border-radius:8px 8px 0 0; }
.tape-head i { width:7px; height:7px; border-radius:50%; background:var(--noir); }
.cassette-screw { position:absolute; font:12px/1 monospace; color:#f5f6e688; }
.screw-tl { top:5px; left:7px; } .screw-tr { top:5px; right:7px; } .screw-bl { bottom:5px; left:7px; } .screw-br { bottom:5px; right:7px; }
.release-copy .release-countdown .release-note { margin:18px 0 0; color:var(--earth); font-size:13px; }
.calendar-link { margin-top:16px; }
.button, .text-link span, .photo-link, .film-play { transition:transform .35s ease, background-color .35s ease, color .35s ease; }
.button:hover { transform:translateY(-3px); } .text-link:hover span { transform:translate(3px,-3px); }
.film-card:hover .film-play { transform:translate(-50%,-50%) scale(1.08); background:#f5f6e633; }
.header nav a { position:relative; } .header nav a::after { content:''; position:absolute; left:0; right:0; bottom:3px; height:1px; background:var(--earth); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.header nav a:hover::after, .header nav a:focus-visible::after { transform:scaleX(1); }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .85s ease var(--reveal-delay,0ms), transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms); }
.reveal.is-visible { opacity:1; transform:translateY(0); }
@keyframes tape-turn { to { transform:rotate(360deg); } }
@media (hover:hover) and (prefers-reduced-motion:no-preference) { .cassette:hover { transform:rotate(0); box-shadow:inset 0 0 0 4px #f5f6e612, 0 16px 30px #0f182020; } .cassette:hover .tape-reel { animation:tape-turn 2s ease-in-out 1; } }
@media(max-width:720px) { .release-countdown { margin-top:28px; max-width:440px; } .cassette { margin:0 5px; padding:18px 16px 14px; } .cassette-title { font-size:29px; } .tape-window { margin-left:3px; margin-right:3px; } .release-copy>p:not(.eyebrow) { max-width:none; } }
@media(prefers-reduced-motion:reduce) { .reveal { opacity:1; transform:none; } *, *::before, *::after { animation:none!important; transition:none!important; } }
@media print { .reveal { opacity:1; transform:none; } }

/* Warm studio photographs: retain skin tones and detail under a fine film texture. */
.release-collage>img { filter:saturate(.88) sepia(.09) contrast(.94) brightness(1.03); }
.community-image { position:relative; overflow:hidden; background:var(--earth); }
.community-image img { filter:saturate(.88) sepia(.08) contrast(.94) brightness(1.03); }
.community-image::after, .release-art::after, .film-card::after { content:''; position:absolute; inset:0; background-image:url('/assets/grain.svg'); background-size:180px 180px; opacity:.14; mix-blend-mode:soft-light; pointer-events:none; }
.community-image::before { content:''; position:absolute; inset:0; z-index:1; box-shadow:inset 0 0 65px #63493e15; pointer-events:none; }
.release-art::after { opacity:.10; }
.film-card img { filter:brightness(.88) saturate(.86) sepia(.08) contrast(.94); }
.film-card::after { opacity:.18; }
.film-play, .film-caption { z-index:1; }
dialog video { filter:saturate(.9) sepia(.07) contrast(.96); }

/* Rehearsal footage already has warm practical lighting; avoid doubling the tint. */
.release-collage>img { filter:saturate(.92) contrast(.97) brightness(1.02); }

/* Brandbook audit: preserve the full mark and reserve more than one W-height. */
.wordmark { padding:36px; }
.header .wordmark, footer .wordmark { margin-left:0; }
.header { min-height:152px; height:auto; }
.story { background:color-mix(in srgb,var(--army) 8%,var(--white)); }
.intro, .release-copy>p:not(.eyebrow), .story-copy p, .session-grid p:not(.session-date), .small-label, .hero-note p, .session-date, footer small { color:color-mix(in srgb,var(--noir) 72%,var(--white)); }
.story-copy .story-values { color:var(--earth); }
.dark { color:var(--white); }
.button:hover { color:var(--white); }
.header, footer small { border-color:color-mix(in srgb,var(--earth) 24%,var(--white)); }
.connect p:last-child { color:var(--white); max-width:420px; line-height:1.7; }
@media(max-width:720px) {
  .wordmark { padding:30px; }
  .header .wordmark, footer .wordmark { margin-left:0; }
  .header { min-height:124px; }
  .header nav { top:123px; }
  footer { column-gap:10px; }
  .story-copy p { max-width:none; }
}

/* Landscape rehearsal composition: retain the team across the frame. */
.film-card { height:auto; aspect-ratio:16/9; }
.film-card img { object-position:center; }
dialog video { aspect-ratio:16/9; }

/* Moodboard details: a park postcard, paper tape, and a quiet values sticker. */
html { scroll-padding-top:0; }
main[id], section[id] { scroll-margin-top:24px; }
section:focus, main:focus { outline:none; }
.reading-progress { position:fixed; top:0; left:0; right:0; height:3px; z-index:20; pointer-events:none; }
.reading-progress span { display:block; height:100%; width:100%; background:var(--earth); transform:scaleX(var(--reading-progress,0)); transform-origin:left; }
.story-copy { align-items:start; grid-template-columns:1fr 1fr; }
.story-anchor { position:sticky; top:64px; align-self:start; padding:24px 0 35px; }
.story-drift { transform:translateY(var(--story-drift,0px)); will-change:transform; }
.value-sticker { display:block; position:relative; margin:38px 0 0 15px; padding:20px 28px; width:max-content; background:var(--wind); color:var(--noir); font:20px/1.05 LouisGeorge,Arial,sans-serif; border:1px solid #0f182022; border-radius:50%; transform:rotate(-9deg); box-shadow:2px 4px 0 #0f182010; }
.value-sticker em { font-size:30px; color:var(--earth); }
.value-sticker>span { position:absolute; right:14px; top:14px; font-size:15px; }
.nyc-postcard { position:relative; background:var(--white); padding:12px 12px 18px; margin:42px 8px 12px 0; transform:rotate(3deg); box-shadow:0 8px 22px #0f182018; }
.nyc-postcard img { aspect-ratio:1.7; object-fit:cover; filter:saturate(.65) sepia(.13) contrast(.92); }
.nyc-postcard figcaption { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:18px 8px 0; font:italic 26px/1.1 AppleGaramond,Georgia,serif; color:var(--earth); }
.paper-tape { position:absolute; top:-13px; left:calc(50% - 42px); width:84px; height:27px; z-index:1; background:#c5d1d8bb; transform:rotate(-6deg); clip-path:polygon(2% 0,98% 3%,100% 96%,0 100%,3% 70%,0 40%); }
.postcard-stamp { display:grid; place-content:center; flex-shrink:0; width:49px; height:49px; border:1px dashed var(--army); border-radius:50%; color:var(--army); font:11px/1.4 LouisGeorge,Arial,sans-serif; text-align:center; transform:rotate(9deg); }
.header nav a[aria-current="location"]::after { transform:scaleX(1); }
.motion-toggle { float:right; background:none; border-bottom:1px solid; padding:0 0 3px; font-size:11px; }
body.motion-paused *, body.motion-paused *::before, body.motion-paused *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
body.motion-paused .reveal { opacity:1; transform:none; }
body.motion-paused .story-drift { transform:none; }
@media(max-width:720px) { .story-anchor { position:static; padding:0; } .story-drift { transform:none; will-change:auto; } .value-sticker { position:absolute; right:4px; top:8px; font-size:13px; padding:15px 18px; margin:0; } .value-sticker em { font-size:20px; } .value-sticker>span { right:8px; top:6px; font-size:11px; } .story-copy h2 { max-width:240px; font-size:50px; } .nyc-postcard { margin-top:35px; margin-right:8px; } .nyc-postcard figcaption { font-size:25px; } .motion-toggle { float:none; display:block; margin-top:15px; } }
@media(prefers-reduced-motion:reduce) { .story-drift { transform:none; will-change:auto; } }

/* A useful invitation fills the contact section's second column. */
.connect .wrap { display:grid; grid-template-columns:1.15fr 1fr; column-gap:70px; align-items:start; }
.connect .wrap>p, .connect .wrap>h2, .connect .wrap>.button { grid-column:1; }
.connect .wrap>.button { justify-self:start; }
.contact-note { grid-column:2; grid-row:1 / span 4; align-self:center; position:relative; padding:32px; margin:15px 8px; background:var(--white); color:var(--noir); box-shadow:0 12px 30px #0f18202b; transform:rotate(3deg); background-image:repeating-linear-gradient(transparent 0,transparent 30px,#63493e0b 30px,#63493e0b 31px); }
.contact-note .eyebrow { color:var(--earth); }
.contact-note .note-hand { font:italic 38px/1.05 AppleGaramond,Georgia,serif; color:var(--earth); margin:25px 0 20px; }
.contact-note>p:not(.eyebrow):not(.note-hand):not(.note-signature) { font-size:15px; line-height:1.7; }
.contact-note a { display:flex; justify-content:space-between; gap:15px; border-bottom:1px solid #63493e66; margin-top:24px; padding-bottom:10px; font-size:14px; }
.note-address { display:block; overflow-wrap:anywhere; margin-top:10px; font-size:11px; color:var(--earth); }
.connect .contact-note .note-signature { font:italic 24px/1.2 AppleGaramond,Georgia,serif; color:var(--earth); margin:25px 0 0; }
@media(max-width:1050px) { .connect .wrap { column-gap:35px; } .contact-note { padding:26px; } .contact-note .note-hand { font-size:34px; } }
@media(max-width:720px) { .connect .wrap { grid-template-columns:1fr; } .contact-note { grid-column:1; grid-row:auto; margin:45px 8px 8px; width:calc(100% - 16px); } .contact-note .note-hand { font-size:38px; } }
@media(max-width:720px) { .value-sticker { position:relative; right:auto; top:auto; margin:20px 0 0 8px; } .story-copy h2 { max-width:none; } }

/* Editorial refinement: quiet margins and distinct reading levels. */
.story-margin-note { margin-top:32px!important; padding-top:20px; border-top:1px solid #63493e44; width:max-content; font:italic 26px/1.2 AppleGaramond,Georgia,serif!important; color:var(--earth)!important; }
.story-editorial>.eyebrow { font-size:10px; letter-spacing:1.5px; color:var(--earth); margin-bottom:22px; }
.story-copy .story-lead { font:300 clamp(30px,3.4vw,44px)/1.08 AppleGaramond,Georgia,serif; color:var(--noir); margin:0 0 26px; }
.story-editorial>p:not(.eyebrow):not(.story-lead) { max-width:390px; line-height:1.8; font-size:16px; }
.story-invitation { margin-top:32px; padding-top:24px; border-top:1px solid #63493e33; }
.story-invitation p { font:300 28px/1.15 AppleGaramond,Georgia,serif; color:var(--earth); }
.story-invitation span { display:block; font-size:8px; line-height:1.8; letter-spacing:1.15px; margin-top:16px; max-width:280px; }
.contact-ethos { grid-column:1; margin-top:30px; padding-top:24px; border-top:1px solid #f5f6e644; max-width:300px; }
.contact-ethos>.eyebrow { font-size:9px; opacity:.8; }
.connect .contact-ethos>p { font:300 36px/1.05 AppleGaramond,Georgia,serif; margin-top:14px; }
.connect .wrap>p:last-of-type { font-size:14px; line-height:1.8; margin-top:0; }
.contact-note { grid-row:1 / span 4; }
@media(max-width:720px) { .story-copy .story-lead { font-size:36px; } .story-margin-note { font-size:24px!important; margin-top:24px!important; } .contact-note { grid-row:auto; } .contact-ethos { max-width:none; } .connect .contact-ethos>p { font-size:32px; } }
/* Notebook paper: visible ruling, a margin line, grain, and torn lower edge. */
.contact-note {
  isolation:isolate;
  padding:38px 30px 40px 42px;
  background-color:var(--white);
  background-image:linear-gradient(90deg,transparent 27px,#63493e30 27px,#63493e30 28px,transparent 28px),repeating-linear-gradient(to bottom,transparent 0,transparent 30px,#0f18201f 30px,#0f18201f 31px);
  background-position:0 0,0 12px;
  box-shadow:3px 10px 22px #0f182030;
  transform:rotate(-2deg);
}
.contact-note::before {
  content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:url('/assets/grain.svg') repeat; opacity:.19; mix-blend-mode:multiply;
}
.contact-note::after {
  content:''; position:absolute; left:0; right:0; bottom:-11px; height:12px;
  background:var(--white);
  clip-path:polygon(0 0,100% 0,100% 65%,97% 42%,94% 80%,90% 52%,87% 90%,83% 62%,79% 83%,76% 45%,72% 74%,68% 50%,64% 91%,60% 61%,56% 82%,52% 47%,48% 85%,44% 59%,40% 93%,36% 62%,32% 80%,28% 48%,24% 86%,20% 58%,16% 90%,12% 60%,8% 84%,4% 48%,0 72%);
}
.contact-note .paper-tape {
  top:-17px; left:calc(50% - 48px); width:96px; height:34px;
  background:repeating-linear-gradient(90deg,#c5d1d8bf 0,#c5d1d8bf 3px,#c5d1d8a6 4px,#c5d1d8bf 5px);
  border-left:1px solid #f5f6e644; border-right:1px solid #f5f6e644;
  transform:rotate(8deg); box-shadow:0 2px 2px #0f18200a;
  clip-path:polygon(3% 0,98% 3%,96% 19%,100% 37%,97% 61%,100% 81%,97% 100%,0 97%,3% 75%,0 55%,3% 30%,0 12%);
}
.contact-note .note-hand { transform:rotate(-1deg); }
.connect .contact-note .note-signature { transform:rotate(-3deg); transform-origin:left; }
@media(max-width:720px) { .contact-note { padding:34px 24px 36px 38px; margin-bottom:20px; } .contact-note .note-hand { font-size:35px; } }

/* Clean paper edge; predictable anchor landings without reveal offsets. */
.contact-note::after { display:none; }
.anchor-destination .reveal { opacity:1; transform:none; transition:none; }
h1[tabindex="-1"]:focus, h2[tabindex="-1"]:focus { outline:none; }
.section-heading { scroll-margin-top:28px; }
@media(min-width:721px) { .section-heading { margin-bottom:32px; } }
/* JS owns link animation; native focus/history scrolling must not compete. */
html { scroll-behavior:auto; }
/* Paper and breeze: subtle material depth, only moving while interacted with. */
.contact-note { transform-origin:50% 0; transition:transform 1.1s cubic-bezier(.22,.68,.25,1),box-shadow 1.1s; }
.contact-note::before { opacity:.28; background-image:linear-gradient(112deg,transparent 20%,#63493e0a 34%,#ffffff40 35%,transparent 47%),linear-gradient(18deg,transparent 60%,#63493e08 61%,#ffffff40 62%,transparent 78%),url('/assets/grain.svg'); }
.nyc-postcard { transform-origin:50% 8%; transition:transform 1.1s cubic-bezier(.22,.68,.25,1),box-shadow 1.1s; }
.nyc-postcard::before { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(116deg,transparent 0 38%,#ffffff24 39%,#0f18200c 40%,transparent 43%),linear-gradient(24deg,transparent 0 62%,#63493e09 63%,#ffffff35 64%,transparent 66%); mix-blend-mode:soft-light; }
.nyc-postcard::after { content:''; position:absolute; right:0; bottom:0; width:22px; height:22px; pointer-events:none; background:linear-gradient(135deg,transparent 47%,#63493e20 50%,#F5F6E6 62%); }
.nyc-postcard img { transition:filter 1.2s ease; }
.paper-note { transform-origin:75% 12%; transition:transform .9s ease,box-shadow .9s ease; }
.hero-image .floral-image { transition:transform 2s cubic-bezier(.2,.6,.3,1); }
.community-image img { transition:transform 1.8s cubic-bezier(.2,.6,.3,1); }
@keyframes paper-breeze { 0% { transform:rotate(-2deg); } 38% { transform:rotate(.7deg) translateY(-2px); } 72% { transform:rotate(-2.6deg); } 100% { transform:rotate(-1deg) translateY(-1px); } }
@keyframes postcard-breeze { 0% { transform:rotate(3deg); } 40% { transform:rotate(.6deg) translateY(-3px); } 75% { transform:rotate(3.6deg) translateY(-1px); } 100% { transform:rotate(2deg) translateY(-2px); } }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  body:not(.motion-paused) .contact-note:hover { animation:paper-breeze 2.4s ease-in-out 1 forwards; box-shadow:4px 15px 25px #0f18202b; }
  body:not(.motion-paused) .nyc-postcard:hover { animation:postcard-breeze 2.8s ease-in-out 1 forwards; box-shadow:3px 14px 26px #0f182023; }
  body:not(.motion-paused) .nyc-postcard:hover img { filter:saturate(.78) sepia(.1) contrast(.94); }
  body:not(.motion-paused) .release-art:hover .paper-note { transform:rotate(3deg) translateY(-3px); box-shadow:1px 8px 12px #0f18201c; }
  body:not(.motion-paused) .hero-image:hover .floral-image { transform:scale(1.035) translateX(-.5%); }
  body:not(.motion-paused) .community-image:hover img { transform:scale(1.018); }
}
@media(prefers-reduced-motion:reduce) { .contact-note, .nyc-postcard, .paper-note, .hero-image .floral-image, .community-image img { animation:none!important; transition:none!important; } }
/* Stateful motion is driven by a spring; hover never restarts a timeline. */
body:not(.motion-paused) .contact-note:hover,
body:not(.motion-paused) .nyc-postcard:hover { animation:none; }
.contact-note, .nyc-postcard { transform:translate3d(0,var(--paper-y,0px),0) rotate(var(--paper-angle,0deg))!important; transition:box-shadow 1s ease; }
.contact-note { --paper-angle:-2deg; }
.nyc-postcard { --paper-angle:3deg; }
body.motion-paused .contact-note { transform:rotate(-2deg)!important; }
body.motion-paused .nyc-postcard { transform:rotate(3deg)!important; }
@media(prefers-reduced-motion:reduce) { .contact-note { transform:rotate(-2deg)!important; } .nyc-postcard { transform:rotate(3deg)!important; } }

/* Stationary tape mounts: paper pivots beneath its attachment. */
.paper-mount { position:relative; isolation:isolate; }
.contact-mount { grid-column:2; grid-row:1 / span 4; align-self:center; margin:15px 8px; }
.contact-mount .contact-note { margin:0; width:100%; }
.postcard-mount { margin:42px 8px 12px 0; }
.postcard-mount .nyc-postcard { margin:0; }
.paper-mount>.paper-tape { top:-15px; left:calc(50% - 48px); width:96px; height:32px; z-index:4; pointer-events:none; background:repeating-linear-gradient(90deg,#c5d1d8da 0,#c5d1d8da 3px,#c5d1d8bd 4px,#c5d1d8da 5px); transform:rotate(8deg); }
.postcard-mount>.paper-tape { transform:rotate(-6deg); }
.contact-note, .nyc-postcard { transform-origin:50% 0; }
body:not(.motion-paused) .cassette:hover .tape-reel { animation:none; }
.tape-reel { transform:rotate(var(--reel-angle,0deg)); }
.cassette { transition:transform .9s cubic-bezier(.2,.7,.2,1),box-shadow .9s; }
.button span { display:inline-block; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 body:not(.motion-paused) .button:hover span { transform:translate(3px,-3px); }
 body:not(.motion-paused) .contact-mount:hover .contact-note { box-shadow:4px 15px 25px #0f18202b; }
 body:not(.motion-paused) .postcard-mount:hover .nyc-postcard { box-shadow:3px 14px 26px #0f182023; }
}
@media(max-width:720px) { .contact-mount { grid-column:1; grid-row:auto; margin:45px 8px 20px; width:calc(100% - 16px); } .contact-mount .contact-note { margin:0; width:100%; } .postcard-mount { margin-top:35px; } }

.release-collage>img { object-position:center 32%; }

/* Release title stays together as one label, including narrow screens. */
.cassette-title { white-space:nowrap; font-size:clamp(17px,2.1vw,28px); letter-spacing:-.025em; }
/* Whole text blocks arrive gently; never split words or disrupt reading. */
.text-arrival { opacity:0; translate:0 14px; transition:opacity .95s ease var(--text-delay,0ms),translate 1.1s cubic-bezier(.2,.7,.2,1) var(--text-delay,0ms); }
.text-arrival.text-arrived { opacity:1; translate:0 0; }
.anchor-destination .text-arrival, body.motion-paused .text-arrival { opacity:1; translate:0 0; transition:none; }
@media(max-width:720px) { .cassette-title { font-size:clamp(15px,4.8vw,23px); } }
@media(prefers-reduced-motion:reduce) { .text-arrival { opacity:1; translate:0 0; transition:none; } }
@media print { .text-arrival { opacity:1; translate:0 0; } }
/* The collage layers respond together, with less than a degree of movement. */
.release-collage>img { transition:transform 1.4s cubic-bezier(.2,.7,.2,1),box-shadow 1.4s; }
.paper-note { transition:transform 1.4s cubic-bezier(.2,.7,.2,1),box-shadow 1.4s; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 body:not(.motion-paused) .release-art:hover .release-collage>img { transform:rotate(-5.5deg) translateY(-1px); }
 body:not(.motion-paused) .release-art:hover .paper-note { transform:rotate(6.5deg) translateY(-1px); box-shadow:0 5px 9px #0f182016; }
}

/* Owner-requested oxblood accent; the supplied wordmark stays in Noir. */
.note-signoff { margin-top:26px; }
.contact-note .note-salutation { font:600 18px/1.4 LouisGeorge,Arial,sans-serif; color:#782F36; letter-spacing:.3px; margin:0; }
.note-logo { width:218px; max-width:100%; padding:28px; margin-top:4px; background:var(--white); }
.note-logo img { display:block; width:162px; max-width:100%; height:auto; }
.contact-note .note-salutation { display:inline-block; padding:11px 20px; border:1px solid #782f36b3; outline:1px solid #782f3640; outline-offset:3px; border-radius:50%; transform:rotate(-6deg); font-size:17px; letter-spacing:.6px; }
.note-logo { margin-top:15px; }

/* Simple inline sign-off, with no stamp or pasted logo block. */
.note-signoff { display:flex; align-items:baseline; flex-wrap:wrap; gap:10px; margin-top:28px; }
.contact-note .note-salutation { display:inline; padding:0; border:0; outline:0; border-radius:0; transform:none; font:300 20px/1.2 AppleGaramond,Georgia,serif; letter-spacing:0; color:#782F36; }
.note-collective { font:300 27px/1.2 AppleGaramond,Georgia,serif; color:#782F36; }

/* A quiet lyric sheet, with persistent controls and generous reading space. */
.release-actions { display:flex; flex-wrap:wrap; gap:12px 24px; align-items:baseline; }
#lyrics-dialog { padding:0; width:min(820px,calc(100% - 48px)); max-width:none; height:min(860px,88dvh); max-height:88dvh; border:0; color:var(--noir); background:var(--white); box-shadow:0 24px 100px #0f182055; }
#lyrics-dialog[open] { display:flex; flex-direction:column; }
#lyrics-dialog::backdrop { background:#0f1820b8; backdrop-filter:blur(5px); }
.lyrics-toolbar { flex:none; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 32px; border-bottom:1px solid #63493e30; }
.lyrics-toolbar button { font:inherit; color:inherit; background:transparent; border:1px solid #63493e50; padding:10px 16px; cursor:pointer; }
.lyrics-scroll { overflow:auto; overscroll-behavior:contain; padding:40px clamp(24px,6vw,72px) 56px; }
.lyrics-heading { margin:0 0 44px; }
.lyrics-heading h1,.lyrics-heading #lyrics-title { font:300 clamp(38px,5vw,58px)/1.05 AppleGaramond,Georgia,serif; max-width:650px; margin:14px 0 20px; }
.lyric-release,.lyric-credits { font:400 14px/1.7 LouisGeorge,Arial,sans-serif; color:var(--earth); }
.lyric-stanza { margin:0 0 36px; }
.lyric-stanza h2 { font:700 11px/1.4 LouisGeorge,Arial,sans-serif; letter-spacing:1.8px; text-transform:uppercase; color:var(--earth); margin:0 0 12px; }
.lyric-stanza p { font:400 clamp(17px,2vw,20px)/1.75 LouisGeorge,Arial,sans-serif; white-space:pre-line; margin:0; max-width:none; }
.lyric-credits { border-top:1px solid #63493e30; padding-top:24px; margin-top:48px; }
.lyrics-page { width:min(760px,calc(100% - 48px)); margin:40px auto 100px; }
@media(max-width:600px) { #lyrics-dialog { width:100%; height:100dvh; max-height:100dvh; margin:0; } .lyrics-toolbar { padding:14px 20px; } .lyrics-scroll { padding:28px 24px 48px; } .lyrics-page { margin-top:20px; } }

/* Stack the story before its editorial columns become too narrow. */
@media (max-width:900px) {
  .story-copy { grid-template-columns:minmax(0,1fr); gap:38px; align-items:start; }
  .story-anchor { position:static; padding:0; }
  .story-drift { transform:none; will-change:auto; }
  .story-copy h2 { max-width:none; font-size:clamp(46px,8vw,64px); }
  .story-copy .story-lead { font-size:clamp(30px,5.5vw,40px); max-width:600px; }
  .story-lead br { display:none; }
  .story-editorial>p:not(.eyebrow):not(.story-lead) { max-width:600px; }
  .story .section-heading { align-items:flex-start; gap:12px; flex-wrap:wrap; }
  .story-margin-note { margin-top:24px!important; }
}
