@import url('https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Serif+TC:wght@400;500;600;700&display=swap');:root{--ink:#221b17;--cream:#f5eddf;--gold:#a9844a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Noto Sans TC',sans-serif;background:var(--cream)}a{text-decoration:none;color:inherit}.nav{height:82px;background:#121615f2;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:5;border-bottom:1px solid #b48d5140}.brand{display:flex;flex-direction:column;line-height:1.2}.brand strong{font:600 23px 'Noto Serif TC',serif;letter-spacing:2px}.brand small{font:13px Georgia,serif;letter-spacing:1px;margin-top:4px}.brand i,.seal{font:normal 14px 'Noto Serif TC',serif;color:#fff;background:#a62f28;border:1px solid #d78d81;border-radius:4px;padding:2px 5px}.nav nav{display:flex;gap:30px;font-size:14px}.nav nav a:hover{color:#e5c596}.menu{display:none;background:none;border:0;color:#fff;font-size:28px}.hero{position:relative;min-height:680px;display:grid;place-items:center;text-align:center;color:white;background:linear-gradient(90deg,#101516d9,#101516a6 50%,#1015168a),url('hero.jpg') center 60%/cover}.hero-inner{padding:70px 16px 100px;max-width:800px;position:relative}.eyebrow,.kicker{font:12px Georgia,serif;letter-spacing:4px;color:#d8b781}.hero h1{font:600 clamp(46px,7vw,90px) 'Noto Serif TC',serif;letter-spacing:.1em;margin:22px 0 4px;text-shadow:0 2px 20px #0009}.en{font:clamp(19px,3vw,30px) Georgia,serif;letter-spacing:3px;margin:0}.seal{display:inline-block;margin:20px auto 0;font-size:18px}.hero h2{font:500 clamp(25px,3.3vw,36px) 'Noto Serif TC',serif;line-height:1.65;letter-spacing:3px;margin:25px 0}.tag{line-height:2.1;letter-spacing:2px;font-size:14px}.outline-btn{display:inline-block;border:1px solid #fff;border-radius:40px;padding:14px 32px;margin-top:22px;background:#14141466}.outline-btn:hover{background:#fff;color:#1c1c1c}.scroll{position:absolute;bottom:20px;left:50%;font-size:38px;transform:translateX(-50%)}.mobile{display:none}.services{display:grid;grid-template-columns:repeat(4,1fr);padding:30px max(5%,calc((100vw - 1100px)/2));background:#f8f2e8}.service{display:flex;flex-direction:column;align-items:center;text-align:center;border-right:1px solid #d8cfc0;padding:5px 10px;gap:8px}.service:last-child{border:0}.service span{font-size:30px;color:#785a2e}.service b{font:600 18px 'Noto Serif TC',serif}.service small{font-size:12px;color:#71665a}.section{padding:80px 22px;text-align:center}.section h2{font:600 clamp(29px,4vw,42px) 'Noto Serif TC',serif;margin:12px 0 18px}.sub{color:#76695b}.works{background:#eee3d2}.work-grid{max-width:1000px;margin:35px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}.work{background:#fffaf1;text-align:left;border-radius:13px;overflow:hidden;box-shadow:0 7px 24px #3e2c1817}.work img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.work .body{padding:18px}.work h3{font-size:18px;margin:0 0 7px}.work p{color:#786a5b;font-size:13px;line-height:1.7}.work a{color:#8b652f;font-weight:600}.hint{font-size:14px;color:#887968}.about{max-width:800px;margin:auto;line-height:2.1}.about p{font-size:15px}.signature{font:italic 17px Georgia,serif;color:#8b6c47;margin-top:34px}.contact{background:#24231f;color:#f7f0e4}.contact p{color:#d1c5b5}.gold-btn{display:inline-block;background:linear-gradient(100deg,#b18a4c,#92703d);color:white;padding:16px 44px;border-radius:40px;margin:20px 0}.contact .contact-note{font-size:12px;color:#b5a994}footer{background:#151713;color:#d0c5b4;text-align:center;padding:24px;font-size:12px}footer small{display:block;font:italic 13px Georgia,serif;margin-top:8px}@media(max-width:700px){.nav{height:74px;padding:0 18px}.brand strong{font-size:19px}.brand small{font-size:11px}.menu{display:block}.nav nav{display:none;position:absolute;top:74px;left:0;right:0;background:#171a19;flex-direction:column;padding:20px;gap:22px}.nav nav.open{display:flex}.hero{min-height:720px;background-position:55% center}.hero-inner{padding:60px 14px 85px}.hero h1{font-size:49px;letter-spacing:2px}.en{font-size:19px;letter-spacing:1.5px}.hero h2{font-size:25px}.mobile{display:block}.tag{font-size:12px}.services{grid-template-columns:repeat(2,1fr);padding:24px 12px;row-gap:22px}.service:nth-child(2){border-right:0}.service b{font-size:16px}.section{padding:65px 20px}}

/* v1.1 visual refinements */
.hero{background:linear-gradient(90deg,rgba(12,16,17,.60),rgba(12,16,17,.40) 55%,rgba(12,16,17,.33)),url('hero.jpg') center 54%/cover}
.hero-inner{background:radial-gradient(ellipse at center,rgba(10,13,14,.42),transparent 72%)}
.hero h1.brush-title{font-family:'Ma Shan Zheng','DFKai-SB','BiauKai',cursive;font-weight:400;letter-spacing:.035em;font-size:clamp(55px,8vw,104px);line-height:1.22;text-shadow:0 3px 14px #000b;margin:20px 0 8px}
.inquiry{max-width:560px;margin:30px auto 0;display:grid;gap:17px;text-align:left}.inquiry label{display:grid;gap:9px;font-size:14px;color:#f3e7d7}.inquiry em{color:#dfad8c;font-style:normal}.inquiry input,.inquiry select,.inquiry textarea{font:inherit;width:100%;padding:14px;border-radius:9px;border:1px solid #7d7468;background:#fffaf1;color:#25211b}.inquiry .gold-btn{border:0;font-size:16px;cursor:not-allowed;opacity:.65;margin:5px 0}.inquiry .contact-note{font-size:12px;line-height:1.8;text-align:center}.contact{padding-bottom:90px}
@media(max-width:700px){.hero{min-height:690px;background-position:center center}.hero h1.brush-title{font-size:clamp(52px,12vw,72px);white-space:nowrap}.hero-inner{padding:58px 12px 70px}.hero h2{margin-top:24px}.hero .seal{margin-top:15px}}

/* v1.2: crisp cinematic background + fixed brush lettering */
.hero{background-image:linear-gradient(180deg,rgba(13,17,16,.44) 0%,rgba(13,17,16,.55) 56%,rgba(13,17,16,.32) 100%),url('hero.jpg');background-position:center center;background-size:cover;background-repeat:no-repeat}
.brush-title{margin:20px auto 5px!important;line-height:1}
.brush-title img{display:block;width:min(92vw,620px);height:auto;max-height:160px;object-fit:contain;margin:auto;filter:drop-shadow(0 3px 12px rgba(0,0,0,.65))}
@media(max-width:700px){.hero{background-position:54% center;min-height:calc(100svh - 74px)}.hero-inner{padding-top:62px;padding-bottom:76px}.brush-title img{width:min(92vw,490px)}}

/* v1.3: clean photographic assets; UI remains real HTML */
.hero{background-image:linear-gradient(180deg,rgba(8,11,12,.78) 0%,rgba(8,11,12,.56) 46%,rgba(8,11,12,.70) 100%),url("hero.jpg");background-size:cover;background-position:center 50%;background-repeat:no-repeat}
.hero-inner{background:none;z-index:1}
.hero h1.brush-title{margin:24px auto 8px!important;line-height:1}
.brush-title img{width:min(88vw,570px);height:auto;max-height:none;filter:drop-shadow(0 4px 8px rgba(0,0,0,.8))}
.seal-hero{display:block;margin:18px auto 0;width:52px;height:52px;object-fit:contain}
.brand strong{display:flex;align-items:center;gap:9px}
.brand-seal{width:28px;height:28px;object-fit:contain}
.hero .outline-btn{position:relative;z-index:2}
@media(max-width:700px){.hero{background-image:linear-gradient(180deg,rgba(8,11,12,.74) 0%,rgba(8,11,12,.50) 48%,rgba(8,11,12,.72) 100%),url("hero-mobile.jpg");background-position:center center;min-height:calc(100svh - 74px)}.hero-inner{padding:54px 15px 76px}.brush-title img{width:min(89vw,490px)}.hero h2{margin:25px 0}.brand-seal{width:27px;height:27px}}

/* v1.4 release candidate: photographic cleanup, pixel-crisp logo and aligned offerings */
.hero{isolation:isolate;background-position:center center}
.hero-inner{width:100%;max-width:800px}
.brush-title img{image-rendering:auto;width:min(91vw,650px);max-width:100%;filter:drop-shadow(0 3px 5px rgba(0,0,0,.64))}
.hero-offerings{display:grid;grid-template-columns:max-content 1px max-content;column-gap:clamp(18px,4vw,32px);row-gap:10px;align-items:center;justify-content:center;font-size:14px;letter-spacing:.14em;margin:27px auto 8px;line-height:1.6}
.hero-offerings i{display:block;width:1px;height:19px;background:rgba(255,255,255,.68);justify-self:center}
.hero-offerings span{white-space:nowrap}
@media(max-width:700px){.hero{background-position:center center}.hero-inner{padding-top:50px}.brush-title img{width:min(90vw,600px)}.hero-offerings{font-size:13px;column-gap:20px;row-gap:10px}.hero h2{font-size:clamp(23px,5.6vw,29px)}}
