.villa-process{position:relative;background:radial-gradient(ellipse at 70% 42%,#15364b 0,#071D33 43%,#071D33 80%);color:#F4F5F3;isolation:isolate;font-family:Manrope,Arial,sans-serif;font-weight:400;--villa-progress:0}
.villa-intro{width:calc(100% - 128px);max-width:1376px;margin:auto;display:grid;grid-template-columns:1fr .7fr;gap:110px;align-items:end;padding:104px 0 30px}
.villa-intro .eyebrow{font-weight:600;color:#E5B544;font-size:9px;margin-bottom:25px}.villa-intro h2{font-family:Sora,Manrope,Arial,sans-serif;font-weight:600;font-size:clamp(37px,4vw,61px);max-width:680px}.villa-intro>p{font-size:13px;line-height:1.9;max-width:395px;margin:0 0 4px;color:#C7CCD1}
.villa-runway{height:320svh;position:relative}.villa-sticky{position:sticky;top:84px;height:calc(100svh - 96px);min-height:610px;width:calc(100% - 112px);max-width:1400px;margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;padding:13px 0 20px}.villa-scene-top{display:flex;align-items:center;justify-content:space-between;gap:30px;flex:0 0 auto;padding:0 8px;position:relative;z-index:2}.villa-scene-kicker{font-weight:600;display:flex;align-items:center;gap:9px;color:#C7CCD1;font-size:8px;letter-spacing:.13em;text-transform:uppercase}.villa-scene-kicker i{width:5px;height:5px;background:#E5B544;border-radius:50%;box-shadow:0 0 14px #E5B54455}.villa-scroll-hint{font-size:8px;color:#C7CCD1;letter-spacing:.03em;display:flex;gap:16px;align-items:center}.villa-scroll-hint>span{color:#E5B544;font-size:22px;font-weight:300}.villa-canvas{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;margin:-15px 0 -14px;pointer-events:none}.villa-drawing{width:100%;height:100%;max-height:100%;overflow:visible;flex:1;object-fit:contain}.villa-drawing [data-villa-build],.villa-drawing [data-villa-construction],.villa-drawing [data-villa-sun]{opacity:0;will-change:transform,opacity}.villa-scene-label{position:absolute;left:12px;bottom:25px;display:flex;flex-direction:column;gap:7px;max-width:300px;padding:17px 23px 17px 0;background:linear-gradient(90deg,#082332eb,#08233200)}.villa-scene-label>span{font-size:8px;letter-spacing:.18em;color:#E5B544}.villa-scene-label>strong{font-family:Sora,Manrope,Arial,sans-serif;font-size:16px;line-height:1.3;font-weight:500;letter-spacing:-.025em}.villa-scene-label>small{font-size:8px;color:#8fa8af;letter-spacing:.01em}.villa-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;position:relative;z-index:2;flex:0 0 auto;padding:0 8px}.villa-rail-step{display:grid;grid-template-columns:23px 1fr;gap:16px 10px;position:relative;align-items:baseline;--step-progress:0}.villa-rail-track{height:1px;background:#E5B5442b;grid-column:1/-1;width:100%;overflow:hidden;display:block}.villa-rail-track i{display:block;width:calc(100% * var(--step-progress));height:1px;background:#E5B544;box-shadow:0 0 12px #E5B54480}.villa-rail-number{font-size:8px;letter-spacing:.08em;color:#67828b;transition:color .25s}.villa-rail-step h3{font-family:Sora,Manrope,Arial,sans-serif;font-size:13px;font-weight:600;line-height:1.35;letter-spacing:-.02em;color:#91a8b0;transition:color .25s}.villa-rail-step p{font-size:10px;line-height:1.7;color:#8ca4ae;margin:12px 0 0;max-width:245px}.villa-rail-step.is-active h3,.villa-rail-step.is-complete h3{color:#FFFFFF}.villa-rail-step.is-active .villa-rail-number,.villa-rail-step.is-complete .villa-rail-number{color:#E5B544}.villa-rail-step.is-active h3:after{content:'';display:inline-block;width:4px;height:4px;background:#E5B544;border-radius:50%;vertical-align:middle;margin-left:9px}
@media(min-width:1600px){.villa-sticky{max-width:1450px}.villa-drawing{max-width:1350px}.villa-canvas{margin:-25px 0 -20px}}
@media(max-height:780px) and (min-width:901px){.villa-sticky{top:78px;height:calc(100svh - 88px);min-height:540px}.villa-canvas{margin:-20px 0 -25px}.villa-scene-label{bottom:12px}.villa-rail-step p{font-size:9px;line-height:1.55;margin-top:8px}.villa-rail-step h3{font-size:12px}.villa-scene-top{padding-top:0}}
@media(max-width:1100px){.villa-intro{width:calc(100% - 88px);gap:65px}.villa-sticky{width:calc(100% - 72px)}.villa-rail{gap:20px}.villa-rail-step{gap:13px 6px;grid-template-columns:20px 1fr}.villa-rail-step h3{font-size:12px}.villa-rail-step p{font-size:9px}.villa-scene-label{bottom:20px}.villa-intro>p{font-size:12px}.villa-scene-label>strong{font-size:14px}}
@media(max-width:900px){.villa-intro{grid-template-columns:1fr 1fr;gap:35px;padding-top:80px}.villa-intro h2{font-size:42px}.villa-intro .eyebrow{font-size:7px}.villa-sticky{top:77px;height:calc(100svh - 90px);min-height:610px;width:calc(100% - 48px);padding-bottom:24px}.villa-runway{height:300svh}.villa-canvas{margin:-14px -35px -20px}.villa-rail{gap:18px}.villa-rail-step p{display:none}.villa-rail-step{grid-template-columns:1fr;gap:10px}.villa-rail-number{display:none}.villa-rail-step h3{font-size:11px;max-width:145px}.villa-scene-label{left:40px;bottom:30px}.villa-scene-kicker{font-size:7px}.villa-scroll-hint{font-size:7px}.villa-scene-label>strong{font-size:15px}}
@media(max-width:640px){.villa-process{overflow:clip}.villa-intro{width:calc(100% - 50px);grid-template-columns:1fr;gap:24px;padding:65px 0 20px}.villa-intro h2{font-size:37px}.villa-intro .eyebrow{font-size:7px;letter-spacing:.16em;margin-bottom:22px}.villa-intro>p{font-size:12px;max-width:335px}.villa-runway{height:300svh}.villa-sticky{top:72px;width:calc(100% - 36px);height:calc(100svh - 84px);min-height:560px;padding:15px 0 26px}.villa-scene-top{display:flex;flex-direction:column;align-items:start;gap:8px;padding:0 8px}.villa-scene-kicker{font-size:6px;letter-spacing:.1em}.villa-scroll-hint{font-size:7px;gap:10px}.villa-scroll-hint>span{font-size:15px}.villa-canvas{margin:-25px -64px -14px;min-height:300px}.villa-drawing{width:100%;height:100%;min-width:0}.villa-scene-label{left:73px;bottom:14px;max-width:270px;gap:5px;padding:14px 20px 14px 0}.villa-scene-label>strong{font-size:15px}.villa-scene-label>small{font-size:7px}.villa-scene-label>span{font-size:7px}.villa-rail{gap:10px;padding:0 8px}.villa-rail-step{gap:12px}.villa-rail-step h3{font-size:9px;line-height:1.45;max-width:85px}.villa-rail-step.is-active h3:after{width:3px;height:3px;margin-left:5px}}
@media(prefers-reduced-motion:reduce){.villa-runway{height:auto;min-height:0}.villa-sticky{position:relative;top:auto;height:auto;min-height:0;padding-top:30px;padding-bottom:65px}.villa-canvas{height:auto;min-height:0;aspect-ratio:1.43;margin:0}.villa-drawing{height:auto}.villa-rail-step p{display:block}.villa-scroll-hint{display:none}.villa-scene-label{display:none}.villa-drawing [data-villa-build]{opacity:1;transform:none}.villa-drawing [data-villa-construction],.villa-drawing [data-kind="site"]{opacity:0}.villa-drawing [data-villa-sun]{opacity:1}.villa-rail-step h3,.villa-rail-number{color:#FFFFFF}.villa-rail-track i{width:100%}.villa-rail-step h3:after{display:none!important}}
