:root{color-scheme:light;--ink:var(--theme-ink);--cream:var(--theme-background);--line:var(--theme-line);--muted:var(--theme-body);--gold:var(--theme-accent)}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"Noto Sans TC","Noto Sans JP",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}img{display:block;max-width:100%;height:auto}a:focus-visible{outline:3px solid #c88637;outline-offset:4px}
.site-header{min-height:82px;padding:16px clamp(22px,5vw,82px);display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.brand img{width:37px;height:37px;object-fit:contain;mix-blend-mode:multiply;flex:none}
.brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.brand-copy strong{font-size:12px;line-height:1.2;letter-spacing:.18em;white-space:nowrap;color:var(--gold)}.brand-copy span{font-size:12px;line-height:1.1;letter-spacing:.22em;white-space:nowrap}
.languages{display:flex;align-items:center;flex:none}.languages .language-switch{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:64px;min-height:44px;padding:0 9px;border:0;border-radius:999px;color:#656d69;text-decoration:none;transition:background-color .2s ease,color .2s ease}.languages .language-switch:hover{background:#e8dfd1;color:#785a3d}.languages .language-switch svg{display:block;flex:none;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.languages .language-code{font:700 11px/1 Arial,sans-serif;letter-spacing:.15em}.languages .language-switch:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
main{max-width:1440px;margin:auto}h1,h2,.lead{font-family:"Noto Serif TC","Noto Serif JP",Georgia,serif;font-weight:500}h1{font-size:clamp(34px,4vw,57px);line-height:1.25;letter-spacing:.04em;margin:17px 0 22px}h2{font-size:clamp(26px,2.6vw,36px);line-height:1.35;letter-spacing:.03em;margin:15px 0 24px}p{line-height:1.9;margin:0;color:var(--muted);font-size:16px}.eyebrow{font:700 11px Arial,sans-serif;letter-spacing:.22em;color:var(--gold);line-height:1.5}
.company{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(30px,5vw,70px);padding:clamp(45px,5vw,75px) clamp(28px,7vw,118px);border-top:1px solid var(--line)}.company-info{min-width:0}dl{margin:0 0 23px}dl div{padding:14px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:130px minmax(0,1fr);gap:15px}dt{font-size:13px;color:var(--muted);line-height:1.7}dd{margin:0;font-size:15px;line-height:1.7;overflow-wrap:anywhere}.source-link{font-size:13px;color:var(--gold);line-height:1.8;text-underline-offset:4px;overflow-wrap:anywhere}.house-photo{margin:0;min-width:0}.house-photo img{width:100%;aspect-ratio:1598/899;object-fit:cover}.house-photo figcaption{font-size:12px;letter-spacing:.12em;margin-top:14px;color:var(--muted)}.house-official-link{color:inherit;text-underline-offset:4px}.house-photo-link:focus-visible,.house-official-link:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.services{background:#203b39;color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);padding:clamp(50px,6vw,80px) clamp(28px,7vw,118px)}.services>div,.destinations{min-width:0}.services .eyebrow{color:#ead2b2}.services p{color:#e2e5dc;font-size:15px}.destinations{display:flex;flex-direction:column;justify-content:center}.destination{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid #63746d;text-decoration:none;line-height:1.6;font-size:16px}.destination span:first-child{min-width:0}.destination span:last-child{flex:none;font-size:22px}.destination:hover{color:#ead2b2}
.site-footer{max-width:1204px;margin:0 auto;padding:27px 28px 32px;display:flex;justify-content:space-between;gap:24px;font-size:12px;line-height:1.8;color:var(--muted)}.site-footer a{text-underline-offset:4px}
@media(max-width:760px){.site-header{padding:16px 22px;gap:10px}.brand{gap:8px}.brand img{width:30px;height:30px}.brand-copy strong{font-size:10px;letter-spacing:.09em}.brand-copy span{font-size:11px;letter-spacing:.12em}.company{grid-template-columns:1fr;gap:30px;padding:45px 25px}.services{grid-template-columns:1fr;gap:27px;padding:45px 25px 50px}.site-footer{display:block;padding:24px 25px 30px}.site-footer span,.site-footer a{display:block}.site-footer a{margin-top:12px}h1{font-size:34px}p{font-size:15px}dl div{grid-template-columns:1fr;gap:4px}h2{font-size:27px}}
@media(max-width:350px){.site-header{padding:14px 16px;gap:8px}.brand-copy strong{font-size:9px;letter-spacing:.04em}.brand-copy span{font-size:10px}.brand{gap:6px}.brand img{width:27px;height:27px}.intro,.company,.services{padding-left:20px;padding-right:20px}h1{font-size:30px}.site-footer{padding-left:20px;padding-right:20px}}
