/* Delivery scope only. All original layout, materials and shader values are retained. */
html,body { height:100%; max-height:100%; overflow:hidden !important; overscroll-behavior:none; }
/* The captured app owns a nested Lenis scroller; lock it before hydration too. */
.no-scrollbar.overflow-y-auto { overflow:hidden !important; overflow:clip !important; overscroll-behavior:none; }
/* Hide the four cover labels from first paint while retaining grid spacing. */
.portfolio-hidden-discipline,
.portfolio-hidden-tagline,
.portfolio-hidden-navigation,
span[class~="lg:col-start-1"][class~="lg:col-span-3"][class~="font-sans"],
span[class~="lg:col-start-4"][class~="text-balance"],
header [class~="hidden"][class~="lg:flex"] > button {
 visibility:hidden !important;
 pointer-events:none !important;
}
/* Later DOM sections remain layout anchors for the original scene, outside the viewport. */
html { scrollbar-width:none; }
html:not([data-portfolio-ready="true"]) body::after {
 content:"";position:fixed;inset:0;z-index:2147482999;pointer-events:none;
 background:#0b1443 url('/poster/hero-desktop.webp') center/cover no-repeat;
}
::-webkit-scrollbar { display:none; }
#portfolio-static-cover {
  position:fixed;inset:0;z-index:2147483000;box-sizing:border-box;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  background:#0b1443 url('/poster/hero-desktop.webp') center/cover no-repeat;color:#fbfaf4;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;
}
.portfolio-static-brand {position:absolute;top:24px;left:24px;font:13px monospace;}
.portfolio-static-word {
  font-size:clamp(48px,15vw,250px);font-weight:800;letter-spacing:-.065em;line-height:1.1;
  color:#a4c6ef;text-shadow:0 2px 1px #f0f6ff,0 5px 12px #27476e;
}
.portfolio-static-heading {position:absolute;left:24px;bottom:64px;font-size:clamp(18px,3vw,44px);font-weight:700;line-height:1.05;}
.portfolio-static-brand,.portfolio-static-word,.portfolio-static-heading {visibility:hidden;}
@media(max-width:767px){
 html:not([data-portfolio-ready="true"]) body::after,#portfolio-static-cover {background-image:url('/poster/hero-mobile.webp');background-size:cover;background-position:center;}
}
.portfolio-static-status {position:absolute;left:24px;right:24px;bottom:20px;font-size:11px;line-height:1.6;color:#aeb8bd;}
.portfolio-static-status button {margin-left:12px;border:1px solid #66727a;background:transparent;color:#fbfaf4;border-radius:4px;padding:3px 7px;cursor:pointer;}
html.light #portfolio-static-cover {background:#fbfaf4;color:#0f1111;}
html.light .portfolio-static-status {color:#4f5e68;}
html.light .portfolio-static-status button {color:#0f1111;}
.hero-intro {
  font-family: "mono", "SFMono-Regular", Consolas, "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", monospace;
  line-height: 1.6;
  overflow-wrap: break-word;
  line-break: strict;
}
