.cinematic-journey{height:390svh;position:relative;background:#15101b;color:#fff}
.cinematic-pin{position:sticky;top:0;height:100svh;min-height:540px;overflow:hidden;isolation:isolate}
.cinematic-top{position:absolute;z-index:3;top:34px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.15em}
.cinematic-top>span{border-left:2px solid #c497dd;padding-left:14px;color:#f2e3fa}
.cinematic-top a{border:1px solid #ffffff50;border-radius:30px;padding:11px 16px;letter-spacing:0;background:#21172d44;backdrop-filter:blur(8px)}
.cinematic-scene{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .75s ease,visibility .75s;pointer-events:none}
.cinematic-scene.is-active{opacity:1;visibility:visible}
.cinematic-scene>img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.035);transition:transform 1.7s cubic-bezier(.2,.7,.2,1)}
.cinematic-scene.is-active>img{transform:scale(1)}
.cinematic-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#110b19eb 0%,#110b1966 40%,#110b190a 72%,#110b1970),linear-gradient(90deg,#110b1950,transparent 70%)}
.cinematic-copy{position:absolute;z-index:2;left:6%;right:6%;bottom:120px;transform:translateY(20px);transition:transform .8s ease;max-width:950px}
.is-active .cinematic-copy{transform:translateY(0)}
.cinematic-copy .eyebrow{font-size:11px;color:#e1c8ee;margin:0 0 18px}
.project-category .cinematic-copy :is(h1,h2){font:500 clamp(42px,5.7vw,86px)/1.04 Syne,sans-serif;letter-spacing:-.055em;margin:0 0 22px;text-wrap:balance}
.cinematic-copy :is(h1,h2) em{font-style:normal;color:#d0aae5}
.cinematic-copy>p:last-child{max-width:440px;font-size:14px;line-height:1.7;color:#e0d7e5;margin:0}
.cinematic-bottom{position:absolute;z-index:3;left:6%;right:6%;bottom:32px;display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:center;gap:30px}
.cinematic-bottom>p{font-size:10px;margin:0;color:#e1cfe9}.cinematic-bottom>p span{display:inline-block;margin-left:10px}
.cinematic-count{font-size:11px;letter-spacing:.14em;text-align:right;color:#d8c4e4}
.cinematic-steps{display:flex;gap:12px}.cinematic-steps button{padding:12px 0;flex:1;min-width:35px;color:#c4b4cf;background:none;border:0;cursor:pointer;text-align:left;font:10px 'DM Sans',sans-serif}.cinematic-steps i{display:block;height:2px;margin-top:10px;background:#ffffff35}.cinematic-steps [aria-pressed=true]{color:#fff}.cinematic-steps [aria-pressed=true] i{background:#d0a5ea;box-shadow:0 0 12px #b887da90}
.light-experience{padding:64px 6% 50px;background:radial-gradient(ellipse at 50% 0,#392044,#15101c 65%);color:#fff}
.light-heading{text-align:center;margin:0 auto 28px;max-width:950px}.light-heading .eyebrow{color:#cab1de;font-size:10px;margin-bottom:18px}
.project-category .light-heading h2{font:500 clamp(34px,4.5vw,64px)/1.1 Syne,sans-serif;letter-spacing:-.045em;margin:0 0 18px}.light-heading h2 em{color:#cba7df;font-style:normal}.light-heading>p:last-child{color:#c3b4ce;font-size:14px}
.light-comparison{position:relative;aspect-ratio:16/9;max-width:1320px;margin:auto;overflow:hidden;border:1px solid #ffffff25;border-radius:10px;isolation:isolate;background:#241b2d}
.light-comparison>img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.light-reveal{clip-path:inset(0 calc(100% - var(--reveal)) 0 0);z-index:1}
.light-labels{position:absolute;inset:20px 20px auto;display:flex;justify-content:space-between;z-index:2;pointer-events:none}.light-labels span{font-size:10px;letter-spacing:.13em;padding:9px 14px;border:1px solid #ffffff50;border-radius:30px;background:#1b132b9c;backdrop-filter:blur(8px)}
.light-handle{position:absolute;left:var(--reveal);top:0;bottom:0;width:2px;transform:translateX(-1px);background:#fff;z-index:2;pointer-events:none;box-shadow:0 0 15px #0005}.light-handle i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid #fff;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font:24px 'DM Sans',sans-serif;letter-spacing:5px;padding-left:5px;background:#572d72dd;box-shadow:0 3px 25px #0005}
.light-slider{appearance:none;-webkit-appearance:none;position:absolute;inset:0;z-index:4;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.light-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:44px;height:100%;cursor:ew-resize}.light-slider::-moz-range-thumb{width:44px;height:44px;border:0}
.light-comparison:focus-within{outline:3px solid #c89ee4;outline-offset:5px}.light-footer{max-width:1320px;margin:15px auto 0;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#c7b4d3;letter-spacing:.05em}.light-pending{max-width:800px;margin:18px auto 0;font-size:12px;color:#c3b4ce;text-align:center;line-height:1.65}
@media(max-width:760px){.cinematic-journey{height:330svh}.cinematic-pin{min-height:520px}.cinematic-top{top:24px;font-size:8px;gap:10px}.cinematic-top>span{max-width:160px;line-height:1.6}.cinematic-top a{font-size:10px;white-space:nowrap;padding:9px 12px}.cinematic-copy{bottom:145px}.project-category .cinematic-copy :is(h1,h2){font-size:clamp(37px,8.7vw,58px);line-height:1.08;letter-spacing:-.045em}.cinematic-copy>p:last-child{font-size:13px;max-width:32ch}.cinematic-copy .eyebrow{font-size:9px;margin-bottom:15px}.cinematic-scene:after{background:linear-gradient(0deg,#110b19f5,#110b1970 58%,#110b1920)}.cinematic-bottom{grid-template-columns:1fr auto;gap:12px;bottom:25px}.cinematic-steps{grid-column:1/-1;grid-row:1}.cinematic-bottom>p{font-size:9px}.cinematic-count{font-size:10px}.light-experience{padding:40px 6%}.light-comparison{aspect-ratio:4/3}.light-comparison>img{object-fit:contain;background:#18121f}.light-labels{inset:10px 10px auto}.light-labels span{font-size:8px;padding:7px 9px}.light-handle i{width:44px;height:44px;font-size:20px}.light-footer{flex-direction:column;gap:6px;font-size:9px}.light-pending{font-size:11px}.light-heading>p:last-child{font-size:13px}}
@media(prefers-reduced-motion:reduce){.cinematic-journey{height:auto}.cinematic-pin{position:relative;height:auto;min-height:0;overflow:visible}.cinematic-top{position:relative;inset:auto;padding:24px 6%}.cinematic-scene,.cinematic-scene.is-active{position:relative;height:75svh;min-height:450px;opacity:1;visibility:visible}.cinematic-scene>img,.cinematic-copy{transition:none;transform:none!important}.cinematic-copy{bottom:45px}.cinematic-bottom{display:none}}
.cinematic-scene:not(.is-active) .cinematic-copy{opacity:0;transition:opacity .15s ease,transform .3s ease}.cinematic-scene.is-active .cinematic-copy{opacity:1;transition:opacity .5s .18s ease,transform .8s ease}@media(prefers-reduced-motion:reduce){.cinematic-scene:not(.is-active) .cinematic-copy{opacity:1;transition:none}}
.light-timelapse .light-heading{display:block;width:100%;max-width:880px;margin:0 auto 28px;text-align:center}
.project-category .light-timelapse .light-heading h2{display:block;width:100%;max-width:none;text-align:center;margin:0 0 20px;line-height:1.12}
.light-timelapse .light-heading>p{max-width:560px;margin-left:auto;margin-right:auto;text-align:center}
.light-time-controls{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 28px}
.light-time-controls button{border:1px solid #ffffff30;background:#ffffff06;border-radius:30px;padding:11px 22px;color:#d9c9e2;font:13px 'DM Sans',sans-serif;cursor:pointer}
.light-time-controls button[aria-pressed=true]{background:#d4b3e8;color:#241530;border-color:#d4b3e8}
.light-time-controls .light-play{margin-left:14px;background:transparent;color:#eee1f5}
.light-time-controls button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.light-film{max-width:1320px;margin:0 auto}.light-film video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid #ffffff25;border-radius:12px;background:#18121f}
.light-film figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:16px;color:#c6b4d2;font-size:10px;letter-spacing:.1em;line-height:1.6}
@media(max-width:760px){.light-time-controls{gap:8px;margin-bottom:22px}.light-time-controls button{padding:9px 15px;font-size:12px}.light-time-controls .light-play{margin-left:0}.light-film figcaption{font-size:8px}.project-category .light-timelapse .light-heading h2{font-size:clamp(30px,8vw,42px)}}
.daylight-control{max-width:650px;margin:0 auto 30px;padding:0 8px}.daylight-readout{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.daylight-readout>span{font-size:9px;letter-spacing:.13em;color:#bc9dcc;max-width:210px;line-height:1.7}.daylight-readout output{font:500 27px 'DM Sans',sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap;color:#f5e8fc}.daylight-readout small{font-size:12px;font-weight:400;color:#d5bbdf}.daylight-range-label{display:block;font-size:11px;color:#ccb8d7;margin-bottom:9px}.daylight-range{appearance:none;-webkit-appearance:none;width:100%;height:30px;margin:0;background:transparent;cursor:ew-resize;touch-action:pan-y}.daylight-range::-webkit-slider-runnable-track{height:5px;border-radius:5px;background:linear-gradient(90deg,#efe4ca,#d49d91 48%,#79509d 75%,#352548)}.daylight-range::-moz-range-track{height:5px;border-radius:5px;background:linear-gradient(90deg,#efe4ca,#d49d91 48%,#352548)}.daylight-range::-webkit-slider-thumb{appearance:none;width:23px;height:23px;margin-top:-9px;border:3px solid #eee0f7;border-radius:50%;background:#774393;box-shadow:0 0 0 5px #cd9feb20,0 0 20px #d6b0ed45}.daylight-range::-moz-range-thumb{width:18px;height:18px;border:3px solid #eee0f7;border-radius:50%;background:#774393}.daylight-range:focus-visible{outline:2px solid #d4b3e8;outline-offset:5px;border-radius:5px}.daylight-stops{display:flex;justify-content:space-between;gap:20px}.daylight-stops button{padding:8px 0;color:#bba9c7;background:none;border:0;font:12px 'DM Sans',sans-serif;cursor:pointer}.daylight-stops button[aria-pressed=true]{color:#fff}.daylight-stops button:focus-visible{outline:2px solid #d4b3e8;outline-offset:3px}
.daylight-scene{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:14px;background:#211629;border:1px solid #ffffff24;isolation:isolate}.daylight-scene>img,.daylight-warmth,.daylight-glow{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.daylight-day{filter:brightness(var(--daylight-bright,1)) saturate(var(--daylight-saturation,1))}.daylight-warmth{background:linear-gradient(160deg,#e6a96985 0%,#bb737542 38%,#503b7233 80%);mix-blend-mode:color;opacity:var(--daylight-warm,0)}.daylight-night{opacity:var(--daylight-night,0)}.daylight-glow{background:radial-gradient(ellipse at 0% 8%,#ffd49b66,transparent 52%);mix-blend-mode:screen;opacity:var(--daylight-warm,0)}.daylight-scene-tag{position:absolute;left:24px;bottom:24px;background:#1c1228a8;backdrop-filter:blur(10px);border:1px solid #ffffff25;border-radius:30px;padding:10px 16px;display:flex;align-items:center;gap:9px;color:#fff;font-size:10px;letter-spacing:.03em}.daylight-scene-tag i{width:6px;height:6px;border-radius:50%;background:#e2badc}
@media(max-width:760px){.daylight-control{padding:0;margin-bottom:22px}.daylight-readout{gap:10px}.daylight-readout>span{font-size:8px;max-width:120px}.daylight-readout output{font-size:22px}.daylight-readout small{font-size:10px}.daylight-scene-tag{left:10px;bottom:10px;font-size:8px;padding:7px 10px}.daylight-stops button{font-size:11px}.daylight-scene{border-radius:10px}}
.daylight-day{filter:none}.daylight-sunset{opacity:var(--daylight-sunset,0)}.daylight-night{opacity:var(--daylight-night,0)}

/* One immutable photograph: only light changes, never architecture. */
.daylight-fixed .daylight-day{filter:brightness(var(--light-brightness,1)) saturate(var(--light-saturation,1));transform:none}
.daylight-tone-warm,.daylight-tone-night{position:absolute;inset:0;pointer-events:none}
.daylight-tone-warm{background:linear-gradient(125deg,#ffb663,#bd795c 48%,#79628e);mix-blend-mode:soft-light;opacity:var(--light-warmth,0)}
.daylight-tone-night{background:linear-gradient(180deg,#152b58,#203b65 65%,#132039);mix-blend-mode:color;opacity:var(--light-coolness,0)}

.daylight-fixed::after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,#071126 0%,#07112680 20%,transparent 46%);opacity:var(--night-shade,0);pointer-events:none}
.night-practical-lights{position:absolute;inset:0;width:100%;height:100%;opacity:var(--practical-lights,0);mix-blend-mode:screen;pointer-events:none;z-index:2}
.daylight-fixed .daylight-scene-tag{z-index:3}

/* Reveal true relit photographs without stacking semitransparent buildings. */
.daylight-reveal .daylight-day{filter:none}
.daylight-reveal .daylight-sunset{opacity:1;clip-path:inset(0 var(--sunset-edge,100%) 0 0)}
.daylight-reveal .daylight-night{opacity:1;clip-path:inset(0 var(--night-edge,100%) 0 0)}

.daylight-registered .daylight-day{filter:none}.daylight-registered .daylight-sunset{clip-path:none;opacity:var(--daylight-sunset,0)}.daylight-registered .daylight-night{clip-path:none;opacity:var(--daylight-night,0)}

/* Preserve the supplied night photograph without extra darkening. */
.daylight-registered .daylight-night{filter:none}
