@charset "UTF-8";
:root{--paper:#f3eadc;--ink:#282a28;--muted:#706b61;--copper:#9b542e;--line:#d7ccbc;--white:#fffaf1;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--width:1360px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}button{font:inherit;cursor:pointer}button:disabled{cursor:default}img{max-width:100%;display:block}::selection{background:#ddb27a;color:#282a28}:focus-visible{outline:3px solid #ad6939;outline-offset:5px}button:focus-visible{outline-offset:4px}a,button{touch-action:manipulation}.skip{position:fixed;top:-100px;left:24px;z-index:50;padding:12px 20px;background:var(--ink);color:var(--white)}.skip:focus{top:12px}.wrap{width:min(var(--width),calc(100% - 96px));margin-inline:auto}.site-header{height:98px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:700;letter-spacing:-.5px;font-size:19px;white-space:nowrap}.brand-mark{width:27px;height:31px;display:grid;grid-template-columns:repeat(2,6px);grid-template-rows:repeat(3,5px);gap:4px;justify-content:center;align-content:center;border:1.5px solid var(--ink);border-radius:8px 8px 1px 1px}.brand-mark i{background:var(--copper)}.nav{display:flex;align-items:center;gap:35px}.nav a{font-size:13px;text-decoration:none;position:relative;padding-block:10px}.nav a:hover,.nav a[aria-current=page]{color:var(--copper)}.nav a[aria-current=page]:after{position:absolute;content:'';width:4px;height:4px;border-radius:50%;background:var(--copper);bottom:0;left:50%}.status{font-size:10px;letter-spacing:.12em;text-transform:uppercase;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.status:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--copper);box-shadow:0 0 0 4px #9b542e12}.menu-toggle{display:none;background:none;border:1px solid var(--line);width:44px;height:44px;align-items:center;justify-content:center;gap:5px;flex-direction:column;border-radius:50%}.menu-toggle span{display:block;width:16px;height:1px;background:var(--ink)}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);font-weight:700}.hero{padding-top:62px}.hero-intro{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:60px;padding-bottom:44px}.hero h1{font-family:var(--serif);font-size:clamp(62px,7.8vw,120px);font-weight:400;line-height:.92;letter-spacing:-.06em;margin:25px 0 0}.hero h1 span{display:block}.hero-copy{padding:0 0 4px 14px;max-width:390px;justify-self:end}.hero-copy h2{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.17;margin:0 0 14px;letter-spacing:-.03em}.hero-copy p{font-size:14px;color:var(--muted);margin:0 0 23px;line-height:1.7}.button{border:1px solid var(--ink);display:inline-flex;justify-content:center;align-items:center;gap:26px;padding:15px 23px;border-radius:3px;background:var(--ink);color:var(--paper);font-size:12px;text-decoration:none;transition:background .2s,transform .2s;min-height:48px}.button:hover{background:#40403a;transform:translateY(-2px)}.button .arrow{font-size:20px;line-height:1}.button.secondary{background:transparent;color:var(--ink)}.scene-shell{border-radius:12px;overflow:hidden;background:#36332d;isolation:isolate;scroll-margin-top:25px}.scene-tools{display:flex;justify-content:space-between;align-items:center;padding:19px 25px;background:#292d2a;color:#eee4d5;gap:14px}.scene-label{display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.03em}.scene-label strong{font-weight:400}.scene-label small{color:#b0afa6;font-size:10px}.scene-label svg{width:18px;height:18px;opacity:.6}.atmosphere{display:flex;gap:3px;padding:3px;border:1px solid #ffffff20;border-radius:30px}.atmosphere button{border:0;color:#c8c4bb;background:none;font-size:10px;border-radius:20px;padding:7px 14px;min-height:32px}.atmosphere button[aria-pressed=true]{background:var(--paper);color:var(--ink)}.scene{position:relative;aspect-ratio:3/2;overflow:hidden;background:linear-gradient(#7b797d,#c89c79)}.scene>img{width:100%;height:100%;object-fit:cover;transition:filter 1.1s ease}.scene[data-atmosphere=day]>img{filter:brightness(1.2) saturate(.75) sepia(.1)}.scene:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(transparent 78%,#151e2166)}.room{position:absolute;left:var(--x);top:var(--y);z-index:2;transform:translate(-50%,-50%);width:38px;height:38px;border:1px solid #f3eadcbb;border-radius:50%;color:#fff6e5;background:#302a2385;backdrop-filter:blur(4px);font-size:10px;box-shadow:0 0 0 5px #f9ddb21c;transition:background .2s,box-shadow .2s,transform .2s}.room:hover,.room:focus-visible{background:var(--paper);color:var(--ink);box-shadow:0 0 0 9px #f9ddb233;transform:translate(-50%,-50%) scale(1.13)}.room::after{content:attr(data-name);position:absolute;bottom:46px;left:50%;transform:translateX(-50%) translateY(4px);background:var(--paper);color:var(--ink);padding:5px 12px;border-radius:3px;font-size:11px;white-space:nowrap;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none}.room:hover:after,.room:focus-visible:after{opacity:1;transform:translateX(-50%) translateY(0)}.scene-note{display:flex;justify-content:space-between;align-items:center;color:#ddd4c7;padding:18px 25px;font-size:11px;gap:16px}.scene-note span:last-child{font-size:10px;color:#b0afa6}.scene-caption{display:flex;justify-content:space-between;margin-top:12px;font-size:10px;color:var(--muted);letter-spacing:.025em}.manifesto{display:grid;grid-template-columns:.65fr 1.6fr;gap:80px;padding-block:103px 100px;border-bottom:1px solid var(--line)}.section-label{font-size:10px;letter-spacing:.17em;text-transform:uppercase;padding-top:12px;display:flex;gap:20px;align-items:baseline;color:var(--muted)}.section-label:before{content:'01';font-size:9px;color:var(--copper)}.manifesto h2{font-family:var(--serif);font-size:clamp(30px,3.6vw,50px);line-height:1.19;font-weight:400;letter-spacing:-.04em;margin:0 0 24px;max-width:820px}.manifesto h2 em{color:var(--copper);font-weight:400}.manifesto p{max-width:550px;font-size:14px;color:var(--muted);margin:0 0 22px}.text-link{font-size:12px;text-decoration:none;display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid var(--ink);padding-bottom:5px}.text-link:hover{color:var(--copper);border-color:var(--copper)}.neighbors{padding-block:75px 90px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}.section-top h2{font-family:var(--serif);font-weight:400;font-size:38px;letter-spacing:-.03em;line-height:1.2;margin:0}.section-top .eyebrow{margin-bottom:10px}.neighbor-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.resident-link{text-decoration:none}.room-art{background-image:url('/assets/building.webp');background-size:285%;background-position:var(--pos);background-color:#b18964;aspect-ratio:1.25;transition:filter .3s,background-size .4s;border-radius:5px}.resident-link:hover .room-art{filter:brightness(1.1);background-size:300%}.resident-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:15px}.resident-heading h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:0}.resident-heading span{font-size:9px;color:var(--copper);letter-spacing:.1em}.resident-link p{color:var(--muted);font-size:12px;margin:4px 0 0}.closing{border-top:1px solid var(--line);padding-block:35px;display:flex;align-items:center;justify-content:space-between;gap:30px}.closing p{font-family:var(--serif);font-size:23px;margin:0;letter-spacing:-.02em}.site-footer{border-top:1px solid var(--line);padding-block:28px 35px;display:flex;justify-content:space-between;gap:30px;font-size:10px;color:var(--muted)}.footer-brand{text-transform:uppercase;letter-spacing:.12em}.footer-links{display:flex;gap:25px}.footer-links a{text-decoration:none}.footer-links a:hover{color:var(--copper)}.page-heading{padding-block:74px 45px}.page-heading h1{font-family:var(--serif);font-size:clamp(54px,6vw,83px);font-weight:400;line-height:1.03;letter-spacing:-.045em;max-width:820px;margin:23px 0}.page-heading p{font-size:15px;color:var(--muted);max-width:560px;margin:0}.about-art{width:100%;aspect-ratio:2.3;object-fit:cover;object-position:center 45%;border-radius:10px}.about-intro{display:grid;grid-template-columns:.65fr 1.6fr;gap:80px;padding-block:65px;border-bottom:1px solid var(--line)}.about-intro .section-label:before{content:'01'}.prose h2{font-family:var(--serif);font-weight:400;font-size:37px;letter-spacing:-.035em;line-height:1.2;margin:0 0 25px}.prose p{color:var(--muted);font-size:15px;max-width:650px;margin:0 0 20px}.chapters{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-block:62px 78px}.chapter .chapter-number{color:var(--copper);font-size:11px;letter-spacing:.1em}.chapter h3{font-family:var(--serif);font-weight:400;font-size:31px;margin:15px 0 16px;letter-spacing:-.025em}.chapter p{font-size:13px;color:var(--muted);margin:0}.residents-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px 30px;padding-bottom:75px}.resident-card{scroll-margin-top:24px}.resident-card .room-art{aspect-ratio:1.22}.resident-card h2{font-family:var(--serif);font-size:30px;font-weight:400;margin:17px 0 0;letter-spacing:-.025em}.resident-role{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--copper);margin:3px 0 13px}.resident-card p:last-child{font-size:13px;color:var(--muted);max-width:350px;margin:0}.concept-note{font-size:11px;color:var(--muted);padding:22px 0;border-top:1px solid var(--line);margin-bottom:35px}.updates-entry{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0;display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-bottom:70px}.updates-entry h2{font-family:var(--serif);font-size:39px;font-weight:400;line-height:1.2;margin:0 0 20px;letter-spacing:-.03em}.updates-entry p{font-size:14px;color:var(--muted);max-width:530px}.updates-empty{padding-bottom:105px;max-width:570px;margin-left:calc(100% / 3 + 20px)}.updates-empty h3{font-family:var(--serif);font-weight:400;font-size:26px;margin:0 0 15px}.updates-empty p{font-size:13px;color:var(--muted)}.error-main{padding-block:95px 100px;display:grid;grid-template-columns:1.3fr 1fr;gap:75px;align-items:center;min-height:70vh}.error-main h1{font-family:var(--serif);font-size:75px;font-weight:400;line-height:1.05;letter-spacing:-.05em;margin:20px 0 25px}.error-main p{font-size:14px;max-width:400px;color:var(--muted);margin-bottom:27px}.error-art{aspect-ratio:.85;background-image:url('/assets/building.webp');background-position:50% 75%;background-size:270%;border-radius:160px 160px 5px 5px;border:8px solid #dfd2bd}.resident-dialog{border:0;background:var(--paper);color:var(--ink);padding:0;border-radius:9px;width:min(660px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:auto;box-shadow:0 20px 100px #0006}.resident-dialog::backdrop{background:#1f2329a6;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:15px;right:15px;border:1px solid #f3eadc80;background:#252a2a80;color:var(--paper);border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:23px;z-index:2;line-height:1}.dialog-art{height:230px;background-image:url('/assets/building.webp');background-size:240%;background-position:var(--pos);background-color:#b18964}.dialog-copy{padding:29px 35px 35px}.dialog-copy h2{font-family:var(--serif);font-weight:400;font-size:44px;line-height:1.1;margin:10px 0 12px;letter-spacing:-.035em}.dialog-copy p{color:var(--muted);font-size:14px;margin:0 0 20px}.dialog-concept{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:15px;margin-top:22px}.reveal{animation:appear .7s ease both}.hero-copy{animation-delay:.1s}.scene-shell{animation-delay:.18s}@keyframes appear{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero h1{font-size:126px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.nav{gap:23px}.site-header>.status{display:none}.hero-intro{gap:35px;grid-template-columns:1.15fr 1fr}.hero-copy{padding-left:0}.hero-copy h2{font-size:26px}.hero-copy p{font-size:13px}.hero h1{font-size:clamp(60px,8.5vw,95px)}.manifesto,.about-intro{gap:40px;grid-template-columns:.55fr 1.6fr}.manifesto{padding-block:70px}.neighbor-strip{gap:20px}.residents-grid{grid-template-columns:repeat(2,1fr)}.chapters{gap:28px}.error-main{gap:40px}.error-main h1{font-size:61px}}
@media(max-width:640px){.wrap{width:calc(100% - 36px)}.site-header{height:78px}.brand{font-size:17px}.brand-mark{width:25px;height:29px}.menu-toggle{display:flex}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:22px 24px 28px;z-index:20;flex-direction:column;align-items:stretch;gap:10px;border-bottom:1px solid var(--line)}.nav.is-open{display:flex}.nav a{font-size:15px}.nav a[aria-current=page]:after{left:auto;right:0;top:50%}.hero{padding-top:35px}.hero-intro{grid-template-columns:1fr;gap:27px;padding-bottom:30px}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero h1{font-size:clamp(64px,16.3vw,102px);line-height:.92;margin-top:20px}.hero-copy{justify-self:start;max-width:340px}.hero-copy h2{font-size:28px;max-width:290px}.hero-copy p{font-size:13px;margin-bottom:20px}.scene-tools{padding:13px 12px}.scene-label{font-size:10px;gap:7px}.scene-label small{display:none}.scene-label svg{width:14px;height:14px}.atmosphere button{font-size:9px;padding:5px 10px}.scene-shell{border-radius:8px}.scene{aspect-ratio:3/2}.room{width:34px;height:34px;font-size:9px;box-shadow:0 0 0 3px #f9ddb21c}.scene-note{padding:13px 12px;font-size:10px}.scene-note span:last-child{display:none}.scene-caption{font-size:8px;gap:15px}.manifesto,.about-intro{grid-template-columns:1fr;gap:24px;padding-block:50px}.section-label{padding-top:0}.manifesto h2{font-size:32px}.manifesto p{font-size:13px}.neighbors{padding-block:42px 50px}.section-top{align-items:flex-end}.section-top h2{font-size:30px}.section-top .text-link{font-size:10px;gap:9px;white-space:nowrap}.neighbor-strip{grid-template-columns:1fr;gap:29px}.resident-link{display:grid;grid-template-columns:115px 1fr;column-gap:20px;align-items:center}.resident-link .room-art{grid-row:1/3;aspect-ratio:1}.resident-link .resident-heading{margin-top:0;align-self:end}.resident-link .resident-heading h3{font-size:27px}.resident-link p{align-self:start;margin-top:5px;font-size:12px}.closing{padding-block:27px;align-items:flex-start;flex-direction:column;gap:17px}.closing p{font-size:21px}.site-footer{padding-block:25px;flex-direction:column;gap:15px}.footer-links{gap:23px}.page-heading{padding-block:42px 30px}.page-heading h1{font-size:53px;margin:19px 0}.page-heading p{font-size:13px}.about-art{aspect-ratio:1.3;object-position:50% 50%}.prose h2{font-size:31px}.prose p{font-size:13px}.chapters{grid-template-columns:1fr;padding-block:40px 45px;gap:30px}.chapter{border-bottom:1px solid var(--line);padding-bottom:25px}.chapter:last-child{border:0;padding:0}.chapter h3{margin:9px 0 12px}.residents-grid{grid-template-columns:1fr;gap:37px;padding-bottom:40px}.resident-card .room-art{aspect-ratio:1.5}.resident-card h2{font-size:29px}.resident-card p:last-child{max-width:100%}.concept-note{font-size:10px;margin-bottom:20px}.updates-entry{grid-template-columns:1fr;gap:27px;padding-block:30px;margin-bottom:35px}.updates-entry h2{font-size:34px}.updates-entry p{font-size:13px}.updates-empty{margin-left:0;padding-bottom:60px}.error-main{grid-template-columns:1fr;padding-block:45px;gap:35px}.error-main h1{font-size:53px}.error-art{max-width:270px;width:100%;margin-inline:auto;aspect-ratio:1}.dialog-art{height:180px}.dialog-copy{padding:23px}.dialog-copy h2{font-size:37px}.dialog-copy p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Art positions and room targets remain in local CSS for a strict CSP. */
.art-anna{--pos:23% 20%}
.art-mark{--pos:78% 20%}
.art-vera{--pos:23% 55%}
.art-boris{--pos:78% 55%}
.art-lida{--pos:78% 90%}
.art-semen{--pos:23% 90%}
.room-anna{--x:33%;--y:30%}
.room-mark{--x:73%;--y:30%}
.room-vera{--x:33%;--y:54%}
.room-boris{--x:73%;--y:54%}
.room-semen{--x:33%;--y:78%}
.room-lida{--x:73%;--y:78%}
