:root{color-scheme:light;--paper:#f4f0e5;--ink:#18291f;--forest:#203b2e;--moss:#dce4c7;--line:#c9cdbb;--gold:#e4c278;font-family:"Noto Sans TC","Microsoft JhengHei",system-ui,sans-serif;font-size:18px;scroll-padding-top:20px}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);line-height:1.75;overflow-wrap:anywhere}a{color:inherit;text-underline-offset:.22em}a:focus-visible{outline:3px solid #a04e20;outline-offset:4px}img{display:block;max-width:100%;height:auto}figure{margin:0}iframe{display:block;width:100%;max-width:100%;border:0;min-height:300px}h1,h2,h3,p{margin:0 0 .65em}h1,h2{font-family:"Noto Serif TC","PMingLiU",serif;line-height:1.15;letter-spacing:.025em}h1{font-size:clamp(2.35rem,6vw,5rem)}h2{font-size:clamp(1.65rem,3.4vw,2.85rem)}h3{font-size:1.25rem}.masthead{max-width:1450px;margin:auto;padding:18px clamp(18px,5vw,75px);display:flex;justify-content:space-between;align-items:center;gap:8px 32px;flex-wrap:wrap}.brand{font-size:1.35rem;font-weight:850;text-decoration:none}.masthead nav{display:flex;flex-wrap:wrap;gap:4px 22px}.masthead nav a{font-weight:650;text-decoration:none;min-height:44px;display:grid;align-items:center}.container{width:min(1160px,calc(100% - 44px));margin-inline:auto}main>section:not(.home-hero,.page-hero){padding-block:clamp(32px,6vw,82px)}.home-hero,.page-hero{background:var(--forest);color:#fff8e9;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:420px}.hero-copy{padding:clamp(28px,6vw,98px);align-self:center}.home-hero>img,.page-hero>img{width:100%;height:100%;object-fit:cover;max-height:660px}.hero-copy p{max-width:32em}.eyebrow{font-size:.85rem;font-weight:800;letter-spacing:.13em;color:#526640}.hero-copy .eyebrow{color:var(--gold)}.actions,.product-links{display:flex;flex-wrap:wrap;gap:12px}.btn,.product-links a{display:inline-block;min-height:46px;padding:9px 19px;border-radius:6px;font-weight:800;text-decoration:none;background:var(--gold);color:#211e15}.btn.secondary,.btn-outline{background:#fff8e9}.intro-grid,.about-grid,.contact-grid,.embed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.intro .intro-grid:not(.container){grid-template-columns:repeat(3,minmax(0,1fr))}.feature,.quick-card,.about-card,.embed-card{border:1px solid var(--line);border-radius:10px;padding:22px}.products,.gallery-section,.contact{background:var(--moss)}.product-grid,.gallery-grid,.photo-list,.legacy-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product-card,.photo,.gallery-item{background:#fbf9f1;border-radius:12px;overflow:hidden;border:1px solid var(--line)}.product-card{text-decoration:none}.product-card img,.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover}.photo img{width:100%}.product-card-content,figcaption{padding:15px 18px}.video-ratio iframe{aspect-ratio:16/9;height:auto;min-height:0}.video-grid{display:grid;gap:20px}.embed-body iframe,.map iframe{height:390px}footer{background:var(--forest);color:#fff8e9;padding:38px clamp(22px,6vw,95px)}.phonebar{display:none}.page-hero:has(> :only-child){display:block;min-height:0}.legacy-content p{grid-column:1/-1}
@media(max-width:790px){.home-hero,.page-hero{grid-template-columns:1fr;min-height:0}.home-hero>img,.page-hero>img{max-height:380px;aspect-ratio:4/3}.product-grid,.gallery-grid,.photo-list,.legacy-content{grid-template-columns:repeat(2,minmax(0,1fr))}.intro .intro-grid:not(.container){grid-template-columns:1fr}.about-grid,.contact-grid,.embed-grid,.intro-grid{grid-template-columns:1fr}}
@media(max-width:540px){:root{font-size:19px}body{padding-bottom:calc(57px + env(safe-area-inset-bottom))}.masthead{padding:12px 18px}.masthead nav{gap:5px 15px;font-size:.84rem}.container{width:calc(100% - 36px)}.product-grid,.photo-list,.legacy-content{grid-template-columns:1fr}.gallery-grid{gap:10px}.hero-copy{padding:30px 18px}.phonebar{display:grid;grid-template-columns:1fr 1fr;position:fixed;inset:auto 0 0;z-index:5;padding-bottom:env(safe-area-inset-bottom);background:var(--gold);text-align:center}.phonebar a{padding:12px 4px;font-weight:800;text-decoration:none}.phonebar a:first-child{background:var(--forest);color:#fff8e9}.embed-body iframe,.map iframe{height:320px}}
