/* Signature residential stories — the approved editorial first screen stays intact. */
.hero-journey{height:185svh;position:relative}.hero-journey .hero-editorial{position:sticky;top:0;max-height:none}.hero-aperture{position:absolute;inset:0;z-index:6;overflow:hidden;opacity:0;clip-path:inset(33% 38%);pointer-events:none}.hero-aperture>img{width:100%;height:100%;object-fit:cover;object-position:50% 57%;will-change:transform}.hero-aperture-shade{position:absolute;inset:0;background:linear-gradient(0deg,#0e2016c9,transparent 60%)}.hero-inside-copy{position:absolute;left:42px;right:42px;bottom:105px;z-index:7;color:#f4f0e4;opacity:0;pointer-events:none}.hero-inside-copy>.eyebrow{font-size:8px;letter-spacing:.16em;margin-bottom:20px}.hero-inside-copy h2{font-size:clamp(50px,6.4vw,100px);line-height:1.02;letter-spacing:-.035em}.hero-inside-copy h2 em{color:#e3d5b9}.hero-inside-copy>p:last-child{font-size:10px;margin-top:26px;letter-spacing:.03em;color:#dddacb}.hero-journey .hero-title-wrap{will-change:transform,opacity}.statement-word{display:inline-block;will-change:transform}.intro .statement{overflow:visible}.service-curtains{position:absolute;inset:0;z-index:2;display:flex;pointer-events:none;overflow:hidden}.service-curtains>span{width:50%;height:100%;background:#263329ed;will-change:transform}.service-curtains>span:first-child{border-right:1px solid #c3b78d38}.service-panel>.service-index,.service-panel>div,.service-panel>.circle-arrow{z-index:3}.service-panel img{will-change:transform}.transformation-section{height:230svh;position:relative;background:#293429;color:#f3f0e6}.transformation-stage{position:sticky;top:0;height:100svh;min-height:730px;overflow:hidden}.comparison-visual{position:absolute;inset:0;isolation:isolate}.shell-image,.finish-image{position:absolute;inset:0}.shell-image img,.finish-image img{object-position:50% 58%;width:100%;height:100%;object-fit:cover}.finish-image{z-index:2;clip-path:inset(0 100% 0 0);will-change:clip-path}.comparison-shade{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(180deg,#0a1d13b3,transparent 43%),linear-gradient(0deg,#0a1c13ed,transparent 45%)}.transformation-title{position:absolute;left:var(--pad);right:var(--pad);top:117px;z-index:4;pointer-events:none}.transformation-title>.eyebrow{font-size:8px;letter-spacing:.15em;color:#d9c8a9;margin-bottom:22px}.transformation-title h2{font-size:clamp(43px,5.1vw,80px);line-height:1.04;letter-spacing:-.03em}.transformation-title h2 em{color:#eadcc2}.comparison-line{position:absolute;left:0;top:0;bottom:0;width:1px;background:#e5d2a9c9;z-index:5;pointer-events:none;will-change:transform}.comparison-line>span{position:absolute;left:0;top:55%;width:62px;height:62px;background:#eee9dbeb;color:#253125;transform:translate(-50%,-50%);border:1px solid #fff8;border-radius:50%;display:grid;place-items:center;font-size:23px;box-shadow:0 4px 30px #0002}.comparison-drag-zone{position:absolute;top:40%;bottom:180px;left:0;right:0;z-index:6;cursor:ew-resize;touch-action:pan-y;user-select:none}.comparison-top-labels{position:absolute;left:var(--pad);right:var(--pad);top:55%;z-index:4;display:flex;justify-content:space-between;gap:25px;pointer-events:none}.comparison-top-labels>span{font-size:7px;letter-spacing:.13em;padding:7px 11px;border:1px solid #e8e0c54d;background:#172a1cc2;color:#eee8d5}.comparison-bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:67px;z-index:7;display:flex;align-items:end;justify-content:space-between;gap:80px}.comparison-state>span{font-size:9px;letter-spacing:.13em;color:#dfcca6}.comparison-state p{font-size:10px;line-height:1.8;color:#dddccf;margin-top:16px}.comparison-controls{width:440px;max-width:50%}.comparison-modes{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:23px}.comparison-modes button{font-size:10px;color:#c2c9b5;padding:8px 0;border-bottom:1px solid transparent;transition:color .25s,border-color .25s;white-space:nowrap}.comparison-modes button[aria-pressed=true]{color:#f6eedb;border-bottom-color:#d6be8c}.comparison-modes button:hover{color:#fff}.comparison-modes .comparison-reset{font-size:8px;margin-left:auto;color:#dac69c}.comparison-reset[hidden]{display:none}.comparison-range-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#comparison-range{width:100%;height:25px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;display:block;cursor:ew-resize;accent-color:#d1b987}#comparison-range::-webkit-slider-runnable-track{height:1px;background:#e4dec58c}#comparison-range::-moz-range-track{height:1px;background:#e4dec58c}#comparison-range::-webkit-slider-thumb{appearance:none;width:15px;height:15px;margin-top:-7px;border:1px solid #ded4ba;border-radius:50%;background:#eadcc0;box-shadow:0 0 0 6px #ffffff0d}#comparison-range::-moz-range-thumb{width:14px;height:14px;border:1px solid #ded4ba;border-radius:50%;background:#eadcc0;box-shadow:0 0 0 6px #ffffff0d}.comparison-scale{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:6px;letter-spacing:.13em;color:#bdc6b1;line-height:1.7;margin-top:8px}.comparison-scale>.comparison-percentage{font-size:12px;letter-spacing:.05em;color:#e5d8b9}.comparison-note{position:absolute;bottom:19px;right:var(--pad);left:var(--pad);z-index:7;text-align:right;color:#afbaa3;font-size:7px;letter-spacing:.025em}.process-tabs{position:relative;padding-left:25px}.process-rail{position:absolute;left:0;top:0;bottom:0;width:1px;background:#b7beaa66}.process-rail>span{display:block;height:100%;width:100%;background:#9e8562;transform:scaleY(.25);transform-origin:50% 0}.process-number{font-variant-numeric:tabular-nums}.material-swatches button{transition:transform .4s}.material-swatches button:hover{transform:translateY(-4px)}.film-track .project-card{transform-origin:50% 50%}.closing>div:not(.image-shade){will-change:transform}.footer-top{overflow:hidden}.hero-journey .hero-frame{contain:paint}
@media(min-width:1600px){.hero-inside-copy{left:60px;right:60px;bottom:130px}.hero-inside-copy h2{font-size:110px}.comparison-bottom{bottom:85px}.comparison-note{bottom:30px}}
@media(max-width:1100px){.comparison-bottom{gap:45px}.comparison-controls{width:400px;max-width:52%}.transformation-title h2{font-size:63px}.comparison-modes{gap:18px}.comparison-state p{font-size:9px}}
@media(max-width:900px){.hero-journey{height:175svh}.hero-inside-copy{left:30px;right:30px;bottom:105px}.hero-inside-copy h2{font-size:64px}.hero-inside-copy>p:last-child{font-size:9px}.transformation-title{top:115px}.transformation-title h2{font-size:56px}.comparison-bottom{gap:35px;bottom:65px}.comparison-state>span{font-size:8px}.comparison-controls{width:360px;max-width:53%}.comparison-modes button{font-size:9px}.comparison-modes{gap:15px}.comparison-modes .comparison-reset{font-size:7px;margin-left:0}.comparison-line>span{width:52px;height:52px;font-size:20px}}
@media(max-width:600px){.hero-journey{height:165svh}.hero-inside-copy{left:24px;right:24px;bottom:75px}.hero-inside-copy>.eyebrow{font-size:6px;letter-spacing:.12em;margin-bottom:18px}.hero-inside-copy h2{font-size:47px;line-height:1.05}.hero-inside-copy>p:last-child{font-size:8px;line-height:1.9;max-width:240px;margin-top:22px}.hero-aperture>img{object-position:46% 55%}.statement-word{will-change:auto}.service-panel{height:490px}.transformation-section{height:220svh}.transformation-stage{height:100svh;min-height:720px}.transformation-title{left:24px;right:24px;top:112px}.transformation-title>.eyebrow{font-size:6px;letter-spacing:.12em;margin-bottom:20px}.transformation-title h2{font-size:41px;line-height:1.06}.shell-image img,.finish-image img{object-position:49% 50%}.comparison-shade{background:linear-gradient(180deg,#0a1b15c9,transparent 48%),linear-gradient(0deg,#0b2014f2,transparent 57%)}.comparison-line>span{width:44px;height:44px;font-size:19px;top:49%}.comparison-drag-zone{top:37%;bottom:245px}.comparison-top-labels{left:18px;right:18px;top:48%}.comparison-top-labels>span{font-size:5px;letter-spacing:.08em;padding:5px 7px}.comparison-bottom{left:24px;right:24px;bottom:65px;display:block}.comparison-state>span{font-size:7px;letter-spacing:.12em}.comparison-state p{font-size:8px;line-height:1.7;margin-top:10px}.comparison-state p br{display:none}.comparison-controls{width:100%;max-width:none;margin-top:20px}.comparison-modes{gap:18px;margin-bottom:15px;flex-wrap:nowrap}.comparison-modes button{font-size:8px}.comparison-modes .comparison-reset{font-size:6px;margin-left:auto}.comparison-scale{font-size:5px;letter-spacing:.1em;margin-top:6px}.comparison-scale>.comparison-percentage{font-size:10px}.comparison-note{left:24px;right:24px;bottom:22px;font-size:5px;line-height:1.8;text-align:left;max-width:270px}.process-tabs{padding-left:15px}.service-curtains>span{background:#263329e8}}
@media(max-width:360px){.hero-inside-copy h2{font-size:41px}.transformation-title h2{font-size:37px}.comparison-modes{gap:12px}.comparison-modes button{font-size:7px}.comparison-state p{font-size:7px}}
@media(prefers-reduced-motion:reduce){.hero-journey{height:auto}.hero-journey .hero-editorial{position:relative}.hero-aperture,.hero-inside-copy,.service-curtains{display:none}.transformation-section{height:auto}.transformation-stage{position:relative;height:100svh;min-height:800px}.finish-image{will-change:auto;clip-path:inset(0 50% 0 0)}.statement-word{transform:none!important;color:inherit!important}.hero-journey .hero-title-wrap{will-change:auto}.comparison-line{will-change:auto}}
.hero-interface{position:absolute;inset:0;z-index:4}
/* Aligned material photographs crossfade without moving the room geometry. */
.material-section .material-image .material-scene {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:0;
  transition:opacity .75s cubic-bezier(.22,.61,.36,1);
  pointer-events:none;
}
.material-image .material-scene.is-active { opacity:.85; }
.material-image-label { z-index:2; }
.material-swatches button:focus-visible {
  outline:2px solid #f4eedf;
  outline-offset:8px;
}
@media (prefers-reduced-motion:reduce) {
  .material-section .material-image .material-scene,.material-section { transition:none; }
}
