@charset "UTF-8";
:root{color-scheme:light;--paper:#f8f7f3;--ink:#252b28;--muted:#777b75;--line:#ddded6;--accent:#c46648;--serif:"Songti SC","STSong","Noto Serif CJK SC",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,.carousel:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
::selection{background:#efd5c6;color:var(--ink)}
.shell{width:min(1180px,calc(100% - 112px));margin-inline:auto}
.site-header{border-bottom:1px solid var(--line)}
.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;gap:14px;align-items:center;font-family:var(--serif);font-weight:600;font-size:22px;letter-spacing:1.2px}
.brand-mark{font-family:Georgia,serif;font-size:42px;line-height:1;font-weight:400;letter-spacing:-5px;margin-right:5px;color:var(--accent)}
.site-nav{display:flex;gap:44px;font-size:14px;letter-spacing:1px;align-self:stretch;align-items:center}
.site-nav a{height:100%;display:flex;align-items:center;position:relative;gap:7px;transition:color .2s}
.site-nav a:hover{color:var(--accent)}
.site-nav a[aria-current=page]::after{content:"";position:absolute;bottom:24px;left:0;width:18px;height:2px;background:var(--accent)}
.introduction{display:grid;grid-template-columns:1fr 350px;align-items:center;gap:70px;padding-block:82px 84px}
.intro-copy{min-width:0}
.eyebrow{margin:0;font-size:12px;line-height:1.8;letter-spacing:2.5px;color:var(--muted);display:flex;align-items:center;gap:13px;font-weight:500}
.accent-line{width:29px;height:1px;background:var(--accent);display:inline-block}
.intro-copy h1{margin:26px 0 25px;font-size:clamp(34px,3.6vw,48px);font-weight:400;line-height:1.48;letter-spacing:1px;font-family:var(--serif)}
.signature{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(76px,7.2vw,96px);line-height:1.18;letter-spacing:-5px;color:var(--accent)}
.signature-period{font-family:var(--serif);font-size:52px;letter-spacing:0;font-style:normal}
.welcome{margin:0;font-size:16px;color:var(--muted);letter-spacing:2px}
.portrait-composition{margin:12px 0 0;position:relative;padding:0 20px 0 0}
.portrait-mat{padding:15px;background:#e8e9e0;transform:rotate(3deg)}
.portrait-mat img{display:block;width:100%;height:auto;transform:rotate(-3deg);box-shadow:0 10px 30px #26312814}
.portrait-composition figcaption{display:flex;justify-content:space-between;margin-top:24px;font-size:10px;letter-spacing:2px;color:var(--muted)}
.portrait-composition figcaption span:first-child{font:italic 18px Georgia,serif;letter-spacing:.5px;color:var(--ink)}
.portrait-cross{position:absolute;right:-8px;top:-30px;font-size:30px;font-weight:200;color:var(--accent)}
.visual-section{padding-bottom:74px}
.carousel{position:relative}
.carousel-slides{position:relative;aspect-ratio:1500/468;background:#e3e2dc;overflow:hidden}
.carousel-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .75s ease,visibility .75s}
.carousel-slide.is-active{opacity:1;visibility:visible}
.carousel-slide img{width:100%;height:100%;object-fit:contain;display:block}
.carousel-controls{display:flex;justify-content:space-between;align-items:center;margin-top:16px}
.slide-count{font-size:11px;letter-spacing:1.5px;font-variant-numeric:tabular-nums;color:var(--muted)}
[data-slide-current]{color:var(--ink)}
.count-divider{padding:0 11px;color:#b5b7af}
.carousel-arrows{display:flex;gap:9px}
.carousel-arrows button{width:42px;height:34px;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--ink);font-size:19px;transition:background .2s,color .2s,border-color .2s}
.carousel-arrows button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.philosophy{background:#f0efe9 url("../img/body.png");background-blend-mode:soft-light;padding:72px 0 78px;border-block:1px solid var(--line)}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:50px}
.section-heading h2{font:400 27px/1.5 var(--serif);letter-spacing:1px;margin:0}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}
.principle{border-top:1px solid #bfc3b7;padding-top:22px}
.principle-number{font:italic 15px/1 Georgia,serif;color:var(--accent)}
.principle h3{display:flex;justify-content:space-between;align-items:center;margin:26px 0 16px;font:400 33px/1.4 var(--serif);letter-spacing:3px}
.principle h3 span{font:300 20px/1 var(--sans);color:#999e92}
.principle p{margin:0;color:#62695f;font-size:14px;line-height:2.1;letter-spacing:.4px}
.closing-thought{margin:67px 0 0;padding-top:35px;border-top:1px solid #cdd0c5;font:400 24px/1.9 var(--serif);letter-spacing:1px}
.closing-thought br{display:none}
.closing-thought span{color:var(--muted)}
.site-footer{min-height:116px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:11px;line-height:1.9;color:var(--muted)}
.site-footer p{margin:0}
.site-footer a{flex-shrink:0;transition:color .2s}
.site-footer a:hover{color:var(--accent)}
.legacy-credit{font-size:10px;opacity:.8;margin-top:4px!important}
.works-main{padding-block:75px 85px}
.works-heading{margin-bottom:55px}
.works-heading h1{font:400 42px/1.6 var(--serif);letter-spacing:2px;margin:22px 0 0}
.heading-dash{color:#b9b9ae;font-weight:300}
.works-title{font-size:60px;color:var(--accent)}
.work-gallery{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 34px}
.work-gallery li{position:relative;min-width:0;border-top:1px solid var(--line);padding-top:24px}
.work-gallery a{display:block;padding:27px;background:#eeeee7;transition:background .2s}
.work-gallery a:hover{background:#e5e7dc}
.work-gallery img{display:block;width:100%;height:auto;box-shadow:0 7px 22px #26312812;transition:transform .3s}
.work-gallery a:hover img{transform:translateY(-4px)}
.work-index{display:block;font:italic 14px/1 Georgia,serif;color:var(--muted);margin-top:16px}
.works-page .site-footer{border-top:1px solid var(--line)}
@media(min-width:1600px){.introduction{padding-block:105px}}
@media(max-width:1000px){.shell{width:calc(100% - 72px)}.introduction{grid-template-columns:1fr 285px;gap:35px;padding-block:65px}.brand{font-size:20px}.intro-copy h1{font-size:36px}.principles{gap:28px}.closing-thought{font-size:21px}.work-gallery{gap:32px 24px}.work-gallery a{padding:18px}}
@media(max-width:700px){.shell{width:calc(100% - 40px)}.header-inner{min-height:80px;gap:12px}.brand{font-size:17px;gap:9px;letter-spacing:0}.brand-mark{font-size:34px}.site-nav{gap:22px;font-size:13px;letter-spacing:0}.site-nav a{gap:3px}.site-nav a[aria-current=page]::after{bottom:15px}.introduction{grid-template-columns:1fr 165px;gap:20px;padding-block:54px}.eyebrow{font-size:10px;letter-spacing:1.8px;gap:9px}.accent-line{width:20px}.intro-copy h1{font-size:27px;letter-spacing:0;margin:21px 0}.signature{font-size:62px;letter-spacing:-4px}.signature-period{font-size:32px}.welcome{font-size:12px;letter-spacing:1px}.portrait-composition{padding-right:7px}.portrait-mat{padding:9px}.portrait-cross{right:-6px;top:-25px;font-size:23px}.portrait-composition figcaption{margin-top:18px;letter-spacing:0}.portrait-composition figcaption span:last-child{display:none}.portrait-composition figcaption span:first-child{font-size:15px}.visual-section{padding-bottom:44px}.carousel-controls{margin-top:13px}.carousel-arrows button{height:32px;width:38px}.philosophy{padding-block:44px 46px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:25px;margin-top:14px}.principles{gap:25px;grid-template-columns:1fr}.principle{display:grid;grid-template-columns:32px 58px 1fr;gap:12px;align-items:start;padding-top:19px}.principle-number{padding-top:10px}.principle h3{font-size:25px;letter-spacing:1px;margin:0}.principle h3 span{display:none}.principle p{font-size:13px;line-height:1.9;padding-top:4px}.closing-thought{font-size:22px;line-height:1.9;margin-top:36px;padding-top:28px}.closing-thought br{display:block}.site-footer{min-height:112px;flex-direction:column;justify-content:center;align-items:flex-start;gap:7px;padding-block:25px;font-size:10px}.works-main{padding-block:44px 50px}.works-heading{margin-bottom:34px}.works-heading h1{font-size:29px;margin-top:16px}.works-title{font-size:43px}.work-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.work-gallery li{padding-top:18px}.work-gallery a{padding:14px}.legacy-credit{max-width:100%;font-size:9px}}
@media(max-width:390px){.shell{width:calc(100% - 32px)}.brand{font-size:15px}.site-nav{gap:16px}.introduction{grid-template-columns:1fr 135px;gap:12px}.intro-copy h1{font-size:24px}.signature{font-size:56px}.welcome{font-size:11px}.eyebrow{font-size:9px}.work-gallery{gap:25px 14px}.work-gallery a{padding:9px}}
@media(max-width:700px){.introduction{grid-template-columns:minmax(0,1fr) 135px}}
@media(max-width:390px){.introduction{grid-template-columns:minmax(0,1fr) 112px}.signature{font-size:52px;letter-spacing:-3px}.intro-copy h1{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
