/* Scoped owner-requested imagery; no changes to hero, navigation or playback. */
.visual-section-inner{padding-block:64px}
.visual-home-clips .section-heading{margin-bottom:28px}
.home-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.home-video-preview{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;align-items:center;min-width:0;text-decoration:none;border-top:1px solid var(--line);padding-top:20px}
.home-video-picture{position:relative;display:block;line-height:0}
.home-video-picture img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.home-video-play{position:absolute;bottom:12px;right:12px;display:grid;place-items:center;width:38px;height:38px;background:#080b12dc;border:1px solid #c0a68a;color:var(--ink);font-size:14px;line-height:1}
.home-video-copy{display:grid;gap:12px;min-width:0;overflow-wrap:anywhere}
.home-video-copy strong{font-family:Georgia,'Times New Roman',serif;font-size:30px;font-weight:400;line-height:1.15}
.home-video-copy>span{font-size:12px;color:var(--muted);line-height:1.6}
.visual-home-project,.visual-home-software,.visual-home-lyrics{padding-block:64px}
.visual-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:center}
.visual-split>*{min-width:0}
.visual-section-copy h2{font:400 clamp(32px,3vw,48px)/1.12 Georgia,'Times New Roman',serif;margin:0 0 24px;overflow-wrap:anywhere}
.visual-section-copy h2 em{font-style:normal;color:var(--accent)}
.visual-section-copy p{line-height:1.75;max-width:620px}
.visual-section-copy .lead{font:400 25px/1.45 Georgia,'Times New Roman',serif}
.visual-section-copy .text-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;line-height:1.6}
.home-group-picture img{display:block;width:100%;height:auto}
.home-software-picture{margin:0;min-width:0}
.home-software-picture img{display:block;width:100%;height:auto;border:1px solid var(--line)}
.home-software-picture figcaption,.stage-personas figcaption{font-size:12px;color:var(--muted);line-height:1.6;margin-top:12px}
.home-lyrics-cards .lyrics-list{margin:0}
.lyrics-list{padding:0;list-style:none;display:grid;gap:20px;margin-block:28px 36px}
.lyrics-song-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;align-items:center;padding:20px;background:var(--bg2);border:1px solid var(--line);max-width:840px;text-decoration:none}
.lyrics-song-card img{display:block;width:112px;height:112px;object-fit:contain;background:var(--bg)}
.lyrics-song-copy{display:grid;gap:10px;min-width:0;overflow-wrap:anywhere}
.lyrics-song-kicker{font-size:12px;line-height:1.5;color:var(--muted)}
.lyrics-song-title{font:400 30px/1.2 Georgia,'Times New Roman',serif;letter-spacing:0;text-transform:none;color:var(--ink)}
.lyrics-song-action{font-size:13px;line-height:1.5;color:var(--accent)}
.lyrics-library{padding-bottom:56px}
.lyrics-library-intro{max-width:850px;font-size:15px;line-height:1.8;color:var(--muted)}
.lyrics-title-row{display:flex;align-items:center;gap:28px}
.lyrics-title-row>div{min-width:0}
.lyrics-detail-art{display:block;flex:none;width:128px;height:128px;object-fit:contain}
.lyrics-title-row h1{font-size:clamp(36px,5vw,66px);overflow-wrap:anywhere;margin-top:0}
.stage-personas{padding-block:56px 80px}
.stage-personas figure{margin:0}
.stage-personas figure>img{display:block;width:100%;height:auto}
.stage-personas-copy{max-width:850px;margin-top:36px}
.stage-personas-copy h3{font:400 32px/1.25 Georgia,'Times New Roman',serif}
.stage-personas-copy p{line-height:1.8;color:var(--muted)}
.stage-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.stage-gallery figure{min-width:0}
.stage-gallery img{display:block;width:100%;height:340px;object-fit:cover;object-position:center 20%}
.stage-gallery figcaption{letter-spacing:.05em}
.album-genre-summary{margin:18px 0 24px}
.genre-summary-label{margin:0;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.album-genre-summary .genre-tags{margin-top:10px}
.home-album .album-genre-summary{margin:16px 0 0}
.home-album .genre-tag{padding:3px 6px;font-size:11px}
/* Owner kept the phone layout; enlarge only desktop/tablet track illustrations. */
@media(min-width:800px){
 .author-track{grid-template-columns:32px 160px minmax(0,1fr);gap:26px;padding-block:26px}
 .author-track>img,.author-track>.track-art-missing{width:160px;height:160px}
}
.lyrics-song-card:hover,.home-video-preview:hover{border-color:var(--accent)}
.lyrics-song-card:focus-visible,.home-video-preview:focus-visible,.home-group-picture:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
@media(max-width:1000px){
 .home-video-preview{grid-template-columns:112px minmax(0,1fr);gap:18px}
 .home-video-copy strong{font-size:25px}
 .visual-split{gap:28px}
 .lyrics-song-card{grid-template-columns:88px minmax(0,1fr);gap:18px;padding:18px}
 .lyrics-song-card img{width:88px;height:88px}
 .lyrics-song-title{font-size:26px}
}
@media(max-width:700px){
 .visual-section-inner,.visual-home-project,.visual-home-software,.visual-home-lyrics{padding-block:40px}
 .visual-split,.home-video-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .home-video-preview{grid-template-columns:100px minmax(0,1fr);gap:18px}
 .home-video-copy strong{font-size:25px}
 .visual-section-copy h2{font-size:34px;margin-bottom:20px}
 .visual-section-copy .lead{font-size:23px}
 .lyrics-song-card{grid-template-columns:80px minmax(0,1fr);gap:16px;padding:16px}
 .lyrics-song-card img{width:80px;height:80px}
 .lyrics-song-title{font-size:25px}
 .lyrics-song-kicker{font-size:11px}
 .lyrics-title-row{gap:18px;align-items:flex-start}
 .lyrics-detail-art{width:80px;height:80px}
 .lyrics-title-row h1{font-size:34px;line-height:1.12}
 .lyrics-title-row .text-link{letter-spacing:.06em;line-height:1.6}
 .stage-personas{padding-block:40px 56px}
 .stage-gallery{grid-template-columns:minmax(0,1fr);gap:24px}
 .stage-gallery img{height:auto;max-height:420px;object-fit:contain;background:var(--bg2)}
}
/* Decorative rails use only approved project artwork, outside the reading column.
   They never receive input and never load on the narrow/mobile layout. */
@media(min-width:2000px){
 body{isolation:isolate}
 body::before,body::after{content:'';position:fixed;top:84px;bottom:0;z-index:-1;pointer-events:none;background-repeat:no-repeat;background-position:center}
 body::before{left:0;width:100%;background-size:cover;opacity:.26;background-image:linear-gradient(#080b1240,#080b12b0),url('./assets/archive-art/e9b7a86f2192d1055e5f00e97d52c70bfb22ce5a586ffa25dd00ad3764ac8c4d.png')}
 body::after{left:50%;width:1580px;transform:translateX(-50%);background-size:100% 100%;background-image:linear-gradient(to right,transparent,var(--bg) 110px,var(--bg) calc(100% - 110px),transparent)}
}
