/* Entrance: one suspended emblem, with copy below the sculpture. */
#menu-toggle{font-weight:800;letter-spacing:.025em;gap:13px;min-height:44px;padding:0}
.menu-icon{width:20px;height:17px;border-radius:0;background:none;display:flex;flex-direction:column;justify-content:space-between;font-size:inherit}
.menu-icon i{display:block;height:2px;width:100%;background:currentColor}
.entry{height:100svh;min-height:620px;display:block;background:#08090a;isolation:isolate}
.entry:after{display:none}
.iron-stage{position:absolute;inset:0 0 24%;overflow:hidden;touch-action:pan-y;outline:none}
.iron-stage:focus-visible{outline:1px solid #788080;outline-offset:-8px}
.iron-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .65s}
.iron-stage.ready canvas{opacity:1}
.iron-fallback{width:100%;height:100%;object-fit:contain;object-position:center;transition:opacity .65s;mask-image:linear-gradient(#000 85%,transparent)}
.iron-stage.ready .iron-fallback{opacity:0}
.entry-center{position:absolute;top:auto;bottom:8.8%;left:5%;right:5%;text-align:center;z-index:2}
.entry h1{font-size:clamp(3.2rem,5.8vw,5.2rem);letter-spacing:.07em;margin:0 0 17px}
.entry .pill{padding:14px 29px;min-width:150px;font-size:13px;gap:32px}
.entry-bottom{position:absolute;bottom:24px;left:5%;right:5%;display:flex;justify-content:center;text-align:center}
.entry-bottom small,.entry-bottom small:last-child{display:block;font-size:11px;letter-spacing:.12em}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:760px){.entry{min-height:560px}.iron-stage{inset:0 0 26%}.entry-center{bottom:11%}.entry h1{font-size:clamp(3rem,10vw,4.2rem)}.entry-bottom{bottom:23px}.entry-bottom small{font-size:10px}.brand img{height:36px;width:34px}}
@media(max-height:650px) and (min-width:761px){.entry{min-height:500px}.entry h1{font-size:3rem;margin-bottom:10px}.entry-center{bottom:9%}.entry .pill{padding:10px 25px}.entry-bottom{bottom:12px}}
@media(prefers-reduced-motion:reduce){.iron-stage canvas,.iron-fallback{transition:none}}

/* Image-led review: preserve the approved warehouse render at its native proportions. */
.iron-stage{background:#08090a;touch-action:auto}
.iron-fallback{object-fit:contain;mask-image:linear-gradient(#000 90%,transparent);transition:none}

/* Approved transparent PNG, framed to its artwork bounds without changing its pixels. */
.brand-mark{position:relative;display:block;width:40px;height:38.939px;overflow:hidden}
.brand .brand-mark img{position:absolute;left:-28.00312%;top:-38.14103%;width:156.00624%;height:auto;max-width:none;object-fit:contain;mix-blend-mode:normal}
#menu-toggle{font-family:'Bebas Neue',sans-serif;font-weight:400;font-style:normal;font-size:26px;line-height:1;letter-spacing:.07em;color:var(--title);gap:13px}
/* Bebas Neue capitals are .70em high and the vertical stems are .11em thick. */
#menu-toggle .menu-icon{width:.78em;height:.70em;flex-shrink:0;transform:translateY(-.02em)}
#menu-toggle .menu-icon i{height:.11em;flex-shrink:0}
@media(max-width:760px){.brand-mark{width:34px;height:33.098px}}

/* Anchor artwork to the viewport top. Share the frame with a future video. */
.iron-stage :is(.iron-fallback,video){
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:50% 0%;
  mask-image:linear-gradient(#000 90%,transparent);
}
.iron-stage video{inset:0;opacity:1;filter:none}
/* A square crop enlarges the portrait-device artwork without cutting the skull.
   Limit its height so the title and Enter button retain their own space. */
@media(max-aspect-ratio:1/1){
  .iron-stage{inset:0 0 auto;height:min(74svh,100vw)}
  .iron-stage :is(.iron-fallback,video){object-fit:cover;object-position:50% 0%}
}

/* Extended warehouse artwork fills landscape screens without enlarging away the skull. */
.iron-picture{display:block;width:100%;height:100%}
.iron-stage :is(.iron-fallback,video){object-fit:cover;object-position:50% 0%}
@media(min-aspect-ratio:1/1){
  .entry{min-height:max(500px,calc(100vw / 3 + 220px))}
  .iron-stage{inset:0 0 200px;height:auto}
}

/* Visible artwork bounds, with no runtime font measurement. */
header{--header-art-height:32px;align-items:center}
header .brand{height:44px;display:flex;align-items:center}
header .brand-mark{height:calc(var(--header-art-height) * 1.1);width:calc(var(--header-art-height) * 1.1299684);flex:none}
header .menu-zone{display:flex;align-items:center;height:44px}
header #menu-toggle{display:flex;align-items:center;height:44px;min-height:44px;padding:0;gap:14px}
header #menu-toggle .menu-word,header #menu-toggle .menu-bars{display:block;height:calc(var(--header-art-height) * .9);width:auto;max-width:none;object-fit:contain;flex:none;transform:none}
@media(max-width:760px){header{--header-art-height:28px}}

/* Blender v5 composition review; model and background remain separate layers. */
.blender-entry .blender-stage{inset:0 0 190px;height:auto;isolation:isolate}
.blender-stage .warehouse-plate{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;mask-image:none}
.blender-stage .blender-skull{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:50% 0;mask-image:none}
.blender-stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 84%,#08090a 100%)}
@media(max-aspect-ratio:1/1){.blender-entry .blender-stage{inset:0 0 200px}.blender-stage .blender-skull{object-fit:cover;object-position:50% 0}}

/* A quiet home link closes each page; the menu stands alone above. */
header{justify-content:flex-end}
header #menu-toggle{gap:9px}
header #menu-toggle .menu-word,header #menu-toggle .menu-bars{height:22px}
.footer-home{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:32px auto 0}
.footer-home .brand-mark{width:28px;height:27.257px}
.footer-home .brand-mark img{position:absolute;left:-28.00312%;top:-38.14103%;width:156.00624%;height:auto;max-width:none;object-fit:contain}
.footer-home:focus-visible{outline:1px solid currentColor;outline-offset:4px}
.entry-footer{padding:0 5% 24px;background:#08090a}
.entry-footer .footer-home{margin-top:0}

/* Compact page opening now that the header contains only the menu. */
header{height:64px;padding-top:10px;padding-bottom:10px}
#content>:first-child:not(.entry){padding-top:80px}
@media(max-width:760px){
 header{height:60px;padding-top:8px;padding-bottom:8px}
 #content>:first-child:not(.entry){padding-top:72px}
}

/* Keep the section-page home link within the existing footer row. */
.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
.footer-bottom .footer-home{margin:0}
.footer-bottom>div{justify-self:end}
@media(max-width:480px){
 .footer-bottom{gap:8px;font-size:11px}
 .footer-bottom>div{gap:12px}
}

/* Interactive lighting keeps the approved render's geometry and placement. */
.blender-stage .warehouse-plate{z-index:0}
.blender-stage .blender-skull{z-index:1}
.blender-stage canvas.skull-relight,.blender-stage canvas.skull-atmosphere{position:absolute;inset:0;width:100%;height:100%;opacity:1;pointer-events:none;transition:none}
.blender-stage canvas.skull-relight{z-index:2}
.blender-stage canvas.skull-atmosphere{z-index:3;mask-image:linear-gradient(#000 75%,transparent 100%)}
.blender-stage.lighting-ready .blender-skull{opacity:0}
.blender-stage:after{z-index:4}


/* Original photograph and its light share precisely the same crop. */
.photo-stage{isolation:isolate}
.photo-stage .iron-fallback{object-fit:cover;object-position:50% 0;mask-image:none}
.photo-stage canvas.photo-light{opacity:1;pointer-events:none;mix-blend-mode:normal;transition:none}
.photo-stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 85%,#08090a)}
