
.experience-page{margin:0}.experience-header{position:relative;z-index:10}.experience-back{font-size:13px;min-height:44px;display:flex;align-items:center}.experience-eyebrow{font-size:13px;color:#aaa}
.boot-page{height:100vh;height:100svh;overflow:hidden;background:#050506}.boot-page .experience-header{position:absolute;inset:0 0 auto;height:90px;margin:0;padding:0 4%;border:0;pointer-events:none}.boot-page .experience-header a{pointer-events:auto}.boot-page .wordmark{color:#111}.boot-page .experience-back{color:#eee}.boot-options{height:100vh;height:100svh;display:grid;grid-template-columns:1fr 1fr}.boot-option{position:relative;overflow:hidden;display:flex;align-items:flex-end;isolation:isolate;padding:7vh 8%;transition:background .6s}.boot-design{background:#dddcd7;color:#151515}.boot-play{background:#121313;color:#f1f1ec}.split-copy{position:relative;width:100%;z-index:2}.split-copy h1{margin:0;font-size:clamp(65px,8.5vw,140px);font-weight:400;line-height:1;letter-spacing:-.07em}.split-art{position:absolute;left:50%;top:33%;width:min(27vw,390px);height:min(27vw,390px);transform:translate(-50%,-50%);transition:transform 1s cubic-bezier(.2,.8,.2,1);pointer-events:none}.boot-option:hover .split-art{transform:translate(-50%,-53%) rotate(8deg)}.design-art{perspective:900px}.design-art i{position:absolute;inset:9%;border-radius:50%;border:24px solid #e8e7e0;box-shadow:inset 2px 2px 5px #fff,inset -4px -4px 8px #a5a49b,10px 30px 35px #0002;transform:rotateY(-30deg) rotateX(20deg)}.design-art i:nth-child(2){inset:23%;border-width:16px;transform:rotateY(30deg) rotateX(-25deg)}.design-art i:nth-child(3){inset:38%;border-width:10px;border-color:#ef382e;transform:rotateY(-20deg)}.play-art i{position:absolute;inset:6%;border:1px solid #fff3;border-radius:50%;box-shadow:0 0 60px #ef382e0b,inset 0 0 70px #ef382e0b;transform:rotateX(55deg)}.play-art span{position:absolute;inset:0;display:grid;place-items:center;color:#ef382e;font-size:clamp(100px,19vw,280px);font-weight:400;animation:signal-float 5s ease-in-out infinite}@keyframes signal-float{50%{transform:translateY(-12px) rotate(12deg)}}
@media(max-width:650px){.boot-options{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.boot-page .experience-header{height:65px;padding:0 6%}.boot-page .wordmark{font-size:27px}.boot-page .wordmark span{font-size:23px}.boot-page .experience-back{color:#111}.boot-option{padding:25px 7%;align-items:flex-end}.split-copy{max-width:100%}.split-copy h1{font-size:clamp(45px,10vh,75px);font-size:clamp(45px,10svh,75px)}.split-art{left:77%;top:37%;width:150px;height:150px}.design-art i{border-width:12px}.design-art i:nth-child(2){border-width:8px}.design-art i:nth-child(3){border-width:5px}.play-art span{font-size:110px}.boot-design .split-copy{padding-top:40px}}
@media(max-height:500px) and (min-width:651px){.boot-page .experience-header{height:60px}.boot-option{padding-bottom:20px}.split-art{left:75%;top:40%;width:160px;height:160px}.split-copy h1{font-size:65px}}


.play-page{height:100vh;height:100svh;height:100dvh;min-height:100svh;overflow:hidden;background:#050506;-webkit-tap-highlight-color:transparent}.game-main{position:relative;height:100vh;height:100svh;height:100dvh;min-height:100svh}.game-main canvas{width:100%;height:100%;display:block;touch-action:none;outline:none}
.game-exit,#game-pause{position:absolute;top:max(22px,env(safe-area-inset-top));z-index:5;min-height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #fff4;background:#111112bf;backdrop-filter:blur(12px);color:#f4f3ef;font-size:13px;transition:background .25s,transform .25s}.game-exit{left:25px;width:48px;height:48px;border-radius:50%;padding:0}.game-exit svg{width:22px;height:22px}.game-exit:hover{background:#f4f3ef;color:#111112;transform:translateX(-2px)}#game-pause{right:25px;border-radius:24px;padding:0 19px}#game-pause[hidden],.play-page:not([data-game-state=idle]):not([data-game-state=error]) .game-exit{display:none}
.game-overlay{position:absolute;inset:0;z-index:4;display:grid;place-items:center;padding:85px 5vw;overflow:auto;color:#f4f3ef;background:#080809}.game-overlay[hidden]{display:none}.game-overlay:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 50% 52%,#050506b5 8%,#05050620 78%),linear-gradient(0deg,#050506bd,transparent 78%),url('/coast-menu.jpg') center/cover;opacity:.94;pointer-events:none}.game-intro{position:relative;z-index:1;width:min(1200px,100%);margin:auto;text-align:center}.game-menu-meta{display:flex;align-items:center;justify-content:center;gap:16px}.game-menu-meta>svg{width:30px;height:30px;color:#f3352c}.game-overlay .experience-eyebrow{font-size:clamp(13px,1vw,20px);color:#e2e0dc;white-space:nowrap}.game-state-label{font-size:11px;color:#f3352c}.game-overlay h1{font-size:clamp(78px,min(9.5vw,18vh),220px);font-weight:400;line-height:.93;letter-spacing:-.065em;margin:25px 0 24px;text-wrap:balance}.game-overlay h1>span{color:#f3352c}.game-overlay p{font-size:clamp(15px,1.2vw,22px);line-height:1.55;color:#e2e0dc}.game-setup{display:flex;flex-direction:column;align-items:center;gap:30px;margin:38px auto 0;width:min(590px,100%)}
.quality-picker{padding:0;border:0;margin:0;width:100%;min-width:0}.quality-picker legend{padding:0;width:100%;margin-bottom:13px;text-align:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#d6d3ce}.quality-options{display:grid;grid-template-columns:repeat(3,1fr);padding:5px;gap:3px;border:1px solid #fff3;border-radius:50px;background:#111112d9;backdrop-filter:blur(16px)}.quality-options label{position:relative;cursor:pointer;margin:0;min-width:0}.quality-options input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;margin:0}.quality-options label>span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:30px;color:#e4e1dc;font-size:15px;transition:background .3s,color .3s,box-shadow .3s;pointer-events:none}.quality-options i{font-size:14px;font-style:normal;color:#aaa9a6}.quality-options input:checked+span{background:#f4f3ef;color:#111112;box-shadow:0 2px 8px #0002}.quality-options input:checked+span i{color:#f3352c}.quality-options input:focus-visible+span{outline:2px solid #f4f3ef;outline-offset:3px}.quality-options label:hover>span{box-shadow:inset 0 0 0 1px #fff5}.quality-picker:disabled{opacity:.5}
.game-start{display:flex;align-items:center;justify-content:space-between;gap:34px;width:fit-content;min-height:76px;padding:9px 9px 9px 32px;border:1px solid #f4f3ef65;border-radius:50px;background:#111112dd;backdrop-filter:blur(16px);color:#f4f3ef;font-size:20px;line-height:1.3;box-shadow:0 12px 35px #0002;transition:background .3s,box-shadow .3s,transform .3s}.entry-arrow{display:grid;place-items:center;flex-shrink:0;width:56px;height:56px;border-radius:50%;background:#f3352c;color:#111112;transition:background .3s,transform .45s cubic-bezier(.2,.8,.2,1)}.entry-arrow svg{width:24px;height:24px;transition:transform .4s}.game-start:hover{background:#242425f0;box-shadow:0 8px 35px #0003;transform:translateY(-2px)}.game-start:hover .entry-arrow{background:#f4f3ef;transform:rotate(-35deg)}.game-start:active{transform:scale(.98)}.game-start:disabled{opacity:.62;cursor:wait;transform:none}
.game-guide{box-sizing:border-box;width:min(640px,calc(100% - 32px));max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);margin:auto;padding:36px 44px;border:1px solid #ffffff30;border-radius:22px;background:#111112fa;color:#f4f3ef;box-shadow:0 40px 120px #0008;overflow:auto;text-align:center;opacity:0;transform:translateY(16px) scale(.98);transition:opacity .35s,transform .35s,display .35s allow-discrete,overlay .35s allow-discrete}.game-guide::backdrop{background:#05050699;backdrop-filter:blur(7px);opacity:0;transition:opacity .35s,display .35s allow-discrete,overlay .35s allow-discrete}.game-guide[open]{opacity:1;transform:none}.game-guide[open]::backdrop{opacity:1}@starting-style{.game-guide[open]{opacity:0;transform:translateY(16px) scale(.98)}.game-guide[open]::backdrop{opacity:0}}.guide-heading{display:flex;align-items:center;justify-content:center;gap:9px;color:#f3352c;font-size:11px;letter-spacing:.08em}.guide-heading svg{width:20px;height:20px}.guide-heading p{margin:0}.game-guide h2{font-weight:400;letter-spacing:-.055em;font-size:clamp(32px,4vw,48px);line-height:1.08;margin:19px 0 12px}.game-guide>p{font-size:13px;color:#bdbdbb;line-height:1.5;margin:0}.guide-controls{display:grid;grid-template-columns:repeat(6,1fr);margin:27px 0 28px;gap:14px}.guide-controls>div{grid-column:span 2;display:flex;flex-direction:column;align-items:center;gap:13px;border-top:1px solid #ffffff1c;padding:18px 0 0}.guide-controls .guide-move,.guide-controls .guide-look{grid-column:span 3;border-top:0;padding-top:0;padding-bottom:7px}.guide-controls dd{margin:0;display:grid;place-items:center;min-height:32px}.guide-move dd,.guide-look dd{height:72px}.guide-controls dt{font-size:12px;color:#d4d2ce}.guide-controls kbd{font-family:inherit;font-size:12px;display:inline-grid;place-items:center;min-width:32px;height:32px;padding:0 8px;border:1px solid #ffffff40;border-radius:5px;background:linear-gradient(#ffffff0e,#ffffff02);box-shadow:0 3px 0 #05050650;color:#f4f3ef}.key-cluster{display:flex;align-items:center;gap:5px;flex-direction:column}.key-cluster>span{display:flex;gap:5px}.guide-look svg{width:40px;height:56px;color:#e4e2de}.game-guide .game-start{margin:0 auto;min-height:60px;font-size:15px;gap:36px}.game-guide .entry-arrow{width:42px;height:42px}.guide-mobile{display:none}.game-guide:focus{outline:none}
@keyframes guide-arrive{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}@keyframes surface-enter{from{opacity:0}to{opacity:1}}
.pause-exit{display:none;min-height:48px;align-items:center;justify-content:center;margin:16px auto 0;color:#e6e4df;font-size:14px;width:fit-content;padding:0 14px}.play-page[data-game-state=paused] .pause-exit{display:flex}.play-page[data-game-state=paused] .game-overlay{background:#08080944}.play-page[data-game-state=paused] .game-overlay:before{background:radial-gradient(ellipse,#080809ed 5%,#08080999 100%);backdrop-filter:blur(4px)}.play-page[data-game-state=paused] .game-intro{max-width:560px}.play-page[data-game-state=paused] h1{font-size:clamp(56px,6.4vw,92px)}.play-page[data-game-state=paused] .quality-picker{display:none}.play-page[data-game-state=paused] .game-setup{display:block;margin-top:28px}.play-page[data-game-state=paused] .game-start{width:min(100%,330px);margin:auto}
/* A single breathing Neurons mark; progress stays quiet and the next frame is already ready. */
.game-transition{position:absolute;inset:0;z-index:20;background:#050506;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .85s cubic-bezier(.22,.61,.36,1),visibility 0s .85s}
.loading-mark{position:absolute;left:50%;top:50%;width:clamp(88px,7vw,112px);height:clamp(88px,7vw,112px);transform:translate(-50%,-50%);color:#f4f3ef;opacity:.8;animation:game-mark-pulse 2.6s ease-in-out infinite paused}
.loading-detail{position:absolute;top:calc(50% + 86px);left:50%;transform:translateX(-50%);width:64px}
#loading-stage{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#loading-progress{height:1px;background:#ffffff12;overflow:hidden}
#loading-progress span{display:block;height:100%;background:#b63b34;transform:scaleX(var(--load-progress,0));transform-origin:left;transition:transform .5s ease}
#game-cancel{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:max(24px,env(safe-area-inset-left));min-width:72px;min-height:48px;padding:0 12px;border:0;background:none;color:#92928f;font:inherit;font-size:12px;cursor:pointer;transition:color .2s}
#game-cancel:hover{color:#f4f3ef}#game-cancel:focus-visible{outline:2px solid #f4f3ef;outline-offset:2px;border-radius:24px}
.play-page[data-game-state=loading] .game-transition,.play-page[data-game-state=leaving] .game-transition{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .3s ease}
.play-page[data-game-state=loading] .loading-mark,.play-page[data-game-state=leaving] .loading-mark{animation-play-state:running}
.play-page[data-game-state=leaving] :is(.loading-detail,#game-cancel){display:none}
@keyframes game-mark-pulse{0%,100%{opacity:.4}50%{opacity:1}}

.play-page[data-game-state=idle] .game-state-label{display:none}.game-state-label i{display:none;font-style:normal}.play-page[data-game-state=paused] .state-paused,.play-page[data-game-state=error] .state-error{display:inline}
.game-guide button:focus-visible,.game-interact:focus-visible,.game-exit:focus-visible,.pause-exit:focus-visible,.game-start:focus-visible{outline:2px solid #f4f3ef;outline-offset:4px}
.game-touch{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));left:20px;display:grid;grid-template-columns:repeat(3,50px);gap:7px;z-index:2}.game-touch[hidden]{display:none}.game-touch button{width:50px;height:50px;border:1px solid #fff7;border-radius:4px;background:#111112d9;color:#fff;font-size:24px;touch-action:none;user-select:none;backdrop-filter:blur(10px)}.game-touch button:first-child{grid-column:2}.game-touch button:nth-child(2){grid-column:1}.game-touch .run-control{position:fixed;right:20px;bottom:max(25px,env(safe-area-inset-bottom));width:66px;font-size:13px}.game-touch button:active{background:#b82b25}.game-reticle{position:absolute;left:50%;top:50%;width:4px;height:4px;border:1px solid #fff;border-radius:50%;pointer-events:none}.play-page:not([data-game-state=running]) .game-reticle{display:none}
.game-interact{position:absolute;z-index:3;left:50%;bottom:18%;transform:translateX(-50%);min-height:48px;display:flex;align-items:center;gap:12px;padding:7px 16px 7px 8px;border:1px solid #fff5;border-radius:2px;background:#111112dd;color:#f4f3ef;backdrop-filter:blur(12px);font-size:13px}.game-interact[hidden],.play-page:not([data-game-state=running]) .game-interact{display:none}.game-interact kbd{display:grid;place-items:center;width:32px;height:32px;background:#f4f3ef;color:#111112;font:600 13px inherit}
.game-bindings{position:absolute;right:25px;bottom:24px;z-index:2;display:flex;gap:15px;background:#111112c9;border:1px solid #ffffff25;border-radius:2px;padding:11px 14px;color:#e4e2de;font-size:11px;pointer-events:none;backdrop-filter:blur(10px)}.game-bindings>span{display:flex;gap:6px;align-items:center}.game-bindings kbd{font:inherit;color:#f4f3ef}.game-bindings .mobile-binding{display:none}.play-page:not([data-game-state=running]) .game-bindings{display:none}.play-page[data-game-state=running]:has(canvas[data-sprinting=true]) .game-bindings kbd{color:#fff}
.game-map{position:absolute;z-index:2;top:max(80px,calc(env(safe-area-inset-top) + 60px));right:25px;width:208px;padding:13px;background:#111112e6;border:1px solid #ffffff30;border-radius:4px;box-shadow:0 10px 35px #0002;color:#f4f3ef;pointer-events:none;backdrop-filter:blur(10px)}.map-heading,.map-caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:8px;line-height:1.4}.map-heading{margin-bottom:10px;font-size:12px}.map-north{color:#bdbdbb}.map-caption{margin-top:10px;color:#bdbdbb}.map-you{display:flex;align-items:center;gap:5px}.map-you:before{content:'';width:5px;height:5px;border-radius:50%;background:#f3352c}.game-map svg{display:block;width:100%;height:auto;border-radius:2px}.play-page:not([data-game-state=running]) .game-map{display:none}
@media(pointer:fine){.game-touch{display:none}}@media(pointer:coarse){.guide-desktop{display:none}.guide-mobile{display:grid;text-align:left;gap:0;margin:22px 0}.guide-mobile>div{display:flex;align-items:center;gap:18px;padding:12px 0;border-bottom:1px solid #fff2}.guide-mobile dd{margin:0;width:32px;text-align:center;color:#f3352c;font-size:23px}.guide-mobile dt{font-size:13px;color:#dedcd7}.game-interact{bottom:160px;max-width:calc(100% - 40px);padding:12px 16px}.game-interact kbd{display:none}.game-bindings{bottom:100px;right:20px;max-width:145px;line-height:1.45;padding:8px 10px}.game-bindings .desktop-binding{display:none}.game-bindings .mobile-binding{display:block}}

@media(max-width:700px){.game-overlay{padding:80px 7% max(80px,env(safe-area-inset-bottom))}.game-overlay:before{background:radial-gradient(ellipse,#050506c9 5%,#05050650 100%),url('/coast-menu.jpg') 60% center/cover}.game-overlay h1{font-size:clamp(51px,14vw,72px);margin:22px 0 18px}.game-overlay p{font-size:14px}.game-setup{gap:22px;margin-top:26px}.quality-options label>span{gap:5px;font-size:12px}.quality-options i{font-size:12px}.game-start{min-height:62px;font-size:16px;padding-left:24px}.game-start .entry-arrow{width:44px;height:44px}.game-guide{padding:28px 24px;border-radius:18px}.game-exit{left:16px;top:max(16px,env(safe-area-inset-top))}#game-pause{right:16px;top:max(16px,env(safe-area-inset-top))}.game-menu-meta{gap:12px}.play-page[data-game-state=paused] h1{font-size:clamp(51px,15vw,70px)}.game-map{width:145px;right:15px;top:75px;padding:10px}.map-heading{font-size:11px;margin-bottom:7px}.map-caption{font-size:10px;margin-top:7px}.map-you{display:none}}
@media(max-width:700px){.game-overlay{overscroll-behavior:contain}.game-intro{padding-top:env(safe-area-inset-top)}.game-menu-meta>svg{width:24px;height:24px}.quality-options{min-height:58px}.quality-options label>span{min-height:48px}.game-start{width:100%;max-width:420px;border-radius:14px}.game-guide{width:min(420px,calc(100% - 24px));max-height:calc(100svh - 24px);padding:24px 20px}.game-guide .game-start{min-height:56px}.game-touch{left:max(14px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom))}.game-touch button{width:56px;height:56px;border-radius:12px}.game-touch{grid-template-columns:repeat(3,56px)}.game-touch .run-control{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:74px;border-radius:28px}.game-map{top:max(72px,calc(env(safe-area-inset-top) + 56px))}}
@media(max-height:650px){.game-overlay{padding-top:70px;padding-bottom:70px}.game-overlay h1{font-size:clamp(42px,9vh,66px);margin:14px 0 12px}.game-setup{margin-top:20px}.game-overlay p{font-size:13px}.game-map{width:135px;top:75px;right:15px;padding:8px}.map-caption{margin-top:4px;font-size:10px}.map-heading{margin-bottom:4px;font-size:10px}.map-you{display:none}.game-setup{gap:17px}.game-start{min-height:56px}.game-start .entry-arrow{width:38px;height:38px}.game-guide{padding:22px 30px}.game-guide h2{font-size:32px;margin:10px 0}.guide-controls{margin:20px 0}.guide-mobile{margin:16px 0}.play-page[data-game-state=paused] h1{font-size:48px}}
@media(min-width:701px) and (min-height:501px) and (max-height:800px){.game-overlay h1{font-size:clamp(72px,15.5vh,124px)}.game-overlay p{font-size:15px}.game-setup{flex-direction:row;width:min(800px,100%);align-items:flex-end;gap:25px;margin-top:25px}.quality-picker{flex:1}.game-start{flex-shrink:0;gap:24px;font-size:17px;min-height:68px}}
@media(min-width:701px) and (max-height:500px){.game-overlay{padding:65px 7%}.game-intro{max-width:610px}.game-overlay h1{font-size:48px;line-height:1.05}.game-overlay h1 br{display:none}.game-menu-meta{display:none}.game-overlay p{margin:8px 0}.game-setup{margin-top:18px;flex-direction:row;max-width:600px;width:100%;gap:20px;align-items:flex-end}.quality-picker{flex:1}.quality-picker legend{margin-bottom:8px}.game-start{flex-shrink:0;gap:14px;font-size:14px;min-height:58px;padding-left:22px}.game-guide{width:min(690px,calc(100% - 32px));padding:20px 30px}.guide-heading{display:none}.game-guide h2{font-size:32px}.guide-controls{grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0}.guide-controls>div,.guide-controls .guide-move,.guide-controls .guide-look{grid-column:auto;border:0;justify-content:flex-end;padding:0;gap:10px}.guide-mobile{grid-template-columns:1fr 1fr;column-gap:20px;margin:12px 0}.guide-mobile>div{padding:8px 0}.guide-mobile dt{font-size:12px}}
@media(pointer:coarse) and (max-height:500px){.game-bindings{display:none}}
@media(prefers-reduced-motion:reduce){.game-guide,.game-guide::backdrop,.split-art,.game-start,.game-exit,.game-transition,#loading-progress span,.entry-arrow,.entry-arrow svg,.quality-options label>span{transition:none}.play-art span,.game-transition svg,.game-guide,.game-guide::backdrop,.boot-options,.boot-page .experience-header,.game-intro,.game-overlay:before,.play-page canvas,.game-bindings,.game-map,#game-pause{animation:none!important}}

/* The next surface fades out of the same black used by the route loader. */
.boot-options{animation:surface-enter .8s ease both}.boot-page .experience-header{animation:surface-enter .8s .12s both}.play-page[data-game-state=idle] .game-intro{animation:guide-arrive .85s .1s both}.play-page[data-game-state=idle] .game-overlay:before{animation:surface-enter 1s both}.play-page[data-game-state=arriving] canvas{animation:surface-enter 1s both}.play-page[data-game-state=running] :is(.game-map,.game-bindings,#game-pause){animation:surface-enter .7s both}

@media(max-width:350px){.quality-options label>span{font-size:11px}.quality-options i{display:none}}

@media(max-height:480px){.loading-detail{top:calc(50% + 66px)}#game-cancel{bottom:max(8px,env(safe-area-inset-bottom))}}

.house-preview-open{display:block;color:#e3ded5;background:none;border:0;border-bottom:1px solid #e3ded555;padding:12px 2px;min-height:44px;font:inherit;font-size:14px;cursor:pointer}
.play-page[data-game-state=paused] .house-preview-open{display:none}
.play-page[data-game-state=error] .quality-picker{display:none}
.play-page[data-game-state=error] .game-overlay h1{font-size:clamp(48px,8vw,110px)}
.play-page[data-game-state=error] #game-message{max-width:620px;margin-inline:auto}
.house-preview{width:min(1200px,94vw);max-width:94vw;max-height:90vh;max-height:90dvh;padding:0;border:1px solid #ffffff35;border-radius:24px;background:#101011;color:#f4f3ef;overflow:auto}
.house-preview::backdrop{background:#050506e8}
.house-preview img{display:block;width:100%;height:52vh;object-fit:cover}
.house-preview-close{position:sticky;float:right;top:16px;margin:16px 16px -64px 0;z-index:1;width:48px;height:48px;border:1px solid #fff5;border-radius:50%;background:#111e;color:#fff;font-size:28px;cursor:pointer}
.house-preview-copy{padding:clamp(24px,4vw,48px)}
.house-preview-copy h2{font-weight:400;font-size:clamp(30px,4vw,52px);line-height:1.05;letter-spacing:-.04em;margin:16px 0}
.house-preview-copy p{max-width:620px;line-height:1.6;color:#c1bfbc}.house-preview-copy a{display:inline-block;padding:14px 0;border-bottom:1px solid #f3352c;min-height:44px}
.house-preview[open]{animation:guide-arrive .35s ease both}
@media(max-width:700px){.house-preview img{height:35vh}.house-preview{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.house-preview[open]{animation:none}}
