/* Thermal case v7.1: large unmasked image, copy on the right. */
.thermal-feature { position:relative; min-height:1600px; height:1600px; margin:0 0 clamp(110px,14vw,210px); overflow:visible; isolation:isolate; }
.thermal-feature > img { animation:none!important; clip-path:none!important; opacity:1!important; }
.thermal-feature > img { position:absolute; z-index:0; top:0; left:var(--gutter); right:auto; width:auto; height:1600px; max-width:none; max-height:none; object-fit:contain; object-position:left top; transform:translate3d(0,var(--thermal-shift,0px),0); filter:none; will-change:transform; }
.thermal-copy { position:absolute; z-index:1; top:0; left:calc(50% + 40px); width:min(560px,38vw); padding:clamp(120px,10vw,220px) 0 0; }
.thermal-copy h2 { margin:18px 0 25px; font:400 clamp(32px,4vw,68px)/1.16 LongPixel,monospace; overflow-wrap:normal; }
.thermal-copy p { max-width:520px; font-size:clamp(16px,1.3vw,21px); line-height:1.55; color:#c7c7c3; }
@media(min-width:701px) {
 .thermal-feature { margin-left:calc(var(--gutter) * -1); margin-right:calc(var(--gutter) * -1); }
 .thermal-feature > img { left:var(--gutter); }
}
@media(max-width:700px) {
 .thermal-feature { min-height:980px; height:980px; margin:25px 0 90px; overflow:hidden; }
 .thermal-feature > img { top:260px; left:50%; right:auto; width:auto; height:1000px; transform:translate3d(-50%,var(--thermal-shift,0px),0); }
 .thermal-copy { position:relative; top:0; left:0; width:auto; padding:35px var(--gutter) 0; }
 .thermal-copy h2 { font-size:clamp(27px,7.5vw,40px); line-height:1.28; }
 .thermal-copy p { font-size:15px; line-height:1.48; }
}
.pixel-title,.glitch-title { position:relative; isolation:isolate; }
.pixel-title.pixel-active,.glitch-title.pixel-active { animation:v7-pixel-text .72s steps(7,end) both; }
.pixel-title.pixel-active::after,.glitch-title.pixel-active::after { content:""; position:absolute; z-index:2; inset:-.08em -.04em; pointer-events:none; background:var(--bg,#202020); animation:v7-pixel-mask .72s steps(7,end) both; }
@keyframes v7-pixel-text { 0% { opacity:.12; filter:blur(3px); } 45% { opacity:.72; filter:blur(1px); } 100% { opacity:1; filter:none; } }
@keyframes v7-pixel-mask { 0% { clip-path:polygon(0 0,100% 0,100% 100%,0 100%); opacity:1; } 100% { clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%); opacity:0; } }
@media(min-width:701px) {
 .thermal-feature { margin-left:calc(var(--gutter) * -1); margin-right:calc(var(--gutter) * -1); }
 .thermal-feature > img { right:0; }
}

/* v7.1 final overrides: keep the Figma composition after legacy rules. */
.thermal-feature { height:1600px!important; min-height:1600px!important; overflow:visible!important; }
.thermal-feature::after { display:none!important; content:none!important; background:none!important; }
.thermal-feature > img { top:0!important; left:var(--gutter)!important; right:auto!important; width:auto!important; height:1600px!important; max-width:none!important; max-height:none!important; object-fit:contain!important; transform:translate3d(0,var(--thermal-shift,0px),0)!important; rotate:none!important; filter:none!important; opacity:1!important; clip-path:none!important; }
.thermal-copy { position:absolute!important; top:0!important; left:calc(50% + 40px)!important; width:min(560px,38vw)!important; padding:clamp(120px,10vw,220px) 0 0!important; }
@media(max-width:700px) {
 .thermal-feature { height:980px!important; min-height:980px!important; overflow:hidden!important; }
 .thermal-feature > img { top:260px!important; left:50%!important; right:auto!important; width:auto!important; height:1000px!important; max-width:none!important; max-height:none!important; transform:translate3d(-50%,var(--thermal-shift,0px),0)!important; }
 .thermal-copy { position:relative!important; top:0!important; left:0!important; width:auto!important; padding:35px var(--gutter) 0!important; }
}

/* v8 final editorial adjustments */
.shade { display:none!important; }
.portfolio { padding-top:clamp(28px,3vw,48px)!important; }
.portfolio-kicker { display:none!important; }
.thermal-feature { margin-top:0!important; margin-bottom:clamp(28px,3vw,48px)!important; }
.thermal-copy { left:calc(50% + 40px)!important; padding-top:clamp(260px,18vw,340px)!important; font-family:LongPixel,monospace!important; }
.thermal-copy h2 { color:#f1f1ef!important; font-family:LongPixel,monospace!important; font-size:clamp(34px,3.6vw,60px)!important; line-height:1.16!important; }
.thermal-copy p { color:#a8a8a5!important; font-family:LongPixel,monospace!important; font-size:clamp(16px,1.25vw,21px)!important; line-height:1.55!important; }
@media(max-width:700px) {
  .portfolio { padding-top:28px!important; }
  .thermal-feature { margin-top:0!important; margin-bottom:28px!important; }
  .thermal-copy { padding-top:35px!important; }
}

/* Align the case copy with the right-hand carousel heading column. */
.thermal-copy { left:auto!important; right:var(--gutter)!important; width:min(500px,38vw)!important; padding-top:clamp(300px,20vw,380px)!important; font-family:LongPixel,monospace!important; }
.thermal-copy h2,.thermal-copy p { font-family:LongPixel,monospace!important; }
@media(max-width:700px) {
  .thermal-copy { left:0!important; right:0!important; width:auto!important; padding-top:35px!important; }
}
