/* from approved style sample index.html (2026-10-23, V5 process flow) */
.hero{padding:56px 0 24px}
.hero .top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.hero .mega{margin-top:18px;max-width:11em}
.hero .side{max-width:340px;color:var(--ink-2);font-size:16px}
.hero .side .cta{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--r-pill);text-decoration:none;font-size:15px;border:1px solid var(--rule-2);background:var(--paper)}
.btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.primary:hover{background:var(--tak-dk);border-color:var(--tak-dk)}
.flow{margin:32px 0 8px;background:var(--clay-0);border:1px solid var(--rule);border-radius:20px;padding:24px 24px 12px}
.flow .bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.section{margin-top:96px}
.section .head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.section h2{font:900 var(--fs-display)/1 var(--font-latin),var(--font-cjk),sans-serif;letter-spacing:-.02em}
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.story .stick{position:sticky;top:calc(var(--header-h) + 24px);height:min(68vh,560px);border-radius:20px;background:var(--mn-50);border:1px solid var(--mn-200);
  display:flex;align-items:center;justify-content:center;overflow:hidden}
.story .stick img{position:absolute;width:62%;opacity:0;transform:scale(.92) rotate(-4deg);transition:opacity .5s var(--ease),transform .7s var(--ease)}
.story .stick img.on{opacity:1;transform:none}
.story .stick .tag{position:absolute;left:18px;top:14px;font:12px var(--font-mono);color:var(--mn-700);letter-spacing:.1em}
.story .steps .step{min-height:62vh;display:flex;flex-direction:column;justify-content:center;opacity:.25;transition:opacity .4s}
.story .steps .step.on{opacity:1}
.story .num{font:700 14px var(--font-mono);color:var(--tak)}
.story h3{font-size:clamp(28px,3vw,44px);margin:8px 0 12px}
.story p{color:var(--ink-2);max-width:28em;margin:0}
.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.bento .card{display:flex;flex-direction:column;gap:6px;padding:24px 24px 44px;min-height:200px}
.bento h3{font-size:24px} .bento p{margin:0;font-size:14px;color:var(--ink-2)}
.b-6{grid-column:span 6} .b-4{grid-column:span 4}
.bento .thumb{margin-top:auto;height:110px;display:flex;align-items:flex-end;justify-content:flex-end}
.bento .thumb img{max-height:100%;width:auto}
.map{border-radius:20px;overflow:hidden;border:1px solid var(--rule);background:var(--paper)}
.map .credit{font:11px var(--font-mono);color:var(--ink-3);padding:8px 14px;border-top:1px solid var(--rule)}

/* 製造流程圖（取自 V5 HTML；1600 寬畫布等比縮放；手機最小 0.5 倍、可左右滑） */
.flow .seg{display:flex;border:1px solid var(--rule-2);border-radius:var(--r-pill);background:var(--paper);padding:2px}
.flow .seg button{border:0;background:none;padding:6px 14px;border-radius:var(--r-pill);font-size:14px;cursor:pointer;color:var(--ink-2)}
.flow .seg button[aria-selected=true]{background:var(--tak-dk);color:#fff}
.fl-host{overflow-x:auto;overflow-y:hidden;margin-top:8px}
.fl-host[hidden]{display:none}
.fl-wrap{position:relative}
.fl{position:absolute;left:0;top:0;transform-origin:0 0;color:var(--ink)}
.fl-a{position:absolute}
.fl-box{display:flex;align-items:center;justify-content:center}
.fl-ic img{width:100%;height:100%;object-fit:contain;display:block}
.fl-ic img.st{display:none}
.fl-lab{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border:0;background:none;font:inherit;color:inherit;cursor:pointer;padding:0}
.fl-lab:hover b,.fl-lab[aria-expanded=true] b{text-decoration:underline;text-underline-offset:4px}
.fl-badge{width:28px;height:28px;border-radius:50%;background:var(--tak);color:#fff;font:700 15px Arial;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 0 rgba(0,144,72,.5);animation:badge 2.4s infinite}
@keyframes badge{0%{box-shadow:0 0 0 0 rgba(0,144,72,.45)}70%{box-shadow:0 0 0 10px rgba(0,144,72,0)}100%{box-shadow:0 0 0 0 rgba(0,144,72,0)}}
.fl-lab b{font-size:19px;color:var(--tak-dk)}
.fl-lab i{font:400 13px Arial;color:var(--ink-2);font-style:normal}
.fl-plab{text-align:center;white-space:nowrap}
.fl-plab b{display:block;font-size:16px}
.fl-plab span{font-size:12.5px;color:var(--ink-2)}
.fl-cap{text-align:center;white-space:nowrap;font-size:12.5px;color:var(--ink-2)}
.fl-arw{position:absolute;height:22px}
.fl-arw .fl-bar{position:absolute;left:0;right:16px;top:6px;height:10px;background:var(--tak);border-radius:2px}
.fl-arw .fl-hd{position:absolute;right:0;top:0;border-left:18px solid var(--tak);border-top:11px solid transparent;border-bottom:11px solid transparent}
.fl-arw em{position:absolute;top:8px;width:6px;height:6px;border-radius:50%;background:#fff;animation:fl-run 1.5s linear infinite;opacity:0}
.fl-arw em:nth-of-type(2){animation-delay:.5s}.fl-arw em:nth-of-type(3){animation-delay:1s}
@keyframes fl-run{0%{left:2px;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:calc(100% - 24px);opacity:0}}
.fl-bypass{border:2px dashed var(--ni-500);border-radius:12px;background:rgba(245,250,247,.75)}
.fl-ptitle{display:flex;align-items:center;white-space:nowrap}
.fl-ptitle b{color:var(--tak-dk);font-size:16px}
.fl-tag{font-size:12px;color:#fff;background:var(--ni-500);border-radius:10px;padding:2px 9px}
.fl-sub{font-size:12.5px;color:var(--ink-2)}
.fl-next{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--tak-dk);font-weight:700;white-space:nowrap;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.fl svg.fl-a{pointer-events:none}
.fl-line{stroke:var(--ni-500);stroke-width:3;fill:none;stroke-dasharray:8 6;animation:fl-dash 1s linear infinite}
@keyframes fl-dash{to{stroke-dashoffset:-24}}
.fl-wrap .pop{transform:none}
.fnote{font-size:12px;color:var(--ink-3);margin:6px 0 0}
@media (prefers-reduced-motion:reduce){.fl-ic img.an{display:none}.fl-ic img.st{display:block}}
@media (max-width:639px){.flow .bar{flex-direction:column;align-items:flex-start}.fl-host::before{content:"← 左右滑動 →";display:block;position:sticky;left:0;font:11px var(--font-mono);color:var(--ink-3);padding-bottom:4px}}
@media (max-width:1023px){.story{grid-template-columns:1fr}.story .stick{position:relative;top:0;height:300px}.story .steps .step{min-height:auto;padding:28px 0;opacity:1}.b-6,.b-4{grid-column:span 6}}
@media (max-width:639px){.b-6,.b-4{grid-column:span 12}.flow{padding:12px;border-radius:14px}.hot{width:22px;height:22px}.hot::before{inset:6px}.hot .lbl{display:none}.section{margin-top:64px}}
