/* Shared identity; each route owns its light, tonal range and pacing. */
:root{--bg:#060708;--panel:#111315;--ink:#eee8dc;--muted:#b0ada5;--line:#eee8dc26}
body{background:var(--bg)}
header,.home header{background:#060708;border:0;min-height:92px;padding:22px 5.5%;position:relative;z-index:3}
.wordmark,.home .wordmark{white-space:nowrap;font-family:var(--serif);font-size:clamp(14px,1.6vw,22px);line-height:1.35;letter-spacing:.105em;text-align:left}
nav a{font-size:12px;letter-spacing:.12em}header nav{gap:26px}
main{position:relative;isolation:isolate;overflow:clip}
main:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:var(--air,none);opacity:.7;transform-origin:50% 20%}
main>.section,.home .section,.story .section{border:0}
.section{position:relative;width:88%;max-width:1120px;margin:0 auto;padding:80px 0}
.eyebrow{font-size:12px;letter-spacing:.22em;color:#c9c4b8}
.expressive{letter-spacing:.025em;line-height:1.14}
.pending{font-size:12px;letter-spacing:.12em;line-height:1.9;color:#a8a79f;max-width:510px}
.metadata{font-size:13px;letter-spacing:.12em;color:#b5b2a9}
.button{min-height:50px;border-color:#eee8dc46;font-size:12px;letter-spacing:.14em;background:#ffffff03;transition:background .25s,border-color .25s,transform .25s}
.button:hover{background:#eee8dc12;border-color:#eee8dca0;transform:translateY(-2px)}
.button.primary{background:#e6e0d4;border-color:#e6e0d4;color:#101110}
.button.primary:hover{background:#f2ebdf}
.text-link,.inline-links a{border:0;background:linear-gradient(#eee8dc66,#eee8dc66) left bottom/32px 1px no-repeat;transition:background-size .3s,color .3s}
.text-link:hover,.inline-links a:hover{background-size:100% 1px}
.video-placeholder,.home .video-placeholder{border:0;box-shadow:none;background:radial-gradient(ellipse at 50% 45%,#24282a88,transparent 70%),linear-gradient(140deg,#090b0c,#131617 52%,#08090a);aspect-ratio:16/8.6}
.video-placeholder p{font-size:13px;color:#c8c4bb}.video-placeholder .play{font-size:32px;opacity:.75}
.section-top{margin-bottom:18px}.section-top>*{margin:0}
.photo-placeholder,.home .about-teaser .photo-placeholder{border:0;background:radial-gradient(ellipse at 65% 35%,#292f31,#14181a 45%,#080a0b 85%);color:#b1b1a9}
.photo-placeholder .eyebrow{font-size:12px;letter-spacing:.14em;text-align:center}
footer,.home footer{border:0;background:#060708;padding:48px 5.5% 25px}
.footer-top,.home .footer-top{align-items:center;padding-bottom:30px}
.footer-bottom,.home .footer-bottom{border-color:#ffffff0e}.footer-bottom p{font-size:11px;letter-spacing:.06em;color:#a5a39a}
/* Home: a long descent from reflective charcoal through silence to an opening. */
.home main{background:radial-gradient(ellipse 90% 600px at 28% 520px,#727d7b26,transparent 75%),radial-gradient(ellipse 70% 570px at 68% 1100px,#89776519,transparent 80%),radial-gradient(ellipse 95% 400px at 20% 81%,#61696726,transparent 78%),linear-gradient(#050607,#0a0d0f 22%,#101110 36%,#040506 59%,#0e1213 82%,#060708);--air:radial-gradient(ellipse 60% 380px at 62% 720px,#f1e4c71a,transparent 75%)}
.home .hero{padding-top:46px;padding-bottom:46px}
.home .hero-identity{border:0;padding-bottom:18px;margin-bottom:30px}
.home .hero h1{font-size:clamp(24px,6.8vw,87px);letter-spacing:.05em}
.home .hero-caption{border:0;padding-left:0}.home .hero-caption:before{display:none}
.home .hero-release:before{background:radial-gradient(ellipse at 31% 72%,#e3d8bc21,transparent 64%);inset:-45px -5% -100px}
.home .hero .cover{outline:0;box-shadow:0 32px 80px #0009}
.home .release-intro{padding-top:38px;padding-bottom:26px}
.home #watch{padding-bottom:70px}
.home .quiet{padding-top:82px;padding-bottom:90px}
.home .quiet:before{content:"";position:absolute;inset:-30px -8%;z-index:-1;background:radial-gradient(ellipse at 22% 34%,#d5d9d708,transparent 65%)}
.home .about-teaser>div:last-child{border:0;background:none}
.home .contact-teaser{padding-top:54px;padding-bottom:64px}
/* Music: darkness overhead, a narrow source of light, diffuse reflection below. */
.music-world main{background:radial-gradient(ellipse 60% 540px at 29% 880px,#a5a09222,transparent 73%),radial-gradient(ellipse 85% 760px at 55% 560px,#343f4633,transparent 78%),linear-gradient(#030405,#0a1013 32%,#121311 53%,#07090b 79%,#060708);--air:radial-gradient(ellipse 15% 630px at 29% 260px,#d8e0dc1b,transparent 75%),radial-gradient(ellipse 60% 120px at 34% 840px,#ece0c02a,transparent 72%)}
.music-world .release-page{padding-top:85px;padding-bottom:75px;max-width:1240px}
.music-world .release-page>.eyebrow{margin:0 0 64px 3%;letter-spacing:.3em}
.music-world .release-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:7%;margin:0;position:relative;align-items:center}
.music-world .release-layout:before{content:"";position:absolute;z-index:-1;left:-12%;right:28%;top:76%;height:240px;background:radial-gradient(ellipse 42% 4% at 47% 37%,#e5d9bc33,transparent 85%),radial-gradient(ellipse 55% 6% at 53% 47%,#aeb8b620,transparent 78%),radial-gradient(ellipse 35% 3% at 42% 60%,#ddd7c819,transparent 80%),radial-gradient(ellipse at center,#c6d0cc12,transparent 65%);transform:rotate(-3deg);pointer-events:none}
.music-world .cover{box-shadow:0 28px 80px #0009}
.music-world .display{font-size:clamp(38px,4.6vw,64px);margin-bottom:18px}
.music-world .release-layout>.cover+div{padding-top:24px}
.music-world .release-layout .pending{margin:25px 0}
.music-world .listen{border:0;margin-top:34px;padding:22px 0 0}
.music-world .listen .pending{font-size:12px;margin-bottom:0}
.music-world #watch{padding-top:45px;padding-bottom:75px}
.music-world .quiet{padding-top:100px;padding-bottom:100px}
/* Words: near-black silence and a local, responsive ivory field. */
.words-world main{background:radial-gradient(ellipse 65% 650px at 16% 22%,#161d232e,transparent 80%),linear-gradient(135deg,#030405,#07090b 58%,#030405);--air:radial-gradient(ellipse 50% 280px at 20% 250px,#e8dfc709,transparent 75%)}
.words-world .lyric-page{min-height:950px;padding-top:90px;padding-bottom:110px}
.words-world .expressive{font-size:clamp(38px,5.9vw,76px);margin:30px 0 68px;max-width:900px}
.words-world .song-heading{margin:0 0 30px;gap:34px}
.words-world .song-heading h2{font-size:24px;letter-spacing:.07em}
.words-world .placeholder-label{font-size:11px;letter-spacing:.12em;color:#a8a79f}
.words-world .lyrics{max-width:none;position:relative;margin-top:35px}
.lyric{border-left-color:#ccc5b0}.placeholder-line{font-size:19px;font-style:normal;letter-spacing:.025em;color:#bab7ae}
.lyric summary{padding-top:17px;padding-bottom:17px}.lyric.plain{padding-top:17px;padding-bottom:17px}
.scripture{position:relative;padding:24px 20px 16px 0;color:#cbc6bb;overflow-wrap:anywhere}
.scripture:before{content:"";position:absolute;z-index:-1;inset:-45px -25px;background:radial-gradient(ellipse at 35% 38%,#e8dfc712,transparent 75%);pointer-events:none}
.lyric[open]{border-left-color:#f0e4c9}
.words-world main:has(details[open]){--air:radial-gradient(ellipse 55% 450px at 78% 550px,#e6dec318,transparent 80%)}
/* About: continuous, increasingly open light; no section-colored panels. */
.story-world main{background:radial-gradient(ellipse 75% 520px at 30% 25%,#131d2438,transparent 82%),radial-gradient(ellipse 90% 900px at 100% 69%,#8a877338,transparent 80%),radial-gradient(ellipse 110% 600px at 48% 93%,#77847d30,transparent 83%),linear-gradient(165deg,#020304 0%,#080b0e 32%,#12191d 54%,#262925 78%,#191f20 94%,#060708 100%);--air:radial-gradient(ellipse 80% 550px at 78% 73%,#ede2c51a,transparent 80%)}
.story-world .about-opening{padding-top:66px;padding-bottom:60px}
.story-world .about-opening>.identity{white-space:nowrap;font-size:clamp(25px,5.8vw,72px);letter-spacing:.04em;margin:24px 0 48px}
.story-world .about-opening .about-teaser{grid-template-columns:1.1fr 1fr;gap:0;align-items:end}
.story-world .photo-placeholder{aspect-ratio:4/4.3;max-width:540px;background:radial-gradient(ellipse at 56% 30%,#1e2a30,#0d1216 55%,#040607 90%)}
.story-world .about-teaser>div:last-child{margin:0 0 14% -24px;padding:24px 0}
.story-world .story{background:none}
.story-world .story-beat{padding:100px 0 115px;max-width:1000px}
.story-world .story-beat h2{font-size:clamp(35px,5vw,62px);letter-spacing:.035em;margin-bottom:30px}
.story-world .story-beat:nth-child(1){padding-left:5%;padding-right:25%}
.story-world .story-beat:nth-child(2){padding-left:28%;padding-right:5%}
.story-world .story-beat:nth-child(3){padding-left:12%;padding-right:8%;padding-top:120px;padding-bottom:130px}
.story-world .story-beat:nth-child(3) h2{font-size:clamp(42px,6.3vw,78px)}
.story-world .beliefs{max-width:880px;padding:95px 0 140px}
.story-world .beliefs .expressive{font-size:clamp(36px,5vw,64px);margin:25px 0 38px}
.story-world .pending{color:#bdbbb0}
/* Contact: a still field of light, tactile controls, no surrounding form box. */
.contact-world main{background:linear-gradient(180deg,#07090a 0%,#090b0c 55%,#07090a 100%)}
.contact-world .contact-page{max-width:760px;padding-top:76px;padding-bottom:75px}
.contact-world .expressive{font-size:clamp(40px,5.8vw,70px);margin:25px 0 25px}
.contact-notice{border:0;padding:0;margin:32px 0;color:#b8b5aa;font-size:13px}.contact-notice p{margin:0}
form{margin-top:38px}label{font-size:14px;color:#d8d2c5}
input,select,textarea{border:0;border-bottom:1px solid #eee8dc4d;background:#e3dfd305;padding:14px 13px;color:var(--ink);transition:background .25s,border-color .25s;box-shadow:none}
input:hover,select:hover,textarea:hover{background:#e3dfd309}
input:focus,select:focus,textarea:focus{background:#e3dfd30d;border-bottom-color:#e5dcc4}
select option{background:#111618;color:var(--ink)}textarea{min-height:150px}
.contact-world .button{min-width:145px}.contact-world main:before{display:none}
@media(min-width:851px){
 .words-world .lyrics{min-height:420px}
 .words-world .lyric{width:50%}
 .words-world .lyric .scripture{position:absolute;left:60%;top:0;width:40%;max-width:none;padding:20px 0}
 .words-world .scripture .eyebrow{font-size:13px;letter-spacing:.17em;margin-bottom:22px}
}
@media(max-width:1050px) and (min-width:851px){header nav{gap:17px}.wordmark{font-size:16px;letter-spacing:.07em}.music-world .release-layout{gap:5%}.music-world .actions .button{padding-left:16px;padding-right:16px}}
@media(max-width:850px){
 header,.home header{min-height:78px;padding:17px 6%;gap:12px}
 .wordmark,.home header .wordmark{font-size:clamp(12px,2.6vw,20px);letter-spacing:.065em}
 .menu{border:0;padding:10px;min-height:44px}.menu span{margin-left:8px}header nav{gap:0}
 .section,.home .section{width:88%;margin:0 auto;padding-top:56px;padding-bottom:56px}
 .home .hero{padding-top:26px;padding-bottom:30px}.home .hero h1{font-size:clamp(22px,6.9vw,47px)}
 .home .hero-identity{margin-bottom:20px;padding-bottom:8px}.home .hero-caption{padding-top:25px}
 .home .quiet{padding-top:65px;padding-bottom:65px}
 .music-world .release-page{padding-top:42px;padding-bottom:36px}
 .music-world .release-page>.eyebrow{margin:0 0 38px 0}
 .music-world .release-layout{grid-template-columns:1fr;gap:25px}
 .music-world .release-layout>.cover{max-width:580px;margin:auto}
 .music-world .release-layout>.cover+div{padding-top:0}
 .music-world .release-layout:before{left:-12%;right:-12%;top:35%;height:240px}
 .music-world .display{font-size:44px}.music-world .release-layout .pending{margin:20px 0}
 .music-world .listen{margin-top:25px;padding-top:12px}.music-world .quiet{padding:65px 0}
 .words-world .lyric-page{min-height:790px;padding-top:58px;padding-bottom:70px}
 .words-world .expressive{font-size:clamp(33px,6.7vw,56px);margin:28px 0 52px}
 .words-world .lyrics{min-height:0!important}.scripture{padding-left:0}
 .story-world .about-opening{padding-top:46px;padding-bottom:30px}
 .story-world .about-opening>.identity{font-size:clamp(22px,6.2vw,49px);letter-spacing:.02em}
 .story-world .about-opening .about-teaser{display:block}
 .story-world .photo-placeholder{width:82%;max-width:440px}
 .story-world .about-teaser>div:last-child{margin:-25px 0 0 13%;padding:28px 0;position:relative}
 .story-world .story-beat{padding-top:78px;padding-bottom:88px}
 .story-world .story-beat:nth-child(1){padding-left:0;padding-right:8%}
 .story-world .story-beat:nth-child(2){padding-left:12%;padding-right:0}
 .story-world .story-beat:nth-child(3){padding:90px 0 90px 4%}
 .story-world .beliefs{padding-top:75px;padding-bottom:105px}
 .contact-world .contact-page{padding-top:48px;padding-bottom:55px}
 .contact-world .expressive{font-size:clamp(36px,7vw,58px)}
 .footer-top,.home .footer-top{align-items:flex-start}footer .wordmark,.home footer .wordmark{font-size:19px}
 .video-placeholder,.home .video-placeholder{aspect-ratio:16/10}
}
@media(prefers-reduced-motion:no-preference){
 main:before{animation:atmosphere-breathe 28s ease-in-out infinite alternate}
 .music-world .release-layout{animation:materialize 1.4s ease-out both}
 .words-world .expressive,.story-world .about-opening>.identity{animation:materialize 1.1s ease-out both}
 .lyric[open] .scripture{animation:materialize .45s ease-out both}
 @keyframes atmosphere-breathe{from{opacity:.5;transform:translateY(-10px) scale(1)}to{opacity:.95;transform:translateY(10px) scale(1.025)}}
 @keyframes materialize{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:850px){main:before{animation:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;transform:none!important}}

/* Homepage hero: the unframed square image is the object, not its layout wrapper. */
.home .hero-identity{margin-bottom:clamp(44px,6vw,80px)}
.home .hero-release{display:flex;flex-direction:column;align-items:center;gap:0;background:none;border:0;box-shadow:none;padding:0}
.home .hero-release:before,.home .hero-release:after{content:none;display:none}
.home .hero .cover{display:block;width:min(100%,680px);height:auto;aspect-ratio:1 / 1;object-fit:contain;flex:none;margin:0;padding:0;border:0;outline:0;box-shadow:none;background:none}
.home .hero-caption{display:block;width:100%;max-width:680px;text-align:center;margin:0;padding:32px 0 0;border:0;background:none;box-shadow:none}
.home .hero-caption .eyebrow{margin:0 0 12px}
.home .hero-caption h2{margin:0 0 24px}
.home .hero .actions{justify-content:center;flex-wrap:wrap;gap:12px;margin:0 auto;width:100%;max-width:380px}
.home .hero .actions .button{flex:1 1 140px;min-width:0;min-height:50px}
.home header{justify-content:flex-end}
.home #watch{padding-top:clamp(40px,5vw,64px)}
.home .contact-teaser>a{display:inline-flex;justify-content:flex-start;align-items:center;gap:.5em}
.home .contact-teaser>a span{font-size:.45em;line-height:1;transition:transform .2s ease}
.home .contact-teaser>a:hover span{transform:translateX(3px)}
@media(max-width:850px){
 .home .hero-identity{margin-bottom:36px}
 .home .hero-caption{padding-top:26px}
 .home .hero-caption h2{margin-bottom:22px}
}

/* Teaser references and complete passages share the same child indentation. */
.home .quiet .lyric>.scripture{margin-left:24px}
@media(max-width:850px){
 .home .quiet .lyric>.scripture{margin-left:18px}
 /* Override the legacy image's HTML height without changing the cover itself. */
 .music-world .release-layout>.cover{height:auto;aspect-ratio:1 / 1;object-fit:contain}
 /* Keep the existing two-column group compact, with comfortable tap targets. */
 footer,.home footer{padding-top:38px;padding-bottom:22px}
 .footer-top,.home .footer-top{gap:20px;padding-bottom:22px}
 .footer-top nav,.home .footer-top nav{display:grid;grid-template-columns:max-content max-content;gap:0 26px;align-items:center}
 .footer-bottom,.home .footer-bottom{padding-top:18px;gap:6px}
}

/* Artist-supplied crop: preserve its complete natural framing at every width. */
.story-world .about-opening .artist-photo{
 display:block;width:100%;height:auto;aspect-ratio:1000 / 1080;object-fit:contain;
 object-position:50% 50%;border:0;padding:0;
 -webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);
 mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);
}
@media(max-width:850px){
 .story-world .about-opening .artist-photo{width:82%;max-width:440px}
}

/* One secondary official destination, within the existing footer bottom row. */
.footer-bottom .footer-youtube{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.5;letter-spacing:.04em;text-transform:none;color:var(--ink)}
.footer-bottom .footer-youtube:hover{color:#fffaf0}

/* A lighter mobile primary action; desktop retains its approved treatment. */
@media(max-width:850px){
 .home .hero .actions .button.primary{min-height:44px;padding-top:10px;padding-bottom:10px}
}

/* Reduce only the opening portrait's display scale. Keep its flow dimensions
   so the approved story positions and full-page atmosphere remain unchanged. */
.story-world .about-opening .artist-photo{scale:.84;transform-origin:left center}
@media(max-width:850px){
 .story-world .about-opening .artist-photo{scale:.92}
}
