@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Serif+TC:wght@600;700;900&display=swap');
:root{--ink:#181715;--teal:#0f6170;--teal-dark:#094b56;--blue:#2c8fc9;--gold:#b8894a;--ivory:#f7f3ec;--sand:#e7ddcf;--paper:#fffdf9;--line:#cfc2b0;--sans:'Noto Sans TC','Microsoft JhengHei',sans-serif;--serif:'Noto Serif TC','PMingLiU',serif;--shadow:0 22px 60px rgba(44,35,23,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);line-height:1.75}img{max-width:100%;display:block}a{color:inherit}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.skip{position:fixed;left:16px;top:-80px;background:var(--ink);color:#fff;padding:10px 16px;z-index:1000}.skip:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.site-header{position:sticky;top:0;z-index:100;background:rgba(247,243,236,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(184,137,74,.24)}.nav-wrap{width:min(1240px,calc(100% - 32px));height:78px;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover;box-shadow:0 6px 20px rgba(24,23,21,.14)}.brand span{display:flex;flex-direction:column;line-height:1.2}.brand b{font-family:var(--serif);font-size:19px;letter-spacing:.08em}.brand small{font-size:10px;letter-spacing:.2em;color:#746b60;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:28px}.site-header nav a{text-decoration:none;font-size:14px;font-weight:600}.site-header nav a:hover{color:var(--teal)}.nav-cta{color:white!important;background:var(--teal);padding:11px 18px;border-radius:999px;box-shadow:0 8px 20px rgba(15,97,112,.2)}.menu-btn{display:none;background:none;border:0;padding:10px}.menu-btn span{display:block;width:25px;height:2px;background:var(--ink);margin:5px}.hero{position:relative;min-height:calc(100vh - 78px);overflow:hidden;padding:86px 0 32px;background:radial-gradient(circle at 82% 22%,rgba(184,137,74,.16),transparent 28%),linear-gradient(135deg,var(--ivory) 0%,#faf8f4 65%,var(--sand) 100%)}.hero:before{content:'';position:absolute;right:-18vw;top:-48vw;width:80vw;height:80vw;border:1px solid rgba(184,137,74,.28);border-radius:50%}.hero-grid{display:grid;grid-template-columns:1.05fr .75fr;gap:8vw;align-items:center}.eyebrow{margin:0 0 18px;color:var(--teal);font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}.eyebrow span{display:inline-block;width:42px;height:1px;background:var(--gold);vertical-align:middle;margin-right:12px}.eyebrow.light{color:#d8c6aa}.hero h1,.section-head h2,.reason-intro h2,.contact h2{font-family:var(--serif);font-weight:900;line-height:1.25;letter-spacing:.02em}.hero h1{font-size:clamp(42px,5vw,72px);margin:0;max-width:760px}.hero h1 em{display:block;color:var(--teal);font-style:normal}.lead{font-size:18px;max-width:650px;color:#524d46;margin:26px 0 30px}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:4px;text-decoration:none;font-weight:700;transition:.25s ease}.btn.primary{background:var(--teal);color:#fff;box-shadow:0 12px 28px rgba(15,97,112,.24)}.btn.primary:hover{background:var(--teal-dark);box-shadow:0 0 0 2px var(--gold),0 16px 32px rgba(15,97,112,.28);transform:translateY(-2px)}.btn.secondary{border:1px solid var(--gold);color:var(--teal)}.btn.secondary:hover{background:#fff}.trust-list{display:flex;gap:30px;list-style:none;padding:0;margin:34px 0 0;font-size:13px;font-weight:600}.trust-list li:before{content:'◆';font-size:9px;color:var(--gold);margin-right:8px}.hero-art{position:relative}.hero-art figure{position:relative;margin:0 28px 0 0}.hero-art img{aspect-ratio:1;object-fit:cover;border-radius:50% 50% 5% 50%;box-shadow:var(--shadow);filter:saturate(.86) contrast(1.03)}.hero-art figure:after{content:'';position:absolute;inset:-16px -18px 16px 18px;border:1px solid var(--gold);border-radius:50% 50% 5% 50%;z-index:-1}.hero-art figcaption{position:absolute;right:-18px;bottom:26px;width:230px;background:rgba(24,23,21,.92);color:#fff;padding:18px 22px;font-family:var(--serif);font-size:16px;box-shadow:var(--shadow)}.hero-art figcaption span{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.24em;color:#d8c6aa;margin-bottom:5px}.hero-note{width:min(1160px,calc(100% - 40px));margin:68px auto 0;border-top:1px solid var(--line);display:flex;gap:20px;padding-top:18px;color:#696158;font-size:12px}.hero-note span{color:var(--gold);font-weight:700}.hero-note p{margin:0}.section{padding:110px 0}.section-head{max-width:760px;margin-bottom:52px}.section-head h2{font-size:clamp(34px,4vw,54px);margin:0 0 18px}.section-head p:last-child{color:#655e55;font-size:16px}.section-head.split{max-width:none;display:grid;grid-template-columns:1.1fr .7fr;gap:12%;align-items:end}.diagnosis{background:var(--paper)}.diagnosis-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.diagnosis-grid button{position:relative;text-align:left;min-height:190px;padding:22px;background:var(--ivory);border:1px solid transparent;border-radius:3px;cursor:pointer;color:var(--ink);font-family:inherit;transition:.25s}.diagnosis-grid button:hover,.diagnosis-grid button.active{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 12px 28px rgba(44,35,23,.1);background:#fff}.diagnosis-grid b{font-size:11px;color:var(--gold)}.diagnosis-grid span{display:block;font-family:var(--serif);font-size:22px;font-weight:700;margin:38px 0 8px}.diagnosis-grid small{color:#736b61;line-height:1.6}.diagnosis-result{margin-top:16px;padding:20px 24px;background:var(--teal);color:#fff;display:grid;grid-template-columns:180px 1fr;gap:24px}.diagnosis-result span{font-weight:700;color:#e1caa9}.diagnosis-result p{margin:0}.services{background:var(--teal-dark);color:#fff}.services .section-head p:last-child,.services .group-title p{color:#bdd0d1}.service-group{margin-top:72px}.group-title{display:grid;grid-template-columns:70px 240px 1fr;align-items:start;border-top:1px solid rgba(255,255,255,.22);padding:24px 0}.group-title>span{font-size:12px;color:#d8c6aa}.group-title h3{font-family:var(--serif);font-size:28px;margin:0}.group-title p{margin:0;max-width:550px}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.card-grid.two{grid-template-columns:repeat(2,1fr)}.card-grid.three{grid-template-columns:repeat(3,1fr)}.service-card{min-height:370px;background:var(--ivory);color:var(--ink);padding:26px 24px 24px;display:flex;flex-direction:column;border-top:3px solid var(--gold);transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.24)}.service-card .num{font-size:11px;color:var(--gold)}.service-card h4{font-family:var(--serif);font-size:22px;line-height:1.4;margin:28px 0 12px}.service-card>p{color:#5f584e}.service-card ul{padding:0;list-style:none;margin:12px 0 22px;font-size:13px;color:#625b52}.service-card li{border-top:1px solid var(--line);padding:9px 0}.service-card li b{color:var(--teal);margin-right:8px}.service-card a{margin-top:auto;color:var(--teal);font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px;align-self:flex-start}.legal-line{text-align:center;color:#bfd0d0;font-size:12px;margin:42px 0 0}.process{background:var(--ivory)}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:item}.steps li{position:relative;padding:30px 28px 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.steps li+li{border-left:1px solid var(--line)}.steps li>span{font-size:12px;color:var(--gold)}.steps h3{font-family:var(--serif);font-size:22px;margin:48px 0 12px}.steps p{font-size:14px;color:#625c53}.reasons{background:var(--ink);color:#fff}.reasons-grid{display:grid;grid-template-columns:.8fr 1fr;gap:12%}.reason-intro{position:sticky;top:130px;align-self:start}.reason-intro h2,.contact h2{font-size:clamp(34px,4vw,52px);margin:0 0 24px}.reason-intro>p:last-of-type{color:#bbb1a5}.btn.gold{background:var(--gold);color:var(--ink);margin-top:22px}.btn.gold:hover{background:#d1aa73;transform:translateY(-2px)}.reason-list{list-style:none;padding:0;margin:0}.reason-list li{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:32px 0;border-top:1px solid #3b3935}.reason-list li:last-child{border-bottom:1px solid #3b3935}.reason-list>li>span{color:var(--gold);font-size:12px}.reason-list h3{font-family:var(--serif);font-size:24px;margin:0 0 8px}.reason-list p{color:#bbb1a5;margin:0}.journal{background:var(--sand)}.text-link{font-weight:700;color:var(--teal)}.featured-posts{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.featured-posts a{min-height:390px;background:var(--paper);padding:28px;text-decoration:none;display:flex;flex-direction:column;transition:.25s;border-bottom:3px solid transparent}.featured-posts a:first-child{background:var(--teal);color:#fff}.featured-posts a:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:var(--shadow)}.featured-posts span{font-size:11px;letter-spacing:.12em;color:var(--gold)}.featured-posts h3{font-family:var(--serif);font-size:26px;line-height:1.5;margin:54px 0 16px}.featured-posts p{font-size:14px;color:#686057}.featured-posts a:first-child p{color:#d8e2e2}.featured-posts b{margin-top:auto;color:var(--gold);font-size:13px}.faq{background:var(--paper)}.faq-grid{display:grid;grid-template-columns:.7fr 1fr;gap:12%}.faq .section-head{position:sticky;top:130px;align-self:start}.accordion details{border-top:1px solid var(--line);padding:0}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{cursor:pointer;list-style:none;padding:24px 46px 24px 0;font-family:var(--serif);font-weight:700;font-size:18px;position:relative}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:'＋';position:absolute;right:5px;color:var(--teal)}.accordion details[open] summary:after{content:'—'}.accordion p{margin:0 50px 24px 0;color:#615a51}.contact{background:linear-gradient(135deg,var(--teal-dark),var(--teal))}.contact-card{display:grid;grid-template-columns:1fr .8fr;gap:10%;color:#fff}.contact-card>div>p{color:#d2dfdf}.btn.ghost{border:1px solid rgba(255,255,255,.5);color:#fff;margin-top:22px}.btn.ghost:hover{background:rgba(255,255,255,.1)}.contact dl{margin:0}.contact dl>div{border-top:1px solid rgba(255,255,255,.26);display:grid;grid-template-columns:120px 1fr;padding:18px 0}.contact dl>div:last-child{border-bottom:1px solid rgba(255,255,255,.26)}.contact dt{font-size:12px;color:#c4d4d4}.contact dd{margin:0;font-weight:600}.socials{display:flex;gap:14px;flex-wrap:wrap}.socials a{color:#fff}footer{background:var(--ink);color:#fff;padding:72px 0 20px}.footer-grid{display:grid;grid-template-columns:1fr .45fr 1fr;gap:8%}.footer-brand{color:#fff}.footer-brand+p{color:#a9a197;font-size:13px;max-width:340px}.footer-grid h2{font-family:var(--serif);font-size:16px;color:#d8c6aa}.footer-grid>div:nth-child(2){display:flex;flex-direction:column;gap:7px}.footer-grid>div:nth-child(2) a{font-size:13px;color:#c9c3ba}.footer-grid>div:last-child p{font-size:11px;color:#a9a197}.copyright{border-top:1px solid #35332f;margin-top:50px;padding-top:18px;display:flex;justify-content:space-between;color:#837c73;font-size:11px}.mobile-bar{display:none}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
/* Blog */.blog-hero{padding:100px 0 72px;background:var(--ink);color:#fff}.blog-hero h1{font-family:var(--serif);font-size:clamp(42px,6vw,72px);line-height:1.25;margin:10px 0 20px}.blog-hero p{max-width:720px;color:#c8c0b6}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.post-card{background:var(--paper);padding:28px;text-decoration:none;min-height:330px;display:flex;flex-direction:column;border-top:3px solid var(--gold);transition:.25s}.post-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.post-card span{color:var(--teal);font-size:11px;font-weight:700}.post-card h2{font-family:var(--serif);font-size:23px;line-height:1.5}.post-card p{color:#625b52;font-size:14px}.post-card b{margin-top:auto;color:var(--teal)}.article-hero{padding:80px 0 60px;background:var(--sand)}.breadcrumbs{font-size:12px;color:#71695f}.article-hero h1{font-family:var(--serif);font-size:clamp(36px,5vw,62px);line-height:1.35;max-width:920px;margin:24px 0}.article-hero .dek{max-width:760px;font-size:18px;color:#544e46}.article-meta{font-size:12px;color:var(--teal);font-weight:700}.article-layout{display:grid;grid-template-columns:200px minmax(0,720px);gap:70px;justify-content:center;align-items:start}.article-toc{position:sticky;top:110px;border-left:2px solid var(--gold);padding-left:18px;font-size:13px}.article-toc a{display:block;margin:8px 0;color:#625b52}.prose{font-size:17px}.prose h2{font-family:var(--serif);font-size:32px;line-height:1.45;margin:56px 0 16px}.prose h3{font-family:var(--serif);font-size:23px;margin:38px 0 10px}.prose p,.prose li{color:#4f4a43}.prose .callout{background:var(--sand);border-left:4px solid var(--gold);padding:20px 24px;margin:30px 0}.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose th,.prose td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.prose th{background:var(--sand)}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:20px;flex-direction:column;align-items:stretch;gap:0;box-shadow:var(--shadow)}.site-header nav.open{display:flex}.site-header nav a{padding:12px}.menu-btn{display:block}.hero{padding-top:58px}.hero-grid{grid-template-columns:1fr}.hero-art{max-width:520px;margin:30px auto}.diagnosis-grid{grid-template-columns:repeat(2,1fr)}.diagnosis-grid button:last-child{grid-column:1/-1}.card-grid,.card-grid.three{grid-template-columns:repeat(2,1fr)}.section-head.split,.reasons-grid,.faq-grid,.contact-card{grid-template-columns:1fr}.reason-intro,.faq .section-head{position:static}.steps{grid-template-columns:repeat(2,1fr)}.featured-posts{grid-template-columns:1fr 1fr}.featured-posts a:first-child{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.post-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.article-toc{position:static}}
@media(max-width:620px){.container{width:min(100% - 28px,1160px)}.nav-wrap{width:calc(100% - 24px);height:68px}.brand img{width:44px;height:44px}.brand b{font-size:16px}.site-header nav{top:68px}.section{padding:78px 0}.hero{min-height:auto;padding:48px 0 28px}.hero h1{font-size:38px}.lead{font-size:16px}.hero-actions .btn{width:100%}.trust-list{display:grid;gap:8px}.hero-art figure{margin:0}.hero-art figcaption{right:-5px;bottom:10px;width:205px}.hero-note{margin-top:45px}.diagnosis-grid{grid-template-columns:1fr}.diagnosis-grid button:last-child{grid-column:auto}.diagnosis-grid button{min-height:140px}.diagnosis-grid span{margin-top:20px}.diagnosis-result{grid-template-columns:1fr;gap:4px}.section-head.split{display:block}.group-title{grid-template-columns:45px 1fr}.group-title p{grid-column:2;margin-top:8px}.card-grid,.card-grid.two,.card-grid.three{grid-template-columns:1fr}.service-card{min-height:330px}.steps{grid-template-columns:1fr}.steps li+li{border-left:0}.steps li{border-bottom:0}.steps li:last-child{border-bottom:1px solid var(--line)}.featured-posts{grid-template-columns:1fr}.featured-posts a:first-child{grid-column:auto}.faq-grid{gap:20px}.contact dl{margin-top:45px}.contact dl>div{grid-template-columns:1fr;gap:5px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.copyright{padding-bottom:78px}.mobile-bar{display:grid;grid-template-columns:1.3fr .7fr;position:fixed;bottom:0;left:0;right:0;z-index:90;background:var(--teal);color:#fff;box-shadow:0 -8px 25px rgba(0,0,0,.15)}.mobile-bar a{min-height:62px;text-decoration:none;display:flex;justify-content:center;flex-direction:column;padding:8px 18px;font-size:12px}.mobile-bar a:last-child{align-items:center;background:var(--gold);color:var(--ink);font-weight:700}.mobile-bar b{font-size:15px}.post-grid{grid-template-columns:1fr}.article-layout{display:block}.article-toc{margin-bottom:35px}.prose{font-size:16px}.prose table{font-size:12px}.prose th,.prose td{padding:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Preserve the supplied logo in full; motion is enabled only when JS opts in. */
.hero-art img{object-fit:contain;border-radius:3px}
.hero-art figure:after{border-radius:50%}
.reveal{opacity:1;transform:none}
.motion .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.motion .reveal.visible{opacity:1;transform:none}

/* ponytail: palette-only override keeps the verified layout stable; fold into base rules only during a future redesign. */
.site-header{border-top:4px solid var(--gold);box-shadow:0 1px 0 rgba(184,137,74,.18)}
.diagnosis,.faq{background:var(--ivory)}
.diagnosis-grid button{background:var(--sand);border-color:rgba(184,137,74,.18)}
.diagnosis-grid button:hover,.diagnosis-grid button.active{background:var(--paper)}
.hero-note span,.diagnosis-grid b,.service-card .num,.steps li>span{color:var(--teal)}
.service-card a,.text-link,.post-card b{border-color:var(--blue)}
.service-card a:hover,.text-link:hover,.post-card:hover b{color:var(--blue)}
.reasons{background:var(--sand);color:var(--ink)}
.reasons .eyebrow.light{color:var(--teal)}
.reason-intro>p:last-of-type,.reason-list p{color:#625b52}
.reason-list li{border-color:var(--line)}
.reason-list>li>span{color:var(--teal)}
.journal{background:var(--ivory);border-block:1px solid var(--line)}
.featured-posts a:not(:first-child){background:var(--sand)}
.featured-posts a:not(:first-child) span{color:var(--teal)}
.featured-posts a:first-child span{color:var(--ivory)}
.featured-posts a:first-child b{color:var(--ivory);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}
.hero-art figcaption span{color:var(--gold)}
.blog-hero{border-top:4px solid var(--gold)}
.article-toc a:hover,.prose a{color:var(--teal);text-decoration-color:var(--blue);text-underline-offset:3px}
.motion .contact-card.reveal{opacity:1;transform:none;transition:none}
