/* Code cinema replaces the former gravity presentation. */
#code-field{position:fixed;inset:0;z-index:0;pointer-events:none;width:100%;height:100%;opacity:.9;mask-image:linear-gradient(90deg,#000b,#0003 43%,#0008 64%,#000);-webkit-mask-image:linear-gradient(90deg,#000b,#0003 43%,#0008 64%,#000)}
.code-edition .gravity-atmosphere{background:radial-gradient(ellipse at 83% 12%,#166e4e2a,transparent 54%),linear-gradient(120deg,#111a19,#101918)}
.code-edition .gravity-hero-track{height:auto;min-height:0}
.code-edition .gravity-hero{position:relative;top:auto;min-height:calc(100svh - 92px);padding-block:65px 45px;gap:4vw 5vw}
.code-edition .gravity-product{perspective:none;max-width:670px;justify-self:end;width:100%}
.code-edition .gravity-product-inner{aspect-ratio:1.04;min-height:400px;border-radius:16px;border:1px solid #6daf873d;background:radial-gradient(ellipse at 50% 40%,#25574055,#0d1b17 73%);transform:none!important;transform-style:flat;overflow:hidden;isolation:isolate;box-shadow:0 28px 65px -32px #0009}
.code-edition .gravity-product-inner>img{width:50%;max-height:325px;position:relative;z-index:2;animation:none;translate:none;rotate:none;transform:none;filter:drop-shadow(0 16px 20px #0009)}
.code-edition .gravity-product-top{top:24px;left:24px;right:24px;justify-content:space-between;font-size:12px;gap:14px;flex-wrap:wrap;line-height:1.5;padding-bottom:15px;border-bottom:1px solid #89c19c36;z-index:3}
.code-edition .gravity-product-meta{bottom:30px;z-index:3}.code-edition .gravity-product-meta strong{font-size:clamp(27px,2.4vw,38px)}
.code-edition .gravity-product:focus-visible{border-radius:16px}
.code-edition [data-code-panel]{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;opacity:.88;mask-image:linear-gradient(0deg,transparent,#000 18%,#000 85%,transparent)}
.code-edition [data-code-reveal]{position:relative;transform:none;backface-visibility:visible}
.code-edition .code-reveal-ready{opacity:0;clip-path:none;transition:opacity .4s ease}
.code-edition .code-reveal-ready.code-visible{opacity:1;animation:code-panel-unveil 1050ms cubic-bezier(.22,.7,.25,1) both}
@keyframes code-panel-unveil{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
.code-edition figure[data-code-reveal]::after{content:"";position:absolute;z-index:4;left:0;right:0;top:-8%;height:20%;opacity:0;pointer-events:none;background:linear-gradient(0deg,#a6ffd854,#53db9720,transparent);border-bottom:1px solid #b1ffcf8c}
.code-edition figure.code-visible[data-code-reveal]::after{animation:code-picture-scan 1.45s cubic-bezier(.2,.7,.3,1) both}
@keyframes code-picture-scan{0%{transform:translateY(0);opacity:0}15%{opacity:.7}95%{opacity:.4}100%{transform:translateY(600%);opacity:0}}
/* Brand word fits its column as a single unbroken word, including the final E. */
.code-edition .forge-hero{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:5vw;min-height:0;padding-block:70px;align-items:center}
.code-edition .forge-hero-copy{container-type:inline-size;width:100%;min-width:0}
.code-edition .forge-hero h1{display:block;width:100%;max-width:100%;margin:0;padding:0;overflow:visible;overflow-wrap:normal;word-break:normal;white-space:normal;line-height:1.12;font-size:clamp(2.5rem,5.7vw,6rem);letter-spacing:-.055em}
@supports(font-size:1cqw){.code-edition .forge-hero h1{font-size:clamp(2rem,13.2cqw,6rem)}}
.code-edition .forge-hero h1 .forge-brand-word{display:block;width:max-content;max-width:100%;white-space:nowrap;color:#edf7f2;line-height:1.15;letter-spacing:-.055em}
.code-edition .forge-hero h1 .forge-brand-word>span{color:#88e7bf}
.code-edition .forge-hero h1 small{font:500 14px/1.6 var(--mono);letter-spacing:.18em;margin-top:18px;color:#a4cebb}
.code-edition .forge-hero-copy>h2{font-size:clamp(26px,2.6vw,40px);line-height:1.3;margin-top:30px}
.code-edition .forge-art{position:relative;isolation:isolate;overflow:hidden;border:1px solid #81b89740;border-radius:16px;background:radial-gradient(ellipse at center,#17443177,#0d1c16 72%);box-shadow:0 35px 70px -40px #0009;min-height:0}
.code-edition [data-forge-code-stage]{position:relative;display:block;width:100%;height:clamp(310px,35vw,540px);z-index:2;padding:50px 50px 32px}
.code-edition [data-forge-code-stage] .forge-symbol{display:block;position:relative;inset:auto;margin:0 auto;width:100%;height:100%;object-fit:contain;max-width:100%;animation:none!important;transform:none!important;filter:drop-shadow(0 18px 20px #0008)}
.code-edition .forge-scene-caption{position:relative;inset:auto;z-index:3;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:19px 23px;margin:0;border-top:1px solid #8ebfa335;color:#b6d6c4;font:12px/1.5 var(--mono)}
.code-edition .forge-scene-caption span{display:inline;font-size:12px}
.code-edition .forge-section-heading{align-items:start;flex-wrap:wrap;gap:22px 35px}
.code-edition .forge-section-heading h2{flex:1 1 470px;min-width:0}
.code-edition .forge-section-heading>p:last-child{flex:1 1 220px;max-width:350px}
@media(max-width:1000px){.code-edition .gravity-product-inner{min-height:340px}.code-edition .gravity-product-top{left:18px;right:18px;top:18px;font-size:11px}.code-edition .gravity-product-meta{bottom:25px}.code-edition .gravity-hero{padding-block:50px 40px}.code-edition .forge-hero{grid-template-columns:1fr;gap:40px}.code-edition .forge-hero-copy{max-width:780px}.code-edition .forge-art{width:100%;max-width:690px;justify-self:center}.code-edition [data-forge-code-stage]{height:420px}.code-edition .forge-hero h1{font-size:clamp(2.5rem,8.4vw,6rem)}}
@media(max-width:650px){.code-edition .gravity-hero{min-height:0;padding-block:40px;gap:35px}.code-edition .gravity-product{max-width:490px;justify-self:center;margin:0}.code-edition .gravity-product-inner{aspect-ratio:1.12;min-height:320px}.code-edition .gravity-product-top{font-size:11px;gap:8px}.code-edition .gravity-product-inner>img{width:46%;max-height:210px}.code-edition .gravity-product-meta{bottom:20px}.code-edition .gravity-product-meta strong{font-size:27px}.code-edition .gravity-product-meta small{font-size:13px}.code-edition .forge-hero{padding-block:45px;gap:35px}.code-edition .forge-hero h1{font-size:clamp(2.125rem,9.8vw,4rem)}.code-edition .forge-hero-copy>h2{font-size:28px}.code-edition [data-forge-code-stage]{height:330px;padding:30px}.code-edition .forge-scene-caption{padding:16px 20px;font-size:12px}.code-edition .forge-section-heading h2{font-size:34px}.code-edition .forge-section-heading>p:last-child{max-width:none}#code-field{opacity:.5}}
@media(max-width:370px){.code-edition .gravity-product-top{font-size:10px}.code-edition .gravity-product-top span{letter-spacing:0}.code-edition .gravity-product-inner{min-height:320px}.code-edition .gravity-product-meta small{font-size:12px}.code-edition .forge-hero h1{font-size:9.7vw}}
.motion-paused .code-reveal-ready{opacity:1;clip-path:none;transition:none;animation:none!important}.motion-paused figure[data-code-reveal]::after{animation:none!important;opacity:0}
@media(prefers-reduced-motion:reduce){.code-edition .code-reveal-ready{opacity:1;clip-path:none;transition:none;animation:none!important}.code-edition figure[data-code-reveal]::after{animation:none;opacity:0}}
@media print{#code-field,[data-code-panel]{display:none}.code-edition .code-reveal-ready{opacity:1;clip-path:none;animation:none}.code-edition .gravity-hero{display:block;min-height:0}.code-edition [data-forge-code-stage]{height:200px}}
/* Reserve a separate grid row for each hero element; artwork cannot cover labels. */
.code-edition .gravity-product-inner{display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;align-items:center;gap:22px;height:clamp(410px,34vw,560px);min-height:0;aspect-ratio:auto;padding:23px}
.code-edition .gravity-product-top{position:static;width:100%;align-self:start;margin:0;padding:0 0 14px}
.code-edition .gravity-product-inner>img{grid-row:2;width:72%;height:100%;min-height:0;max-height:100%;object-fit:contain;max-width:320px}
.code-edition .gravity-product-meta{position:static;align-self:end;width:100%;margin:0;padding:0}
@media(max-width:650px){.code-edition .gravity-product-inner{height:365px;padding:20px;gap:16px}.code-edition .gravity-product-inner>img{width:64%;max-width:220px}.code-edition .gravity-product-meta small{margin-top:7px}}
@supports(font-size:1cqw){.code-edition .forge-hero h1{font-size:clamp(1rem,13cqw,6rem)}}
/* Each paired project begins on the same grid line. */
.code-edition .work-grid{align-items:start;perspective:none}
.code-edition .work-card:not(.work-card-wide){padding-top:0;transform-style:flat}
.code-edition .work-caption{align-items:flex-start}
/* The logo bitmap and its particle mask share one bounded, uniformly padded box. */
.code-edition .blacknest-logo-stage{width:100%;height:clamp(320px,43vw,620px);min-height:0;max-height:none;border-radius:16px}
.code-edition .blacknest-logo-stage>.blacknest-logo{display:block;width:100%;height:100%;max-width:none;box-sizing:border-box;object-fit:contain;object-position:center;padding:clamp(20px,4vw,70px);transform:none}
.code-edition .blacknest-logo-stage>.logo-assembly-canvas{inset:0;width:100%;height:100%;transform:none}
.code-edition .blacknest-logo-stage .matrix-canvas{opacity:.48}
.code-edition .blacknest-picture>img{width:100%;height:100%;box-sizing:border-box;object-fit:contain;object-position:center;padding:clamp(20px,2.5vw,40px);transform:none;filter:none}
.code-edition .defense-controls:empty{display:none}
@media(max-width:650px){#code-field{opacity:.75}.code-edition .blacknest-logo-stage{height:clamp(260px,72vw,420px);border-radius:12px}}
