:root{--ink:#1c1917;--ink-soft:#78716c;--cream:#f8f4ee;--card:#fff;--brown:#693a1f;--brown-dark:#4a2c17;--brown-tint:#f5ede4;--line:#e7e3dc;--wa:#25d366;--serif:Fraunces,"Noto Serif TC","Songti TC",Georgia,serif;font-family:Manrope,PingFang TC,Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif;color:var(--ink);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{min-height:100%;background:var(--card)}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit}:focus-visible{outline:2px solid var(--brown);outline-offset:3px}.page-shell{max-width:1080px;margin:0 auto;padding:0 16px 32px;display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 10px;color:var(--ink-soft);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:1px;background:var(--ink-soft);opacity:.6}.hero-col{display:flex;flex-direction:column;gap:14px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:20px 8px 2px}.logo{width:clamp(160px,46vw,220px);height:auto;display:block}.topbar-end{display:flex;align-items:center;gap:12px}.since{white-space:nowrap;font-family:var(--serif);font-style:italic;font-weight:500;font-size:18px;color:var(--brown)}.hero{position:relative;overflow:hidden;background:var(--cream);border-radius:22px;aspect-ratio:2/3}.hero-text{position:relative;z-index:1;padding:clamp(22px,6vw,30px) clamp(22px,6vw,28px) 0}.hero h1{margin:0;font-family:var(--serif);font-style:italic;font-weight:600;color:var(--brown);font-size:clamp(38px,11vw,52px);line-height:1.04;letter-spacing:-.01em}.role{margin:12px 0 0;color:var(--ink-soft);font-size:15px}.cutout{position:absolute;bottom:0;left:50%;transform:translate(-46%);height:56%;width:auto;max-width:none;display:block}.brands{background:var(--brown);color:#fff;border-radius:16px;padding:16px 22px 18px}.brands-label{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:.92}.brands-list{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(17px,4.6vw,20px);line-height:1.35}.lang{position:relative}.lang-btn{display:flex;align-items:center;gap:6px;height:36px;padding:0 10px 0 11px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--brown);font-size:13px;font-weight:700;cursor:pointer;transition:border-color .18s ease,background .18s ease}.lang-btn:hover{border-color:var(--brown);background:var(--brown-tint)}.lang-chev{transition:transform .22s ease}.lang-btn[aria-expanded=true] .lang-chev{transform:rotate(180deg)}.lang-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:6;list-style:none;margin:0;padding:6px;min-width:150px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 40px #1c191724;transform-origin:top right;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.96);transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s .22s}.lang-menu.open{opacity:1;visibility:visible;transform:none;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.lang-menu button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:0;border-radius:9px;background:none;color:var(--ink);font-size:14px;font-weight:600;text-align:left;cursor:pointer}.lang-menu button:hover{background:var(--brown-tint)}.lang-menu button[aria-selected=true]{color:var(--brown)}.lang-btn.pulse{animation:lang-pulse 1.6s ease-out 3}@keyframes lang-pulse{0%{box-shadow:0 0 #693a1f73}70%{box-shadow:0 0 0 12px #693a1f00}to{box-shadow:0 0 #693a1f00}}.lang-hint{position:absolute;right:0;top:calc(100% + 10px);z-index:5;width:max-content;max-width:220px;background:var(--brown);color:#fff;border-radius:12px;padding:9px 12px;font-size:13px;font-weight:700;line-height:1.3;box-shadow:0 12px 30px #4a2c1740;animation:hint-drop .5s cubic-bezier(.3,1.4,.5,1) .6s both}.lang-hint small{display:block;font-size:11px;font-weight:500;opacity:.85;margin-top:2px}.lang-hint:before{content:"";position:absolute;right:18px;top:-6px;width:12px;height:12px;background:var(--brown);transform:rotate(45deg);border-radius:2px}@keyframes hint-drop{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}.tx{display:inline-block;animation:tx-in .45s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 35ms)}@keyframes tx-fade{0%{opacity:0}to{opacity:1}}@keyframes tx-in{0%{opacity:0;transform:translateY(8px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}.contact{display:flex;flex-direction:column;padding:0 6px}.contact h2{margin:0 0 18px;font-family:var(--serif);font-weight:600;font-size:clamp(28px,8vw,34px);letter-spacing:-.01em}.links{list-style:none;margin:0;padding:0}.links li{border-bottom:1px solid var(--line)}.links li:first-child{border-top:1px solid var(--line)}.links a{display:flex;align-items:center;gap:16px;padding:14px 4px;min-width:0}.link-icon{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;background:var(--brown-tint);color:var(--brown);transition:background .18s ease,color .18s ease}.link-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.link-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.links strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.link-arrow{color:#b5aaa0;flex-shrink:0;transition:transform .2s ease,color .2s ease}.links a:hover .link-icon{background:var(--brown);color:#fff}.links a:hover .link-arrow{transform:translate(2px,-2px);color:var(--brown)}.address{display:flex;align-items:flex-start;gap:12px;color:var(--ink-soft);font-size:13px;line-height:1.6;margin:18px 4px 0}.address svg{flex-shrink:0;margin-top:3px;color:var(--ink)}.address:hover span{color:var(--brown)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:40px}.actions button{padding:16px 12px;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .18s ease,color .18s ease}.btn-primary{border:1px solid var(--brown);background:var(--brown);color:#fff}.btn-primary:hover{background:var(--brown-dark);border-color:var(--brown-dark)}.btn-ghost{border:1px solid var(--brown);background:transparent;color:var(--brown)}.btn-ghost:hover{background:var(--brown-tint)}.fab{position:fixed;right:16px;bottom:16px;z-index:4;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--wa);color:#fff;box-shadow:0 10px 24px #1c191733}.scroll-cue{position:fixed;left:50%;bottom:18px;z-index:3;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:0;padding:8px 16px 6px;border:0;border-radius:999px;background:#ffffffeb;color:var(--brown);font-size:12px;font-weight:700;box-shadow:0 8px 24px #1c191724;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:opacity .3s ease,transform .3s ease;animation:cue-in .5s ease 1s both}.scroll-cue svg{animation:cue-bounce 1.4s ease-in-out infinite}.scroll-cue.gone{animation:none;opacity:0;transform:translate(-50%,12px);pointer-events:none}@keyframes cue-bounce{0%,to{transform:translateY(-2px)}50%{transform:translateY(4px)}}@keyframes cue-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.toast{position:fixed;z-index:5;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:9px;background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:13px;box-shadow:0 8px 30px #1c191740;white-space:nowrap}@media(max-width:480px){.logo{width:158px}.since{font-size:15px}}@media(max-width:370px){.logo{width:136px}.topbar-end{gap:8px}.since{font-size:13px}}@media(prefers-reduced-motion:reduce){.lang-btn.pulse,.lang-hint,.scroll-cue,.scroll-cue svg{animation:none}.tx{animation-name:tx-fade}.lang-menu,.lang-chev{transition:none}}@media(min-width:900px){.page-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding:24px 32px 48px;align-items:start}.hero{aspect-ratio:auto;height:620px}.contact{padding-top:76px}.actions{margin-top:28px}.fab{right:24px;bottom:24px}.scroll-cue{display:none}}
