@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@300;400;500;600;700&display=swap');
:root{--ink:#252824;--muted:#7c7e75;--paper:#fafbf8;--line:#dddfd7;--accent:#6b725a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);position:absolute;top:0;width:100%;z-index:20;background:#fafbf8d9}.brand{font-family:'Manrope',sans-serif;font-size:29px;font-weight:600;letter-spacing:7px;line-height:1.1;display:inline-block}.brand span{display:block;letter-spacing:4.4px;font-size:9px;margin-top:7px}nav{display:flex;gap:38px;font-size:14px}.nav-cta{font-size:14px;border:1px solid #b5b9ac;padding:13px 20px}.nav-cta span{margin-left:24px}#story{height:440vh}.sticky{height:100svh;min-height:690px;position:sticky;top:0;overflow:hidden}.hero-copy{position:absolute;left:5%;top:21%;z-index:3;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;display:block}.short-line{display:inline-block;vertical-align:middle;width:25px;height:1px;background:#8c927e;margin-right:10px}h1,h2,h3,p{margin:0}h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(42px,4.4vw,74px);font-weight:400;letter-spacing:-3px;line-height:1.12;margin:27px 0 24px}em{font-family:Georgia,serif;font-weight:400;color:#798168}h1 em{font-size:.86em;letter-spacing:-2.5px}.hero-copy p{color:var(--muted);font-size:15px;line-height:1.8}.text-link{font-size:13px;display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid #aeb4a3;padding-bottom:10px;margin-top:28px}.text-link span{font-size:20px}#scene{position:absolute;inset:8% -5% 10% 24%;cursor:grab;touch-action:pan-y}#scene:active{cursor:grabbing}canvas{display:block;width:100%;height:100%}.scene-label{position:absolute;right:5%;top:19%;display:flex;flex-direction:column;gap:9px;font-size:14px}.tiny{font-size:9px;letter-spacing:2px;color:var(--muted)}.scene-label small{font-size:10px;letter-spacing:1px;color:var(--muted)}.interaction-hint{position:absolute;right:10%;bottom:20%;font-size:9px;letter-spacing:1.5px;color:var(--muted)}.interaction-hint span{margin:0 12px}.round{border:1px solid var(--line);background:#fff9;border-radius:50%;font-size:23px;width:42px;height:42px;position:absolute;right:5%;bottom:18.5%}.story-bottom{position:absolute;bottom:0;width:90%;left:5%;height:112px;border-top:1px solid var(--line);display:flex;align-items:center;gap:4%}.scroll-cue{display:flex;gap:15px;align-items:center;flex:1;font-size:10px;letter-spacing:1.8px}.scroll-cue>span{font-size:25px}.scroll-cue small,.stage small{display:block;margin-top:8px;font-size:12px;letter-spacing:0;color:var(--muted)}.stage{display:flex;gap:20px;align-items:center;width:270px}.stage>span{font-size:11px;color:var(--muted)}.stage strong{font-size:13px;font-weight:500}.story-progress{height:2px;background:#e3e5dd;flex:1}#progress-fill{height:100%;width:0;background:#747b65}#build-top{background:none;border:0;font-size:11px;text-transform:uppercase;letter-spacing:1px}#component-card{position:absolute;right:6%;bottom:27%;background:#ffffffed;backdrop-filter:blur(18px);box-shadow:0 10px 70px #20251912;border:1px solid white;padding:26px;width:300px;z-index:5}#component-card button{float:right;border:0;background:none;font-size:22px}#component-card h3{font-size:22px;margin:17px 0 10px}#component-card p{font-size:14px;line-height:1.6;color:var(--muted)}.rebuild{padding:60px 8%;background:#32392f;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px}.rebuild .eyebrow{color:#b8c1ab}.rebuild h2{font-size:32px;margin:15px 0 10px}.rebuild p{color:#b8c1ab;font-size:14px}.button{padding:19px 24px;background:#3b4334;color:white;border:0;display:flex;justify-content:space-between;gap:44px;align-items:center;font-size:12px;letter-spacing:1.5px}.button.light{background:#f4f4ed;color:#333b2e}.button:hover{background:#555f49;color:white}.section{padding:100px 8%;border-bottom:1px solid var(--line)}h2{font-family:Manrope,Arial,sans-serif;font-weight:400;font-size:clamp(30px,3vw,48px);line-height:1.25;letter-spacing:-1.5px;margin:20px 0 24px}.section p{font-size:15px;line-height:1.85;color:var(--muted);max-width:440px}.overview{display:grid;grid-template-columns:1.05fr 1fr;gap:8%}.demo-note{display:block;margin-top:27px;font-size:10px;letter-spacing:1.4px;color:#89917b}.price{font-size:32px;padding-bottom:27px;border-bottom:1px solid var(--line)}.price span{font-size:11px;color:var(--accent);margin-left:20px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 20px;padding-top:30px}.facts b{display:block;font-size:28px;font-weight:400}.facts span{display:block;margin-top:9px;font-size:12px;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.floor-tabs{border:1px solid var(--line);padding:4px;display:flex}.floor-tabs button{border:0;background:none;font-size:12px;padding:12px 17px;color:var(--muted)}.floor-tabs button.active{background:#3b4334;color:white}.floor-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:8%;margin-top:28px}.floorplan{background:#eeefe8;padding:24px;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(8,36px);border:1px solid #d8dccf;gap:5px}.room{background:#fcfcf8;border:1px solid #bfc6b3;color:#69735d;padding:5px;font-size:12px;transition:background .25s}.room small{display:block;font-size:10px;margin-top:7px}.room.active,.room:hover{background:#dce2cf;border:1px solid #7d896b;color:#303b27}.room-info{padding:20px 0}.room-info h3{font-family:Manrope;font-size:28px;font-weight:400;margin:17px 0}.room-info>div{font-size:11px;letter-spacing:1.5px;color:var(--accent);margin-bottom:17px}.room-info ul{padding-left:16px;color:var(--muted);font-size:13px;line-height:2}.plan-note{font-size:11px!important;margin-top:20px;max-width:none!important}.gallery-controls{display:flex;gap:8px}.gallery-controls button{width:43px;height:43px;border:1px solid #ccd0c4;background:none;font-size:21px}.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:23px;margin-top:22px}.gallery-photo{height:365px;background-size:300% auto;background-image:url('/assets/interiors.png')}.gallery-item h3{font-size:16px;font-weight:500;margin:18px 0 7px}.gallery-item p{font-size:12px}.gallery-item:nth-child(2){padding-top:42px}.gallery-item:nth-child(3){padding-top:80px}.exterior{padding-top:30px}.outdoor-visual{height:460px;position:relative;background:#e9ece3;overflow:hidden}.outdoor-text{position:absolute;top:50px;left:40px;z-index:2}.outdoor-text h2{font-size:53px}.outdoor-image{position:absolute;inset:0 0 0 15%}.outdoor-details{display:grid;grid-template-columns:1fr 1.5fr;gap:25px;margin-top:35px}.outdoor-details h3{font-size:26px;font-weight:400}.inline-features{grid-column:2;display:flex;flex-wrap:wrap;gap:12px}.inline-features span{font-size:11px;padding:9px 12px;border:1px solid var(--line)}.neighborhood{display:grid;grid-template-columns:1fr 1fr;gap:10%}.nearby>div{padding:20px 0;border-bottom:1px solid var(--line)}.nearby span{float:left;margin-right:20px;color:#9a9f91;font-size:11px}.nearby h3{font-size:16px;font-weight:500;margin-bottom:6px}.nearby p{font-size:12px;margin-left:35px}.features{display:grid;grid-template-columns:1fr 1.3fr;column-gap:8%}.features>.eyebrow{grid-column:1}.features h2{grid-column:1}.feature-list{grid-column:2;grid-row:1/4}details{border-bottom:1px solid var(--line);padding:22px 0}summary{list-style:none;cursor:pointer;font-size:16px;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}details p{font-size:14px!important;padding-top:17px}details[open] summary span{transform:rotate(45deg)}.tour{background:#ecefe6;display:grid;grid-template-columns:1fr 1fr;gap:12%}.tour small{display:block;font-size:12px;color:var(--muted);line-height:1.8;margin-top:35px}form{display:flex;flex-direction:column;gap:18px}form label{display:flex;flex-direction:column;gap:8px;font-size:12px}input,select{width:100%;border:1px solid #c8cebe;background:#f9faf6;padding:14px;color:var(--ink);border-radius:0;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tour-type{display:flex;gap:25px;margin-bottom:8px}.tour-type label{display:flex;flex-direction:row;align-items:center;font-size:14px}.tour-type input{width:16px;accent-color:var(--accent)}#tour-result{font-size:14px;line-height:1.7}#tour-result a{text-decoration:underline}footer{display:flex;align-items:center;justify-content:space-between;padding:50px 5%;gap:25px}footer p,footer>span{font-size:12px;color:var(--muted)}#scene-error{padding:40%;font-size:14px}
@media(min-width:1600px){#scene{left:28%}.hero-copy{top:25%}}@media(max-width:900px){header{height:80px}nav{gap:18px;font-size:12px}.nav-cta{font-size:12px;padding:10px}.hero-copy{top:18%}h1{font-size:48px}#scene{inset:22% -20% 10% 10%}.hero-copy p,.hero-copy .text-link{display:none}.scene-label{top:auto;bottom:24%;left:5%;right:auto}.interaction-hint{bottom:18%;right:12%}.story-progress{display:none}.stage{width:auto}.section{padding:70px 6%}.overview,.floor-layout,.neighborhood,.tour{gap:6%}.floorplan{padding:12px;grid-template-rows:repeat(8,30px)}.gallery-photo{height:270px}.gallery-grid{gap:15px}.features{grid-template-columns:1fr 1.5fr}}@media(max-width:600px){header{padding:0 6%;height:75px}.brand{font-size:24px}.brand span{font-size:8px;letter-spacing:3px}nav{display:none}.nav-cta{font-size:11px}.nav-cta span{margin-left:12px}.sticky{min-height:710px}.hero-copy{top:110px;left:6%}.eyebrow{font-size:9px;letter-spacing:1.7px}h1{font-size:43px;line-height:1.03;letter-spacing:-2px;margin-top:22px}h1 em{letter-spacing:-1px}.hero-copy h1 br:nth-child(2){display:none}#scene{inset:29% -27% 12% -25%}.scene-label{bottom:21%;font-size:12px}.scene-label small{font-size:8px}.tiny{display:none}.interaction-hint{bottom:16%;font-size:8px;right:18%}.round{bottom:15%;right:6%;height:32px;width:32px;font-size:19px}.story-bottom{height:85px;left:6%;width:88%;gap:12px}.scroll-cue{font-size:8px;gap:8px}.scroll-cue small{font-size:10px}.stage{gap:8px}.stage strong{font-size:11px}.stage small{display:none}.stage>span{font-size:9px}#build-top{display:none}#component-card{bottom:25%;right:6%;width:260px}.rebuild{flex-direction:column;align-items:flex-start;padding:40px 6%}.rebuild h2{font-size:26px}.rebuild .button{width:100%}.section{padding:55px 6%}h2{font-size:32px}.overview,.floor-layout,.neighborhood,.tour,.features{display:block}.overview-right{margin-top:35px}.price{font-size:28px}.facts b{font-size:25px}.section-heading{display:block}.floor-tabs{display:inline-flex;margin-bottom:20px}.floor-layout{margin-top:5px}.floorplan{grid-template-rows:repeat(8,30px)}.room-info{padding-top:30px}.gallery-controls{margin-bottom:20px}.gallery-grid{grid-template-columns:1fr;gap:28px}.gallery-item:nth-child(n){padding:0}.gallery-photo{height:370px}.gallery-item:not(:first-child){display:none}.outdoor-visual{height:410px}.outdoor-text{top:25px;left:20px}.outdoor-text h2{font-size:37px}.outdoor-image{inset:15% -40% 0 -40%}.outdoor-details{display:block}.outdoor-details p{margin:15px 0}.inline-features{display:flex}.nearby{margin-top:25px}.tour form{margin-top:32px}.tour small{margin-top:20px}footer{flex-wrap:wrap;padding:35px 6%}footer p{display:none}footer>span{font-size:10px}.feature-list{margin-top:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.outdoor-image{inset:0 0 0 42%;background-image:url(/assets/spaces.png);background-size:300% auto;background-position:100% center}.outdoor-image canvas{display:none}@media(max-width:600px){.outdoor-image{inset:0 0 0 40%;background-size:auto 110%;background-position:100% center}.outdoor-text{left:18px;top:36px}.outdoor-text h2{font-size:32px}.outdoor-text .eyebrow{max-width:100px;line-height:1.7}}
