:root{--ink:#1a1712;--ink-soft:#4a443b;--paper:#f4f0e8;--paper-2:#ebe5d9;--gold:#a8894f;--gold-soft:#c9b183;--line:#1a171224;--serif:"Cormorant Garamond", "Songti SC", "Noto Serif SC", Georgia, serif;--sans:"Jost", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#fff;margin:0;overflow-x:hidden}:is(body:has(.modal),body:has(.drawer)){overflow:hidden}button,input,textarea,select{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}::selection{background:var(--gold-soft);color:#fff}.site-header{z-index:100;color:#fff;mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:26px 48px;transition:background .4s,padding .4s,box-shadow .4s,color .4s;display:flex;position:fixed;top:0;left:0;right:0}.site-header.scrolled{color:var(--ink);background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);mix-blend-mode:normal;box-shadow:0 1px 0 var(--line);padding:16px 48px}.school-badge-float{z-index:110;width:100px;height:100px;transition:left 1.8s ease-in-out,top 1.8s ease-in-out,transform 1.8s ease-in-out;display:block;position:fixed}.school-badge-float img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.brand{font:400 22px var(--serif);letter-spacing:.42em;text-indent:.42em;text-transform:none;white-space:nowrap;margin-left:102px}.header-actions{align-items:center;gap:22px;display:flex}.site-header nav{gap:34px;display:flex}.site-header nav a,.site-header nav button,.header-actions button{letter-spacing:.24em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-size:11px}.site-header nav a:hover,.site-header nav button:hover,.header-actions button:hover{color:var(--gold-soft)}.visit-btn{padding:11px 17px;border:1px solid!important}.visit-btn:hover{border-color:var(--gold-soft)!important}.hero{color:#fff;background:#132126;align-items:flex-end;min-height:min(820px,100svh);display:flex;position:relative;overflow:hidden}.hero-media,.hero-media video,.hero-wash{position:absolute;inset:0}.hero-media video{object-fit:cover;opacity:.72;width:100%;height:100%}.hero-media video::-webkit-media-controls-start-playback-button{-webkit-appearance:none;display:none}.hero-media video::-webkit-media-controls-overlay-play-button{-webkit-appearance:none;display:none}.hero-wash{pointer-events:none;background:linear-gradient(#050f1214,#050f122e 45%,#050f12d1)}.hero-caption{z-index:1;width:min(1300px,100%);margin:0 auto;padding:0 52px 94px;position:relative}.hero-kicker{letter-spacing:.32em;text-transform:uppercase;color:var(--gold-soft);font-size:10px}.hero-caption h1{max-width:720px;font:300 clamp(60px, 9vw, 132px)/.86 var(--serif);letter-spacing:-.02em;margin:18px 0 24px}.hero-caption p{color:#fffc;max-width:420px;font:300 17px/1.8 var(--serif);margin:0 0 30px}.hero-links{align-items:center;gap:24px;display:flex}.hero-links a,.hero-links button{color:#fff;letter-spacing:.17em;cursor:pointer;background:0 0;border:1px solid #ffffff94;flex:0 0 132px;justify-content:center;align-items:center;width:132px;min-height:42px;padding:0 12px;font-size:11px;display:inline-flex}.hero-links a:hover,.hero-links button:hover{color:#142024;background:#fff}.intro{width:min(1080px,100%);margin:0 auto;padding:142px 52px 134px}.section-kicker{color:var(--gold);letter-spacing:.28em;text-transform:uppercase;margin-bottom:20px;font-size:10px}.intro p{max-width:850px;font:300 clamp(29px, 4.2vw, 58px)/1.2 var(--serif);letter-spacing:.01em;margin:0}.intro-line{display:block}.intro em{color:var(--gold);font-style:normal}.intro-signature{color:var(--gold);font:400 13px var(--serif);letter-spacing:.08em;margin-top:28px}.collection-section{background:var(--paper);padding:0 0 128px}.collection-shell{width:min(1400px,100%);margin:0 auto;padding:112px 52px 0}.collection-head{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px;display:flex}.collection-head .sub{color:var(--gold);letter-spacing:.24em;text-transform:uppercase;margin-bottom:13px;font-size:10px}.collection-head h2{font:300 clamp(42px, 6vw, 80px)/.95 var(--serif);margin:0}.collection-count{color:var(--ink-soft);letter-spacing:.16em;font-size:11px}.filters{flex-wrap:wrap;gap:8px;margin-bottom:36px;display:flex}.filter-button{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:0 0;padding:9px 13px;font-size:11px;transition:color .2s,border-color .2s,background .2s}.filter-button:hover,.filter-button.active{border-color:var(--gold);background:var(--gold);color:#fff}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 24px;display:grid}.card{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:0}.card-media{aspect-ratio:1/1.08;background:var(--paper-2);position:relative;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .4s;display:block}.media-placeholder{background:repeating-linear-gradient(135deg, var(--paper-2), var(--paper-2) 12px, color-mix(in srgb, var(--paper-2) 75%, var(--gold)) 12px, color-mix(in srgb, var(--paper-2) 75%, var(--gold)) 13px);width:100%;height:100%;min-height:100px;color:var(--gold);letter-spacing:.18em;place-items:center;font-size:10px;display:grid}.media-placeholder span{border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);background:color-mix(in srgb, var(--paper) 78%, transparent);padding:8px 11px}.card:hover .card-media img,.card:focus-visible .card-media img{filter:saturate(1.04);transform:scale(1.045)}.card-index{color:#fff;letter-spacing:.18em;text-shadow:0 1px 6px #00000073;font-size:10px;position:absolute;top:14px;left:15px}.card-meta{padding-top:15px}.card-meta .card-era{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:9px}.card-meta h3{font:400 24px/1.15 var(--serif);margin:7px 0 4px}.card-meta .card-original{color:var(--ink-soft);font:300 12px/1.45 var(--serif);justify-content:space-between;gap:12px;display:flex}.card-meta .card-year{color:var(--gold);font-family:var(--sans);letter-spacing:.05em;flex:none;font-size:10px}.empty-state{color:var(--ink-soft);text-align:center;font:300 22px var(--serif);grid-column:1/-1;padding:70px 0}.pagination{justify-content:center;align-items:center;gap:8px;margin-top:64px;display:flex}.pagination button{border:1px solid var(--line);min-width:32px;height:32px;color:var(--ink-soft);cursor:pointer;background:0 0;padding:0 7px;font-size:11px}.pagination button:hover,.pagination button.active{border-color:var(--gold);background:var(--gold);color:#fff}.pagination button:disabled{opacity:.35;cursor:default}.china-page{background:var(--paper);min-height:100svh;padding:110px 0 128px}.china-page-top{justify-content:space-between;width:min(1400px,100%);margin:0 auto;padding:20px 52px;display:flex}.china-back{color:var(--ink-soft);cursor:pointer;letter-spacing:.12em;background:0 0;border:0;font-size:12px}.china-back:hover{color:var(--gold)}.china-page-code{color:var(--gold);letter-spacing:.24em;font-size:10px}.site-footer{color:#fff;background:#18262a;padding:85px 52px 45px}.footer-content{grid-template-columns:1.5fr 1fr 1fr;gap:60px;width:min(1300px,100%);margin:0 auto;display:grid}.footer-brand{font:300 42px/.95 var(--serif)}.footer-tagline{color:#ffffffa1;max-width:240px;font:300 17px/1.65 var(--serif);margin-top:20px}.footer-column h3{color:var(--gold-soft);letter-spacing:.25em;text-transform:uppercase;margin:0 0 20px;font-size:10px}.footer-column p,.footer-column a{color:#ffffffad;margin:0 0 9px;font-size:12px;line-height:1.7;display:block}.footer-column button{color:#ffffffad;cursor:pointer;background:0 0;border:0;margin:0 0 9px;padding:0;font-size:12px;display:block}.footer-column a:hover,.footer-column button:hover{color:#fff}.footer-bottom{color:#fff6;letter-spacing:.13em;border-top:1px solid #ffffff2b;justify-content:space-between;width:min(1300px,100%);margin:72px auto 0;padding-top:18px;font-size:10px;display:flex}.overlay{z-index:490;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;background:#08191f5c;transition:opacity .35s;position:fixed;inset:0}.overlay.open{opacity:1;pointer-events:auto}.drawer{z-index:500;background:var(--paper);width:min(430px,90vw);color:var(--ink);padding:42px 38px 30px;transition:transform .5s cubic-bezier(.22,1,.36,1);position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);box-shadow:24px 0 70px #0000002e}.drawer.open{transform:translate(0)}.drawer-head{justify-content:space-between;gap:18px;display:flex}.drawer-kicker{color:var(--gold);letter-spacing:.25em;font-size:9px}.drawer h2{font:300 42px/1.1 var(--serif);margin:14px 0 0}.drawer-close{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;width:38px;height:38px;font-size:25px;line-height:1}.drawer-close:hover{border-color:var(--gold);color:var(--gold);transform:rotate(90deg)}.log-entry{border-bottom:1px solid var(--line);padding:23px 0}.log-entry time{color:var(--gold);letter-spacing:.22em;font-size:10px}.log-entry h3{font:400 23px/1.3 var(--serif);margin:10px 0 8px}.log-entry p{color:var(--ink-soft);white-space:pre-line;margin:0;font-size:13px;line-height:1.8}.feedback-lead{color:var(--ink-soft);font:400 17px/1.8 var(--serif);margin:0 0 22px}.feedback-text{resize:vertical;border:1px solid var(--line);width:100%;min-height:150px;color:var(--ink);background:0 0;outline:none;padding:14px;font-size:14px;line-height:1.8}.feedback-text:focus{border-color:var(--gold)}.file-label{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;align-items:center;gap:9px;margin-top:12px;padding:11px 12px;font-size:12px;display:flex}.file-label:hover{border-color:var(--gold);color:var(--gold)}.file-label input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.feedback-files{flex-direction:column;gap:6px;margin-top:10px;display:flex}.feedback-file{background:color-mix(in srgb, var(--gold) 8%, transparent);color:var(--ink-soft);align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.feedback-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.feedback-file-size{color:var(--gold);white-space:nowrap}.feedback-file-remove{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;font-size:18px}.feedback-submit{border:1px solid var(--gold);background:var(--gold);color:#fff;cursor:pointer;letter-spacing:.16em;width:100%;margin-top:16px;padding:14px 18px;font-size:12px}.feedback-submit:disabled{opacity:.6;cursor:wait}.feedback-status{min-height:24px;color:var(--gold);margin-top:16px;font-size:12px;line-height:1.6}.modal{z-index:700;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#0d0b08e6;justify-content:center;align-items:center;padding:30px;transition:opacity .35s;display:flex;position:fixed;inset:0}.modal.open{opacity:1;pointer-events:auto}.lightbox-panel{background:var(--paper);grid-template-columns:1.15fr .85fr;width:min(1060px,94vw);height:min(680px,82vh);transition:transform .4s;display:grid;position:relative;overflow:hidden;transform:translateY(18px);box-shadow:0 20px 80px #0009}.modal.open .lightbox-panel{transform:none}.lightbox-visual{background:#171717;min-height:0;position:relative}.lightbox-front{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lightbox-front .media-placeholder{height:100%}.lightbox-visual img{object-fit:contain;width:100%;height:100%;display:block}.lightbox-copy{min-width:0;padding:52px 46px;overflow-y:auto}.lightbox-copy .kicker{color:var(--gold);letter-spacing:.24em;font-size:9px}.lightbox-copy h2{font:400 42px/1.08 var(--serif);margin:15px 0 8px}.lightbox-copy .original{color:var(--ink-soft);font:300 17px/1.45 var(--serif);margin:0 0 25px}.detail-row{border-top:1px solid var(--line);justify-content:space-between;gap:15px;padding:11px 0;font-size:12px;display:flex}.detail-row span:first-child{color:var(--gold);letter-spacing:.14em;text-transform:uppercase}.detail-row span:last-child{text-align:right}.artist-trigger{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--gold-soft);text-decoration-color:var(--gold-soft);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0}.detail-copy{color:var(--ink-soft);font:400 15px/1.9 var(--serif);white-space:pre-line;margin-top:28px}.detail-copy h3{color:var(--gold);font:500 10px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin:24px 0 8px}.detail-copy p{margin:0}.modal-close{z-index:3;border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 70%, transparent);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;font-size:24px;line-height:1;display:grid;position:absolute;top:10px;right:24px}.modal-close>span{transform:translate(-1px,-2px)}.modal-close:hover{color:var(--gold);transform:rotate(90deg)}.lightbox-control{z-index:3;color:#fff;cursor:pointer;background:#0f0f0f4d;border:1px solid #ffffff73;border-radius:50%;width:40px;height:40px;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-control:hover{background:#0f0f0fb3}.lightbox-control.prev{left:8px}.lightbox-control.next{right:8px}.artist-modal-inner{background:var(--paper);width:min(700px,92vw);max-height:82vh;padding:48px;position:relative;overflow-y:auto;box-shadow:0 20px 80px #0009}.artist-portrait{float:left;object-fit:cover;border:1px solid var(--gold-soft);width:130px;height:165px;margin:0 32px 20px 0}.artist-modal-inner h2{font:500 34px/1.2 var(--serif);margin:0 0 8px}.artist-modal-inner .life{color:var(--gold-soft);margin:0 0 25px;font-size:13px}.artist-story{color:var(--ink-soft);font:400 15px/1.9 var(--serif);white-space:pre-line}.admin-body{color:#201d18;background:#f8f6f1;min-height:100svh}.admin-shell{grid-template-columns:240px minmax(0,1fr);min-height:100svh;display:grid}.admin-sidebar{color:#fff;background:#1b2528;padding:28px 18px}.admin-logo{font:400 25px/1 var(--serif);letter-spacing:.08em;padding:0 14px 28px;display:block}.admin-nav{flex-direction:column;gap:3px;display:flex}.admin-nav a{color:#ffffffab;border-radius:4px;padding:11px 14px;font-size:13px}.admin-nav a:hover,.admin-nav a.active{color:#fff;background:#c9b18326}.admin-sidebar-foot{color:#fff6;margin:35px 14px 0;font-size:11px;line-height:1.7}.admin-main{min-width:0;padding:32px 42px 70px}.admin-topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:32px;display:flex}.admin-topbar h1{font:400 37px/1 var(--serif);margin:0}.admin-actions{gap:9px;display:flex}.admin-button{color:#454037;cursor:pointer;background:#fff;border:1px solid #c6bda9;padding:10px 15px;font-size:12px}.admin-button:hover{border-color:var(--gold);color:var(--gold)}.admin-button.primary{color:#fff;background:#a8894f;border-color:#a8894f}.admin-button.danger{color:#9c433d}.admin-notice{border-left:3px solid var(--gold);color:#665d4e;background:#fff;margin-bottom:20px;padding:12px 15px;font-size:13px}.admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.admin-stat{background:#fff;border:1px solid #e0d9ca;padding:19px}.admin-stat span{color:#8e846f;font-size:11px}.admin-stat strong{font:400 33px/1 var(--serif);margin-top:10px;display:block}.admin-card{background:#fff;border:1px solid #e0d9ca;padding:24px}.admin-card+.admin-card{margin-top:18px}.admin-card-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.admin-card-heading h2{margin-bottom:0}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.admin-card h2{font:400 24px var(--serif);margin:0 0 18px}.admin-search{background:#fff;border:1px solid #d9d1c2;outline:none;width:100%;margin-bottom:12px;padding:9px 10px;font-size:13px}.admin-search:focus{border-color:var(--gold)}.admin-list{flex-direction:column;gap:8px;display:flex}.admin-list-row{border:1px solid #ebe6dc;justify-content:space-between;align-items:center;gap:15px;padding:12px;display:flex}.admin-list-row strong{font-size:13px;font-weight:500}.admin-list-row small{color:#8d8579;margin-top:3px;font-size:11px;display:block}.admin-form{gap:15px;display:grid}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 17px;display:grid}.admin-field{gap:6px;display:grid}.admin-field.full{grid-column:1/-1}.admin-field label,.admin-label{color:#776f61;letter-spacing:.06em;font-size:11px}.admin-field input,.admin-field textarea,.admin-field select{color:#2a251f;background:#fff;border:1px solid #d9d1c2;outline:none;width:100%;padding:9px 10px;font-size:13px}.admin-field textarea{resize:vertical;min-height:90px;line-height:1.6}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus{border-color:var(--gold)}.admin-check{color:#6f675a;align-items:center;gap:8px;font-size:12px;display:inline-flex}.admin-two-pane{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:18px;display:grid}.admin-scroll-list{max-height:630px;overflow-y:auto}.admin-list-row.selected{border-color:var(--gold);background:#fffaf0}.admin-muted{color:#8d8579;font-size:12px;line-height:1.7}.admin-missing{color:#a55b4c}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:12px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid #ebe6dc;padding:12px 9px}.admin-table th{color:#8d8579;font-weight:400}.admin-table td small{color:#999083;word-break:break-all;font-size:10px}.status-pill{color:#66583e;background:#e8dfcc;border-radius:20px;padding:4px 8px;font-size:10px;display:inline-block}.status-pill.new{color:#8d3e32;background:#f3d4c8}.asset-preview{object-fit:cover;background:#e9e4db;width:58px;height:43px}.admin-login-page{background:#1b2528;place-items:center;min-height:100svh;padding:25px;display:grid}.admin-login-card{background:#f4f0e8;width:min(410px,100%);padding:45px 38px;box-shadow:0 25px 90px #00000040}.admin-login-card .kicker{color:var(--gold);letter-spacing:.25em;font-size:9px}.admin-login-card h1{font:300 43px/1 var(--serif);margin:15px 0 28px}.admin-login-card .admin-field{margin-bottom:14px}.admin-login-card button{width:100%;margin-top:10px}.admin-attachments{border-top:1px solid #ebe6dc;margin-top:22px;padding-top:18px}.admin-attachments h3{color:#776f61;margin:0 0 10px;font-size:11px;font-weight:400}.admin-attachments a{color:#846b39;padding:7px 0;font-size:12px;text-decoration:underline;display:block}.feedback-message{color:#3b352d;white-space:pre-line;background:#fbf8f1;padding:15px;font-size:14px;line-height:1.8}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:900px){.site-header{padding:20px 24px}.site-header nav,.site-header .visit-btn{display:none}.header-actions{gap:10px}.hero-caption{padding:0 28px 75px}.intro,.collection-shell,.china-page-top{padding-left:28px;padding-right:28px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-content{grid-template-columns:1fr 1fr}.footer-content>:first-child{grid-column:1/-1}.admin-shell{grid-template-columns:190px minmax(0,1fr)}.admin-main{padding:28px 24px 60px}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:721px){.lightbox-control.prev{left:8px}.lightbox-control.next{right:8px}}@media (max-width:720px){.brand{letter-spacing:.25em;text-indent:.25em;margin-left:102px;font-size:17px}.site-header.scrolled{padding:14px 20px}.hero{min-height:760px}.hero-caption h1{font-size:69px}.hero-caption p{font-size:15px}.intro{padding-top:92px;padding-bottom:95px}.intro p{font-size:32px}.collection-section{padding-bottom:80px}.collection-shell{padding-top:74px}.collection-head{margin-bottom:30px;display:block}.collection-count{margin-top:15px;display:block}.gallery{gap:34px 13px}.card-meta h3{font-size:20px}.card-meta .card-original{font-size:11px;display:block}.card-year{margin-top:3px;display:block}.site-footer{padding:65px 28px 30px}.footer-content{grid-template-columns:1fr;gap:36px}.footer-content>:first-child{grid-column:auto}.footer-bottom{margin-top:47px;line-height:1.8;display:block}.footer-bottom span{display:block}.drawer{width:min(420px,92vw);padding:28px 24px 26px}.drawer h2{font-size:36px}.lightbox-panel{flex-direction:column;width:94vw;height:min(88vh,760px);display:flex;overflow-y:auto}.lightbox-visual{flex:0 0 43vh;min-height:260px}.lightbox-copy{flex:1;padding:27px 24px 34px}.lightbox-copy h2{font-size:32px}.lightbox-control{width:34px;height:34px}.modal-close{top:2px;right:4px}.artist-modal-inner{padding:32px 24px 36px}.artist-portrait{float:none;margin:0 auto 22px;display:block}.artist-modal-inner h2,.artist-modal-inner .life{text-align:center}.admin-shell{display:block}.admin-sidebar{padding:15px 16px}.admin-logo{padding:0 0 14px;font-size:22px}.admin-nav{flex-direction:row;gap:3px;overflow-x:auto}.admin-nav a{flex:none;padding:8px 10px;font-size:11px}.admin-sidebar-foot{display:none}.admin-main{padding:22px 16px 50px}.admin-topbar{align-items:flex-start;display:block}.admin-topbar h1{margin-bottom:16px;font-size:32px}.admin-two-pane,.admin-form-grid{grid-template-columns:1fr}.admin-field.full{grid-column:auto}.admin-grid{gap:8px}.admin-stat{padding:13px}.admin-stat strong{font-size:26px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
