:root{--paper:#f0f0ec;--ink:#20211f;--line:#20211f22;--muted:#74766f;--accent:#b74732}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:14px Arial,'Microsoft YaHei',sans-serif;min-width:1100px}button,a{color:inherit}a{text-decoration:none}button{background:none;border:0;font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#bcc9bd}header{height:94px;position:fixed;z-index:20;top:0;left:0;width:100%;padding:0 38px;display:flex;align-items:center;justify-content:space-between;background:#f0f0ecee;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.logo{font-size:25px;font-weight:600;letter-spacing:-1.5px}.logo>span{font-weight:400}.nav-note{font-size:9px;letter-spacing:1px;color:var(--muted)}nav{display:flex;gap:34px;font-size:10px;letter-spacing:.5px}nav a>span{color:var(--accent);margin-left:6px}.magnetic{display:inline-block}.opening{min-height:910px;height:100vh;padding:130px 38px 40px;position:relative;overflow:hidden}.opening-meta,.section-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:var(--muted)}.image-field{position:absolute;left:38px;right:38px;top:175px;bottom:230px}.field-note{position:absolute;left:0;top:80px;font-size:8px;letter-spacing:1.5px;writing-mode:vertical-rl;color:#969890}.floating{position:absolute;padding:0;text-align:left;will-change:transform;transition:z-index 0s}.floating-image{overflow:hidden;background:#d8d7d0;box-shadow:0 15px 40px #00000008;transition:box-shadow .4s}.floating img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .85s cubic-bezier(.2,.8,.2,1)}.floating:hover{z-index:5}.floating:hover img{transform:scale(1.035)}.floating:hover .floating-image{box-shadow:0 18px 45px #0002}.floating>span{display:block;font-size:8px;letter-spacing:1px;margin-top:11px;color:var(--muted)}.float-a{left:17%;top:12%;width:49%;z-index:2}.float-a .floating-image{aspect-ratio:3/2}.float-b{right:3%;top:0;width:24%;z-index:3}.float-b .floating-image{aspect-ratio:1/1.12}.float-c{left:4%;bottom:0;width:22%;z-index:3}.float-c .floating-image{aspect-ratio:1.1}.field-cross{position:absolute;font-size:17px;color:#999d91;pointer-events:none}.cross-one{right:8%;bottom:15%}.cross-two{left:40%;top:0}.opening-bottom{position:absolute;left:38px;right:38px;bottom:40px;display:flex;justify-content:space-between;align-items:end}.opening h1{font-size:64px;letter-spacing:-4px;font-weight:400;margin:0 0 16px}.opening h1 span{color:#91978c}.opening-bottom p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.explore-link{font-size:9px;letter-spacing:1px;border-bottom:1px solid #20211f66;padding:0 0 12px}.explore-link span{margin-left:30px;font-size:20px}.opening-sign{font-size:8px;line-height:1.8;letter-spacing:1px;color:var(--muted)}.material{padding:75px 38px 95px;background:#202423;color:#e9eee8}.material>.section-label{color:#8d9a90}.material-layout{display:grid;grid-template-columns:1fr 2fr;gap:55px;margin-top:70px;align-items:center}.tiny-index{font-size:8px;letter-spacing:1px;color:#9da99f}.material h2{font-size:85px;letter-spacing:-4px;font-weight:400;line-height:.93;margin:30px 0}.material h2 i{font-family:Georgia,serif;color:#bdcab4;font-weight:400}.material-copy p{font-size:12px;line-height:1.9;color:#a0afa4;margin:30px 0}.lens-controls{display:flex;gap:8px;margin:35px 0 15px}.lens-controls button{font-size:11px;padding:9px 17px;border:1px solid #ffffff30;border-radius:25px}.lens-controls button[aria-pressed=true]{background:#d4decc;color:#202423}.material-hint{font-size:8px;line-height:1.8;color:#829388}.detail-surface{position:relative;overflow:hidden;border-radius:7px;background:#0d1114;cursor:crosshair;aspect-ratio:1.32}.detail-surface>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.lens{position:absolute;width:190px;height:190px;border:1px solid #ffffffa0;border-radius:50%;box-shadow:0 0 0 8px #fff1,0 8px 40px #0006;background-repeat:no-repeat;opacity:0;pointer-events:none;transform:translate(-50%,-50%)}.surface-foot{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px;color:#eef6ee;pointer-events:none}.archive{padding:80px 38px 70px;background:#eeeae3;overflow:hidden}.archive-heading{display:flex;justify-content:space-between;align-items:end;margin:50px 0 45px}.archive h2{font-size:52px;line-height:1.05;letter-spacing:-2px;font-weight:400;margin:0}.archive h2 i{font-family:Georgia,serif;font-weight:400}.archive-heading p{font-size:11px;line-height:1.8;color:#898478;margin:0 60px 5px 0}.rail-viewport{overflow:hidden;cursor:grab;touch-action:pan-y}.rail-viewport.dragging{cursor:grabbing}.rail{display:flex;gap:22px;width:max-content;will-change:transform}.rail-card{width:370px;padding:0;flex-shrink:0;text-align:left;user-select:none}.rail-card:nth-child(even){padding-top:55px}.rail-card img{width:100%;height:270px;object-fit:cover;pointer-events:none;border-radius:5px;display:block}.rail-card:nth-child(3n) img{height:320px}.rail-card>span{display:flex;justify-content:space-between;font-size:11px;margin-top:17px}.rail-card small{font-size:8px;color:#8a887e}.rail-footer{display:flex;align-items:center;gap:35px;margin-top:50px}.rail-buttons{display:flex;gap:10px}.rail-buttons button{border:1px solid #a8a79f;border-radius:50%;width:42px;height:42px;font-size:20px}.rail-progress{height:1px;background:#a8a79f66;flex:1}.rail-progress span{display:block;width:15%;height:2px;background:#7c8274;transform:translateX(0)}.rail-footer>a{font-size:8px;letter-spacing:1px;margin-left:45px}.closing{padding:85px 38px 30px;background:#d6dcd0;display:grid;grid-template-columns:1fr 1fr;gap:60px}.closing .section-label{font-size:8px}.closing p{font-size:24px;font-weight:400;line-height:1.6;margin:30px 0;color:#59644f}.contact{font-size:43px;line-height:1.15;letter-spacing:-1px;justify-self:end}.contact span{margin-left:30px;color:#68795b}.closing-bottom{grid-column:1/-1;border-top:1px solid #20211f30;padding-top:25px;display:flex;justify-content:space-between;font-size:8px;color:#6a7562;letter-spacing:.6px}.pointer{position:fixed;left:0;top:0;width:10px;height:10px;background:#262b24;border-radius:50%;z-index:100;pointer-events:none;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);opacity:0;transition:width .22s,height .22s,background .22s,border .22s;box-sizing:content-box}.pointer span{font-size:8px;color:#fff;opacity:0;letter-spacing:1px;white-space:nowrap}.pointer.action{width:62px;height:62px;background:#262b24d9;backdrop-filter:blur(6px)}.pointer.action span{opacity:1}.pointer.drag{width:72px;height:72px;background:#262b24b0;border:1px solid #fff8}.pointer.detail{background:transparent;border:1px solid #fff;width:23px;height:23px}.project-panel{position:fixed;inset:0;z-index:50;background:#eeefe9;display:flex;flex-direction:column;padding:28px 38px;visibility:hidden;opacity:0;transform:translateY(30px)}.panel-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;min-height:50px}.panel-top button{font-size:10px}.panel-image{flex:1;min-height:0;padding:20px 0;display:flex;align-items:center;justify-content:center;overflow:hidden}.panel-image img{max-width:85vw;max-height:100%;object-fit:contain}.panel-controls{display:flex;align-items:center;justify-content:center;gap:30px;min-height:55px;font-size:10px}.panel-controls button{font-size:18px}.panel-controls #show-thumbs{font-size:9px;margin-left:45px}.panel-controls>a{font-size:9px;margin-left:auto}.panel-thumbnails{max-height:145px;overflow:auto;flex-shrink:0;padding-top:15px}.panel-thumbnails:not([hidden]){display:flex;gap:10px}.panel-thumbnails button{padding:0;flex-shrink:0}.panel-thumbnails img{height:100px;width:140px;object-fit:cover;display:block}.transition-curtain{position:fixed;inset:0;background:#c2cebb;z-index:45;pointer-events:none;transform:scaleY(0);transform-origin:bottom}.panel-locked{overflow:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.pointer{display:none}}@media(pointer:fine){body.custom-pointer,body.custom-pointer button,body.custom-pointer a{cursor:none}}
