/* Approved album composition, final assets and caption pass. Page-local only. */
body[data-project="album"] .hero-art{inset:20% -1% 18% 49%;}
body[data-project="album"] .hero-art img{object-fit:contain;transform:none;filter:none}
body[data-project="album"] .hero-art:after{display:none}
body[data-project="album"] .hero-heading{grid-column:3/8}
body[data-project="album"] .hero-heading h1{font-size:clamp(52px,6.8vw,108px)}
body[data-project="album"] .hero-intro{grid-column:3/7}
.worlds>.section-head{max-width:650px;margin-bottom:150px}
.section-head h2{max-width:16ch}
.world{gap:24px;grid-template-columns:repeat(12,minmax(0,1fr))}
.world-title h3{font-size:clamp(46px,5.5vw,88px)}
.world-captain .world-title{grid-column:1/6;grid-row:1}
.world-captain .captain-lp{grid-column:6/12!important;grid-row:2;align-self:start}
.world.world-captain>figure.captain-open{grid-column:1/7;grid-row:2;aspect-ratio:auto;margin:22% 0 0;align-self:end;width:100%}
.world.world-captain>figure.captain-back{grid-column:8/13;grid-row:3 / span 2;width:100%;margin-top:-12%}
.world>figure img{object-fit:contain;height:auto}
.world-captain .world-line{grid-column:2/7;grid-row:3;margin:20px 0 0}
.world-captain .credit{grid-column:2/7;grid-row:4;margin:0}
.world-line{font:18px/1.5 Georgia,serif;text-wrap:pretty}
.credit{font:12px/1.6 var(--font-micro);letter-spacing:.01em;color:#aaa;text-wrap:pretty}
.credit b{font-weight:500;color:#e0dcd3}
.world-nick .world-title{grid-column:8/13;grid-row:1;margin:0 0 50px}
.nick-composition{grid-column:2/11;grid-row:2;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;width:100%;margin:0}
.nick-front{grid-column:1/11;grid-row:1;width:100%}
.nick-back{grid-column:5/13;grid-row:2;width:100%;margin-top:-8%}
.world-nick .world-line{grid-column:2/7;grid-row:3;margin-top:28px}
.world-nick .credit{grid-column:7/12;grid-row:3;margin-top:28px}
.world-nick+.world-trio{margin-top:150px}
.world-trio .world-title{grid-column:1/6;grid-row:1;margin:0 0 55px}
.trio-composition{grid-column:2/12;grid-row:2;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0;width:100%;margin:0;align-items:center}
.trio-front{grid-column:1/10;grid-row:1/3;width:100%;z-index:2}
.trio-disc{grid-column:10/13;grid-row:1;width:100%;align-self:end}
.trio-back{grid-column:9/12;grid-row:2;width:100%;margin:18px 0 0;z-index:3}
.world-trio .world-line{grid-column:2/7;grid-row:3;margin-top:28px}
.world-trio .credit{grid-column:8/12;grid-row:3;margin-top:28px}
.craft-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:130px}
.craft-grid .crop{background:transparent;aspect-ratio:auto}
.craft-grid .crop img{position:static;inset:auto;width:100%;height:auto;object-fit:contain;transform:none;max-width:100%}
.craft-type{grid-column:1/13;grid-row:1}
.craft-machine{grid-column:1/13;grid-row:2;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:center}
.craft-machine .crop{grid-column:1/8;width:90%;justify-self:center}
.craft-machine figcaption{grid-column:8/13;display:block}
.craft-machine figcaption>b{display:block;margin-bottom:20px}
.craft-texture{grid-column:6/13;grid-row:3}
.craft-interior{grid-column:2/7;grid-row:3;align-self:start;margin-top:42%!important;z-index:2}
body[data-project="album"] .craft-grid figcaption{font:14px/1.6 var(--font-micro);letter-spacing:0;text-transform:none;text-wrap:pretty}
.craft-grid figcaption b{font:12px/1.5 var(--font-micro);letter-spacing:.07em}
.craft-grid figcaption small{font:12px/1.6 var(--font-micro);color:#555249}
.craft-texture figcaption{grid-template-columns:1fr;max-width:78%;margin-left:22%}
.craft-interior figcaption{grid-template-columns:1fr}
.keep-phrase{white-space:nowrap}
.brief-role,.brief-index{font-size:12px;line-height:1.5}
@media(max-width:800px){
 body[data-project="album"] .hero-heading h1{font-size:clamp(46px,14vw,64px)}
 body[data-project="album"] .hero>.hero-art{height:auto;aspect-ratio:1.52;margin-top:44px}
 .worlds>.section-head{margin-bottom:88px}
 .world{gap:0}
 .world-title h3{font-size:clamp(44px,13vw,68px)}
 .world-captain .world-title,.world-nick .world-title,.world-trio .world-title{margin:0 0 38px;width:100%}
 .world.world-captain>figure.captain-lp{width:90%;margin:0 0 0 auto!important;order:1}
 .world.world-captain>figure.captain-open{width:78%;margin:24px 0 0!important;align-self:flex-start;order:2}
 .world.world-captain>figure.captain-back{width:72%;margin:24px 0 0!important;align-self:flex-end;order:3}
 .world-captain .world-line{order:4;margin:28px 0 0}
 .world-captain .credit{order:5;margin:20px 0 0}
 .nick-composition{display:grid;width:100%;margin:0;order:1}
 .nick-front{width:100%;grid-column:1/13}
 .nick-back{width:100%;grid-column:3/13;margin:12px 0 0}
 .trio-composition{display:grid;width:100%;margin:0;order:1}
 .trio-front{width:100%;grid-column:1/11}
 .trio-disc{grid-column:10/13;align-self:start;margin-top:25px!important}
 .trio-back{grid-column:9/13;width:100%;margin-top:12px}
 .world-nick .world-line,.world-trio .world-line{margin:28px 0 0;order:2}
 .world-nick .credit,.world-trio .credit{margin:20px 0 0;order:3}
 .world-nick+.world-trio{margin-top:110px}
 .world-line{font-size:17px;line-height:1.5}
 .credit{font-size:12px}
 .craft-grid{display:flex;flex-direction:column;gap:70px}
 .craft-grid figure{width:100%;margin:0!important}
 .craft-machine{display:block}
 .craft-machine .crop{width:90%;margin:0 auto 28px}
 .craft-machine figcaption{display:grid}
 .craft-machine figcaption>b{margin:0}
 .craft-type .crop{aspect-ratio:auto}
 .craft-texture figcaption{max-width:none;margin-left:0}
 .craft-interior .crop{width:85%}
 body[data-project="album"] .craft-grid figcaption{font-size:14px;line-height:1.6}
 .craft-grid figcaption b,.craft-grid figcaption small{font-size:12px}
}
@media(min-width:801px){
 body[data-project="album"] .hero .hero-heading>h1{font-size:clamp(52px,6vw,96px)}
 .craft-grid .craft-interior{margin-top:60%!important}
 .worlds>.section-head{max-width:760px}
 .worlds>.section-head h2{max-width:19ch}
}
/* Reference alignment revision: shared artifact fields retain intentional layering. */
.captain-composition{grid-column:1/-1;grid-row:2;position:relative;aspect-ratio:1830/1030}
.world-captain .captain-composition figure{position:absolute;inset:auto;margin:0!important;aspect-ratio:auto!important;transform:none;box-shadow:none}
.world-captain .captain-composition .captain-lp{left:46%;top:0;width:45.8%;z-index:1}
.world-captain .captain-composition .captain-open{left:4%;top:35.4%;width:48.5%;z-index:2}
.world-captain .captain-composition .captain-back{left:52.6%;top:48.8%;width:42.5%;z-index:3}
.captain-composition img{height:auto;object-fit:contain}
.nick-composition{display:block;position:relative;aspect-ratio:1096/961}
.nick-composition .nick-front{position:absolute;left:0;top:0;width:77.3%;margin:0;z-index:1}
.nick-composition .nick-back{position:absolute;left:30.2%;top:47.7%;width:69.8%;margin:0;z-index:2}
.trio-composition{display:block;position:relative;aspect-ratio:1406/834}
.trio-composition .trio-front{position:absolute;left:0;top:0;width:71.8%;margin:0;z-index:2}
.trio-composition .trio-disc{position:absolute;left:71.5%;top:17.5%;width:28.5%;margin:0!important;z-index:3}
.trio-composition .trio-back{position:absolute;left:61.3%;top:60.4%;width:27.2%;margin:0;z-index:1}
/* Show decoded artwork immediately instead of a one-second clipping reveal. */
body[data-project="album"] .reveal img{clip-path:none;transform:none;transition:none}
@media(min-width:801px){
 .world-captain .world-line{grid-row:2;align-self:end;margin:0 0 10%}
 .world-captain .credit{grid-row:2;align-self:end;margin:0 0 2%}
}
@media(max-width:800px){
 .captain-composition{width:100%;order:1;aspect-ratio:1830/1030}
 .world-captain .captain-composition .captain-lp{width:45.8%}
 .world-captain .captain-composition .captain-open{width:48.5%}
 .world-captain .captain-composition .captain-back{width:42.5%}
 .world-captain .world-line{margin-top:28px}
 .nick-composition,.trio-composition{width:100%;margin:0}
}
@media(min-width:801px){
 .world-captain .world-line{margin-bottom:clamp(115px,10vw,160px)}
 .world-captain .credit{margin-bottom:clamp(25px,3vw,48px)}
}
