@font-face { font-family:"Liangshan Noto TC"; src:url("fonts/NotoSansTC.ttf") format("truetype"); font-style:normal; font-weight:100 900; font-display:swap; }
/* Selected visual direction: ivory + ink green, designed for comfortable reading. */
:root { --bg:#f7f4ec; --surface:#fffdf8; --surface-raised:#e9eee7; --ivory:#203b32; --paper:#39473f; --muted:#59645d; --gold:#254d43; --gold-light:#1d463b; --line:#d6dbd1; --line-soft:#e2e5dd; --max:1360px; --header:96px; --serif:var(--sans); color-scheme:light; }
body { color:var(--ivory); font-size:21px; line-height:1.8; background:var(--bg); -webkit-tap-highlight-color:#254d431a; }
h1,h2,h3 { font-family:var(--sans); font-weight:600; letter-spacing:0; }
:where(a,button,summary,input,select):focus-visible { outline:3px solid #254d43; outline-offset:5px; }
.site-header { background:#fffdf8f5; border-bottom:1px solid var(--line); }
.header-inner { width:min(1600px,calc(100% - 72px)); gap:24px; }
.brand { gap:12px; }
.brand-logo { width:52px; height:52px; }
.brand-name { font-size:22px; font-weight:700; letter-spacing:.015em; }
.brand-line { font-size:14px; color:var(--muted); letter-spacing:.04em; }
.main-nav { gap:12px; }
.nav-item > a { font-size:18px; color:var(--paper); font-weight:500; }
.nav-item > a::after { height:2px; bottom:1px; }
.submenu-toggle { width:22px; min-height:48px; }
.nav-menu { background:var(--surface); min-width:250px; box-shadow:0 12px 26px #254d4314; }
.nav-menu a { font-size:19px; min-height:48px; }
.nav-menu a:hover,.nav-menu a:focus-visible { background:var(--surface-raised); color:var(--gold); }
.menu-toggle { min-width:48px; min-height:48px; font-size:18px; }
.button { font-size:20px; min-height:56px; padding:12px 25px; border-radius:6px; letter-spacing:.02em; gap:18px; }
.button.primary { color:#fffdf8; background:var(--gold); border-color:var(--gold); }
.button.primary:hover { color:#fff; background:#183e32; }
.button.ghost,.hero-actions .button.ghost { background:transparent; color:var(--gold); border-color:var(--gold); }
.button.ghost:hover { background:var(--surface-raised); }
.text-link { font-size:19px; border-color:#a8b9ad; color:var(--gold); }
.text-link:hover { color:#102b23; }
.section { padding-block:72px; }
.section-head h2,.editorial-heading h2,.overview-heading h2 { font-size:36px; font-weight:600; letter-spacing:0; line-height:1.5; }
.section-head p,.overview-heading p { font-size:21px; max-width:32em; }
.breadcrumb { font-size:17px; color:var(--muted); }
.breadcrumb a { min-height:44px; display:inline-flex; align-items:center; }
.quick-access,.home-editorial { background:#eeeee5; }
.quick-access a:hover,a.feature-card:hover,.investor-link-grid a:hover { background:var(--surface-raised); }
.quick-access a { padding:24px; }
.quick-access strong { font-size:24px; font-weight:600; }
.quick-access small { font-size:18px; }
.featured-insight { background:var(--surface); border-color:var(--line); border-radius:6px; }
.featured-insight h3 { font-size:30px; font-weight:600; letter-spacing:0; }
.featured-insight p,.service-row p { font-size:20px; }
.featured-insight .article-topic { font-size:18px; }
.service-row h3 { font-size:26px; }
.notice-preview a { grid-template-columns:100px minmax(0,1fr) 20px; }
.notice-preview .notice-type { font-size:17px; border:0; background:var(--surface-raised); color:var(--gold); }
.notice-preview strong { font-size:22px; }
.home-contact h2 { font-weight:600; font-size:32px; letter-spacing:0; }
.home-contact p { font-size:21px; }
.site-footer { background:#e9ece4; }
.footer-brand { font-weight:600; font-size:23px; letter-spacing:0; }
.site-footer p,.footer-bottom p,.footer-bottom small { font-size:17px; }
.footer-links a { font-size:18px; min-height:44px; display:inline-flex; align-items:center; }
.footer-links { gap:6px 22px; }
.footer-bottom { gap:28px; }
.footer-bottom p { max-width:800px; }
/* Photos remain distinct from text so readability does not depend on a dark overlay. */
.home-hero { height:auto; min-height:0; max-height:none; background:var(--bg); display:block; padding:42px 0 50px; overflow:visible; }
.home-hero::before { display:none; }
.home-light-layout { width:min(var(--max),calc(100% - 96px)); margin:auto; display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; align-items:center; }
.home-hero .hero-copy { width:auto; padding:0; margin:0; }
.home-hero .hero-art { position:relative; inset:auto; width:100%; height:500px; object-fit:cover; border-radius:7px; z-index:auto; transform:none; opacity:1; }
.home-hero .hero-intro { font-size:19px; letter-spacing:0; color:var(--gold); margin-bottom:18px; }
.home-hero .hero-intro::before { display:none; }
.home-hero h1 { font-size:clamp(38px,3.8vw,58px); line-height:1.5; font-weight:600; letter-spacing:.025em; }
.home-hero .hero-text { color:var(--paper); font-size:22px; line-height:1.9; max-width:28em; }
.home-hero .hero-actions { gap:14px; }
.home-hero .hero-bottom { display:none; }
/* Retain controlled interaction feedback; remove dark-theme ambient decoration. */
.site-atmosphere,.hero-atmosphere,.interaction-glow { display:none; }
.has-pointer-glow { isolation:auto; }
.has-pointer-glow:is(:hover,:focus-visible,:focus-within) { border-color:var(--gold); }
body > .motion-toggle { background:#fffdf8f5; border:1px solid #a8b7aa; color:var(--gold); font-size:17px; box-shadow:0 3px 12px #254d4314; border-radius:6px; }
body > .motion-toggle:hover { background:#e9eee7; color:var(--gold); }
body > .motion-toggle:disabled { color:var(--muted); background:var(--surface); border-color:var(--line); }
@media(min-width:1700px) { .main-nav { gap:18px; } .nav-item > a {font-size:20px;} }
@media(min-width:1180px) and (max-width:1399px) { :root{--header:144px;} .header-inner{display:grid;grid-template-columns:1fr;gap:0;padding-top:15px;} .main-nav{justify-content:space-between;} .nav-item{min-height:58px;} .brand{justify-self:start;} }
@media(max-width:1179px) { :root {--header:88px;} .header-inner{gap:0;width:calc(100% - 56px);} .main-nav{gap:0;} .nav-item>a{font-size:20px;} .nav-menu,.nav-item:last-child .nav-menu,.nav-item:nth-last-child(2) .nav-menu{background:var(--surface-raised);} .home-light-layout{width:calc(100% - 56px);gap:28px;} .home-hero .hero-art{height:480px;} .hero-actions{flex-direction:column;align-items:flex-start;} .footer-inner{gap:32px;} }
@media(max-width:760px) { :root {--header:86px;} body{font-size:19px;} .header-inner{width:calc(100% - 32px);} .brand-logo{width:42px;height:42px;} .brand-name{font-size:18px;} .brand-line{font-size:12px;letter-spacing:0;} .brand{gap:8px;} .menu-toggle{padding:8px;min-width:44px;} .main-nav{max-height:calc(100svh - 86px);} .section{padding-block:46px;} .section-head h2,.editorial-heading h2,.overview-heading h2{font-size:30px;} .section-head p,.overview-heading p{font-size:19px;} .button{font-size:19px;padding:12px 20px;min-height:54px;} .text-link{font-size:18px;} .breadcrumb{font-size:16px;flex-wrap:wrap;gap:8px;line-height:1.5;} .home-hero{padding:28px 0;} .home-light-layout{width:calc(100% - 40px);grid-template-columns:1fr;gap:28px;} .home-hero .hero-copy{padding:0;} .home-hero h1{font-size:38px;letter-spacing:0;} .home-hero .hero-text{font-size:20px;max-width:none;} .home-hero .hero-art{height:270px;} .home-hero .hero-actions{flex-direction:row;gap:12px;align-items:stretch;} .home-hero .hero-actions .button{flex:1;white-space:nowrap;font-size:18px;padding-inline:14px;} .home-hero .hero-actions .arrow-icon{display:none;} .quick-access .container{grid-template-columns:1fr;} .quick-access a{flex-direction:row;text-align:left;padding:20px;border:0;border-bottom:1px solid var(--line);} .quick-access strong{font-size:22px;} .quick-access small{display:block;font-size:18px;} .quick-access .arrow-icon{display:block;} .service-row p,.featured-insight p{font-size:19px;} .service-row h3{font-size:24px;} .notice-preview a{grid-template-columns:1fr 20px;gap:8px;padding:20px 0;} .notice-preview .notice-type{grid-column:1;justify-self:start;} .notice-preview strong{grid-column:1;font-size:20px;} .notice-preview .arrow-icon{grid-column:2;grid-row:2;} .home-contact h2{font-size:28px;} .home-contact p{font-size:19px;} .featured-insight{padding:26px;} .featured-insight h3{font-size:27px;} .footer-links a{font-size:18px;} .footer-bottom{gap:15px;} .footer-bottom small{white-space:normal;} body>.motion-toggle{font-size:16px;padding:9px 12px;} }
@media(max-width:370px) { .brand-name{font-size:16px;} .brand-line{font-size:11px;} .brand-logo{width:36px;height:36px;} .brand{gap:6px;} .home-light-layout{width:calc(100% - 32px);} .home-hero h1{font-size:34px;} .home-hero .hero-actions{flex-direction:column;} }
@media(prefers-reduced-motion:reduce) { .home-hero .hero-art { transform:none !important; } }

:root { --sans: "Liangshan Noto TC", "Noto Sans TC", "Microsoft JhengHei", "PingFang TC", sans-serif; }
body { font-weight:400; }
.site-footer > .motion-toggle { display:flex; align-items:center; gap:10px; position:static; margin:24px auto 0; min-height:48px; padding:10px 18px; background:var(--surface); color:var(--gold); border:1px solid var(--line); border-radius:5px; font-size:17px; }
/* High contrast even on keyboard-only entry points. */
.skip-link { background:var(--gold); color:#fffdf8; }
@media(max-width:760px) { .breadcrumb {font-size:17px;} }
/* Investor landing: retain the selected proposal's stronger title and broad CTA. */
@media(min-width:1180px) {
 .investors-page .light-hero-layout {grid-template-columns:.75fr 1.25fr;}
 .investors-page .light-hero-copy h1 {font-size:64px;}
 .investors-page .light-hero-copy .button {min-width:280px;font-size:23px;}
 .investors-page .resource-tile strong {font-size:30px;}
}
.ivory-theme .inv-dashboard {padding-top:32px;}
.inv-notice-band {background:var(--surface);}
@media(min-width:1180px) { .nav-item:last-child>a {border:1px solid var(--gold);border-radius:5px;padding:8px 13px;} .nav-item:last-child>a::after {display:none;} }
html {scroll-padding-top:calc(var(--header) + 12px);}
[id] {scroll-margin-top:16px;}
