@font-face{font-family:GenRyu;src:url("/assets/fonts/GenRyuMin2TW-R.sub.woff2")}@font-face{font-family:NotoSerif;src:url("/assets/fonts/NotoSerifTC-R.sub.woff2")}@font-face{font-family:NotoSans;src:url("/assets/fonts/NotoSansTC-R.sub.woff2")}@font-face{font-family:Cormorant;src:url("/assets/fonts/CormorantGaramond-R.sub.woff2")}@font-face{font-family:Cormorant;src:url("/assets/fonts/CormorantGaramond-RI.sub.woff2");font-style:italic}
:root{--ink:#213e50;--muted:#536775;--paper:#f8f5ef;--gold:#b79544;--line:#d8d9d4;--serif:GenRyu,NotoSerif,'Songti TC',serif;--sans:NotoSans,'PingFang TC',sans-serif;--gutter:clamp(24px,6vw,96px);--bar:46px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #ba8434;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}p{font-size:16px;color:var(--muted)}h2{font-size:clamp(30px,3vw,46px);line-height:1.65;letter-spacing:.035em}h3{font-size:25px;line-height:1.65}em{font-style:normal}small{font-size:13px}::selection{background:#dfc88d;color:#183444}.preview-bar{height:var(--bar);position:sticky;top:0;z-index:1000;background:#f0f2f3;color:#233d4c;display:flex;align-items:center;justify-content:center;gap:24px;font-size:13px;border-bottom:1px solid #d8dfe2;font-family:var(--sans)}.preview-label b{font-weight:400;color:#9aa4aa}.preview-bar nav{display:flex;gap:4px;height:100%;align-items:center}.preview-bar nav a{padding:5px 15px;border-radius:3px}.preview-bar nav a[aria-current]{background:#233d4c;color:white}.preview-bar nav a:hover{background:#d6e0e5}.preview-bar nav a[aria-current]:hover{background:#233d4c}.motion-button{font-size:12px;border:0;background:transparent;color:#355469;padding:8px}.skip-link{position:fixed;top:-80px;left:20px;z-index:1001;background:white;color:#183444;padding:10px}.skip-link:focus{top:50px}.header{height:96px;padding:0 var(--gutter);display:flex;align-items:center;gap:35px;position:relative;z-index:100;border-bottom:1px solid var(--line)}.brand{display:flex;gap:11px;align-items:center;font-family:var(--serif);font-size:20px;letter-spacing:2px;white-space:nowrap}.brand img{width:35px;height:35px;object-fit:contain}.brand small{display:block;font-family:Cormorant,serif;font-size:12px;letter-spacing:2.8px;line-height:1.2;margin-top:5px}.desktop-nav{margin-left:auto;display:flex;gap:28px;font-size:14px}.desktop-nav a{position:relative;padding:8px 0}.desktop-nav a:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s}.desktop-nav a:hover:after{transform:scaleX(1)}.nav-book{border:1px solid currentColor;padding:8px 17px;font-size:14px;white-space:nowrap}.menu-button{display:none;background:transparent;border:0;color:inherit}.mobile-menu{padding:24px var(--gutter);background:var(--paper);border-bottom:1px solid var(--line);position:absolute;z-index:99;width:100%;color:var(--ink)}.mobile-menu a{display:block;padding:12px;border-bottom:1px solid var(--line)}.hero{position:relative;overflow:hidden;padding:65px var(--gutter) 80px}.eyebrow{font-size:12px;letter-spacing:2.5px;display:block;line-height:1.9;margin-bottom:20px}.hero h1{font-size:clamp(43px,4.5vw,72px);line-height:1.55;letter-spacing:.035em}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:14px 25px;font-size:15px;transition:background .3s,transform .3s;min-height:52px}.button:hover{transform:translateY(-3px)}.primary{background:var(--ink);color:#fff}.text-link{display:inline-flex;gap:18px;align-items:center;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:5px;min-height:34px}.text-link span,.nav-book span{display:inline-block;transition:transform .3s}.text-link:hover span,.nav-book:hover span{transform:translate(3px,-3px)}.portrait-frame{position:relative}.portrait{aspect-ratio:1;object-fit:contain;width:100%}.section{padding:100px var(--gutter)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.section-heading .eyebrow{color:var(--muted);margin-bottom:10px}.section-heading>p{max-width:380px}.section-heading>.text-link{flex-shrink:0}.practice-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:65px}.small-heading{font-size:15px;display:flex;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line)}.small-heading span{font-size:11px;letter-spacing:1.5px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.service-item{display:flex;align-items:start;gap:17px;padding:30px 0;border-bottom:1px solid var(--line);transition:transform .3s}.service-item:hover{transform:translateX(5px)}.service-item>.item-number{font-family:Cormorant,serif;font-size:20px;color:var(--muted)}.service-item>span:last-child{margin-left:auto}.service-item h3{font-size:24px;margin-bottom:9px}.service-item p{font-size:14px;line-height:1.9}.extra-services{display:flex;gap:25px;padding-top:25px;font-size:14px}.business{background:#e9ece9;padding:38px 35px;display:flex;flex-direction:column;align-items:start}.business .eyebrow{font-size:11px}.business h3{font-size:30px;line-height:1.65;margin-bottom:20px}.business p{font-size:15px;margin-bottom:22px}.business .text-link{margin-top:10px}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-label h2{font-size:40px;margin-bottom:23px}.about-label h2 span{font-family:var(--sans);font-size:15px;margin-left:20px}.about-label p{font-size:14px;line-height:2.2;margin-bottom:25px}.about-statement{position:relative;padding-left:50px}.quote-mark{position:absolute;left:-15px;top:-45px;font-family:Cormorant;font-size:120px;opacity:.25;line-height:1}.about-statement h3{font-size:clamp(30px,3.3vw,50px);line-height:1.7;letter-spacing:3px;margin-bottom:20px}.about-statement p{margin-bottom:18px}.steps{display:grid;grid-template-columns:repeat(4,1fr);padding:0;list-style:none;gap:30px}.steps li{border-top:1px solid var(--line);padding-top:24px}.steps li>span{font-size:34px;font-family:Cormorant;display:block;color:var(--gold);margin-bottom:18px}.steps h3{font-size:24px;margin-bottom:10px}.steps p{font-size:14px}.fee-note{margin-top:35px;font-size:14px}.journal{background:#eeeee8}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.article{border-top:1px solid var(--ink);display:flex;flex-direction:column;padding-top:18px;min-height:280px;transition:transform .4s}.article:hover{transform:translateY(-5px)}.article-meta{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;margin-bottom:26px;color:var(--muted)}.article h3{font-size:26px;margin-bottom:18px}.article p{font-size:14px;margin-bottom:28px}.article-more{margin-top:auto;font-size:13px;display:flex;justify-content:space-between}.films{display:flex;align-items:center;justify-content:space-between;gap:40px}.films h2{margin-bottom:18px}.films p{font-size:15px}.film-link{min-width:300px;display:flex;flex-direction:column;align-items:center;gap:26px;font-size:14px}.sound-lines{height:75px;display:flex;align-items:center;gap:8px}.sound-lines i{width:2px;height:32%;background:var(--gold);animation:sound 2s ease-in-out infinite alternate}.sound-lines i:nth-child(3n){height:80%;animation-delay:-1.3s}.sound-lines i:nth-child(3n + 1){height:52%;animation-delay:-.6s}.sound-lines i:nth-child(4n){height:100%;animation-delay:-1.8s}.contact{text-align:center;background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.contact h2{font-size:clamp(36px,4.3vw,62px);margin-bottom:28px}.contact .primary{background:var(--paper);color:var(--ink)}.contact p{color:#c2cfd5;font-size:13px;margin-top:22px}.footer{padding:55px var(--gutter) 20px;background:var(--paper)}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:start;padding-bottom:40px}.footer-brand{font-family:var(--serif);font-size:22px;letter-spacing:1px}.footer-brand small{font-family:Cormorant;display:block;font-size:15px;letter-spacing:.5px;margin-top:10px}.footer-main p{font-size:13px}.footer-main>div{display:flex;gap:20px;font-size:13px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.reveal{opacity:1;transform:none}.js-motion .reveal.pending{opacity:0;transform:translateY(26px)}.reveal{transition:opacity .85s ease,transform .85s cubic-bezier(.2,.65,.3,1)}.intro{animation:arrive 1.2s both}.intro:nth-child(2){animation-delay:.16s}.intro:nth-child(3){animation-delay:.3s}.intro:nth-child(4){animation-delay:.45s}.intro:nth-child(5){animation-delay:.6s}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off .pending{opacity:1!important;transform:none!important}.motion-off{scroll-behavior:auto}.motion-off .intro{opacity:1;transform:none}@keyframes arrive{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes sound{to{transform:scaleY(.25)}}
/* A: deep ink, cinematic light, a framed portrait. */
.theme-a .header{background:#1c3545;color:#f8f5ef;border-color:#405563}.theme-a .hero{background:#1c3545;color:#f8f5ef}.hero-a{display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:center;min-height:690px}.hero-a .hero-copy{z-index:1}.hero-a .eyebrow{color:#cdd6db;font-size:12px}.hero-a h1{font-size:clamp(40px,4.4vw,67px)}.hero-a h1 em{color:#e0c789}.hero-a .primary{background:#ddc488;color:#203b4c}.hero-a .hero-values{display:flex;gap:0;font-size:14px;letter-spacing:2px;margin-top:28px}.hero-values span+span:before{content:'／';color:#748591;margin:0 15px}.hero-a .portrait-frame{max-width:490px;padding:12px;border:1px solid #75818a;justify-self:center;transform:rotate(-2deg);animation:portraitA 12s ease-in-out infinite alternate}.hero-a figcaption{display:flex;justify-content:space-between;align-items:center;padding:15px 8px 3px;font-size:12px;letter-spacing:2px}.hero-a figcaption span:first-child{font-family:Cormorant;font-style:italic;font-size:30px;letter-spacing:0}.dawn{position:absolute;inset:-40%;pointer-events:none;background:radial-gradient(ellipse at 75% 70%,#a48b4730,transparent 40%),linear-gradient(115deg,transparent 30%,#d5ba6720 44%,transparent 58%);animation:dawn 16s ease-in-out infinite alternate}.scroll-cue{position:absolute;bottom:28px;left:var(--gutter);display:flex;align-items:center;gap:20px;font-size:11px;letter-spacing:2px}.scroll-cue i{height:1px;width:70px;background:#85949c;transform-origin:left;animation:scrollLine 3s ease-in-out infinite}.theme-a .about{background:#243f4f;color:#f8f5ef;border:0}.theme-a .about p,.theme-a .about .eyebrow{color:#c5d1d7}.theme-a .about .text-link{color:#e0c789}.theme-a .contact{background:#1c3545}.theme-a .business{border-top:3px solid #c4a560}.theme-a .service-item:hover h3{color:#856922}@keyframes dawn{to{transform:translate(9%,3%) rotate(8deg)}}@keyframes portraitA{from{transform:rotate(-2deg) translateY(0)}to{transform:rotate(-.4deg) translateY(-9px)}}@keyframes scrollLine{50%{transform:scaleX(.3);opacity:.4}}
/* B: an open, light-filled portrait-led welcome. */
.theme-b{--paper:#fcfcf8;--ink:#244e66;--muted:#536a77;--gold:#699fae;--line:#d5e2e4}.theme-b .header{background:#fcfcf8;border-bottom:0}.theme-b .brand img{border-radius:50%}.theme-b .nav-book{border-radius:30px;background:#244e66;color:white;padding:9px 22px}.hero-b{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;align-items:center;padding-top:25px;padding-bottom:60px;background:linear-gradient(130deg,#fcfcf8 45%,#e4f0f3);min-height:655px}.hero-b h1{font-size:clamp(43px,4.15vw,64px);line-height:1.5;letter-spacing:2px}.hero-b h1 em{color:#307687;display:inline-block;position:relative}.hero-b h1 em:after{content:'';height:1px;position:absolute;left:0;right:-12%;bottom:-6px;background:#8cbbc4;transform-origin:left;animation:underline 1.4s .5s both}.hero-b .hero-description{margin-top:25px;font-size:16px;line-height:2}.hero-b .hero-actions{gap:22px;margin-top:28px}.theme-b .button{border-radius:40px;padding:14px 27px}.hero-b .portrait-frame{padding:24px 0 0 20px;animation:portraitB 9s ease-in-out infinite;max-width:640px;justify-self:center}.hero-b .portrait{border-radius:50% 50% 6% 6%;box-shadow:0 25px 55px #235a6f10}.hero-b figcaption{position:absolute;bottom:28px;right:-5px;background:#fffefaee;box-shadow:0 10px 30px #2149580b;padding:18px 27px;font-family:Cormorant;font-style:italic;font-size:27px;line-height:1.25;border-radius:3px;transform:rotate(3deg);color:#356278}.counsel-note{display:flex;align-items:center;gap:16px;margin-top:38px}.counsel-note p{font-size:13px}.counsel-note small{font-family:Cormorant;font-size:16px}.tiny-line{width:30px;height:1px;background:#8eb8bf}.welcome-strip{display:flex;align-items:center;justify-content:center;gap:45px;padding:27px 20px;background:#e4eff0;font-family:var(--serif);font-size:19px;letter-spacing:1px}.welcome-strip i{height:4px;width:4px;border-radius:50%;background:#749eaa}.theme-b .process{padding-bottom:65px}.theme-b .steps li{border-top:0;padding:26px 22px;background:#f1f6f5;border-radius:4px}.theme-b .steps li>span{font-size:28px;margin-bottom:12px}.theme-b .practice{padding-top:50px}.theme-b .service-grid{gap:14px;margin-top:16px}.theme-b .service-item{padding:23px 17px;border:1px solid var(--line);border-radius:5px;background:#fff}.theme-b .service-item>.item-number{display:none}.theme-b .service-item h3{font-size:23px}.theme-b .business{border-radius:5px;background:#e5eff0;padding:40px}.theme-b .about{background:#eaf2f1;border:0}.theme-b .about-statement h3{color:#315f6b}.theme-b .journal{background:#fcfcf8}.theme-b .article{padding:25px;background:#f1f6f5;border-top:0;border-radius:5px}.theme-b .films{background:#f1f6f5}.theme-b .contact{background:#356777}.theme-b .footer{background:#fcfcf8}@keyframes portraitB{50%{transform:translateY(-12px)}}@keyframes underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
/* C: a precise editorial grid, generous typography and a quiet portrait. */
.theme-c{--paper:#f7f6f1;--ink:#223640;--muted:#58646a;--gold:#85734c;--line:#c9cfcd;--gutter:clamp(24px,7vw,112px)}.theme-c .header{height:105px;border-bottom:2px solid #223640}.theme-c .brand{font-size:23px}.theme-c .brand img{display:none}.theme-c .brand small{letter-spacing:4px}.theme-c .nav-book{border:0;border-bottom:1px solid;padding:4px 0}.hero-c{padding-top:20px;padding-bottom:0}.editorial-heading{display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;margin-bottom:50px}.editorial-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}.hero-c .eyebrow{font-size:14px;letter-spacing:3px;margin-bottom:25px}.hero-c h1{font-size:clamp(44px,4.6vw,73px);line-height:1.48;letter-spacing:1px}.hero-c h1 em{color:#85734c}.hero-c .hero-actions{margin-top:35px}.hero-c .portrait-frame{max-width:365px;justify-self:end;position:relative}.hero-c .portrait-frame:before{content:'';position:absolute;left:-22px;right:20px;top:22px;bottom:70px;border:1px solid #b1bcbd;z-index:-1}.hero-c .portrait{border:1px solid #d4d8d1}.hero-c figcaption{padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px}.hero-c figcaption b{font-weight:400;font-size:14px}.hero-c figcaption span{font-family:Cormorant;font-size:15px}.editorial-bottom{display:flex;justify-content:space-between;margin-top:50px;border-top:1px solid var(--line);padding:20px 0;font-size:13px;letter-spacing:1px}.theme-c .journal{background:var(--paper);padding-top:55px;border-bottom:1px solid var(--line)}.theme-c .journal .section-heading h2{font-size:32px}.theme-c .article-grid{gap:0}.theme-c .article{border-top:0;border-left:1px solid var(--line);padding:0 30px}.theme-c .article:first-child{border-left:0;padding-left:0}.theme-c .article:last-child{padding-right:0}.theme-c .article h3{font-size:27px}.theme-c .article-meta{border-bottom:1px solid var(--line);padding-bottom:14px}.theme-c .article-meta span:last-child{font-family:Cormorant;font-size:25px;line-height:1}.theme-c .practice-layout{grid-template-columns:1.5fr 1fr}.theme-c .service-grid{grid-template-columns:1fr}.theme-c .service-item{padding:18px 0}.theme-c .service-item>div{display:flex;align-items:center;gap:25px;width:100%}.theme-c .service-item h3{min-width:120px;font-size:22px;margin:0}.theme-c .business{background:#e9ebe5}.theme-c .about{border-top:2px solid #223640;border-bottom:1px solid #223640}.theme-c .about-statement h3{font-size:42px}.theme-c .steps li>span{font-size:50px;line-height:1.1;color:#718086}.theme-c .films{border-top:1px solid var(--line)}.theme-c .contact{background:#e8ebe4;color:var(--ink);border-top:2px solid var(--ink)}.theme-c .contact .primary{background:var(--ink);color:white}.theme-c .contact p{color:var(--muted)}
@media(min-width:1700px){.hero,.section,.header,.footer{padding-left:max(var(--gutter),calc((100vw - 1480px)/2));padding-right:max(var(--gutter),calc((100vw - 1480px)/2))}}
@media(max-width:1150px){.desktop-nav{gap:17px}.header{gap:20px}.brand{font-size:18px}.hero-a{gap:35px}.hero-a h1{font-size:49px}.hero-b h1{font-size:48px}.hero-c h1{font-size:54px}.practice-layout{gap:35px}.footer-main>div{flex-direction:column;gap:8px}.hero-values span+span:before{margin:0 7px}.hero-actions{gap:20px}.hero-b .portrait-frame{padding-left:0}.theme-c .service-item>div{display:block}.theme-c .service-item h3{margin-bottom:8px}}
@media(max-width:900px){.desktop-nav{display:none}.nav-book{margin-left:auto}.menu-button{display:block;min-width:60px;min-height:44px;font-size:14px}.header{height:82px}.theme-c .header{height:82px}.hero-a,.hero-b{gap:30px;min-height:0;padding-top:45px;padding-bottom:65px}.hero-a h1,.hero-b h1{font-size:40px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-a .hero-values{font-size:12px;letter-spacing:0}.hero-a .eyebrow{font-size:10px;letter-spacing:1px}.hero .button{gap:22px;padding:12px 20px}.hero .text-link{font-size:13px}.hero-b figcaption{font-size:21px;padding:15px;right:0}.hero-c h1{font-size:43px}.editorial-grid{gap:35px;grid-template-columns:1.2fr 1fr}.section{padding-top:70px;padding-bottom:70px}.practice-layout{grid-template-columns:1fr!important;gap:35px}.business{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.business .eyebrow{grid-column:1/-1}.business h3{grid-row:2/4}.business p{grid-column:2}.business .text-link{grid-column:2;width:fit-content}.about{gap:40px}.about-statement{padding-left:25px}.section-heading{gap:25px}.section-heading>p{font-size:14px}.article-grid{gap:22px}.article h3{font-size:23px}.films{gap:25px}.film-link{min-width:230px}.theme-c .article{padding-left:20px;padding-right:20px}.theme-c .article h3{font-size:23px}.footer-main{flex-wrap:wrap}.steps{gap:20px}}
@media(max-width:620px){:root{--gutter:24px;--bar:44px}.preview-bar{gap:5px;padding:0 7px;justify-content:space-between}.preview-label{font-size:10px}.preview-label b{display:none}.preview-bar nav{gap:0}.preview-bar nav a{padding:6px 8px;font-size:12px}.motion-button{font-size:10px;padding:8px 4px}.header{height:76px;gap:12px}.brand{font-size:16px;letter-spacing:1px}.brand img{width:28px;height:28px}.brand small{font-size:10px;letter-spacing:1.9px}.header .nav-book{display:none}.menu-button{margin-left:auto}.hero{padding:38px var(--gutter) 50px}.hero-a,.hero-b{grid-template-columns:1fr;gap:40px}.hero-a h1{font-size:43px;line-height:1.55}.hero-a h1 em br{display:none}.hero-a .hero-values{font-size:13px;letter-spacing:1px;margin-top:22px}.hero-values span+span:before{margin:0 9px}.hero-a .eyebrow{font-size:10px;letter-spacing:1.4px}.hero-actions{margin-top:26px}.hero-a .portrait-frame{width:86%;max-width:380px;padding:8px;justify-self:end;margin-right:8px}.hero-a figcaption{padding:10px 4px 2px;font-size:11px}.hero-a figcaption span:first-child{font-size:25px}.hero-a .scroll-cue{bottom:20px}.hero-b{gap:15px;padding-bottom:25px}.hero-b h1{font-size:45px;line-height:1.5}.hero-b .eyebrow{font-size:11px;letter-spacing:1.4px;margin-bottom:17px}.hero-b .hero-description{font-size:15px;margin-top:20px}.hero-b .portrait-frame{width:95%;max-width:450px;justify-self:center;margin-top:8px;padding-top:10px}.hero-b figcaption{bottom:28px;right:-3px;font-size:24px}.counsel-note{margin-top:28px}.welcome-strip{padding:20px 15px;gap:14px;font-size:12px;letter-spacing:0}.welcome-strip i{width:3px;height:3px;flex-shrink:0}.section{padding:58px var(--gutter)}h2{font-size:29px}.section-heading{display:block;margin-bottom:30px}.section-heading>p,.section-heading>.text-link{margin-top:20px}.section-heading .eyebrow{font-size:10px}.service-grid{grid-template-columns:1fr}.service-item{padding:23px 0}.service-item h3{font-size:23px}.service-item p{font-size:14px}.small-heading span{font-size:10px}.business{display:flex;padding:30px!important}.business h3{font-size:28px}.business .eyebrow{font-size:10px;margin-bottom:15px}.business .text-link{font-size:13px}.extra-services{font-size:13px;gap:20px}.about{grid-template-columns:1fr;gap:45px}.about-label h2{font-size:35px}.about-label p{font-size:13px}.about-statement{padding-left:20px;padding-top:15px;border-top:1px solid #7b92954a}.quote-mark{left:-8px;top:3px;font-size:80px}.about-statement h3{font-size:32px!important;letter-spacing:2px}.about-statement p{font-size:14px}.about .eyebrow{font-size:10px}.steps{grid-template-columns:1fr 1fr;gap:24px 18px}.steps h3{font-size:22px}.steps p{font-size:13px}.steps li>span{margin-bottom:10px}.fee-note{font-size:13px;margin-top:25px}.article-grid{grid-template-columns:1fr;gap:30px}.article{min-height:0}.article h3{font-size:25px!important}.article-meta{margin-bottom:15px}.article p{margin-bottom:18px}.article-more{font-size:13px}.films{display:block}.films h2{font-size:28px}.films p{font-size:14px}.film-link{margin-top:30px;align-items:start;gap:20px}.sound-lines{height:50px}.contact h2{font-size:39px}.contact .eyebrow{font-size:11px}.footer{padding:35px var(--gutter) 20px}.footer-main{display:block;padding-bottom:25px}.footer-main p{margin:24px 0;font-size:12px}.footer-main>div{flex-direction:row;flex-wrap:wrap;gap:22px}.footer-brand{font-size:21px}.footer-brand small{font-size:14px}.footer-bottom{display:flex;flex-wrap:wrap;font-size:10px;gap:12px}.footer-bottom span:nth-child(2){order:3;flex-basis:100%}.footer-bottom a{margin-left:auto}.theme-b .steps{gap:12px}.theme-b .steps li{padding:20px 15px}.theme-b .process{padding-bottom:30px}.theme-b .practice{padding-top:30px}.theme-b .service-grid{grid-template-columns:1fr 1fr;gap:12px}.theme-b .service-item{padding:18px 14px}.theme-b .service-item h3{font-size:20px}.theme-b .service-item>span:last-child{display:none}.theme-b .service-item p{font-size:13px}.theme-b .article{padding:24px}.theme-c{--gutter:24px}.theme-c .header{height:80px}.theme-c .brand{font-size:19px}.theme-c .brand small{font-size:11px;letter-spacing:3px}.hero-c{padding-top:16px;padding-bottom:0}.editorial-heading{font-size:9px;letter-spacing:.7px;margin-bottom:30px;gap:10px}.editorial-grid{grid-template-columns:1fr;gap:32px}.hero-c .eyebrow{font-size:12px;margin-bottom:20px}.hero-c h1{font-size:46px;line-height:1.48}.hero-c .portrait-frame{width:66%;max-width:280px;margin-right:5px}.hero-c .portrait-frame:before{left:-15px;right:15px;top:15px;bottom:70px}.hero-c figcaption{padding-top:12px;display:block}.hero-c figcaption b{display:block;font-size:13px}.hero-c figcaption span{font-size:13px}.editorial-bottom{margin-top:30px;font-size:11px;letter-spacing:0;gap:12px;flex-wrap:wrap;padding:18px 0}.theme-c .journal{padding-top:35px}.theme-c .journal .section-heading h2{font-size:28px}.theme-c .article-grid{gap:30px}.theme-c .article{border-left:0;padding:0!important}.theme-c .article-meta{padding-bottom:10px}.theme-c .service-item>div{display:block}.theme-c .service-item h3{margin-bottom:7px}.theme-c .about-statement h3{font-size:32px}.theme-c .steps li>span{font-size:40px}.desktop-only{display:none}}
/* Revision 2: restrained typography, direct copy, deliberate transitions. */
@font-face{font-family:NotoSans;src:url("/assets/fonts/NotoSansTC-M.sub.woff2");font-weight:500;font-display:swap}
@font-face{font-family:NotoSerif;src:url("/assets/fonts/NotoSerifTC-M.sub.woff2");font-weight:500;font-display:swap}
:root{--serif:NotoSans,'PingFang TC',sans-serif;--gold:#aa873b}
body{font-family:var(--sans);font-size:16px;line-height:1.85}h1,h2,h3{letter-spacing:0!important;font-weight:500}h2{font-size:clamp(28px,2.6vw,40px);line-height:1.45}h3{line-height:1.55}.eyebrow{font-family:var(--sans);letter-spacing:.06em;font-size:13px;font-weight:400}.brand{font-weight:500;letter-spacing:1px;font-size:19px}.brand small{font-family:var(--sans);font-size:10px;letter-spacing:1.4px}.hero h1{font-family:var(--sans);font-size:clamp(36px,4vw,61px);line-height:1.5;font-weight:500}.hero h1 em{display:inline-block}.hero-description{margin-top:24px;font-size:16px}.hero-values{letter-spacing:0!important}.theme-a .hero-description{color:#c3cdd3}.theme-a .hero-a{grid-template-columns:1.1fr 1fr;gap:50px;padding-top:75px;padding-bottom:90px;min-height:680px}.hero-a .portrait-frame{border:0;padding:0;animation:portraitUncover 1.55s .12s cubic-bezier(.22,.7,.2,1) both;transform:none;max-width:485px;box-shadow:18px 18px 0 #738c9720}.hero-a figcaption{border-top:1px solid #536876;padding:15px 0 0}.hero-a figcaption span:first-child{font-family:var(--sans);font-style:normal;font-size:14px}.hero-a .eyebrow{font-size:13px;letter-spacing:.05em}.hero-a .hero-values{font-size:13px;color:#c3cdd3}.theme-a .about{background:#1c3545}.about-statement h3{font-size:clamp(28px,3vw,44px)}.quote-mark{display:none}.about-statement{border-left:1px solid #92a1a64a;padding-left:40px}.about-statement p{font-size:15px}.theme-b .hero-b{grid-template-columns:1.05fr 1fr;gap:45px;background:#f6f9f8;padding-top:65px;padding-bottom:65px}.hero-b h1{font-size:clamp(35px,3.7vw,57px)}.hero-b .portrait-frame{padding:0;animation:portraitUncoverB 1.5s .12s cubic-bezier(.22,.7,.2,1) both}.hero-b .portrait{border-radius:3px;box-shadow:16px 16px 0 #dce8e9}.hero-b figcaption{position:static;background:transparent;box-shadow:none;transform:none;padding:18px 0 0;font:14px var(--sans)}.hero-b h1 em:after{right:0;bottom:-13px;height:3px;background:#7099a0}.theme-b .button,.theme-b .nav-book{border-radius:3px}.counsel-note{display:none}.welcome-strip{font-family:var(--sans);font-size:15px;letter-spacing:0;padding:22px}.theme-b .steps li{background:transparent;border-top:2px solid #99b4b8;border-radius:0;padding:24px 0}.theme-b .article{background:transparent;border-top:1px solid #9aafb3;border-radius:0;padding:24px 0}.theme-b .business{border-radius:0}.theme-b .service-item{border-radius:0;background:transparent}.theme-c .hero h1{font-family:NotoSerif,'Songti TC',serif;font-weight:500;line-height:1.4;font-size:clamp(43px,4.5vw,68px)}.theme-c .hero h1 em{color:#223640}.theme-c .hero-description{font-size:16px;margin-top:22px}.theme-c .brand{font-size:21px}.theme-c .brand small{letter-spacing:2px}.theme-c .article h3{font-family:NotoSerif,'Songti TC',serif;font-size:25px;line-height:1.65}.theme-c .portrait-frame:before{display:none}.theme-c .portrait-frame{animation:portraitUncoverC 1.5s .2s cubic-bezier(.22,.7,.2,1) both}.theme-c .portrait-frame figcaption span{font-family:var(--sans);font-size:11px}.theme-c .editorial-heading{letter-spacing:.04em;font-size:12px}.theme-c .about-statement h3{font-size:38px}.section-heading .eyebrow{font-size:12px}.service-item h3{font-size:22px}.business h3{font-size:28px}.article h3{font-size:24px}.steps li>span{font-family:var(--sans);font-size:21px!important;font-weight:400;color:var(--muted);line-height:1.6!important}.item-number{font-family:var(--sans)!important;font-size:13px!important;padding-top:7px}.article-meta span:last-child{font-family:var(--sans)!important;font-size:12px!important}.contact h2{font-size:clamp(33px,4vw,55px);line-height:1.5}.footer-brand{font-size:20px;font-weight:500}.footer-brand small{font-family:var(--sans);font-size:11px;letter-spacing:0}.replay-button{background:none;border:0;color:#355469;font:12px var(--sans);padding:8px 4px}.preview-bar{gap:16px}.intro{animation:textUncover 1.1s cubic-bezier(.2,.7,.2,1) both}.intro:nth-child(2){animation-delay:.15s}.intro:nth-child(3){animation-delay:.3s}.intro:nth-child(4){animation-delay:.45s}.intro:nth-child(5){animation-delay:.6s}.dawn{background:linear-gradient(108deg,transparent 24%,#baa46e20 38%,#e1cf9b30 44%,transparent 62%);animation:dawnV2 8s ease-in-out infinite alternate}.js-motion .reveal.pending{opacity:0;transform:translateY(65px);clip-path:inset(0 0 18% 0)}.reveal{transition:opacity .95s ease,transform 1.05s cubic-bezier(.22,.7,.2,1),clip-path 1.05s cubic-bezier(.22,.7,.2,1);clip-path:inset(0)}.service-grid>.reveal:nth-child(2),.article-grid>.reveal:nth-child(2),.steps>.reveal:nth-child(2){transition-delay:.13s}.service-grid>.reveal:nth-child(3),.article-grid>.reveal:nth-child(3),.steps>.reveal:nth-child(3){transition-delay:.26s}.service-grid>.reveal:nth-child(4),.steps>.reveal:nth-child(4){transition-delay:.39s}.service-item:hover{background:#a4b6b714;transform:translateX(8px)}.article:hover{transform:translateY(-9px)}.theme-c .article:hover{border-top-color:var(--ink)}.theme-a .service-item:hover h3{color:var(--ink)}.motion-off .pending{clip-path:inset(0)!important}.motion-off .intro{clip-path:inset(0)!important}.replaying .intro{animation:none!important}.replaying .portrait-frame{animation:none!important}.page-curtain{position:fixed;inset:var(--bar) 0 0;background:#203b4c;z-index:999;pointer-events:none;transform:translateY(100%);transition:transform .42s cubic-bezier(.7,0,.3,1)}.theme-b .page-curtain{background:#a7c4ca}.theme-c .page-curtain{background:#c7c8bb}.leaving .page-curtain{transform:translateY(0)}.reading-progress{position:fixed;top:var(--bar);left:0;width:100%;height:3px;background:#b59856;z-index:1001;transform:scaleX(0);transform-origin:left;pointer-events:none}.theme-b .reading-progress{background:#3a7b8a}.theme-c .reading-progress{background:#243f4c}.motion-off .page-curtain{display:none}
@keyframes textUncover{from{opacity:0;transform:translateY(45px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
@keyframes portraitUncover{from{opacity:.3;clip-path:inset(0 100% 0 0);translate:35px 0}to{opacity:1;clip-path:inset(0);translate:0 0}}
@keyframes portraitUncoverB{from{opacity:0;clip-path:inset(100% 0 0);translate:0 40px}to{opacity:1;clip-path:inset(0);translate:0 0}}
@keyframes portraitUncoverC{from{opacity:0;clip-path:inset(0 0 100%);translate:0 -20px}to{opacity:1;clip-path:inset(0);translate:0 0}}
@keyframes dawnV2{from{transform:translateX(-20%)}to{transform:translateX(22%)}}
@media(max-width:900px){.hero h1{font-size:36px}.theme-a .hero-a,.theme-b .hero-b{gap:30px}.theme-c .hero h1{font-size:45px}.hero-description{font-size:14px}.brand{font-size:17px}.about-statement{padding-left:25px}}
@media(max-width:620px){.preview-bar{gap:3px}.preview-label{font-size:9px}.preview-bar nav a{padding:6px;font-size:11px}.replay-button{font-size:10px;padding:6px 2px}.motion-button{font-size:9px;padding:6px 2px}.theme-a .hero-a,.theme-b .hero-b{grid-template-columns:1fr;gap:32px;padding-top:35px;padding-bottom:55px;min-height:0}.hero h1,.hero-b h1{font-size:34px;line-height:1.6}.hero-a h1{font-size:36px}.hero-a .eyebrow{font-size:11px}.hero-a .portrait-frame{width:91%;margin-right:7px;box-shadow:10px 10px 0 #738c9720}.hero-a .hero-description{font-size:13px}.hero-a .hero-values{font-size:12px}.hero-a .hero-actions{margin-top:24px}.hero-b .portrait-frame{width:94%;margin-top:10px}.hero-b figcaption{font-size:12px;padding-top:16px}.hero-b .portrait{box-shadow:10px 10px 0 #dce8e9}.hero-b h1 em:after{bottom:-7px}.hero-b .hero-description{margin-top:27px;font-size:14px}.theme-c .hero h1{font-size:43px}.theme-c .hero-description{font-size:14px}.theme-c .editorial-heading{font-size:9px}.theme-c .portrait-frame{width:72%}.about-statement{border-left:0;padding-left:0;padding-top:30px}.welcome-strip{font-size:12px;gap:12px}h2{font-size:28px!important}.about-label h2{font-size:31px!important}.about-statement h3{font-size:28px!important;line-height:1.65}.article h3{font-size:23px!important}.theme-b .article{padding:20px 0}.contact h2{font-size:33px!important}.footer-brand small{font-size:10px}.reveal{transition-duration:.8s,.9s,.9s}}
/* Revision 3: retain wayfinding, gold rules and portrait placement below the fold. */
.header{position:sticky;top:var(--bar);background:var(--paper);height:88px;gap:22px}.desktop-nav{gap:20px}.desktop-nav a,.service-menu summary{font-size:14px}.service-menu{position:relative}.service-menu summary{cursor:pointer;list-style:none;padding:8px 0;white-space:nowrap}.service-menu summary::-webkit-details-marker{display:none}.service-menu summary:after{content:'⌄';padding-left:6px}.service-menu-panel{position:absolute;top:100%;left:-20px;min-width:245px;background:#f8f5ef;color:#213e50;padding:15px 20px;border-top:2px solid #c9a84c;box-shadow:0 12px 25px #132b3a1c;max-height:65vh;overflow:auto}.service-menu-panel a{display:block;min-height:44px;padding:8px 0!important}.service-menu summary:focus-visible{outline:2px solid #c9a84c;outline-offset:4px}.mobile-menu .service-menu-panel{position:static;box-shadow:none;padding:0 12px}.mobile-menu{position:fixed;top:calc(var(--bar) + 88px);max-height:calc(100dvh - var(--bar) - 88px);overflow:auto}.hero-directory{align-self:center;width:100%;max-width:410px;margin-left:auto;border-top:1px solid #a8976a;padding-top:28px}.hero-directory>a{display:flex;justify-content:space-between;gap:20px;padding:19px 0;border-bottom:1px solid #8d97954a;font-size:17px;transition:padding .35s,color .35s}.hero-directory>a:hover{padding-left:12px;color:#a48437}.hero-directory>a>span{font-size:12px;opacity:.7}.theme-a .hero-directory{color:#ecede8}.theme-a .hero-directory>a:hover{color:#e0c789}.theme-a .hero-a{min-height:580px;padding-top:75px;padding-bottom:90px;grid-template-columns:1.3fr 1fr}.theme-b .hero-b{min-height:560px;grid-template-columns:1.3fr 1fr}.hero-b .hero-copy{padding-bottom:25px}.theme-c .editorial-grid{grid-template-columns:1.3fr 1fr}.about{grid-template-columns:.85fr 1fr 1.2fr;gap:38px;align-items:center}.about-portrait{margin:0}.about-portrait img{width:100%;height:auto;object-fit:contain}.about-portrait figcaption{font-size:12px;margin-top:12px;color:var(--muted)}.theme-a .about-portrait figcaption{color:#c5d1d7}.about-label h2{font-size:32px}.about-label p{font-size:13px}.about-statement{padding-left:28px}.about-statement h3{font-size:31px!important}.about-statement p{font-size:14px}.footer-directory{display:grid;grid-template-columns:1.6fr 1.15fr 1.15fr .8fr;gap:35px;padding-bottom:45px}.f-brand p{font-size:13px;margin:25px 0 12px}.f-brand>a:not(.footer-brand){font-size:13px}.f-social{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px;font-size:13px}.f-col a{display:block;padding:7px 0;font-size:13px;line-height:1.7;min-height:36px}.f-col-title{font-size:15px;font-weight:500;margin-bottom:15px}.f-sub{margin-top:26px}.f-col a:hover{color:#987424;text-decoration:underline;text-underline-offset:5px}.desktop-nav>a:after{background:#c9a84c;left:50%;width:0;transform:none;transition:width .5s,left .5s}.desktop-nav>a:hover:after,.desktop-nav>a:focus-visible:after{width:100%;left:0}.section-heading h2:after{content:'';display:block;height:2px;width:64px;margin-top:25px;background:linear-gradient(90deg,#b99342,#edce80,#b99342);background-size:200% 100%;animation:goldFlow 3s linear infinite;transform-origin:left;transition:transform 1.1s .25s}.section-heading.pending h2:after{transform:scaleX(0)}.service-item:after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:#c9a84c;transition:width .6s}.service-item{position:relative}.service-item:hover:after,.service-item:focus-visible:after{width:100%}.text-link{position:relative;border-bottom-color:#c3a25a}.text-link:after{content:'';position:absolute;left:50%;bottom:-1px;height:2px;width:0;background:#c9a84c;transition:width .5s,left .5s}.text-link:hover:after{width:100%;left:0}.reading-progress{background:linear-gradient(90deg,#a9873d,#f0d58d,#a9873d)!important;background-size:200% 100%;animation:goldFlow 4s linear infinite}.device-entry{font-size:12px;text-decoration:underline;text-underline-offset:3px}.embedded-preview{--bar:0px}.embedded-preview .preview-bar{display:none}.embedded-preview .header{top:0}.embedded-preview .reading-progress{top:0}.embedded-preview .mobile-menu{top:88px}.embedded-preview .page-curtain{top:0}.hero-directory{animation:textUncover 1.3s .35s both}@keyframes goldFlow{to{background-position:200% 0}}
@media(max-width:1150px){.desktop-nav{gap:12px}.header{gap:15px}.desktop-nav a,.service-menu summary{font-size:12px}.about{grid-template-columns:.8fr 1fr}.about-statement{grid-column:1/-1;border-left:0;border-top:1px solid #8d97954a;padding:28px 0 0}.footer-directory{grid-template-columns:1.3fr 1fr 1fr;gap:30px}.footer-directory .f-brand{grid-column:1/-1}.f-brand p{margin-top:15px}}
@media(max-width:900px){.header{height:82px}.mobile-menu{top:calc(var(--bar) + 82px)}.embedded-preview .mobile-menu{top:82px}.hero-directory{max-width:340px}.hero-directory>a{font-size:15px}.theme-a .hero-a,.theme-b .hero-b{gap:35px}.theme-c .editorial-grid{gap:30px}}
@media(max-width:620px){.device-entry{font-size:10px}.preview-label{display:none}.preview-bar{gap:3px}.header{height:76px}.mobile-menu{top:calc(var(--bar) + 76px)}.embedded-preview .mobile-menu{top:76px}.theme-a .hero-a,.theme-b .hero-b,.theme-c .editorial-grid{grid-template-columns:1fr;gap:35px;min-height:0}.hero-directory{max-width:none;margin:0;padding-top:20px}.hero-directory>a{padding:14px 0;font-size:15px;min-height:48px}.hero-directory .eyebrow{margin-bottom:8px}.theme-a .hero-a{padding-bottom:60px}.about{grid-template-columns:1fr}.about-portrait{width:78%;max-width:300px}.about-label{padding-top:5px}.about-statement{grid-column:auto}.footer-directory{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-directory .f-brand{grid-column:1/-1}.f-col a{min-height:44px;padding:10px 0}.footer-directory .f-col:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.footer-directory .f-col:last-child .f-col-title{grid-column:1/-1}.f-col-title{margin-bottom:8px}.service-menu summary{font-size:14px;padding:12px}.theme-c .header{height:76px}}
