:root{--nyc-orange:#fa4005;--ink:#090a0a;--cream:#f1ece4;--line:rgba(255,255,255,.12)}
.nyc-case{background:var(--ink);color:#f5f0e8}.nyc-content-offset{padding-left:150px}.nyc-story-rail{position:fixed;left:0;top:0;bottom:0;width:150px;z-index:65;background:rgba(8,9,9,.94);backdrop-filter:blur(16px);border-right:1px solid rgba(255,255,255,.11);padding:105px 18px 24px;color:#f2eee7;display:flex;flex-direction:column;box-shadow:20px 0 60px rgba(0,0,0,.24)}.rail-brand{margin-bottom:30px}.rail-brand span,.rail-foot small{display:block;font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--nyc-orange)}.rail-brand strong{display:block;margin-top:5px;font:400 17px/1.15 'Lora',serif}.rail-list{list-style:none;padding:0;margin:0;display:grid;gap:19px}.rail-item{display:grid;grid-template-columns:12px 1fr;gap:9px;align-items:start;position:relative;color:#b4ada3;transition:.3s ease}.rail-item::after{content:'';position:absolute;left:4px;top:12px;height:30px;width:1px;background:rgba(255,255,255,.16)}.rail-item:last-child::after{display:none}.rail-dot{width:8px;height:8px;border:1px solid #c6beb3;border-radius:50%;margin-top:2px;background:#0a0a0a}.rail-item b{font-size:8px;letter-spacing:.13em;margin-right:6px}.rail-name{display:block;font-size:9px;letter-spacing:.11em;text-transform:uppercase;line-height:1.3;margin-top:2px}.rail-item.is-active{color:#fff}.rail-item.is-active .rail-dot{background:var(--nyc-orange);border-color:var(--nyc-orange);box-shadow:0 0 18px rgba(250,64,5,.45)}.rail-foot{margin-top:auto}.rail-seal{margin-top:12px;width:62px;height:62px;border:1px solid rgba(255,255,255,.28);border-radius:50%;display:grid;place-items:center;text-align:center;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#d9d2c7}.nyc-story-rail.is-light{background:rgba(244,239,231,.93);color:#111;border-color:rgba(0,0,0,.12);box-shadow:20px 0 60px rgba(0,0,0,.08)}.nyc-story-rail.is-light .rail-item{color:#777067}.nyc-story-rail.is-light .rail-item.is-active{color:#111}.nyc-story-rail.is-light .rail-dot{background:#eee8df;border-color:#766e66}.nyc-story-rail.is-light .rail-item.is-active .rail-dot{background:var(--nyc-orange);border-color:var(--nyc-orange)}.nyc-story-rail.is-light .rail-seal{border-color:rgba(0,0,0,.24);color:#333}

.nyc-hero{position:relative;min-height:104vh;background:#090a0a;overflow:hidden;isolation:isolate}.hero-storefront{position:absolute;inset:0 0 0 38%;z-index:-5}.hero-storefront img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.06) brightness(.52);transform:scale(1.04)}.hero-shade{position:absolute;inset:0;z-index:-4;background:linear-gradient(90deg,#070808 0%,#070808 33%,rgba(7,8,8,.92) 48%,rgba(7,8,8,.52) 72%,rgba(7,8,8,.68) 100%),linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.54) 62%,rgba(0,0,0,.72) 100%)}.hero-vignette{position:absolute;inset:-15%;z-index:-3;background:radial-gradient(circle at 67% 74%,rgba(250,64,5,.16),transparent 22%),radial-gradient(circle at 61% 45%,rgba(255,255,255,.08),transparent 13%),radial-gradient(circle at 75% 28%,rgba(250,64,5,.09),transparent 18%),radial-gradient(circle at 20% 30%,rgba(255,255,255,.03),transparent 20%)}.nyc-hero-inner{min-height:104vh;display:grid;grid-template-columns:.96fr 1.04fr;gap:28px;align-items:center;padding:148px clamp(34px,5vw,72px) 64px}.nyc-hero-copy{position:relative;z-index:5}.nyc-eyebrow{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--nyc-orange);margin-bottom:22px}.nyc-hero h1{font-size:clamp(76px,8.6vw,146px);line-height:.82;letter-spacing:-.067em;margin:0;max-width:7.7ch}.nyc-hero h1 em{font:400 .9em/1 'Lora',serif;color:var(--nyc-orange)}.nyc-hero-deck{font-size:clamp(16px,1.2vw,20px);line-height:1.72;color:#cdc5ba;max-width:41ch;margin:34px 0 25px}.nyc-service-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 22px;max-width:520px}.nyc-service-list li{font-size:12px;color:#e2dbd2}.nyc-service-list li::before{content:'✓';color:var(--nyc-orange);margin-right:9px}.nyc-hero-cta{display:inline-flex;gap:12px;margin-top:34px;color:var(--nyc-orange);font-size:10px;letter-spacing:.15em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(250,64,5,.35);padding-bottom:5px}.nyc-hero-table{position:relative;height:min(78vh,780px);min-height:560px;perspective:1400px;align-self:end}.hero-surface{position:absolute;left:-10%;right:-4%;bottom:-4%;height:48%;border-radius:38px;background:radial-gradient(circle at 45% 15%,rgba(255,255,255,.14),transparent 22%),radial-gradient(circle at 62% 28%,rgba(250,64,5,.18),transparent 28%),linear-gradient(180deg,rgba(46,46,46,.18),rgba(7,7,7,.1) 22%,rgba(0,0,0,.9) 72%);filter:blur(.3px);box-shadow:0 -20px 80px rgba(0,0,0,.22) inset,0 30px 80px rgba(0,0,0,.45)}.hero-surface::before,.hero-surface::after{content:'';position:absolute;pointer-events:none}.hero-surface::before{left:9%;right:9%;top:8%;height:26%;background:radial-gradient(ellipse at center,rgba(255,255,255,.09),transparent 70%);filter:blur(12px)}.hero-surface::after{left:12%;right:12%;bottom:10%;height:30%;background:radial-gradient(ellipse at center,rgba(250,64,5,.08),transparent 68%);filter:blur(22px)}.plate{position:absolute;margin:0;overflow:hidden;background:#131313;box-shadow:0 40px 90px rgba(0,0,0,.58);border-radius:8px;transform-style:preserve-3d}.plate::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 22%,transparent 75%,rgba(0,0,0,.18));pointer-events:none}.plate img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.05) contrast(1.08) brightness(.94)}.plate-a{width:70%;height:44%;left:2%;bottom:12%;transform:rotate(-5deg) translateZ(70px)}.plate-b{width:55%;height:35%;right:0;bottom:0;transform:rotate(6deg) translateZ(110px)}.hero-order-card{position:absolute;right:5%;top:10%;width:33%;height:40%;margin:0;background:#121212;border:1px solid rgba(255,255,255,.18);box-shadow:0 32px 70px rgba(0,0,0,.52);transform:rotate(5deg) translateZ(60px);overflow:hidden;border-radius:20px}.hero-order-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) contrast(1.08) saturate(.78)}.hero-order-card figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 14px 16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.82) 30%,rgba(0,0,0,.92));display:grid;gap:5px}.hero-order-card small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#d7cdc1}.hero-order-card strong{font-size:22px;line-height:.95;max-width:8ch}.hero-order-card span{font-size:10px;line-height:1.45;color:#d0c7bb;max-width:18ch}.hero-order-card b{display:inline-flex;align-self:start;margin-top:6px;background:var(--nyc-orange);color:#111;padding:7px 10px;border-radius:999px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.hero-note{position:absolute;left:32%;bottom:9%;background:#e8ddca;color:#221c17;padding:12px 14px;font:400 14px/1.4 'Lora',serif;transform:rotate(-4deg);box-shadow:0 10px 30px rgba(0,0,0,.3);z-index:4}.nyc-smoke span{position:absolute;border-radius:50%;filter:blur(30px);background:radial-gradient(circle,rgba(255,255,255,.19),rgba(255,255,255,.06) 42%,transparent 74%);pointer-events:none;z-index:2;mix-blend-mode:screen;opacity:.7}.nyc-smoke .s1{width:340px;height:340px;left:52%;top:9%;animation:smokeA 10s ease-in-out infinite}.nyc-smoke .s2{width:280px;height:280px;left:64%;top:16%;animation:smokeB 12s ease-in-out infinite}.nyc-smoke .s3{width:240px;height:240px;left:45%;top:23%;animation:smokeA 14s ease-in-out infinite reverse}.nyc-smoke .s4{width:220px;height:220px;left:58%;top:34%;animation:smokeB 11s ease-in-out infinite reverse}.nyc-ember-layer span{position:absolute;width:4px;height:4px;background:#ff7b36;border-radius:50%;box-shadow:0 0 10px rgba(250,64,5,.85);opacity:0;animation:ember 6s linear infinite;z-index:2}.nyc-ember-layer span:nth-child(1){left:54%;bottom:10%;animation-delay:.3s}.nyc-ember-layer span:nth-child(2){left:62%;bottom:18%;animation-delay:1.2s}.nyc-ember-layer span:nth-child(3){left:72%;bottom:13%;animation-delay:2s}.nyc-ember-layer span:nth-child(4){left:84%;bottom:21%;animation-delay:2.7s}.nyc-ember-layer span:nth-child(5){left:48%;bottom:27%;animation-delay:3.3s}.nyc-ember-layer span:nth-child(6){left:77%;bottom:34%;animation-delay:4.1s}.nyc-ember-layer span:nth-child(7){left:58%;bottom:40%;animation-delay:4.8s}.nyc-ember-layer span:nth-child(8){left:91%;bottom:30%;animation-delay:5.3s}@keyframes smokeA{50%{transform:translate(24px,-34px) scale(1.12);opacity:.88}}@keyframes smokeB{50%{transform:translate(-18px,-25px) scale(.94);opacity:.7}}@keyframes ember{0%{transform:translateY(0) scale(.6);opacity:0}12%{opacity:1}100%{transform:translateY(-150px) translateX(32px) scale(1.2);opacity:0}}

.nyc-story-film{background:#0b0c0c;padding:90px clamp(28px,4.8vw,70px);display:grid;grid-template-columns:.7fr 2fr;gap:40px;border-top:1px solid var(--line)}.story-intro small,.nyc-engine-head small,.commercial-copy small,.nyc-outcome-intro small,.nyc-next small{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--nyc-orange)}.story-intro h2{font:400 clamp(42px,5vw,80px)/.92 'Lora',serif;margin:14px 0 24px;letter-spacing:-.04em}.story-intro h2 em{color:var(--nyc-orange)}.story-intro p{font-size:15px;line-height:1.75;color:#aaa39a;max-width:29ch}.story-deck{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;overflow:hidden}.story-card{position:relative;min-height:420px;background:#111;border:1px solid rgba(255,255,255,.1);overflow:hidden;transform:skewX(-3deg)}.story-card>span{position:absolute;top:14px;left:14px;z-index:3;font:400 45px/1 'Lora',serif;color:rgba(255,255,255,.13)}.story-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.53) saturate(.7);transition:.7s ease}.story-card>div{position:absolute;left:18px;right:18px;bottom:18px;z-index:3;transform:skewX(3deg)}.story-card b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.story-card p{font-size:12px;line-height:1.55;color:#bcb5aa;margin:0}.story-card:hover img{transform:scale(1.05);filter:brightness(.68) saturate(.9)}

.nyc-problem{background:var(--cream);color:#111}.nyc-problem-wrap{display:grid;grid-template-columns:1fr 1.15fr;min-height:300vh}.nyc-problem-visual{height:100vh;position:sticky;top:0;overflow:hidden;background:#0b0b0b}.diag-image{width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.08) brightness(.66);transition:filter .5s ease,transform 1.2s ease}.diag-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.72))}.diag-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(250,64,5,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(250,64,5,.08) 1px,transparent 1px);background-size:72px 72px;opacity:0;transition:.4s ease}.dn{position:absolute;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(10,10,10,.72);border:1px solid rgba(250,64,5,.45);padding:8px 9px;opacity:0;transform:translateY(8px);transition:.35s ease}.d1{left:12%;top:20%}.d2{right:18%;top:29%}.d3{left:34%;top:48%}.d4{right:12%;bottom:31%}.d5{left:17%;bottom:18%}.nyc-problem-visual.is-analyzing .diag-grid,.nyc-problem-visual.is-analyzing .dn{opacity:1}.nyc-problem-visual.is-analyzing .dn{transform:none}.nyc-problem-visual.is-analyzing .diag-image{filter:saturate(.45) contrast(1.15) brightness(.54);transform:scale(1.025)}.diag-caption{position:absolute;left:36px;right:36px;bottom:38px;color:#fff;z-index:3}.diag-caption small{font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:#d7cfc3}.diag-caption strong{display:block;font-size:24px;margin:10px 0 9px}.diag-caption p{font-size:14px;line-height:1.65;color:#d3cbc1;max-width:31ch;margin:0}.nyc-problem-copy{padding:0 clamp(30px,5vw,78px)}.nyc-problem-chapter{min-height:100vh;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid #d8cfc3}.nyc-problem-chapter small{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8b8379}.nyc-problem-chapter h2{font-size:clamp(54px,6.4vw,102px);line-height:.89;letter-spacing:-.06em;margin:18px 0 24px;max-width:7.8ch}.nyc-problem-chapter h2 em{font:400 1em/1 'Lora',serif;color:#111}.nyc-problem-chapter p{font-size:clamp(17px,1.35vw,21px);line-height:1.75;max-width:38ch;margin:0}.chapter-meta{margin-top:26px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#766e65}

.nyc-engine{background:#0c0d0d;padding:100px clamp(28px,4.8vw,70px);color:#fff}.nyc-engine-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:50px}.nyc-engine-head h2,.commercial-copy h2,.nyc-outcome-intro h2,.nyc-next h2{font-size:clamp(54px,6.4vw,100px);line-height:.88;letter-spacing:-.055em;margin:12px 0 0}.nyc-engine-head h2 em,.commercial-copy h2 em,.nyc-outcome-intro h2 em,.nyc-next h2 em{font:400 1em/1 'Lora',serif;color:var(--nyc-orange)}.nyc-engine-head p{font-size:18px;line-height:1.7;color:#bcb5aa;max-width:34ch;margin:0}.nyc-engine-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid rgba(255,255,255,.12)}.nyc-engine-card{padding:18px;border-right:1px solid rgba(255,255,255,.12);min-height:390px;position:relative}.nyc-engine-card:last-child{border-right:0}.nyc-engine-card>span{font-size:9px;color:var(--nyc-orange);letter-spacing:.12em}.engine-media{height:175px;margin:18px 0;overflow:hidden;background:#151515}.engine-media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.75) contrast(1.08)}.nyc-engine-card h3{font-size:16px;margin:0 0 12px}.nyc-engine-card p{font-size:12px;line-height:1.6;color:#999189;margin:0}

.nyc-commercial{background:#0a0a0a;padding:100px clamp(28px,4.8vw,70px);display:grid;grid-template-columns:.55fr 1.45fr;gap:34px;color:#fff;border-top:1px solid var(--line)}.commercial-copy{align-self:end}.commercial-copy p{font-size:16px;line-height:1.7;color:#aaa39a;max-width:30ch}.commercial-toggle{margin-top:24px;border:0;background:none;color:var(--nyc-orange);font:500 10px/1 Poppins,sans-serif;letter-spacing:.15em;text-transform:uppercase;padding:0 0 5px;border-bottom:1px solid rgba(250,64,5,.35);cursor:pointer}.commercial-stage{position:relative;height:min(66vh,620px);overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.12)}.commercial-video{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.12) brightness(.8)}.commercial-vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.45))}.commercial-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid rgba(250,64,5,.75);border-radius:50%;display:grid;place-items:center;color:var(--nyc-orange);font-size:22px;background:rgba(0,0,0,.32);backdrop-filter:blur(7px)}.commercial-filmstrip{grid-column:2;display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.film-thumb{border:1px solid rgba(255,255,255,.14);background:#111;padding:0;cursor:pointer;position:relative;overflow:hidden;text-align:left}.film-thumb img{width:100%;height:110px;object-fit:cover;display:block;filter:saturate(.72) contrast(1.05);transition:.3s ease}.film-thumb span{position:absolute;left:10px;bottom:8px;font-size:8px;letter-spacing:.16em;text-transform:uppercase;padding:5px 7px;background:rgba(0,0,0,.68);color:#fff}.film-thumb:hover img,.film-thumb.is-active img{filter:saturate(1) contrast(1.08);transform:translateY(-3px)}.film-thumb.is-active{border-color:rgba(250,64,5,.68);box-shadow:0 0 0 1px rgba(250,64,5,.35) inset}

.nyc-outcomes{background:#0c0d0d;color:#fff;padding:90px clamp(28px,4.8vw,70px);border-top:1px solid var(--line)}.nyc-outcome-intro{display:grid;grid-template-columns:.7fr 1.3fr;align-items:end;gap:40px}.nyc-outcome-intro p{font-size:18px;line-height:1.7;color:#b3aba1;max-width:33ch;margin:0}.nyc-outcomes-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(255,255,255,.12);margin-top:50px}.nyc-outcomes-grid article{padding:28px 24px;border-right:1px solid rgba(255,255,255,.12)}.nyc-outcomes-grid article:last-child{border-right:0}.nyc-outcomes-grid b{display:block;font-size:15px;margin-bottom:11px;color:#f4efe7}.nyc-outcomes-grid b::before{content:'◌';color:var(--nyc-orange);margin-right:9px}.nyc-outcomes-grid span{font-size:12px;line-height:1.6;color:#918b84}.nyc-provisional-stats{margin-top:52px;border:1px dashed rgba(250,64,5,.38);padding:18px}.nyc-provisional-stats>small{font-size:8px;letter-spacing:.14em;color:#887f76}.nyc-provisional-stats>div{display:grid;grid-template-columns:repeat(4,1fr);margin-top:14px}.nyc-provisional-stats span{padding:12px 16px;border-right:1px solid rgba(255,255,255,.1);font-size:11px;color:#9d968e}.nyc-provisional-stats span:last-child{border-right:0}.nyc-provisional-stats b{display:block;font:400 30px/1 'Lora',serif;color:var(--nyc-orange);margin-bottom:8px}
.nyc-next{background:#eee8df;color:#111;padding:95px clamp(28px,4.8vw,70px);display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.nyc-next-copy p{font-size:18px;line-height:1.75;margin:0 0 20px;color:#342f2b}.nyc-next-cta{display:inline-flex;gap:10px;color:#111;text-decoration:none;font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #b8aea4;padding-bottom:5px}.nyc-build-state{background:var(--nyc-orange);color:#111;padding:74px clamp(28px,4.8vw,70px);display:grid;grid-template-columns:.55fr 1.5fr .75fr;gap:38px;align-items:end}.nyc-build-state small{font-size:9px;letter-spacing:.16em;text-transform:uppercase}.nyc-build-state h2{font-size:clamp(48px,6vw,92px);line-height:.86;letter-spacing:-.06em;margin:0}.nyc-build-state h2 em{font:400 1em/1 'Lora',serif}.nyc-build-state p{font-size:16px;line-height:1.65;margin:0}

@media(max-width:1180px){.nyc-story-rail{width:118px;padding-left:14px;padding-right:12px}.nyc-content-offset{padding-left:118px}.rail-name{font-size:8px}.nyc-hero-inner{grid-template-columns:1fr 1fr;padding-left:34px;padding-right:34px}.nyc-hero h1{font-size:clamp(64px,7.2vw,112px)}.nyc-story-film{grid-template-columns:.8fr 1.8fr}.story-deck{grid-template-columns:repeat(2,1fr)}.story-card{min-height:320px}.nyc-engine-grid{grid-template-columns:repeat(2,1fr)}.nyc-engine-card{border-bottom:1px solid rgba(255,255,255,.12)}.nyc-engine-card:nth-child(2n){border-right:0}.nyc-outcomes-grid{grid-template-columns:repeat(2,1fr)}.nyc-outcomes-grid article{border-bottom:1px solid rgba(255,255,255,.1)}.nyc-provisional-stats>div{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.nyc-story-rail{left:14px;right:14px;top:82px;bottom:auto;width:auto;height:48px;border:1px solid rgba(255,255,255,.15);border-radius:28px;padding:0 16px;display:flex;align-items:center}.rail-brand,.rail-foot,.rail-name,.rail-no,.rail-item::after{display:none}.rail-list{display:flex;gap:18px;width:100%;justify-content:space-between}.rail-item{display:block}.rail-dot{margin:0}.nyc-content-offset{padding-left:0}.nyc-hero-inner{display:block;min-height:auto;padding:160px 22px 60px}.hero-storefront{inset:0}.hero-shade{background:linear-gradient(180deg,rgba(7,7,7,.78),#080909 58%,#080909)}.hero-vignette{background:radial-gradient(circle at 55% 60%,rgba(250,64,5,.16),transparent 24%),radial-gradient(circle at 70% 24%,rgba(255,255,255,.06),transparent 15%)}.nyc-hero-table{height:540px;min-height:0;margin-top:34px}.hero-surface{left:-4%;right:-4%;bottom:-3%;height:44%}.plate-a{width:72%;height:42%;left:1%;bottom:14%}.plate-b{width:55%;height:33%;right:0;bottom:1%}.hero-order-card{width:41%;height:31%;top:8%;right:2%}.hero-note{left:30%;bottom:10%}.nyc-story-film{display:block;padding:80px 22px}.story-deck{margin-top:36px}.nyc-problem-wrap{display:block;min-height:auto}.nyc-problem-visual{position:relative;height:72vh;min-height:520px}.nyc-problem-copy{padding:0 22px}.nyc-problem-chapter{min-height:auto;padding:82px 0}.nyc-engine,.nyc-commercial,.nyc-outcomes,.nyc-next,.nyc-build-state{padding-left:22px;padding-right:22px}.nyc-engine-head,.nyc-commercial,.nyc-outcome-intro,.nyc-next,.nyc-build-state{display:block}.nyc-engine-head p,.commercial-copy,.nyc-outcome-intro p,.nyc-next-copy{margin-top:26px}.commercial-stage{height:56vw;min-height:380px;margin-top:30px}.commercial-filmstrip{grid-column:auto;margin-top:8px}.nyc-outcomes-grid{grid-template-columns:1fr 1fr}.nyc-build-state p{margin-top:25px}}
@media(max-width:620px){.nyc-hero h1{font-size:clamp(54px,16vw,78px)}.nyc-service-list{grid-template-columns:1fr}.nyc-hero-table{height:430px}.hero-surface{height:42%}.plate-a{width:84%;height:43%;left:-2%;bottom:22%}.plate-b{width:76%;height:36%;right:-4%;bottom:3%}.hero-order-card{width:42%;height:29%;top:6%;right:-1%}.hero-order-card strong{font-size:16px}.hero-note{display:none}.story-deck{grid-template-columns:1fr}.nyc-engine-grid,.nyc-outcomes-grid,.nyc-provisional-stats>div{grid-template-columns:1fr}.nyc-engine-card,.nyc-outcomes-grid article,.nyc-provisional-stats span{border-right:0}.commercial-filmstrip{grid-template-columns:repeat(3,1fr)}.film-thumb img{height:82px}.nyc-problem-visual{height:65vh;min-height:450px}.diag-caption{left:22px;right:22px;bottom:24px}.nyc-outcome-intro{display:block}}
@media(prefers-reduced-motion:reduce){.nyc-ember-layer span,.nyc-smoke span{animation:none}.plate,.hero-order-card,.story-card img,.film-thumb img{transition:none!important}}

/* ===== V2.8.2 HERO ART-DIRECTION PASS ===== */
@media(min-width:901px){
  .nyc-hero{min-height:100vh;}
  .hero-storefront{inset:0 0 0 27%;}
  .hero-storefront img{filter:saturate(.86) contrast(1.08) brightness(.49);transform:scale(1.035);}
  .hero-shade{background:linear-gradient(90deg,#070808 0%,#070808 29%,rgba(7,8,8,.95) 41%,rgba(7,8,8,.61) 58%,rgba(7,8,8,.29) 77%,rgba(7,8,8,.5) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.34) 54%,rgba(0,0,0,.72) 100%);}
  .nyc-hero-inner{position:relative;display:block;min-height:100vh;padding:132px clamp(32px,4.4vw,66px) 66px;}
  .nyc-hero-copy{width:min(46%,610px);padding-top:2vh;}
  .nyc-hero h1{font-family:'Lora',serif;font-weight:400;font-size:clamp(68px,6.8vw,116px);line-height:.91;letter-spacing:-.055em;max-width:7.6ch;}
  .nyc-hero h1 em{font-family:'Lora',serif;font-style:italic;font-weight:400;font-size:.98em;line-height:1;color:var(--nyc-orange);}
  .nyc-hero-deck{font-size:clamp(15px,1vw,18px);line-height:1.68;max-width:40ch;margin-top:26px;}
  .nyc-service-list{max-width:510px;gap:8px 20px;}
  .nyc-hero-cta{margin-top:26px;}
  .nyc-hero-table{position:absolute;inset:0 -2% 0 37%;height:auto;min-height:0;perspective:1400px;pointer-events:auto;}
  .hero-surface{left:-5%;right:-4%;bottom:-5%;height:48%;border-radius:44% 44% 0 0/22% 22% 0 0;background:radial-gradient(ellipse at 48% 18%,rgba(255,255,255,.13),transparent 25%),radial-gradient(ellipse at 57% 30%,rgba(250,64,5,.16),transparent 29%),linear-gradient(180deg,rgba(54,49,43,.14),rgba(14,13,12,.72) 42%,rgba(0,0,0,.96) 100%);box-shadow:0 -25px 80px rgba(0,0,0,.28) inset,0 36px 100px rgba(0,0,0,.52);}
  .plate{overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 34px 34px rgba(0,0,0,.62));}
  .plate::after{display:none;}
  .plate img{position:relative;z-index:2;width:100%;height:auto;object-fit:contain;filter:saturate(1.07) contrast(1.09) brightness(.96);}
  .plate-a{width:58%;height:auto;left:4%;bottom:4%;transform:rotate(-3.2deg) translateZ(75px);}
  .plate-a::before{content:'';display:block;position:absolute;z-index:1;left:4%;right:5%;bottom:3%;height:37%;background:linear-gradient(180deg,#fff,#e8e5df);border-radius:22% 22% 28% 28%/44% 44% 50% 50%;transform:perspective(500px) rotateX(62deg);box-shadow:0 16px 30px rgba(0,0,0,.3);}
  .plate-b{width:51%;height:auto;right:-1%;bottom:-2%;transform:rotate(4deg) translateZ(110px);}
  .hero-order-card{right:6%;top:15%;width:27%;height:37%;transform:rotate(5.5deg) translateZ(68px);border-radius:28px;background:#0a0a0a;box-shadow:0 34px 80px rgba(0,0,0,.62);}
  .hero-order-card::before{content:'';position:absolute;inset:6px;border:1px solid rgba(255,255,255,.09);border-radius:23px;z-index:3;pointer-events:none;}
  .hero-order-card img{filter:brightness(.56) contrast(1.13) saturate(.72);}
  .hero-order-card figcaption{padding:18px 16px 18px;}
  .hero-order-card strong{font-size:clamp(18px,1.55vw,27px);}
  .hero-note{left:40%;bottom:5%;z-index:6;}
  .nyc-smoke .s1{width:410px;height:410px;left:50%;top:17%;opacity:.82;}
  .nyc-smoke .s2{width:320px;height:320px;left:61%;top:27%;opacity:.72;}
  .nyc-smoke .s3{width:290px;height:290px;left:45%;top:37%;opacity:.65;}
  .nyc-smoke .s4{width:250px;height:250px;left:72%;top:41%;opacity:.58;}
}

@media(min-width:901px) and (max-width:1180px){
  .nyc-hero-copy{width:48%;}
  .nyc-hero h1{font-size:clamp(60px,6.7vw,88px);}
  .nyc-hero-table{inset:0 -4% 0 39%;}
  .plate-a{width:62%;left:1%;bottom:8%;}
  .plate-b{width:54%;right:-3%;bottom:0;}
  .hero-order-card{width:31%;right:4%;top:17%;}
}

/* ===== V2.8.3 HERO MATCH PASS ===== */
.nyc-hero-copy{position:relative;z-index:6}
.hero-key-art{position:absolute;inset:0;margin:0;overflow:hidden;border-radius:0;filter:drop-shadow(0 34px 58px rgba(0,0,0,.54));}
.hero-key-art img{width:100%;height:100%;display:block;object-fit:cover;object-position:center top;filter:saturate(1.02) contrast(1.04) brightness(.98)}
.hero-key-art::before,.hero-key-art::after{content:'';position:absolute;pointer-events:none;z-index:2}
.hero-key-art::before{left:0;top:0;bottom:0;width:20%;background:linear-gradient(90deg,#070808 0%,rgba(7,8,8,.96) 48%,rgba(7,8,8,.7) 68%,rgba(7,8,8,0) 100%)}
.hero-key-art::after{left:0;right:0;bottom:0;height:18%;background:linear-gradient(180deg,rgba(7,8,8,0),rgba(7,8,8,.82) 72%,#070808 100%)}

@media(min-width:901px){
  .nyc-hero{min-height:100vh;}
  .nyc-hero-inner{position:relative;display:block;min-height:100vh;padding:132px clamp(34px,4.6vw,72px) 72px;}
  .nyc-hero-copy{width:min(44%,560px);padding-top:1vh;}
  .nyc-eyebrow{margin-bottom:18px;}
  .nyc-hero h1{font-family:'Lora',serif;font-weight:400;font-size:clamp(74px,7.2vw,124px);line-height:.88;letter-spacing:-.05em;max-width:6.25ch;}
  .nyc-hero h1 em{font-family:'Lora',serif;font-style:italic;color:var(--nyc-orange)}
  .nyc-hero-deck{max-width:34ch;font-size:clamp(15px,1.06vw,18px);line-height:1.72;color:#d7d0c5;margin-top:28px}
  .nyc-service-list{max-width:470px;gap:8px 18px}
  .nyc-hero-table{position:absolute;inset:110px 1.75% 34px 37.5%;height:auto;min-height:0;overflow:hidden;perspective:none;pointer-events:none;}
  .hero-surface,.plate,.hero-order-card,.hero-note{display:none !important}
  .hero-key-art{inset:-2% -4% 0 -5%;}
  .hero-key-art img{object-position:center top}
  .hero-storefront{inset:0 0 0 32%;}
  .hero-storefront img{filter:saturate(.82) contrast(1.06) brightness(.34);transform:scale(1.035)}
  .hero-shade{background:linear-gradient(90deg,#070808 0%,#070808 32%,rgba(7,8,8,.94) 47%,rgba(7,8,8,.6) 61%,rgba(7,8,8,.34) 78%,rgba(7,8,8,.56) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.34) 54%,rgba(0,0,0,.74) 100%)}
  .hero-vignette{background:radial-gradient(circle at 70% 76%,rgba(250,64,5,.12),transparent 20%),radial-gradient(circle at 61% 45%,rgba(255,255,255,.07),transparent 12%),radial-gradient(circle at 77% 18%,rgba(250,64,5,.09),transparent 18%),radial-gradient(circle at 23% 28%,rgba(255,255,255,.03),transparent 20%)}
}

@media(min-width:901px) and (max-width:1180px){
  .nyc-hero-copy{width:47%;}
  .nyc-hero h1{font-size:clamp(64px,6.9vw,96px)}
  .nyc-hero-table{inset:120px -1% 18px 40%;}
  .hero-key-art{inset:0 -8% 0 -9%;}
}

@media(max-width:900px){
  .nyc-hero-inner{display:block;min-height:auto;padding:156px 22px 54px}
  .nyc-hero h1{font-family:'Lora',serif;font-weight:400;line-height:.9;max-width:6.4ch}
  .nyc-hero-table{position:relative;height:470px;min-height:0;margin-top:30px;overflow:hidden;pointer-events:none}
  .hero-surface,.plate,.hero-order-card,.hero-note{display:none !important}
  .hero-key-art{position:absolute;inset:0;border-radius:18px}
  .hero-key-art::before{width:14%;}
  .hero-key-art img{object-position:center center}
}

@media(max-width:620px){
  .nyc-hero-table{height:380px}
  .nyc-hero h1{font-size:clamp(52px,15vw,74px)}
  .nyc-hero-deck{font-size:15px;line-height:1.7}
}

/* ===== V2.8.4 / OPTION C — LAYERED CINEMATIC HERO ===== */
.hero-filter-defs{position:absolute;width:0;height:0;overflow:hidden}
.nyc-hero{--hero-scroll:0;--hero-px:0;--hero-py:0;min-height:100svh;background:#070808;isolation:isolate}
.hero-storefront{inset:-4% -2% -5% 27%;z-index:-8;will-change:transform}
.hero-storefront img{filter:saturate(.78) contrast(1.12) brightness(.43);transform:scale(1.065);will-change:transform}
.hero-heat-layer{position:absolute;z-index:-7;inset:18% -2% 0 42%;background:url('projects/nyc-street-grill/storefront-large.jpg') center/cover no-repeat;filter:url(#hero-heat-distort) brightness(.45) saturate(.85);opacity:.17;mask-image:linear-gradient(180deg,transparent 0%,#000 27%,#000 76%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 27%,#000 76%,transparent 100%);pointer-events:none;will-change:filter,transform}
.hero-shade{z-index:-6;background:linear-gradient(90deg,#070808 0%,#070808 29%,rgba(7,8,8,.97) 39%,rgba(7,8,8,.78) 49%,rgba(7,8,8,.35) 69%,rgba(7,8,8,.33) 84%,rgba(7,8,8,.58) 100%),linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.24) 47%,rgba(0,0,0,.76) 100%)}
.hero-vignette{z-index:-5;inset:-20%;background:radial-gradient(ellipse at 65% 72%,rgba(250,64,5,.22),transparent 24%),radial-gradient(ellipse at 62% 49%,rgba(255,184,116,.08),transparent 17%),radial-gradient(ellipse at 82% 16%,rgba(250,64,5,.08),transparent 20%),radial-gradient(ellipse at 21% 28%,rgba(255,255,255,.025),transparent 18%)}
.hero-light-sweep{position:absolute;z-index:4;inset:-20%;pointer-events:none;background:linear-gradient(112deg,transparent 38%,rgba(255,213,169,0) 44%,rgba(255,213,169,.09) 49%,rgba(255,213,169,0) 54%,transparent 62%);transform:translateX(-80%);animation:heroLightSweep 10s cubic-bezier(.45,0,.25,1) infinite;mix-blend-mode:screen;opacity:.65}
.hero-particles{position:absolute;z-index:5;inset:0;width:100%;height:100%;pointer-events:none}
.nyc-smoke{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.nyc-smoke span{position:absolute;border-radius:50%;filter:blur(34px);background:radial-gradient(ellipse,rgba(232,225,211,.19) 0%,rgba(190,180,163,.09) 35%,rgba(115,104,92,.025) 58%,transparent 72%);mix-blend-mode:screen;opacity:.65;will-change:transform,opacity}
.nyc-smoke .s1{width:390px;height:470px;left:42%;top:18%;animation:heroSmoke1 12s ease-in-out infinite}
.nyc-smoke .s2{width:320px;height:400px;left:53%;top:24%;animation:heroSmoke2 15s ease-in-out infinite}
.nyc-smoke .s3{width:280px;height:330px;left:62%;top:30%;animation:heroSmoke3 13s ease-in-out infinite}
.nyc-smoke .s4{width:240px;height:310px;left:72%;top:23%;animation:heroSmoke2 17s ease-in-out infinite reverse}
.nyc-smoke .s5{width:210px;height:280px;left:49%;top:40%;animation:heroSmoke1 18s ease-in-out infinite reverse}

.nyc-hero-inner{position:relative;display:block;min-height:100svh;padding:clamp(126px,12vh,158px) clamp(32px,4.6vw,72px) 72px}
.nyc-hero-copy{position:relative;z-index:12;width:min(43%,565px);padding-top:0}
.nyc-eyebrow{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--nyc-orange);margin-bottom:19px}
.nyc-hero h1{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(70px,7vw,126px);line-height:.83;letter-spacing:-.071em;max-width:6.3ch;margin:0;text-wrap:balance}
.nyc-hero h1 em{font-family:'Lora',serif;font-weight:400;font-style:italic;font-size:1em;line-height:.92;letter-spacing:-.055em;color:var(--nyc-orange)}
.nyc-hero-deck{font-size:clamp(15px,1.05vw,18px);line-height:1.72;color:#d5cec4;max-width:38ch;margin:28px 0 23px}
.nyc-service-list{max-width:510px;gap:8px 24px}
.nyc-service-list li{font-size:11px;color:#e4ddd4}
.nyc-hero-cta{margin-top:27px}

.nyc-hero-table{position:absolute;z-index:7;inset:78px -2.5% 0 36%;height:auto;min-height:0;perspective:1500px;pointer-events:none;overflow:visible;transform-style:preserve-3d}
.hero-key-art,.hero-surface,.plate,.hero-order-card,.hero-note{display:none!important}
.hero-table-plane{position:absolute;z-index:1;left:-6%;right:-2%;bottom:-4%;height:48%;border-radius:48% 48% 0 0/20% 20% 0 0;background:radial-gradient(ellipse at 53% 15%,rgba(255,255,255,.095),transparent 24%),radial-gradient(ellipse at 48% 30%,rgba(250,64,5,.14),transparent 31%),linear-gradient(180deg,rgba(44,38,32,.16),rgba(16,14,13,.75) 39%,rgba(0,0,0,.98) 100%);box-shadow:0 -28px 80px rgba(0,0,0,.25) inset,0 36px 110px rgba(0,0,0,.58);transform:translate3d(calc(var(--hero-px)*3px),calc(var(--hero-py)*2px + var(--hero-scroll)*8px),0)}
.hero-food-layer,.hero-phone-layer{position:absolute;margin:0;will-change:transform;transform-style:preserve-3d;pointer-events:none}
.hero-food-layer img,.hero-phone-layer img{width:100%;height:auto;display:block;object-fit:contain}
.hero-food-main{z-index:5;width:min(67%,790px);left:-1%;bottom:8%;filter:drop-shadow(0 35px 34px rgba(0,0,0,.62));transform:translate3d(calc(var(--hero-px)*11px),calc(var(--hero-py)*8px + var(--hero-scroll)*-22px),70px) rotate(-2.4deg)}
.hero-food-main img{filter:saturate(1.08) contrast(1.07) brightness(1.02)}
.hero-food-secondary{z-index:7;width:min(50%,620px);right:-1.5%;bottom:-4%;filter:drop-shadow(0 40px 42px rgba(0,0,0,.7));transform:translate3d(calc(var(--hero-px)*16px),calc(var(--hero-py)*11px + var(--hero-scroll)*-31px),115px) rotate(3.2deg)}
.hero-food-secondary img{filter:saturate(1.07) contrast(1.08) brightness(1.02)}
.hero-phone-layer{z-index:8;width:min(25%,315px);right:7%;top:16%;filter:drop-shadow(0 32px 45px rgba(0,0,0,.62));transform:translate3d(calc(var(--hero-px)*14px),calc(var(--hero-py)*9px + var(--hero-scroll)*-39px),95px) rotate(5deg)}
.hero-phone-layer img{filter:saturate(.92) contrast(1.06) brightness(.96)}
.hero-food-glow{position:absolute;z-index:3;left:5%;right:0;bottom:6%;height:48%;background:radial-gradient(ellipse at 38% 40%,rgba(250,99,26,.2),transparent 32%),radial-gradient(ellipse at 72% 52%,rgba(255,139,65,.12),transparent 26%);filter:blur(24px);mix-blend-mode:screen;opacity:.75;pointer-events:none;transform:translateY(calc(var(--hero-scroll)*-8px))}
.hero-depth{transition:transform .16s ease-out}

@keyframes heroSmoke1{0%,100%{transform:translate3d(0,12px,0) scale(.92);opacity:.35}45%{transform:translate3d(28px,-43px,0) scale(1.08);opacity:.73}72%{transform:translate3d(-12px,-72px,0) scale(1.16);opacity:.43}}
@keyframes heroSmoke2{0%,100%{transform:translate3d(12px,22px,0) scale(.86);opacity:.3}50%{transform:translate3d(-31px,-55px,0) scale(1.14);opacity:.62}}
@keyframes heroSmoke3{0%,100%{transform:translate3d(0,24px,0) scale(.9);opacity:.25}35%{transform:translate3d(18px,-29px,0) scale(1.05);opacity:.59}75%{transform:translate3d(-18px,-66px,0) scale(1.18);opacity:.37}}
@keyframes heroLightSweep{0%,70%{transform:translateX(-78%);opacity:0}76%{opacity:.55}88%{transform:translateX(55%);opacity:.5}100%{transform:translateX(82%);opacity:0}}

@media(min-width:901px) and (max-width:1180px){
  .nyc-hero-copy{width:46%}
  .nyc-hero h1{font-size:clamp(62px,6.75vw,94px)}
  .nyc-hero-table{inset:92px -5% 0 39%}
  .hero-food-main{width:69%;left:-4%;bottom:10%}
  .hero-food-secondary{width:52%;right:-3%;bottom:0}
  .hero-phone-layer{width:27%;right:6%;top:20%}
}

@media(max-width:900px){
  .nyc-hero{min-height:auto}
  .nyc-hero-inner{display:flex;flex-direction:column;min-height:auto;padding:154px 22px 48px}
  .nyc-hero-copy{width:100%;max-width:620px}
  .nyc-hero h1{font-family:'Poppins',sans-serif;font-weight:600;line-height:.85;font-size:clamp(55px,15vw,82px);max-width:6.2ch}
  .nyc-hero-table{position:relative;inset:auto;width:100%;height:510px;margin-top:34px;overflow:hidden;transform:none}
  .hero-table-plane{left:-12%;right:-12%;bottom:-6%;height:50%}
  .hero-food-main{width:77%;left:-8%;bottom:14%;transform:rotate(-2deg)}
  .hero-food-secondary{width:62%;right:-10%;bottom:1%;transform:rotate(3deg)}
  .hero-phone-layer{width:30%;right:2%;top:10%;transform:rotate(5deg)}
  .hero-food-glow{left:-4%;right:-4%;bottom:5%}
  .hero-storefront{inset:0}
  .hero-storefront img{filter:saturate(.73) contrast(1.08) brightness(.34)}
  .hero-heat-layer{inset:35% 0 0 0;opacity:.1}
  .nyc-smoke .s1{left:10%;top:50%}.nyc-smoke .s2{left:42%;top:55%}.nyc-smoke .s3{left:62%;top:60%}.nyc-smoke .s4,.nyc-smoke .s5{display:none}
}

@media(max-width:620px){
  .nyc-hero-table{height:390px}
  .hero-food-main{width:82%;left:-12%;bottom:15%}
  .hero-food-secondary{width:67%;right:-13%;bottom:2%}
  .hero-phone-layer{width:33%;right:0;top:9%}
  .nyc-service-list{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .hero-light-sweep,.nyc-smoke span{animation:none!important}
  .hero-food-main,.hero-food-secondary,.hero-phone-layer,.hero-table-plane,.hero-storefront{transform:none!important;transition:none!important}
  .hero-heat-layer{display:none}
}

/* ===== V2.8.5 / GROUND + ATMOSPHERE INTEGRATION ===== */
.nyc-hero-table{isolation:isolate}
.hero-table-plane{
  z-index:1;
  left:-9%;right:-6%;bottom:-10%;height:62%;
  border-radius:0;
  clip-path:polygon(3% 13%,96% 4%,100% 100%,0 100%);
  background-image:
    radial-gradient(ellipse at 45% 18%,rgba(255,191,128,.13),transparent 22%),
    radial-gradient(ellipse at 72% 23%,rgba(250,64,5,.12),transparent 27%),
    linear-gradient(180deg,rgba(28,24,21,.12),rgba(10,9,8,.5) 35%,rgba(0,0,0,.96) 100%),
    url('projects/nyc-street-grill/hero-layers/table-texture.jpg');
  background-size:cover,cover,cover,cover;
  background-position:center;
  filter:saturate(.68) contrast(1.2) brightness(.56);
  box-shadow:inset 0 34px 70px rgba(255,147,66,.035),0 -30px 80px rgba(0,0,0,.12),0 50px 90px rgba(0,0,0,.78);
  opacity:.98;
}
.hero-table-plane::before{content:'';position:absolute;inset:0;background:linear-gradient(103deg,rgba(255,255,255,.02),transparent 22%,rgba(255,112,35,.045) 48%,transparent 70%),repeating-linear-gradient(93deg,rgba(255,255,255,.012) 0 1px,transparent 1px 26px);mix-blend-mode:screen;opacity:.5}
.hero-table-plane::after{content:'';position:absolute;left:0;right:0;top:0;height:42%;background:linear-gradient(180deg,rgba(255,171,101,.09),rgba(255,171,101,0) 65%);filter:blur(12px);opacity:.38}
.hero-table-rim{position:absolute;z-index:2;left:-4%;right:-3%;bottom:42%;height:8%;border-radius:50%;border-top:1px solid rgba(255,177,111,.14);background:radial-gradient(ellipse at center,rgba(255,132,48,.07),transparent 66%);filter:blur(.4px);opacity:.78;transform:translate3d(calc(var(--hero-px)*3px),calc(var(--hero-py)*2px + var(--hero-scroll)*6px),0)}
.hero-contact-shadow{position:absolute;z-index:4;pointer-events:none;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.82) 0%,rgba(0,0,0,.56) 45%,rgba(0,0,0,0) 74%);filter:blur(14px);mix-blend-mode:multiply;opacity:.92}
.shadow-main{left:3%;width:61%;height:18%;bottom:4%;transform:rotate(-3deg) translate3d(calc(var(--hero-px)*8px),calc(var(--hero-py)*5px + var(--hero-scroll)*-17px),0)}
.shadow-secondary{right:-1%;width:47%;height:16%;bottom:-1%;transform:rotate(4deg) translate3d(calc(var(--hero-px)*12px),calc(var(--hero-py)*8px + var(--hero-scroll)*-25px),0)}
.hero-food-main{bottom:8%;filter:drop-shadow(0 21px 17px rgba(0,0,0,.44)) drop-shadow(0 38px 33px rgba(0,0,0,.42))}
.hero-food-secondary{bottom:-3%;filter:drop-shadow(0 22px 18px rgba(0,0,0,.52)) drop-shadow(0 42px 38px rgba(0,0,0,.48))}
.hero-food-main img,.hero-food-secondary img{filter:saturate(1.03) contrast(1.08) brightness(.94) sepia(.035)}
.hero-food-glow{z-index:3;left:0;right:-2%;bottom:2%;height:54%;background:radial-gradient(ellipse at 37% 44%,rgba(255,120,36,.19),transparent 30%),radial-gradient(ellipse at 74% 56%,rgba(255,113,30,.13),transparent 26%),linear-gradient(180deg,transparent 30%,rgba(250,64,5,.035));filter:blur(25px);opacity:.8}
.hero-back-smoke{position:absolute;z-index:4;inset:13% 0 30% 2%;pointer-events:none;overflow:visible;mix-blend-mode:screen}
.hero-back-smoke span{position:absolute;border-radius:50%;background:radial-gradient(ellipse,rgba(218,207,191,.18),rgba(155,142,125,.07) 42%,transparent 72%);filter:blur(30px);opacity:.5;will-change:transform,opacity}
.hero-back-smoke span:nth-child(1){width:330px;height:390px;left:9%;bottom:-12%;animation:heroStageSmokeA 12s ease-in-out infinite}
.hero-back-smoke span:nth-child(2){width:260px;height:330px;left:34%;bottom:-7%;animation:heroStageSmokeB 15s ease-in-out infinite}
.hero-back-smoke span:nth-child(3){width:230px;height:290px;right:13%;bottom:-4%;animation:heroStageSmokeA 17s ease-in-out infinite reverse}
.hero-table-haze{position:absolute;z-index:8;left:-6%;right:-4%;bottom:-2%;height:40%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(25,18,14,.18) 42%,rgba(4,4,4,.68) 100%),radial-gradient(ellipse at 48% 66%,rgba(255,103,30,.07),transparent 48%);filter:blur(4px);opacity:.82;mix-blend-mode:normal}
.hero-front-smoke{position:absolute;z-index:10;left:-7%;right:-5%;bottom:-4%;height:48%;pointer-events:none;overflow:hidden;mix-blend-mode:screen}
.hero-front-smoke span{position:absolute;border-radius:50%;background:radial-gradient(ellipse,rgba(235,227,214,.13),rgba(173,160,143,.045) 42%,transparent 72%);filter:blur(36px);opacity:.42;will-change:transform,opacity}
.hero-front-smoke span:first-child{width:390px;height:250px;left:12%;bottom:-4%;animation:heroFrontSmokeA 15s ease-in-out infinite}
.hero-front-smoke span:last-child{width:330px;height:230px;right:5%;bottom:-8%;animation:heroFrontSmokeB 18s ease-in-out infinite}
.hero-phone-layer{filter:drop-shadow(0 28px 36px rgba(0,0,0,.58)) drop-shadow(0 8px 8px rgba(0,0,0,.28))}
.hero-phone-layer::after{content:'';position:absolute;left:14%;right:5%;bottom:-8%;height:18%;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.62),transparent 70%);filter:blur(12px);transform:rotate(-4deg);opacity:.72}

@keyframes heroStageSmokeA{0%,100%{transform:translate3d(0,18px,0) scale(.9);opacity:.24}46%{transform:translate3d(22px,-45px,0) scale(1.12);opacity:.58}78%{transform:translate3d(-9px,-78px,0) scale(1.18);opacity:.32}}
@keyframes heroStageSmokeB{0%,100%{transform:translate3d(14px,25px,0) scale(.88);opacity:.2}52%{transform:translate3d(-24px,-56px,0) scale(1.14);opacity:.52}}
@keyframes heroFrontSmokeA{0%,100%{transform:translate3d(-15px,12px,0) scale(.92);opacity:.18}50%{transform:translate3d(34px,-25px,0) scale(1.12);opacity:.46}}
@keyframes heroFrontSmokeB{0%,100%{transform:translate3d(20px,18px,0) scale(.9);opacity:.16}50%{transform:translate3d(-30px,-18px,0) scale(1.08);opacity:.4}}

@media(max-width:900px){
  .hero-table-plane{left:-18%;right:-18%;bottom:-12%;height:58%;clip-path:polygon(2% 16%,98% 7%,100% 100%,0 100%)}
  .hero-table-rim{bottom:40%}
  .shadow-main{left:-5%;width:70%;bottom:10%}
  .shadow-secondary{right:-8%;width:56%;bottom:1%}
  .hero-back-smoke{inset:22% -5% 31% -8%}
  .hero-front-smoke{height:43%}
  .hero-table-haze{height:38%}
}
@media(max-width:620px){
  .hero-table-plane{height:55%;bottom:-11%}
  .hero-back-smoke span:nth-child(3),.hero-front-smoke span:last-child{display:none}
  .hero-table-rim{opacity:.55}
}
@media(prefers-reduced-motion:reduce){
  .hero-back-smoke span,.hero-front-smoke span{animation:none!important}
}

/* ===== V2.8.6 OPTION A — COMPOSITED HERO FOUNDATION ===== */
.nyc-hero-foundation{position:relative;min-height:100svh;overflow:hidden;background:#060707;isolation:isolate}
.hero-foundation-art{position:absolute;inset:0;z-index:-5;overflow:hidden}
.hero-foundation-art img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;transform:scale(1.015);filter:saturate(1.02) contrast(1.035) brightness(.92)}
.hero-foundation-shade{position:absolute;inset:0;z-index:-4;pointer-events:none;background:linear-gradient(90deg,rgba(4,5,5,.98) 0%,rgba(4,5,5,.97) 23%,rgba(4,5,5,.83) 37%,rgba(4,5,5,.36) 54%,rgba(4,5,5,.06) 72%,rgba(4,5,5,.08) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.08) 62%,rgba(0,0,0,.38) 100%)}
.hero-foundation-glow{position:absolute;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(circle at 58% 69%,rgba(250,64,5,.12),transparent 18%),radial-gradient(circle at 75% 60%,rgba(255,151,72,.08),transparent 17%);mix-blend-mode:screen}
.hero-foundation-inner{position:relative;display:flex;align-items:center;min-height:100svh;padding:132px clamp(34px,4.8vw,74px) 74px}
.hero-foundation-copy{width:min(42vw,590px);max-width:590px;position:relative;z-index:3}
.hero-foundation-copy h1{margin:0;font-family:Poppins,sans-serif;font-weight:600;font-size:clamp(68px,6.5vw,118px);line-height:.88;letter-spacing:-.065em;max-width:none}
.hero-foundation-copy h1>span{display:block;white-space:nowrap}
.hero-foundation-copy h1 em{font-family:Lora,serif;font-style:italic;font-weight:400;color:var(--nyc-orange);letter-spacing:-.06em}
.hero-foundation-copy .nyc-hero-deck{max-width:37ch;color:#ded6cb;font-size:clamp(15px,1.05vw,18px);line-height:1.7;margin:28px 0 22px}
.hero-foundation-copy .nyc-service-list{max-width:470px;gap:8px 22px}
.hero-foundation-copy .nyc-hero-cta{margin-top:27px}
.hero-foundation-smoke{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.hero-foundation-smoke span{position:absolute;border-radius:50%;filter:blur(42px);background:radial-gradient(circle,rgba(234,226,213,.16),rgba(214,201,186,.06) 42%,transparent 72%);mix-blend-mode:screen;opacity:.38;animation:foundationSmoke 13s ease-in-out infinite}
.hero-foundation-smoke span:nth-child(1){width:330px;height:330px;left:39%;top:30%}
.hero-foundation-smoke span:nth-child(2){width:260px;height:260px;left:52%;top:22%;animation-delay:-4s}
.hero-foundation-smoke span:nth-child(3){width:220px;height:220px;left:65%;top:39%;animation-delay:-8s}
.hero-foundation-embers{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-foundation-embers span{position:absolute;width:3px;height:3px;border-radius:50%;background:#ff7035;box-shadow:0 0 10px rgba(250,64,5,.85);opacity:0;animation:foundationEmber 7s linear infinite}
.hero-foundation-embers span:nth-child(1){left:48%;bottom:10%;animation-delay:.5s}.hero-foundation-embers span:nth-child(2){left:57%;bottom:17%;animation-delay:1.8s}.hero-foundation-embers span:nth-child(3){left:66%;bottom:9%;animation-delay:2.9s}.hero-foundation-embers span:nth-child(4){left:76%;bottom:19%;animation-delay:4s}.hero-foundation-embers span:nth-child(5){left:85%;bottom:12%;animation-delay:5.1s}.hero-foundation-embers span:nth-child(6){left:71%;bottom:30%;animation-delay:6s}
@keyframes foundationSmoke{0%,100%{transform:translate3d(0,0,0) scale(.94);opacity:.24}50%{transform:translate3d(18px,-30px,0) scale(1.12);opacity:.42}}
@keyframes foundationEmber{0%{transform:translate3d(0,0,0) scale(.5);opacity:0}15%{opacity:.9}100%{transform:translate3d(22px,-150px,0) scale(1.2);opacity:0}}
@media(max-width:1180px) and (min-width:901px){.hero-foundation-copy{width:min(43vw,510px)}.hero-foundation-copy h1{font-size:clamp(60px,6.3vw,90px)}.hero-foundation-art img{object-position:55% center}}
@media(max-width:900px){.nyc-hero-foundation{min-height:auto}.hero-foundation-inner{min-height:920px;align-items:flex-start;padding:154px 22px 400px}.hero-foundation-copy{width:min(100%,560px);max-width:560px}.hero-foundation-copy h1{font-size:clamp(52px,14vw,78px);line-height:.9}.hero-foundation-copy h1>span{white-space:normal}.hero-foundation-art img{object-position:67% center}.hero-foundation-shade{background:linear-gradient(180deg,rgba(4,5,5,.96) 0%,rgba(4,5,5,.88) 42%,rgba(4,5,5,.36) 62%,rgba(4,5,5,.12) 78%,rgba(4,5,5,.35) 100%)}}
@media(max-width:620px){.hero-foundation-inner{min-height:840px;padding-bottom:330px}.hero-foundation-copy h1{font-size:clamp(48px,13vw,68px)}.hero-foundation-copy .nyc-service-list{grid-template-columns:1fr 1fr;column-gap:14px}.hero-foundation-copy .nyc-service-list li{font-size:10px}.hero-foundation-art img{object-position:70% center}}
@media(prefers-reduced-motion:reduce){.hero-foundation-smoke span,.hero-foundation-embers span{animation:none!important}.hero-foundation-art img{transform:none}}

/* ===== V2.8.7 SIZZLE / ATMOSPHERE PASS ===== */
.nyc-hero-foundation{--hero-px:0;--hero-py:0;--hero-scroll:0}
.hero-foundation-art img{will-change:transform;transform:scale(1.025) translate3d(calc(var(--hero-px)*-3px),calc(var(--hero-py)*-2px + var(--hero-scroll)*-10px),0);transition:transform .35s ease-out}
.hero-foundation-heat{position:absolute;z-index:-1;left:35%;right:-2%;top:35%;bottom:3%;pointer-events:none;overflow:hidden;opacity:.58;mix-blend-mode:screen;background:radial-gradient(ellipse at 34% 62%,rgba(255,119,40,.12),transparent 28%),radial-gradient(ellipse at 74% 72%,rgba(255,103,25,.095),transparent 24%);filter:blur(.2px)}
.hero-foundation-heat::before,.hero-foundation-heat::after{content:'';position:absolute;inset:8% 5% 4%;background:repeating-linear-gradient(92deg,transparent 0 18px,rgba(255,255,255,.018) 20px 22px,transparent 24px 42px);filter:blur(1.2px);opacity:.6;transform-origin:50% 100%;animation:heroHeatRipple 4.8s ease-in-out infinite alternate}
.hero-foundation-heat::after{inset:16% 12% 2% 4%;opacity:.35;animation-duration:6.2s;animation-delay:-2s;transform:skewX(-2deg) scaleY(.98)}
.hero-food-steam{position:absolute;z-index:2;left:34%;right:3%;top:26%;bottom:22%;pointer-events:none;overflow:visible;mix-blend-mode:screen}
.hero-food-steam i{position:absolute;bottom:2%;width:54px;height:210px;border-radius:50%;background:linear-gradient(180deg,transparent 0%,rgba(238,230,216,.03) 18%,rgba(238,230,216,.18) 50%,rgba(238,230,216,0) 100%);filter:blur(14px);opacity:0;transform-origin:50% 100%;animation:heroSteamRise 7.8s ease-in-out infinite}
.hero-food-steam i:nth-child(1){left:16%;height:250px;animation-delay:-.8s}.hero-food-steam i:nth-child(2){left:31%;height:200px;animation-delay:-4.1s;animation-duration:8.9s}.hero-food-steam i:nth-child(3){left:48%;height:275px;animation-delay:-2.6s;animation-duration:9.4s}.hero-food-steam i:nth-child(4){left:68%;height:220px;animation-delay:-5.4s;animation-duration:8.2s}.hero-food-steam i:nth-child(5){left:82%;height:180px;animation-delay:-1.7s;animation-duration:7.3s}
.hero-foundation-light-sweep{position:absolute;z-index:1;left:28%;right:-12%;bottom:0;height:52%;pointer-events:none;opacity:.42;mix-blend-mode:screen;background:linear-gradient(108deg,transparent 0 34%,rgba(255,126,42,0) 39%,rgba(255,154,77,.11) 48%,rgba(255,218,180,.08) 52%,rgba(255,126,42,0) 60%,transparent 66%);transform:translateX(-65%);animation:heroWarmSweep 11s cubic-bezier(.45,0,.35,1) infinite}
.hero-foundation-glow{animation:heroGlowBreathe 5.5s ease-in-out infinite}
.hero-foundation-smoke span:nth-child(1){left:42%;top:32%;animation-duration:11.5s}.hero-foundation-smoke span:nth-child(2){left:55%;top:27%;animation-duration:14s}.hero-foundation-smoke span:nth-child(3){left:70%;top:42%;animation-duration:16s}
.hero-foundation-embers span{width:3px;height:3px;animation-duration:6.4s}
.hero-foundation-embers span:nth-child(7){left:52%;bottom:28%;animation-delay:.9s;width:2px;height:2px}.hero-foundation-embers span:nth-child(8){left:62%;bottom:23%;animation-delay:2.2s;width:4px;height:4px}.hero-foundation-embers span:nth-child(9){left:80%;bottom:27%;animation-delay:3.6s;width:2px;height:2px}.hero-foundation-embers span:nth-child(10){left:89%;bottom:20%;animation-delay:4.8s;width:3px;height:3px}
@keyframes heroHeatRipple{0%{transform:translate3d(-3px,4px,0) skewX(-1deg) scaleY(.98);opacity:.28}50%{transform:translate3d(4px,-3px,0) skewX(1.4deg) scaleY(1.025);opacity:.62}100%{transform:translate3d(-1px,-7px,0) skewX(-.6deg) scaleY(1.04);opacity:.34}}
@keyframes heroSteamRise{0%{transform:translate3d(0,55px,0) scaleX(.55) scaleY(.72) rotate(-2deg);opacity:0}14%{opacity:.18}42%{opacity:.42}76%{opacity:.2}100%{transform:translate3d(18px,-95px,0) scaleX(1.25) scaleY(1.3) rotate(8deg);opacity:0}}
@keyframes heroWarmSweep{0%,12%{transform:translateX(-70%);opacity:0}25%{opacity:.25}52%{opacity:.48}76%{opacity:.18}88%,100%{transform:translateX(70%);opacity:0}}
@keyframes heroGlowBreathe{0%,100%{opacity:.72;filter:brightness(.96)}50%{opacity:1;filter:brightness(1.12)}}
@media(max-width:900px){.hero-food-steam{left:26%;right:-8%;top:50%;bottom:8%}.hero-food-steam i:nth-child(2),.hero-food-steam i:nth-child(5){display:none}.hero-foundation-light-sweep{left:18%;right:-25%;height:42%;opacity:.3}.hero-foundation-heat{left:22%;right:-12%;top:54%;bottom:3%}.hero-foundation-art img{transform:scale(1.02)}}
@media(max-width:620px){.hero-food-steam{opacity:.65}.hero-foundation-embers span:nth-child(n+7){display:none}.hero-foundation-light-sweep{display:none}}
@media(prefers-reduced-motion:reduce){.hero-foundation-heat::before,.hero-foundation-heat::after,.hero-food-steam i,.hero-foundation-light-sweep,.hero-foundation-glow{animation:none!important}.hero-foundation-art img{transform:none!important}}

/* ===== V2.8.8 / PERSONALITY + MOTION REFINEMENT ===== */
.nyc-case{--scroll-energy:0;--rail-progress:0}

/* Display typography: keep the editorial density without collisions. */
.hero-foundation-copy h1{line-height:.93!important}
.nyc-problem-chapter h2{line-height:.95!important}
.nyc-problem-chapter h2 em{line-height:1.02!important}
.nyc-engine-head h2,.commercial-copy h2,.nyc-outcome-intro h2,.nyc-next h2{line-height:.94!important}
.nyc-engine-head h2 em,.commercial-copy h2 em,.nyc-outcome-intro h2 em,.nyc-next h2 em{line-height:1.02!important}
.story-intro h2{line-height:.98!important}
.nyc-build-state h2{line-height:.92!important}

/* Story rail progress becomes a living route through the case study. */
.rail-list{position:relative}
.rail-progress-track{position:absolute;left:4px;top:5px;bottom:5px;width:1px;background:rgba(255,255,255,.13);pointer-events:none;z-index:-1}
.rail-progress-fill{display:block;width:2px;height:calc(var(--rail-progress)*100%);background:linear-gradient(180deg,#ff7a35,var(--nyc-orange));transform:translateX(-.5px);box-shadow:0 0 12px rgba(250,64,5,.45);transition:height .12s linear}
.nyc-story-rail.is-light .rail-progress-track{background:rgba(0,0,0,.12)}
.rail-item::after{opacity:.25}

/* Masked editorial reveals. */
.motion-reveal{clip-path:none;transform:none;opacity:1;transition:clip-path .9s cubic-bezier(.16,.72,.18,1),transform .9s cubic-bezier(.16,.72,.18,1),opacity .55s ease}
.motion-reveal.motion-pending{clip-path:inset(0 0 100% 0);transform:translateY(22px);opacity:.01}
.motion-reveal.is-revealed{clip-path:inset(0 0 0 0);transform:none;opacity:1}
.motion-reveal[data-reveal-delay="1"]{transition-delay:.08s}.motion-reveal[data-reveal-delay="2"]{transition-delay:.16s}

/* Hero smoke responds subtly to scroll velocity. */
.hero-food-steam{transform:translateY(calc(var(--scroll-energy)*-11px));opacity:calc(.76 + var(--scroll-energy)*.18);transition:transform .18s ease-out,opacity .18s ease-out}
.hero-food-steam i{animation-duration:calc(8.5s - var(--scroll-energy)*2.2s)}
.hero-foundation-smoke{transform:translateY(calc(var(--scroll-energy)*-6px));transition:transform .18s ease-out}
.hero-foundation-smoke span{filter:blur(calc(44px - var(--scroll-energy)*5px));opacity:calc(.32 + var(--scroll-energy)*.13)}
.hero-foundation-heat{opacity:calc(.48 + var(--scroll-energy)*.2)}
.hero-foundation-glow::after{content:'';position:absolute;inset:36% -5% -4% 35%;background:radial-gradient(ellipse at 46% 68%,rgba(255,115,34,.12),transparent 30%);mix-blend-mode:screen;animation:grillFlicker 3.8s steps(1,end) infinite;pointer-events:none}
@keyframes grillFlicker{0%,100%{opacity:.38;filter:brightness(.9)}14%{opacity:.48;filter:brightness(1.1)}31%{opacity:.34}47%{opacity:.5;filter:brightness(1.18)}66%{opacity:.4}83%{opacity:.47}}

/* Diagnostic scan: labels + connectors appear as Rubbl reads the system. */
.diag-scan-line{position:absolute;z-index:4;left:0;right:0;height:1px;top:16%;background:linear-gradient(90deg,transparent,rgba(250,64,5,.12) 8%,rgba(250,64,5,.78) 48%,rgba(250,64,5,.12) 92%,transparent);box-shadow:0 0 14px rgba(250,64,5,.28);opacity:0;transform:translateY(-30px)}
.diag-connectors{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none;opacity:0}
.diag-connectors path{fill:none;stroke:rgba(250,64,5,.5);stroke-width:.12;stroke-dasharray:4 3;vector-effect:non-scaling-stroke;stroke-dashoffset:38}
.nyc-problem-visual.is-analyzing .diag-scan-line{opacity:1;animation:diagScan 3.6s ease-in-out infinite}
.nyc-problem-visual.is-analyzing .diag-connectors{opacity:1;transition:opacity .6s ease .25s}
.nyc-problem-visual.is-analyzing .diag-connectors path{animation:diagDraw 1.5s ease forwards .32s}
.nyc-problem-visual.is-analyzing .dn:nth-child(1){transition-delay:.12s}.nyc-problem-visual.is-analyzing .dn:nth-child(2){transition-delay:.22s}.nyc-problem-visual.is-analyzing .dn:nth-child(3){transition-delay:.32s}.nyc-problem-visual.is-analyzing .dn:nth-child(4){transition-delay:.42s}.nyc-problem-visual.is-analyzing .dn:nth-child(5){transition-delay:.52s}
@keyframes diagScan{0%,100%{top:16%;opacity:0}12%{opacity:.75}48%{opacity:.55}82%{top:82%;opacity:.65}95%{opacity:0}}
@keyframes diagDraw{to{stroke-dashoffset:0}}

/* Filmstrip behaves like a miniature edit timeline. */
.film-thumb::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--nyc-orange);transform:scaleX(var(--preview-progress,0));transform-origin:left;transition:transform .08s linear}
.film-thumb.is-scrubbing{border-color:rgba(250,64,5,.78);box-shadow:0 0 24px rgba(250,64,5,.12)}
.film-thumb.is-scrubbing img{filter:saturate(1.08) contrast(1.1);transform:scale(1.025)}

/* Seasoning-dust motif: only in two cinematic sections. */
.nyc-story-film,.nyc-commercial{position:relative;overflow:hidden}
.case-dust-layer{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;opacity:.55}
.case-dust-layer i{position:absolute;width:3px;height:3px;border-radius:50%;background:#d9823f;box-shadow:0 0 7px rgba(250,64,5,.45);opacity:0;animation:dustDrift 9s linear infinite}
.case-dust-layer i:nth-child(1){left:8%;top:85%;animation-delay:-1s}.case-dust-layer i:nth-child(2){left:17%;top:76%;animation-delay:-6s;width:2px;height:2px}.case-dust-layer i:nth-child(3){left:29%;top:91%;animation-delay:-3.2s}.case-dust-layer i:nth-child(4){left:41%;top:82%;animation-delay:-7.2s;width:2px;height:2px}.case-dust-layer i:nth-child(5){left:54%;top:88%;animation-delay:-2.2s}.case-dust-layer i:nth-child(6){left:63%;top:74%;animation-delay:-5s;width:4px;height:4px}.case-dust-layer i:nth-child(7){left:72%;top:94%;animation-delay:-8s}.case-dust-layer i:nth-child(8){left:82%;top:81%;animation-delay:-3.8s;width:2px;height:2px}.case-dust-layer i:nth-child(9){left:91%;top:87%;animation-delay:-6.7s}.case-dust-layer i:nth-child(10){left:35%;top:68%;animation-delay:-1.8s}.case-dust-layer i:nth-child(11){left:68%;top:61%;animation-delay:-4.7s}.case-dust-layer i:nth-child(12){left:96%;top:70%;animation-delay:-7.8s}
.nyc-story-film>*:not(.case-dust-layer),.nyc-commercial>*:not(.case-dust-layer){position:relative;z-index:1}
@keyframes dustDrift{0%{transform:translate3d(0,35px,0) rotate(0);opacity:0}15%{opacity:.34}65%{opacity:.18}100%{transform:translate3d(26px,-120px,0) rotate(180deg);opacity:0}}

/* Heat/smoke transitions between the dark sensory world and analytical sections. */
.nyc-story-film::after,.nyc-commercial::before{content:'';position:absolute;left:0;right:0;height:90px;pointer-events:none;z-index:2;background:radial-gradient(ellipse at 54% 80%,rgba(226,216,202,.11),transparent 56%);filter:blur(16px);opacity:.55}
.nyc-story-film::after{bottom:-46px}.nyc-commercial::before{top:-42px;transform:scaleY(-1)}

/* Outcome progression animates the business story instead of presenting a static list. */
.nyc-outcome-progression{margin-top:52px;padding:34px 0 32px;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13);display:grid;grid-template-columns:auto auto auto auto 1fr;align-items:center;gap:clamp(14px,2.4vw,36px);overflow:hidden}
.nyc-outcome-progression span{font-size:clamp(44px,7vw,116px);line-height:.88;letter-spacing:-.065em;font-weight:600;color:#f6f0e8;transform:translateY(34px);opacity:0;transition:transform .7s cubic-bezier(.16,.72,.18,1),opacity .55s ease}
.nyc-outcome-progression span:last-child{font-size:clamp(26px,3.5vw,58px);letter-spacing:-.04em;color:var(--nyc-orange)}
.nyc-outcome-progression b{font:400 clamp(30px,4vw,64px)/1 Lora,serif;color:#6f6962;transform:scaleX(0);transform-origin:left;opacity:0;transition:transform .55s ease,opacity .4s ease}
.nyc-outcome-progression.is-active span,.nyc-outcome-progression.is-active b{transform:none;opacity:1}
.nyc-outcome-progression.is-active>*:nth-child(2){transition-delay:.18s}.nyc-outcome-progression.is-active>*:nth-child(3){transition-delay:.34s}.nyc-outcome-progression.is-active>*:nth-child(4){transition-delay:.5s}.nyc-outcome-progression.is-active>*:nth-child(5){transition-delay:.66s}

@media(max-width:900px){
  .rail-progress-track{display:none}
  .motion-reveal.motion-pending{clip-path:inset(0 0 50% 0);transform:translateY(14px)}
  .nyc-outcome-progression{grid-template-columns:auto auto auto;gap:12px}.nyc-outcome-progression>*:nth-child(4){display:none}.nyc-outcome-progression span:last-child{grid-column:1/-1;margin-top:8px}
  .case-dust-layer{opacity:.28}.diag-connectors{display:none}
}
@media(max-width:620px){.nyc-outcome-progression span{font-size:42px}.nyc-outcome-progression span:last-child{font-size:27px}.case-dust-layer i:nth-child(n+7){display:none}}
@media(prefers-reduced-motion:reduce){
  .motion-reveal{clip-path:none!important;transform:none!important;opacity:1!important;transition:none!important}
  .case-dust-layer i,.diag-scan-line,.diag-connectors path,.hero-foundation-glow::after{animation:none!important}
  .nyc-outcome-progression span,.nyc-outcome-progression b{transform:none!important;opacity:1!important;transition:none!important}
}
/* Rail progress fallback implemented as pseudo-elements to keep list markup semantic. */
.rail-list::before,.rail-list::after{content:'';position:absolute;left:4px;top:5px;width:1px;pointer-events:none;z-index:-1}
.rail-list::before{bottom:5px;background:rgba(255,255,255,.13)}
.rail-list::after{height:calc(var(--rail-progress)*100%);width:2px;background:linear-gradient(180deg,#ff7a35,var(--nyc-orange));transform:translateX(-.5px);box-shadow:0 0 12px rgba(250,64,5,.45)}
.nyc-story-rail.is-light .rail-list::before{background:rgba(0,0,0,.12)}


/* ===== V2.8.9 FAIL-SAFE MOTION + CASE NAV CONTRAST ===== */
/* Dark case-study chapters always keep the universal header visually separated from the artwork. */
.nyc-case .site-header.nav-dark{
  color:#171717!important;
}
.nyc-case .site-header.nav-dark::before{
  background:rgba(246,242,235,.94)!important;
  border-color:rgba(17,17,17,.09)!important;
  box-shadow:0 14px 46px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(20px) saturate(118%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(118%)!important;
}
.nyc-case .site-header.nav-dark .brand-logo-light,
.nyc-case .site-header.nav-dark .brand-logo-dark,
.nyc-case .site-header.nav-dark .brand-icon-light,
.nyc-case .site-header.nav-dark .brand-icon-dark{opacity:0!important}
.nyc-case .site-header.nav-dark .brand-logo-orange,
.nyc-case .site-header.nav-dark .brand-icon-orange{opacity:1!important}
.nyc-case .site-header.nav-dark .desktop-nav>a:not(.nav-cta){color:#171717!important}
.nyc-case .site-header.nav-dark .nav-cta{color:var(--nyc-orange)!important;border-color:rgba(250,64,5,.32)!important}
.nyc-case .site-header.nav-dark .menu-toggle span{background:#171717!important}

/* Display typography breathes without losing the tight editorial feel. */
.hero-foundation-copy h1{line-height:.94!important}
.story-intro h2,.nyc-engine-head h2,.commercial-copy h2,.nyc-outcome-intro h2,.nyc-next h2,.nyc-build-state h2{line-height:.96!important}
.nyc-problem-chapter h2{line-height:.98!important}
.hero-foundation-copy h1 em,.story-intro h2 em,.nyc-problem-chapter h2 em,.nyc-engine-head h2 em,.commercial-copy h2 em,.nyc-outcome-intro h2 em,.nyc-next h2 em,.nyc-build-state h2 em{line-height:1.04!important}

/* If JS never initializes, reveal targets remain visible. */
html:not(.nyc-motion-ready) .motion-reveal{clip-path:none!important;transform:none!important;opacity:1!important}

/* ===== V2.8.10 / HEADING SAFE-AREA HOTFIX ===== */
/* Never clip display glyphs; motion is handled with opacity + translate only. */
.motion-reveal,
.motion-reveal.motion-pending,
.motion-reveal.is-revealed{
  clip-path:none!important;
  -webkit-clip-path:none!important;
  overflow:visible!important;
}
.motion-reveal{opacity:1;transform:none;transition:transform .72s cubic-bezier(.16,.72,.18,1),opacity .52s ease!important}
.motion-reveal.motion-pending{opacity:0;transform:translateY(18px)}
.motion-reveal.is-revealed{opacity:1;transform:none}

/* Give oversized mixed-family headlines enough cap/descender room. */
.hero-foundation-copy,
.story-intro,
.nyc-problem-chapter,
.nyc-engine-head,
.commercial-copy,
.nyc-outcome-intro,
.nyc-next,
.nyc-build-state{overflow:visible!important}

.hero-foundation-copy{width:min(49vw,690px)!important;max-width:690px!important}
.hero-foundation-copy h1{
  overflow:visible!important;
  line-height:1.00!important;
  font-size:clamp(64px,6.15vw,112px)!important;
  letter-spacing:-.058em!important;
  padding:.05em .12em .12em 0;
}
.hero-foundation-copy h1>span{line-height:1.00!important;overflow:visible!important}
.hero-foundation-copy h1 em{line-height:1.08!important;display:inline-block;padding:.03em .02em .08em 0}

.story-intro h2,
.nyc-engine-head h2,
.commercial-copy h2,
.nyc-outcome-intro h2,
.nyc-next h2,
.nyc-build-state h2{
  line-height:1.06!important;
  overflow:visible!important;
  padding-bottom:.08em;
}
.story-intro h2 em,
.nyc-engine-head h2 em,
.commercial-copy h2 em,
.nyc-outcome-intro h2 em,
.nyc-next h2 em,
.nyc-build-state h2 em{line-height:1.10!important;display:inline-block;padding-bottom:.05em}

.nyc-problem-chapter h2{
  line-height:1.08!important;
  overflow:visible!important;
  max-width:8.6ch!important;
  padding:.04em .08em .10em 0;
}
.nyc-problem-chapter h2 em{line-height:1.12!important;display:inline-block;padding-bottom:.06em}

@media(min-width:901px) and (max-width:1180px){
  .hero-foundation-copy{width:min(50vw,590px)!important}
  .hero-foundation-copy h1{font-size:clamp(58px,6vw,88px)!important}
}
@media(max-width:900px){
  .hero-foundation-copy{width:min(100%,620px)!important;max-width:620px!important}
  .hero-foundation-copy h1{line-height:1.02!important;font-size:clamp(50px,13vw,76px)!important;padding-right:.06em}
  .nyc-problem-chapter h2{line-height:1.10!important;max-width:10ch!important}
}

.nyc-outcome-proof{margin-top:52px;border-top:1px solid rgba(255,255,255,.14);padding:26px 0 0;max-width:850px}.nyc-outcome-proof small{font-size:9px;letter-spacing:.16em;color:var(--nyc-orange)}.nyc-outcome-proof p{font-size:clamp(16px,1.3vw,20px);line-height:1.7;color:#c2bab0;max-width:60ch;margin:12px 0 0}
