:root{color:#f2eee6;background:#11100e;font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #11100e;--panel: #191713;--panel-soft: #211f1a;--text: #f2eee6;--muted: rgba(242, 238, 230, .68);--quiet: rgba(242, 238, 230, .42);--line: rgba(242, 238, 230, .14);--accent: #d4bd89;--accent-strong: #ecd29a;--accent-soft: rgba(212, 189, 137, .15)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 80% -20%,rgba(212,189,137,.11),transparent 34rem),linear-gradient(180deg,#15130f 0%,var(--bg) 44rem)}body.overlay-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{border:0;color:inherit;font:inherit}button,select{cursor:pointer}.site-shell{width:min(100%,1320px);min-height:100vh;margin:0 auto;padding:12px 14px 108px;overflow-x:hidden}.top-nav{position:sticky;top:0;z-index:20;display:grid;gap:12px;padding:12px 0 10px;background:linear-gradient(180deg,#11100ef5,#11100ed1);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:enterDown .52s ease both}.brand{display:inline-grid;justify-self:start;gap:3px;padding:0;background:transparent;text-align:left}.brand span,.overline,.section-kicker p,.project-meta,.project-number,.service-label{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:1.8px;line-height:1.1;text-transform:uppercase}.brand b{color:var(--text);font-size:14px;font-weight:500}.top-nav nav{display:flex;gap:6px;max-width:100%;padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.top-nav nav::-webkit-scrollbar{display:none}.top-nav nav button{flex:0 0 auto;min-height:34px;padding:0 12px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);font-size:13px;transition:border-color .22s ease,color .22s ease,background .22s ease,transform .22s ease}.top-nav nav button.is-active,.top-nav nav button:hover{border-color:#d4bd893d;background:var(--accent-soft);color:var(--text)}.top-nav nav button:active,.hero-actions a:active,.service-row button:active,.booking-form button:active,.contact-section address button:active,.floating-cta a:active,.floating-cta button:active{transform:translateY(1px)}.hero{display:grid;gap:22px;padding:28px 0 36px;border-bottom:1px solid var(--line)}.hero-copy{position:relative;z-index:1;display:grid;align-content:start;animation:enterUp .68s ease 60ms both}h1,h2,h3,p{margin-top:0}h1{max-width:none;margin:10px 0 16px;color:var(--text);font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:clamp(40px,11.8vw,76px);font-weight:500;letter-spacing:0;line-height:1.02}h1 span{display:block}.hero-fields{max-width:300px;margin:0 0 12px;color:var(--accent);font-size:12px;letter-spacing:1px;line-height:1.7;text-transform:uppercase}.hero-statement{max-width:560px;margin-bottom:18px;color:var(--muted);font-size:15px;line-height:1.82}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(100%,360px)}.hero-actions a,.floating-cta a,.floating-cta button,.service-row button,.booking-form button,.contact-section address button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:#ffffff08;color:var(--text);font-size:13px;letter-spacing:.4px;transition:border-color .22s ease,background .22s ease,color .22s ease,transform .22s ease}.hero-actions .button-primary,.booking-form button{border-color:#d4bd896b;background:var(--accent);color:#17140f;font-weight:700}.hero-actions a:hover,.floating-cta a:hover,.floating-cta button:hover,.service-row button:hover,.booking-form button:hover,.contact-section address button:hover{border-color:#d4bd8994;background:var(--accent-soft);color:var(--text)}.hero-actions .button-primary:hover,.booking-form button:hover{background:var(--accent-strong);color:#17140f}.hero-image{position:relative;aspect-ratio:4 / 5;min-height:0;margin:0;overflow:hidden;background:var(--panel);animation:imageIn .78s ease .12s both}.hero-image img,.project-card img,.lightbox-panel img{display:block;width:100%;height:100%;object-fit:cover}.hero-image img{filter:grayscale(.08) saturate(.82) contrast(1.06) brightness(.94)}.hero-image:before,.project-card:before{content:"";position:absolute;inset:0;z-index:1;border:1px solid rgba(255,255,255,.08);pointer-events:none}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(5,5,4,.5));pointer-events:none}.hero-image figcaption{position:absolute;left:14px;right:14px;bottom:14px;z-index:2;display:grid;gap:5px;color:var(--muted);font-size:11px}.hero-image figcaption b{color:var(--text);font-weight:500}.hero-info-bar{display:grid;gap:8px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;letter-spacing:.6px;line-height:1.6;text-transform:uppercase}.section{padding:68px 0 0;scroll-margin-top:84px}.section-kicker{display:grid;gap:8px;margin-bottom:24px}.section-kicker h2,.contact-section h2{margin:0;color:var(--text);font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:clamp(34px,10vw,76px);font-weight:500;letter-spacing:0;line-height:1}.projects-section .section-kicker,.approach-section .section-kicker,.services-section .section-kicker{text-align:left}.projects-section{padding-bottom:54px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-card{position:relative;min-height:218px;padding:14px;overflow:hidden;background:#181714;text-align:left;isolation:isolate}.project-card img{position:absolute;inset:0;z-index:-2;filter:grayscale(.16) saturate(.76) contrast(1.06) brightness(.88);transform:scale(1.001);transition:transform .36s ease,filter .36s ease}.project-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.2),transparent 38%,rgba(0,0,0,.72)),#00000008;transition:opacity .26s ease}.project-card:hover img{filter:grayscale(.08) saturate(.78) contrast(1.08) brightness(.94);transform:scale(1.02)}.project-number{position:absolute;top:14px;left:14px}.project-meta{position:absolute;top:14px;right:14px;max-width:108px;text-align:right}.project-title{position:absolute;left:14px;right:14px;bottom:18px;display:grid;gap:5px;color:var(--text);transition:transform .22s ease}.project-title b{font-family:Times New Roman,Songti SC,serif;font-size:clamp(18px,5vw,24px);font-weight:400;letter-spacing:0;line-height:1}.project-title em,.project-hint,.approach-item p,.service-row em,.contact-copy p,.form-note{color:var(--muted);font-size:13px;font-style:normal;line-height:1.7}.project-hint{position:absolute;right:14px;bottom:13px;opacity:0;transform:translateY(6px);transition:opacity .22s ease,transform .22s ease}.project-card:hover .project-hint{opacity:1;transform:translateY(0)}.project-card:hover .project-title{transform:translateY(-16px)}.project-feature,.project-landscape{grid-column:span 2}.project-feature{min-height:420px}.project-landscape{min-height:245px}.project-portrait,.project-small,.project-wide-short{min-height:250px}.approach-section,.studio-section,.services-section{border-top:1px solid var(--line)}.approach-grid{display:grid;border-top:1px solid var(--line)}.approach-item{display:grid;gap:10px;padding:22px 0;border-bottom:1px solid var(--line)}.approach-item span,.service-row>span{color:var(--quiet);font-family:Times New Roman,serif}.approach-item h3{margin:0;color:var(--text);font-family:Times New Roman,serif;font-size:27px;font-weight:400}.approach-item b{color:var(--accent);font-size:14px}.approach-item p{margin:0}.studio-content{display:grid;gap:24px;padding-top:2px}.studio-text{display:grid;gap:18px}.studio-text>p{max-width:820px;margin:0;color:var(--text);font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:clamp(22px,6vw,42px);letter-spacing:0;line-height:1.42}.studio-tags,.preview-keywords{display:flex;flex-wrap:wrap;gap:8px}.studio-tags span,.preview-keywords i{padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:var(--accent);font-size:12px;font-style:normal}.studio-content dl{display:grid;gap:0;margin:0;border-top:1px solid var(--line)}.studio-content dl div{display:grid;gap:6px;padding:15px 0;border-bottom:1px solid var(--line)}.studio-content dt{color:var(--quiet);font-size:12px;letter-spacing:1.2px;text-transform:uppercase}.studio-content dd{margin:0;color:var(--muted);line-height:1.6}.service-list{display:grid;border-top:1px solid var(--line)}.service-row{display:grid;gap:12px;padding:22px 0;border-bottom:1px solid var(--line);transition:border-color .22s ease,background .22s ease,padding .22s ease}.service-row:hover,.service-row.is-expanded{border-color:#d4bd8970;background:linear-gradient(90deg,rgba(212,189,137,.07),transparent);padding-left:10px}.service-row h3{margin:3px 0 7px;color:var(--text);font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:25px;font-weight:500;letter-spacing:0}.service-row p{margin:0;color:var(--muted);line-height:1.7}.service-row em{display:block;max-height:0;margin-top:9px;overflow:hidden;opacity:0;transition:max-height .26s ease,opacity .26s ease}.service-row.is-expanded em,.service-row:hover em{max-height:140px;opacity:1}.service-row strong{width:max-content;color:var(--accent-strong);font-size:18px;font-weight:600;white-space:nowrap}.service-row button{justify-self:start;width:max-content;min-height:38px}.contact-section{display:grid;gap:24px;margin-top:70px;padding:44px 0 0;border-top:1px solid var(--line)}.contact-copy{display:grid;gap:15px}.contact-copy p{max-width:560px;margin:0}.contact-section address{display:grid;gap:10px;color:var(--muted);font-style:normal}.contact-section address a,.contact-section address span,.contact-section address small{width:fit-content;color:var(--muted);font-size:14px;line-height:1.5}.contact-section address a:hover{color:var(--text)}.contact-section address button{width:fit-content}.contact-section address small,.form-note{color:var(--accent)}.booking-form{display:grid;gap:13px;padding:16px;border:1px solid var(--line);background:#ffffff06}.booking-form label{display:grid;gap:7px}.booking-form label span{color:var(--quiet);font-size:12px;letter-spacing:1px;text-transform:uppercase}.booking-form input,.booking-form select,.booking-form textarea{width:100%;min-height:44px;padding:11px 12px;border:1px solid rgba(242,238,230,.16);border-radius:0;outline:0;background:#ffffff0a;color:var(--text);resize:vertical}.booking-form select option{color:#17140f}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#d4bd89a3;background:#ffffff0f}.booking-form button{width:100%;margin-top:4px}.form-note{margin:0}.form-note.is-error{color:#efb8a6}.watermark{margin:8px 0 0;color:var(--quiet);font-size:12px}.floating-cta{position:fixed;left:50%;bottom:12px;z-index:18;display:flex;gap:6px;width:min(calc(100% - 28px),390px);padding:7px;border:1px solid var(--line);border-radius:999px;background:#11100ed1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate(-50%)}.floating-cta a,.floating-cta button{flex:1;min-height:36px;padding:0 10px;background:transparent}.lightbox{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:14px;background:#050504eb;cursor:zoom-out;animation:fadeIn .18s ease both}.lightbox-panel{position:relative;display:grid;width:min(100%,1120px);max-height:min(820px,calc(100dvh - 28px));margin:0;overflow:hidden;background:#12110f;cursor:default}.lightbox-panel img{min-height:46vh;max-height:52vh;filter:grayscale(.12) saturate(.76) contrast(1.08)}.lightbox-panel figcaption{display:grid;gap:9px;padding:16px;border-top:1px solid var(--line);background:#11100efa;overflow:auto}.lightbox-panel figcaption span{color:var(--accent);font-size:11px;letter-spacing:1.6px;text-transform:uppercase}.lightbox-panel figcaption b{color:var(--text);font-family:Times New Roman,Songti SC,serif;font-size:clamp(30px,10vw,72px);font-weight:400;line-height:.98}.lightbox-panel figcaption em,.lightbox-panel figcaption p{margin:0;color:var(--muted);font-style:normal;line-height:1.7}.close-preview{position:absolute;top:10px;right:10px;z-index:2;min-height:36px;padding:0 13px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#0000007a;color:var(--text)}.preview-controls{display:flex;gap:8px;margin-top:8px}.preview-controls button{min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:transparent}@keyframes enterUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes enterDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes imageIn{0%{opacity:0;transform:translateY(12px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:390px){.site-shell{padding-inline:12px}h1{font-size:clamp(39px,11.6vw,50px)}.hero-actions{width:100%}.project-grid{gap:8px}.project-card{min-height:210px;padding:12px}.project-feature{min-height:390px}.project-landscape{min-height:230px}}@media(min-width:520px){.hero-image{aspect-ratio:16 / 10}.hero-info-bar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:768px){.site-shell{padding:18px 26px 112px}.top-nav{grid-template-columns:auto 1fr;align-items:center}.top-nav nav{justify-self:end}.hero{grid-template-columns:minmax(0,.74fr) minmax(360px,1.26fr);align-items:center;gap:32px;min-height:660px;padding-top:42px}.hero-image{aspect-ratio:5 / 4;min-height:540px}.hero-info-bar{grid-column:1 / -1}.project-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.project-card{grid-column:span 3;min-height:320px}.project-feature{grid-column:span 3;grid-row:span 2;min-height:610px}.project-landscape{grid-column:span 6;min-height:350px}.project-portrait,.project-small,.project-wide-short{grid-column:span 3;min-height:380px}.approach-grid{grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.approach-item{padding:24px 20px 26px;border-right:1px solid var(--line);border-bottom:0}.approach-item:last-child{border-right:0}.studio-content{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:46px}.service-row{grid-template-columns:44px minmax(0,1fr) 132px auto;align-items:start;gap:18px}.contact-section{grid-template-columns:minmax(0,.88fr) minmax(340px,.72fr);align-items:start}.watermark{grid-column:1 / -1}.lightbox-panel{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}.lightbox-panel img{min-height:min(76vh,760px);max-height:none}.lightbox-panel figcaption{align-content:end;border-top:0;border-left:1px solid var(--line);padding:28px}}@media(min-width:1024px){.site-shell{padding:20px 34px 78px}.hero{grid-template-columns:minmax(430px,.78fr) minmax(520px,1.22fr);gap:48px;min-height:700px}h1{max-width:10ch;font-size:clamp(70px,7vw,104px)}.section{padding-top:88px}.section-kicker{grid-template-columns:220px 1fr;align-items:end;margin-bottom:34px}.projects-section .section-kicker,.approach-section .section-kicker,.services-section .section-kicker{grid-template-columns:1fr;justify-items:center;text-align:center}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}.project-card{grid-column:span 4;min-height:360px}.project-feature{grid-column:span 5;grid-row:span 2;min-height:720px}.project-landscape{grid-column:span 7;min-height:360px}.project-portrait{grid-column:span 4;min-height:450px}.project-wide-short{grid-column:span 6;min-height:340px}.project-small{grid-column:span 3;min-height:340px}.floating-cta{left:auto;right:18px;bottom:10px;width:auto;padding:5px;transform:none}.floating-cta a,.floating-cta button{min-width:52px;min-height:30px;padding:0 10px;font-size:11px}}
