:root{--ink:#29292b;--muted:#626367;--rose:#cf4d69;--paper:#fff;--warm:#f7f5f2;--line:#e6e1da;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif;font-size:17px;line-height:1.85}a{color:inherit;text-decoration:none}a:hover{color:var(--rose)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}img{max-width:100%;height:auto;display:block}button{font:inherit}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.skip{position:absolute;left:20px;top:-80px;background:var(--ink);color:#fff;padding:8px 16px;z-index:20}.skip:focus{top:12px}.site-header{border-bottom:1px solid var(--line);background:#fff}.header-inner{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand img{width:158px;height:auto}.nav{display:flex;gap:28px;align-items:center;font-size:15px}.nav a{padding:10px 0;white-space:nowrap}.nav a[aria-current=page]{color:var(--rose);border-bottom:2px solid var(--rose)}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:6px 14px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.19em;color:var(--rose);font-weight:650;display:block;margin-bottom:16px}.intro{padding:80px 0 54px;max-width:800px}.intro h1{font-size:clamp(32px,4.5vw,54px);font-weight:600;line-height:1.3;letter-spacing:-.025em;margin:0 0 26px}.intro p{color:var(--muted);max-width:760px;margin:0;font-size:19px}.intro .lead{color:var(--ink);font-size:22px;margin-bottom:16px}.breadcrumbs{font-size:13px;color:var(--muted);padding-top:28px}.breadcrumbs ol{display:flex;list-style:none;gap:10px;flex-wrap:wrap;padding:0;margin:0}.breadcrumbs li+li:before{content:"/";margin-right:10px;color:#aaa}.section{padding:45px 0 65px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:30px}.section-head h2,h2{font-weight:600;line-height:1.45;font-size:29px;margin:0 0 18px}.section-head p{color:var(--muted);margin:0;max-width:600px}.text-link{font-size:15px;color:var(--rose);border-bottom:1px solid currentColor;white-space:nowrap}.portfolio{display:grid;grid-template-columns:1fr 1fr;gap:42px 30px}.project-image{overflow:hidden;border-radius:10px;background:var(--warm)}.project-image img{width:100%;aspect-ratio:1.77;object-fit:cover;transition:transform .2s}.project-card:hover img{transform:scale(1.015)}.project-meta{display:flex;align-items:start;justify-content:space-between;gap:20px;padding:18px 4px}.project-meta h3{margin:0;line-height:1.45;font-size:23px}.project-meta .english{color:var(--muted);font-size:14px;letter-spacing:.02em}.arrow{font-size:24px;color:var(--rose)}.credit{font-size:12px;color:var(--muted);margin:0 0 8px}.warm{background:var(--warm)}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.service{border-top:1px solid var(--line);padding-top:24px}.service .num{font-size:13px;color:var(--rose)}.service h3{font-size:22px;margin:10px 0}.service p{font-size:16px;color:var(--muted)}.cta{background:var(--warm);padding:46px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{font-size:30px;margin:0 0 10px}.cta p{margin:0;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--rose);color:white!important;padding:12px 24px;border:1px solid var(--rose);border-radius:4px;font-size:16px;white-space:nowrap}.button:hover{background:#b8415b}.contact-actions{display:flex;gap:16px;align-items:center;margin-top:22px;flex-wrap:wrap}.site-footer{background:var(--warm);padding:56px 0 24px}.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px}.footer-top img{width:150px;margin-bottom:16px}.footer-top h3{font-size:16px;margin:0 0 12px}.footer-top p,.footer-top a{font-size:14px;color:var(--muted)}.footer-top ul{list-style:none;padding:0;margin:0}.footer-bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.footer-bottom div{display:flex;gap:18px}.prose{max-width:800px;padding-bottom:60px}.prose p{margin:0 0 22px}.prose h2{margin-top:40px}.prose h3{font-size:22px;line-height:1.5;margin:30px 0 12px}.prose a{color:var(--rose);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.prose ul,.prose ol{padding-left:26px}.prose img{border-radius:8px;margin:24px auto}.prose figure{margin:30px 0}.prose figcaption{color:var(--muted);font-size:14px}.prose blockquote{border-left:3px solid var(--rose);padding:4px 0 4px 24px;margin:28px 0;color:var(--muted)}.prose table{width:100%;border-collapse:collapse}.prose td,.prose th{padding:12px;border:1px solid var(--line)}.notice{border-left:3px solid var(--rose);background:var(--warm);padding:18px 22px;font-size:15px;margin-bottom:30px}.notice p:last-child{margin:0}.faq{max-width:860px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:19px;font-weight:600;padding-right:25px}.faq p{color:var(--muted);margin:14px 0 6px}.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 28px}.article-card img{width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:8px;background:var(--warm)}.article-card h2,.article-card h3{font-size:20px;line-height:1.6;margin:14px 0 10px}.article-card p{font-size:15px;color:var(--muted);margin:0}.article-date,.article-meta{font-size:13px;color:var(--muted)}.article-meta{margin:0 0 28px}.gallery{max-width:940px}.gallery figure{margin:0 0 40px}.gallery img{width:100%;border-radius:8px}.gallery figcaption{margin-top:12px;color:var(--muted);font-size:14px}.tool-table{width:100%;border-collapse:collapse;font-size:16px}.tool-table th,.tool-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:14px 16px}.tool-table th{background:var(--warm)}.tool-table td:first-child{width:28%;font-weight:550}.tool-image{max-width:640px;margin:24px auto 40px}.quotes{display:grid;grid-template-columns:1fr 1fr;gap:24px}.quotes blockquote{margin:0;border-top:1px solid var(--line);padding:24px 0}.quotes cite{font-style:normal;font-size:14px;color:var(--muted)}.partner-row{display:flex;gap:32px;flex-wrap:wrap;align-items:center}.partner-row img{max-width:150px;max-height:64px;object-fit:contain}.small{font-size:14px;color:var(--muted)}.toc{background:var(--warm);padding:22px;margin:0 0 28px}.toc strong{display:block;margin-bottom:10px}.toc a{display:block;font-size:15px;line-height:1.8}.related{border-top:1px solid var(--line);padding-top:25px;margin-top:40px}.anchor-offset{scroll-margin-top:24px}@media(max-width:850px){.nav{gap:15px;font-size:14px}.header-inner{min-height:82px}.brand img{width:130px}.article-list{grid-template-columns:repeat(2,1fr)}.service-list{grid-template-columns:1fr}.footer-top{grid-template-columns:1.5fr 1fr}.intro{padding-top:55px}.cta-inner{align-items:start;flex-direction:column;gap:25px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.header-inner{position:relative;flex-wrap:wrap;gap:0;padding:16px 0}.menu-toggle{display:block}.nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:16px}.js .nav:not(.open){display:none}.nav a{padding:9px 2px}.intro{padding:45px 0 30px}.intro p{font-size:17px}.intro .lead{font-size:20px}.section{padding:30px 0 45px}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:14px}.portfolio,.article-list,.quotes{grid-template-columns:1fr;gap:26px}.project-meta h3{font-size:21px}.service-list{gap:24px}.footer-top{grid-template-columns:1fr 1fr;gap:26px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;font-size:12px}.tool-table th,.tool-table td{padding:10px 8px;font-size:14px}.tool-table td:first-child{width:33%}.prose{font-size:16px}.cta h2{font-size:25px}.intro h1{font-size:34px}.article-card img{max-height:260px}.prose table{display:block;overflow:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.tool-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.tool-gallery figure{margin:0;padding:18px;background:var(--warm);border-radius:8px}.tool-gallery img{width:100%;height:180px;object-fit:contain}.tool-gallery figcaption{font-size:15px;margin-top:12px;color:var(--muted)}@media(max-width:650px){.tool-gallery{grid-template-columns:1fr 1fr;gap:14px}.tool-gallery figure{padding:12px}.tool-gallery img{height:140px}}

/* Estate and HOS homepage planning sections */
.home-intro{max-width:900px;padding-bottom:38px}
.home-intro h1{max-width:850px}
.home-topic-nav{display:flex;gap:12px 28px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;font-size:15px;color:var(--muted)}
.home-topic-nav a{border-bottom:1px solid transparent}
.home-topic-nav a:hover{border-color:var(--rose)}
.home-feature{display:flex;align-items:flex-start;gap:64px}
.home-feature-heading{flex:0 0 38%;min-width:0}
.home-feature-heading h2{font-size:30px;line-height:1.55}
.home-feature-heading p{font-size:17px;color:var(--muted)}
.home-feature-body{flex:1;min-width:0}
.home-feature-body>p{margin:0 0 20px}
.home-source a{color:var(--rose);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.home-priorities{margin:0}
.home-priorities>div{padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid var(--line)}
.home-priorities>div:last-child{margin-bottom:0}
.home-priorities dt{font-size:19px;font-weight:600;margin-bottom:10px}
.home-priorities dd{margin:0;color:var(--muted);font-size:16px}
.home-package-rows article{display:flex;gap:44px;border-top:1px solid var(--line);padding:22px 0}
.home-package-rows h3{margin:0;flex:0 0 24%;font-size:21px;line-height:1.6}
.home-package-rows p{margin:0;color:var(--muted)}
.home-package-note{margin:16px 0 22px}
.home-checklist{margin:0;padding-left:22px}
.home-checklist li{padding:0 0 16px}
@media(max-width:850px){.home-feature{gap:32px}.home-feature-heading h2{font-size:26px}.home-package-rows article{gap:24px}}
@media(max-width:650px){.home-feature{display:block}.home-feature-heading{margin-bottom:26px}.home-topic-nav{gap:10px 20px;font-size:14px}.home-feature-heading h2{font-size:25px}.home-package-rows article{display:block}.home-package-rows h3{margin-bottom:10px}.home-package-rows p{font-size:16px}.home-intro .button,.home-feature .button{white-space:normal;text-align:center}}

/* Evergreen HOS navigation and estate pages */
.nav{gap:20px;font-size:14px}
.nav-dropdown{position:relative}
.nav-dropdown>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:10px 0;white-space:nowrap}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-chevron{font-size:17px;transition:transform .18s ease}
.nav-dropdown[open] .nav-chevron{transform:rotate(180deg)}
.nav-group-current>summary{color:var(--rose)}
.nav-panel{position:absolute;top:calc(100% + 6px);left:-22px;z-index:30;width:310px;padding:20px 24px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 40px #29292b14}
.nav-panel a{display:block;padding:7px 0;white-space:normal}
.nav-panel a[aria-current=page]{border-bottom:0;font-weight:650}
.nav-estate-links{border-top:1px solid var(--line);margin-top:12px;padding-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.nav-panel-label{grid-column:1/-1;font-size:11px;letter-spacing:.08em;color:var(--muted);margin-bottom:5px}
.nav .nav-contact{color:var(--rose);border:1px solid var(--line);border-radius:4px;padding:7px 11px;font-size:13px}
.hos-actions{display:flex;flex-wrap:wrap;gap:14px 26px;margin:26px 0}
.hos-actions .text-link{align-self:center}
.hos-directory{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;border-top:1px solid var(--line)}
.estate-card{padding:28px 0;border-bottom:1px solid var(--line)}
.estate-card>a{display:flex;justify-content:space-between;align-items:start;gap:20px}
.estate-card h2,.estate-card h3{font-size:24px;margin:8px 0 4px}
.estate-card .english{font-size:13px;color:var(--muted)}
.estate-card p{font-size:15px;color:var(--muted);margin:12px 0 0}
.estate-tag{display:inline-block;color:var(--rose);background:var(--warm);font-size:12px;padding:2px 8px;margin-right:8px}
.estate-layout{display:flex;align-items:start;gap:64px}
.estate-main{flex:1;min-width:0}
.estate-aside{flex:0 0 270px;background:var(--warm);padding:26px;border-radius:8px;font-size:15px}
.estate-aside h2{font-size:20px}
.estate-aside a{color:var(--rose);text-decoration:underline;text-underline-offset:4px}
.estate-aside ul{padding-left:20px}
.estate-facts{margin:24px 0 38px}
.estate-facts>div{padding:14px 0;border-bottom:1px solid var(--line)}
.estate-facts dt{font-size:13px;color:var(--muted)}
.estate-facts dd{margin:3px 0 0;font-size:18px}
.estate-fact-source{font-size:12px;margin-left:12px;white-space:nowrap}
.hos-home-link{border-top:1px solid var(--line);padding-top:22px;margin-top:30px;max-width:780px}
.hos-home-link p{font-size:16px;color:var(--muted)}
.hos-topic-links{display:flex;gap:16px 26px;flex-wrap:wrap;margin:0 0 32px;padding:18px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--rose)}
@media(max-width:1000px){.nav{gap:13px}.brand img{width:130px}.header-inner{gap:15px}.nav .nav-contact{font-size:12px;padding:6px 8px}.estate-layout{gap:32px}.estate-aside{flex-basis:230px}}
@media(max-width:920px){.header-inner{position:relative;flex-wrap:wrap;padding:16px 0;gap:0}.menu-toggle{display:block}.nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:16px}.js .nav:not(.open){display:none}.nav>a,.nav-dropdown>summary{padding:10px 2px}.nav-panel{position:static;width:100%;box-shadow:none;margin:0 0 10px;padding:15px 20px;background:var(--warm);border-radius:4px}.nav .nav-contact{align-self:start;margin-top:12px;padding:8px 14px}.nav-estate-links{gap:0 22px}.estate-layout{display:block}.estate-aside{margin:0 0 42px}.estate-main .prose{padding-bottom:30px}}
@media(max-width:650px){.hos-directory{grid-template-columns:1fr}.estate-card{padding:22px 0}.estate-card h2,.estate-card h3{font-size:22px}.estate-fact-source{display:block;margin-left:0}.hos-actions .button{white-space:normal;text-align:center}.hos-actions{gap:16px}.hos-topic-links{gap:12px 20px}}

.menu-toggle{display:none}
@media(max-width:920px){.js .menu-toggle{display:block}}
