:root{--ink:#183e36;--accent:#226248;--sand:#f2efe4;--paper:#faf9f4;--line:#cbd3c5;--gold:#b58c54}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 "Microsoft JhengHei","PingFang TC",sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #c0903e;outline-offset:4px}img,video{width:100%;display:block}h1,h2,h3{font-family:"Noto Serif TC","PMingLiU",serif;line-height:1.3;margin:0;font-weight:700}h1{font-size:clamp(2.35rem,4.7vw,4.8rem);letter-spacing:.035em}h2{font-size:clamp(1.85rem,3vw,3rem);margin:0 0 1em}h3{font-size:clamp(1.2rem,2vw,1.65rem)}p{color:#52665c}.wrap,.bar{width:min(1190px,90%);margin:auto}.mast{position:sticky;top:0;z-index:9;background:#faf9f4f8;border-bottom:1px solid var(--line)}.bar,.bar nav,.brand,.actions,.button,.end>.wrap,.foot>.wrap{display:flex;align-items:center}.bar{height:76px;gap:36px}.brand{gap:9px;font-size:23px;letter-spacing:.12em;font-family:serif;font-weight:bold;white-space:nowrap}.brand img{width:40px;height:46px;object-fit:contain}.bar nav{margin-left:auto;gap:26px;font-size:14px;font-weight:bold}.bar details{position:relative}.bar summary{cursor:pointer}.bar details div{position:absolute;top:35px;left:-18px;background:var(--paper);min-width:150px;border:1px solid var(--line);padding:10px 18px}.bar details a{display:block;padding:5px}.button,.mobilecta{background:var(--ink);color:white;padding:12px 19px;font-size:14px;gap:16px;display:inline-flex;align-items:center;font-weight:bold;border-radius:3px}.button:hover,.mobilecta:hover{background:var(--accent)}.skip{position:fixed;top:-99px;z-index:99;background:white}.skip:focus{top:0}.mobilecta{display:none}.homehero{position:relative;height:clamp(470px,42vw,640px);overflow:hidden;isolation:isolate}.homehero>img{height:100%;object-fit:cover;object-position:center}.homehero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f7f5e9fa 4%,#f7f5e9ef 25%,#f7f5e980 49%,transparent 70%)}.herobox{position:absolute;z-index:1;left:max(5%,calc((100% - 1190px)/2));top:50%;transform:translateY(-50%);max-width:490px}.herobox p{max-width:350px;font-size:17px}.actions{gap:24px;margin-top:28px}.textlink,.reading a,.video figcaption a{color:var(--accent);text-decoration:underline;text-underline-offset:5px;font-weight:bold}.section{padding:clamp(42px,5.5vw,83px) 0}.linen{background:var(--sand)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(15px,2vw,30px)}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.tile{background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden}.tile img,.scene img{aspect-ratio:1.45;object-fit:contain;background:#e8ebe3}.tile>div{padding:16px}.tile h3,.scene strong{display:flex;justify-content:space-between;gap:8px}.tile p{margin:.4em 0;font-size:14px}.tile span,.scene span{color:var(--accent)}.tile:hover,.scene:hover{outline:2px solid var(--accent)}.scene{background:var(--paper)}.scene img{aspect-ratio:2;object-fit:cover}.scene strong{padding:10px 16px}.intro,.feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,76px);align-items:center}.intro{padding:48px 0}.intro img{max-height:400px;object-fit:contain}.intro p,.contactTitle p{font-size:18px}.crumb{display:inline-block;font-size:14px;margin-bottom:20px;text-decoration:underline}.section figure{margin:0}.section figure>img{object-fit:contain;max-height:540px;background:#f2f2eb}.section figcaption{padding:8px 0;font-weight:bold}.feature>img{max-height:400px;object-fit:cover}.feature h3~h3{margin-top:30px}.comparison img{max-height:780px;object-fit:contain}.note{font-size:14px}.video iframe{border:0;width:100%;aspect-ratio:16/9;background:#183e36;border-radius:5px}.reading{max-width:820px}.reading h3{margin-top:28px}.contactTitle{padding:65px 0}.contactTitle .textlink{margin-left:18px}.office{background:var(--paper);padding:26px;border-top:3px solid var(--accent)}.end{background:#21483e;color:white;padding:46px 0}.end .wrap,.foot .wrap{justify-content:space-between;gap:18px}.end h2,.end p{margin:0}.end p{color:#e0e9df;margin-top:8px}.end .button{background:#edf0dd;color:var(--ink);white-space:nowrap}.foot{padding:22px 0;font-size:13px}.contactTitle+.linen{border-top:1px solid var(--line)}@media(max-width:760px){.bar{height:auto;min-height:59px;gap:12px}.bar nav{gap:12px;font-size:12px}.bar>.button{display:none}.brand{font-size:17px;gap:4px}.brand img{width:25px}.herobox{left:5%;right:5%;top:auto;bottom:30px;transform:none}.homehero{height:520px}.homehero>img{object-position:63% top}.homehero:after{background:linear-gradient(0deg,#f7f5e9 0%,#f7f5e9e8 34%,transparent 76%)}.herobox h1{font-size:40px}.herobox p{font-size:15px}.actions{margin-top:15px}.grid,.grid.three,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.intro,.feature{grid-template-columns:1fr}.intro{padding:30px 0}.intro img{max-height:280px}.tile>div{padding:10px}.end>.wrap,.foot>.wrap{align-items:flex-start;flex-direction:column}.mobilecta{display:flex;justify-content:center;position:fixed;bottom:0;left:0;right:0;border-radius:0;z-index:10;padding-bottom:max(12px,env(safe-area-inset-bottom))}.foot{padding-bottom:75px}.section .grid:not(.three):not(.four){grid-template-columns:1fr}.office{padding:14px}.grid:has(.office){grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.line-chat{position:fixed;z-index:40;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));background:#08693e;color:#fff;border:2px solid white;border-radius:99px;box-shadow:0 4px 18px #15342842;padding:10px 17px;display:inline-flex;align-items:center;gap:9px;min-height:48px;font-weight:700}.line-chat:hover{background:#075632}.chat-icon{position:relative;background:white;color:#08693e;border-radius:9px;display:inline-grid;place-items:center;width:26px;height:19px;font:700 11px/1 Arial;letter-spacing:1px}.chat-icon:after{content:"";position:absolute;bottom:-4px;left:5px;border-top:6px solid white;border-right:6px solid transparent}.foot{padding-bottom:85px}@media(max-width:760px){.line-chat{right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));padding:9px 14px;font-size:14px}}
@media(max-width:580px){.bar{flex-wrap:wrap;gap:0;padding-block:5px}.bar nav{flex:1 1 100%;justify-content:space-between;gap:5px;padding-bottom:5px}.brand img{height:30px}}

/* Keep the home headline in two intentional lines at every viewport. */
.homehero .herobox{width:min(580px,90%);max-width:580px}.homehero .herobox h1{font-size:clamp(36px,4.1vw,62px);line-height:1.35;letter-spacing:.02em}.homehero .herobox h1>span{display:block;white-space:nowrap}@media(max-width:760px){.homehero .herobox h1{font-size:clamp(26px,7.7vw,40px)}}
/* Staggered brand slogan, matching the two-line reference. */
.homehero .herobox h1{font-family:"DFKai-SB","BiauKai","KaiTi","STKaiti","Noto Serif TC",serif;font-size:clamp(36px,4.6vw,68px);font-weight:700;line-height:1.22;letter-spacing:.025em}
.homehero .herobox h1>span+span{padding-left:1.65em;margin-top:.08em}
@media(max-width:760px){.homehero .herobox h1{font-size:clamp(26px,7.7vw,40px)}}
