/* One house, three stages, one uninterrupted camera position. */
.home-story{height:360svh;position:relative;background:var(--paper)}
.home-story-stage{position:sticky;top:0;height:100svh;min-height:700px;padding:110px 16px 16px;overflow:hidden}
.story-frame{height:100%;position:relative;overflow:hidden;background:#26322d;color:#f4f1e8;isolation:isolate}
.story-images{position:absolute;inset:0;transform-origin:60% 50%;will-change:transform}
.story-image{position:absolute;inset:0}
.story-image img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.story-image[data-story-image="1"],.story-image[data-story-image="2"]{clip-path:polygon(0% 0%,0% 0%,0% 100%,0% 100%);will-change:clip-path}
.story-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#07150d66,transparent 70%),linear-gradient(0deg,#06120eed,transparent 76%),linear-gradient(180deg,#06120e40,transparent 30%)}
.story-topline{position:absolute;left:42px;right:42px;top:30px;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.14em;color:#eeeddfbd}
.story-copy{position:absolute;left:42px;right:34%;bottom:169px;min-height:315px;z-index:3}
.story-chapter{position:absolute;left:0;right:0;bottom:0;opacity:0;pointer-events:none;will-change:transform,opacity}
.story-chapter.is-active{pointer-events:auto}
.story-chapter:first-child{opacity:1}
.story-kicker{font-size:9px;letter-spacing:.15em;margin-bottom:24px;display:flex;gap:14px;align-items:center}
.story-kicker>span{font-size:10px;letter-spacing:.04em;color:#d5be95;border-right:1px solid #ecddbe66;padding-right:14px}
.story-copy h1,.story-copy h2{font-family:var(--sans);font-size:clamp(58px,6.8vw,112px);font-weight:500;letter-spacing:-.065em;line-height:1.055;margin:0}
.story-copy h1>span,.story-copy h2>span{color:#e5dbc7}
.story-chapter>p:last-of-type{font-size:12px;line-height:1.9;letter-spacing:.005em;color:#e7e8ddc9;margin-top:25px;max-width:430px}
.story-cta{display:inline-flex;gap:35px;align-items:center;font-size:10px;padding:13px 0 9px;border-bottom:1px solid #e2d3b5aa;margin-top:17px;color:#f1e7d3}
.story-cta svg{width:17px;height:17px;transition:transform .3s}
.story-cta:hover svg{transform:translate(3px,-3px)}
.story-aside{position:absolute;right:42px;bottom:181px;color:#e7e4d3c4;display:flex;align-items:center;gap:22px}
.story-aside-mark{width:59px;height:59px;border:1px solid #e7dbc560;border-radius:50%;display:grid;place-items:center;font-size:15px;letter-spacing:-.08em}
.story-aside p{font-size:9px;line-height:1.8;letter-spacing:.02em}
.story-bottom{position:absolute;left:42px;right:42px;bottom:62px;display:flex;align-items:end;justify-content:space-between;gap:40px;z-index:4}
.story-scroll-cue{display:flex;gap:12px;align-items:center;font-size:7px;letter-spacing:.13em;color:#e5dfc9}
.story-scroll-line{height:35px;width:1px;background:#e8d9b54d;position:relative;overflow:hidden}
.story-scroll-line:after{content:'';position:absolute;left:0;top:-100%;width:1px;height:100%;background:#f4e7cc;animation:story-scroll 2.6s ease-in-out infinite}
@keyframes story-scroll{to{transform:translateY(200%)}}
.story-chapters{display:flex;gap:22px;width:49%;max-width:550px}
.story-chapters button{padding:13px 0 10px;text-align:left;flex:1;min-width:0;position:relative;color:#e2dfd09c;font-size:10px;line-height:1.5;white-space:nowrap;transition:color .25s}
.story-chapters button>span{display:flex;gap:10px;align-items:center}
.story-chapters small{font-size:7px;color:#e7d5b09c;font-variant-numeric:tabular-nums}
.story-chapters button:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#e9e5d83d}
.story-chapters i{position:absolute;bottom:0;left:0;width:100%;height:2px;z-index:1;background:#d5bd8e;transform:scaleX(0);transform-origin:0 50%}
.story-chapters button[aria-current="step"],.story-chapters button:hover{color:#f5eedc}
.story-chapters button[aria-current="step"] small{color:#e8cc96}
.story-chapters button:focus-visible{outline:1px solid #f5e7ca;outline-offset:5px}
.story-fineprint{position:absolute;left:42px;right:42px;bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#e4e1d085;font-size:6px;letter-spacing:.09em;z-index:4}
.story-fineprint>a{font-size:8px;color:#e9dfc4c9;letter-spacing:0}
.story-trace{position:absolute;top:0;bottom:0;left:0;width:1px;background:#e8d4a9;opacity:0;box-shadow:0 0 18px #edddb54d;pointer-events:none;z-index:2;will-change:transform,opacity}
.story-trace>span{position:absolute;top:17%;left:12px;white-space:nowrap;font-size:6px;letter-spacing:.15em;color:#e7dbbd;background:#25352b99;padding:5px 7px}
.story-opening{position:absolute;inset:0;background:var(--paper);z-index:10;pointer-events:none;display:none}
.js-motion .story-opening{display:block}
@media(min-width:1600px){
 .home-story-stage{padding:120px 22px 22px}
 .story-topline,.story-bottom,.story-fineprint{left:60px;right:60px}
 .story-copy{left:60px;bottom:185px}
 .story-aside{right:60px;bottom:205px}
 .story-topline{top:38px;font-size:9px}
 .story-copy h1,.story-copy h2{font-size:clamp(100px,6.6vw,140px)}
 .story-chapter>p:last-of-type{font-size:14px}
 .story-kicker{font-size:10px}
 .story-bottom{bottom:75px}
 .story-chapters{max-width:650px}
 .story-chapters button{font-size:12px}
 .story-fineprint{bottom:30px;font-size:7px}
}
@media(max-width:1000px){
 .story-copy{right:24%;left:30px;bottom:175px}
 .story-copy h1,.story-copy h2{font-size:8vw}
 .story-topline,.story-bottom,.story-fineprint{left:30px;right:30px}
 .story-aside{right:30px;bottom:192px}
 .story-aside p{display:none}
 .story-chapters{width:54%;gap:17px}
 .story-chapters button{font-size:9px}
 .story-scroll-cue{font-size:6px}
 .story-chapter>p:last-of-type{font-size:11px}
}
@media(max-width:600px){
 .home-story{height:340svh}
 .home-story-stage{height:100svh;min-height:660px;padding:94px 9px 9px}
 .story-image img{object-position:61% 50%}
 .story-topline{top:23px;left:22px;right:22px;font-size:6px;line-height:1.8}
 .story-topline>span:last-child{max-width:110px;text-align:right}
 .story-shade{background:linear-gradient(0deg,#06120ef5,transparent 90%),linear-gradient(180deg,#06120e33,transparent 30%)}
 .story-copy{left:22px;right:20px;bottom:175px;min-height:260px}
 .story-copy h1,.story-copy h2{font-size:clamp(40px,11.4vw,66px);line-height:1.09;letter-spacing:-.06em}
 .story-kicker{font-size:7px;letter-spacing:.12em;margin-bottom:20px;gap:11px}
 .story-kicker>span{font-size:8px;padding-right:11px}
 .story-chapter>p:last-of-type{font-size:9px;line-height:1.9;margin-top:22px;max-width:290px}
 .story-cta{font-size:8px;margin-top:13px;gap:22px;padding-top:8px}
 .story-cta svg{width:14px;height:14px}
 .story-aside{display:none}
 .story-bottom{left:22px;right:22px;bottom:61px;display:block}
 .story-scroll-cue{font-size:5px;letter-spacing:.13em;gap:9px;margin-bottom:15px}
 .story-scroll-line{height:18px}
 .story-chapters{width:100%;gap:15px}
 .story-chapters button{font-size:8px;padding-top:8px;padding-bottom:10px}
 .story-chapters button>span{gap:7px}
 .story-chapters small{font-size:6px}
 .story-fineprint{left:22px;right:22px;bottom:20px;align-items:end;gap:15px;font-size:4px;letter-spacing:.06em}
 .story-fineprint>span{max-width:175px;line-height:1.8}
 .story-fineprint>a{font-size:6px;white-space:nowrap}
 .story-trace>span{top:23%;font-size:5px;left:8px}
}
@media(max-width:360px){.story-copy h1,.story-copy h2{font-size:38px}.story-chapters button{font-size:7px}}
@media(prefers-reduced-motion:reduce){
 .home-story{height:auto}
 .home-story-stage{position:relative}
 .story-images,.story-image,.story-chapter,.story-trace{will-change:auto}
 .story-scroll-line:after{animation:none;top:0}
 .story-opening{display:none}
 .story-chapters button,.story-cta svg{transition:none}
}
