:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f6f5ef;--white:#fffefa;--sage:#edf2e7;--sage-deep:#dfe8d5;--ink:#2d3528;--body:#4c5145;--muted:#606456;--green:#385536;--green-hover:#2d472d;--wood:#91603f;--line:#dbded1;--radius:16px;--page-max:1320px;--gutter:clamp(1.125rem, 5vw, 4.75rem)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper);scroll-padding-top:5.5rem}body{color:var(--ink);background:var(--paper);font-family:var(--font-noto-sans-tc), "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.7}button,a{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent}a{text-underline-offset:.22em;text-decoration-thickness:1px}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #8c5d3c}button{cursor:pointer}img{max-width:100%;display:block}[hidden]{display:none!important}.page-gutter{padding-inline:var(--gutter)}.section-shell{width:100%;max-width:calc(var(--page-max) + var(--gutter) * 2);margin-inline:auto}.section-space{padding-block:clamp(4.5rem,9vw,8rem);scroll-margin-top:4.75rem}.skip-link{z-index:20;color:#fff;background:var(--green);border-radius:999px;padding:.75rem 1rem;text-decoration:none;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;background:var(--white);position:relative}.header-inner{min-height:5.25rem;max-width:calc(var(--page-max) + var(--gutter) * 2);justify-content:space-between;align-items:center;gap:2rem;margin-inline:auto;display:flex}.brand-link{flex:none;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.brand-logo{width:clamp(8rem,14vw,10.75rem);height:auto}.desktop-navigation{justify-content:flex-end;align-items:center;gap:clamp(1rem,1.65vw,1.7rem);display:flex}.desktop-navigation a,.footer-navigation a{min-height:44px;color:var(--body);align-items:center;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .16s;display:inline-flex}.desktop-navigation a:hover,.footer-navigation a:hover{color:var(--wood)}.mobile-navigation{display:none}.hero-section{width:100%;max-width:calc(var(--page-max) + var(--gutter) * 2);grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(2.5rem,6vw,6.5rem);min-height:min(45rem,100svh - 5.25rem);margin-inline:auto;padding-block:clamp(3.25rem,6vw,5.75rem);display:grid}.hero-copy{padding-block:.5rem}h1,h2,p,figure{margin:0}h1,h2{font-family:var(--font-noto-sans-tc), "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;letter-spacing:-.03em;text-wrap:balance;font-weight:600}h1{width:100%;font-size:clamp(3rem,5.2vw,5rem);line-height:1.28}.hero-title-line{white-space:nowrap;display:block}.hero-description,.section-intro{max-width:38rem;color:var(--body);font-size:clamp(1rem,1.35vw,1.125rem);line-height:1.85}.hero-description{max-width:33rem;margin-top:1.5rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.button{text-align:center;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.65rem;min-height:48px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)scale(.985)}.button-primary{color:#fffefa;background:var(--green)}.button-primary:hover{background:var(--green-hover)}.button-secondary{color:var(--ink);background:0 0;border-color:#a7ad9c}.button-secondary:hover{border-color:var(--green);background:#eef1e9}.arrow-icon{flex:none;width:1.15rem;height:1.15rem}.hero-visual{min-width:0}.hero-image-frame,.menu-image-frame,.about-image-frame{border-radius:var(--radius);background:#e9e5d9;position:relative;overflow:hidden}.hero-image-frame{aspect-ratio:1.14;width:100%}.hero-image,.menu-image,.about-image{object-fit:cover}.hero-image{object-position:center 54%}.hero-visual figcaption,.image-caption{color:var(--muted);margin-top:.7rem;font-size:.78rem;line-height:1.55}.menu-section{background:var(--white)}.menu-layout{grid-template-columns:minmax(17rem,.76fr) minmax(0,1.24fr);align-items:center;gap:clamp(3rem,8vw,8rem);display:grid}.menu-image-column{min-width:0}.menu-image-frame{aspect-ratio:.93;width:100%}.menu-image{object-position:center}h2{max-width:18ch;font-size:clamp(2.15rem,4.2vw,3.65rem);line-height:1.32}.menu-copy .section-intro,.purchase-heading .section-intro,.process-copy .section-intro,.location-copy .section-intro,.guide-heading .section-intro,.about-copy .section-intro,.partner-panel .section-intro{margin-top:1rem}.menu-list{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:2rem 0 0;padding:0;list-style:none;display:grid}.menu-list li{border-bottom:1px solid var(--line);min-height:4rem;color:var(--ink);align-items:center;padding:.8rem .5rem .8rem 0;font-weight:650;display:flex}.menu-list li:nth-child(odd){margin-right:1rem}.menu-list li:nth-child(2n){padding-left:1rem}.status-note{color:#555c4b;font-size:.875rem;font-weight:600;line-height:1.5}.menu-copy>.status-note{margin-top:1rem}.text-link{min-height:44px;color:var(--green);text-underline-offset:.3em;align-items:center;gap:.55rem;margin-top:1.2rem;font-weight:700;display:inline-flex}.text-link:hover{color:var(--wood)}.purchase-section{background:var(--sage)}.purchase-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.purchase-options{border-top:1px solid #cdd6c5;margin:0;padding:0;list-style:none}.purchase-options li{border-bottom:1px solid #cdd6c5}.purchase-options a{justify-content:space-between;align-items:center;gap:1.25rem;min-height:5.5rem;padding-block:1rem;text-decoration:none;display:flex}.purchase-options a:hover strong{color:var(--wood)}.purchase-option-copy{gap:.2rem;display:grid}.purchase-option-copy strong{color:var(--ink);font-size:1.1rem;transition:color .16s}.purchase-option-copy>span{color:#52594c;font-size:.9rem}.purchase-options .arrow-icon{color:var(--green)}.process-section{background:var(--white)}.process-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(3rem,9vw,9rem);display:grid}.process-details{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.process-details li{border-bottom:1px solid var(--line);min-height:5.15rem;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;font-size:1.12rem;font-weight:650;display:flex}.locations-section{background:var(--white);padding-top:0}.location-panel{border-radius:var(--radius);background:var(--paper);justify-content:space-between;align-items:center;gap:3rem;min-height:22rem;padding:clamp(2rem,6vw,5rem);display:flex}.location-copy{max-width:49rem}.location-copy .button{margin-top:1.75rem}.location-status{color:#45523e;background:var(--white);border:1px solid #d3d8cb;border-radius:999px;flex:none;align-items:center;gap:.65rem;min-height:44px;padding:.55rem 1rem;font-size:.875rem;font-weight:650;display:inline-flex}.status-dot{background:#9a7b52;border-radius:50%;width:.5rem;height:.5rem}.guide-section{background:var(--paper)}.guide-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.guide-heading{position:sticky;top:2rem}.faq-list{border-top:1px solid #d8dbce}.faq-list details{border-bottom:1px solid #d8dbce}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1.25rem;min-height:4.6rem;font-size:1.05rem;font-weight:700;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-toggle{flex:none;width:1.2rem;height:1.2rem;position:relative}.faq-toggle:before,.faq-toggle:after{content:"";background:var(--green);width:.95rem;height:1.5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-toggle:after{transition:transform .16s;transform:translate(-50%,-50%)rotate(90deg)}.faq-list details[open] .faq-toggle:after{transform:translate(-50%,-50%)rotate(0)}.faq-list details>p{max-width:45rem;color:var(--body);padding:0 2.5rem 1.35rem 0;line-height:1.8}.about-section{background:#f1eee4}.about-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:clamp(3rem,8vw,8rem);display:grid}.about-image-frame{aspect-ratio:1.2;width:100%}.about-image{object-position:center}.about-copy .section-intro+.section-intro{margin-top:1rem}.partner-section{background:var(--paper);padding-top:clamp(4rem,7vw,6.5rem);padding-bottom:clamp(4rem,7vw,6.5rem)}.partner-panel{border-radius:var(--radius);background:var(--sage);justify-content:space-between;align-items:center;gap:3rem;padding:clamp(2rem,5vw,4.5rem);display:flex}.partner-panel .section-intro{max-width:40rem;color:var(--body)}.partner-panel .button{flex:none}.site-footer{background:var(--white)}.footer-top{grid-template-columns:minmax(13rem,.8fr) minmax(20rem,1.2fr) auto;align-items:start;gap:2.5rem;padding-block:3.75rem;display:grid}.footer-logo{width:9.5rem;height:auto}.footer-brand p{color:var(--body);margin-top:.8rem;font-size:.9rem}.footer-navigation{grid-template-columns:repeat(3,minmax(0,1fr));gap:.2rem 1.5rem;display:grid}.footer-navigation a{font-size:.875rem}.footer-contact{min-height:44px;color:var(--green);text-underline-offset:.3em;align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.footer-bottom{border-top:1px solid var(--line);min-height:4.25rem;color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;font-size:.8rem;display:flex}.footer-bottom a{min-height:44px;color:var(--green);align-items:center;font-weight:650;display:inline-flex}@media (max-width:1050px){.header-inner{min-height:4.75rem}.desktop-navigation{display:none}.mobile-navigation{display:block;position:relative}.menu-toggle{min-width:5.5rem;min-height:44px;color:var(--ink);background:var(--white);border:1px solid #cbd1c2;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.4rem .85rem;font-size:.9rem;font-weight:700;display:inline-flex}.menu-toggle-lines{gap:4px;width:1rem;display:grid}.menu-toggle-lines span{background:currentColor;border-radius:2px;width:100%;height:1.5px}.mobile-navigation-panel{z-index:15;width:min(21rem, calc(100vw - 2 * var(--gutter)));border-radius:var(--radius);background:var(--white);border:1px solid #d8dbce;padding:.5rem 1rem;display:grid;position:absolute;top:calc(100% + .75rem);right:0;box-shadow:0 18px 36px #2e35281f}.mobile-navigation-panel a{border-bottom:1px solid var(--line);min-height:48px;color:var(--body);align-items:center;font-weight:650;text-decoration:none;display:flex}.mobile-navigation-panel a:last-child{border-bottom:0}.hero-section{min-height:calc(100svh - 4.75rem)}.footer-top{grid-template-columns:minmax(12rem,.75fr) minmax(18rem,1.25fr)}.footer-contact{grid-column:1/-1}}@media (max-width:760px){:root{--gutter:clamp(1.125rem, 5.3vw, 2rem)}.section-space{padding-block:4.5rem}.hero-section{grid-template-columns:minmax(0,1fr);gap:2.25rem;min-height:0;padding-top:3rem;padding-bottom:4rem}.hero-copy{max-width:38rem}h1{font-size:clamp(3rem,12vw,4rem)}.hero-description{max-width:34rem;margin-top:1rem}.hero-actions{margin-top:1.5rem}.hero-image-frame{aspect-ratio:1.28}.menu-layout,.purchase-layout,.process-layout,.guide-layout,.about-layout{grid-template-columns:minmax(0,1fr);gap:2.5rem}.menu-image-column{order:2}.menu-copy{order:1}.menu-image-frame{aspect-ratio:1.28}.menu-list{grid-template-columns:minmax(0,1fr);margin-top:1.5rem}.menu-list li:nth-child(odd){margin-right:0}.menu-list li:nth-child(2n){padding-left:0}.process-details li{min-height:4.5rem}.location-panel{flex-direction:column;align-items:flex-start;gap:2rem;min-height:0;padding:2rem 1.35rem}.guide-heading{position:static}.about-image-frame{aspect-ratio:1.28}.partner-panel{flex-direction:column;align-items:flex-start;gap:1.75rem;padding:2rem 1.35rem}.footer-top{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-block:3rem}.footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem}.footer-contact{grid-column:auto}}@media (max-width:420px){.hero-actions{align-items:stretch}.hero-actions .button{flex:100%}.process-details li{flex-direction:column;justify-content:center;align-items:flex-start;gap:.2rem;padding-block:.8rem}.location-status{font-size:.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.route-page{background:var(--paper);min-height:64vh}.page-heading{max-width:54rem}.page-heading h1{max-width:16ch;margin-bottom:1rem;font-size:clamp(2.75rem,5.4vw,4.8rem);line-height:1.24}.page-heading .section-intro{max-width:54ch}.page-notice{color:#484c40;background:#eceadd;border-radius:12px;max-width:56rem;margin-top:1.25rem;padding:.95rem 1.15rem;font-size:.92rem;line-height:1.75}.menu-index-layout,.quality-layout,.about-page-layout,.menu-detail-layout{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center;gap:clamp(2.5rem,7vw,6.5rem);margin-top:clamp(2.5rem,5vw,4.5rem);display:grid}.page-image-frame{aspect-ratio:1.14;border-radius:var(--radius);background:#e9e5d9;min-width:0;position:relative;overflow:hidden}.page-image{object-fit:cover}.page-image-frame figcaption{width:fit-content;max-width:calc(100% - 1.6rem);color:var(--ink);background:var(--white);border-radius:999px;padding:.45rem .8rem;font-size:.78rem;line-height:1.4;position:absolute;bottom:.8rem;left:.8rem;right:.8rem}.route-menu-list,.quality-details{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.route-menu-list li,.quality-details li{border-bottom:1px solid var(--line)}.route-menu-list a{justify-content:space-between;align-items:center;gap:1.25rem;min-height:5.5rem;padding-block:1rem;text-decoration:none;display:flex}.route-menu-copy{gap:.25rem;display:grid}.route-menu-copy strong{color:var(--ink);font-size:1.1rem;transition:color .16s}.route-menu-list a:hover strong{color:var(--wood)}.route-menu-copy span{color:var(--muted);font-size:.87rem}.route-menu-list .arrow-icon{color:var(--green);flex:none}.breadcrumbs{min-height:44px;color:var(--muted);align-items:center;gap:.65rem;margin-bottom:1.5rem;font-size:.9rem;display:flex}.breadcrumbs a{color:var(--green);font-weight:650}.menu-detail-layout{margin-top:0}.menu-detail-copy h1{max-width:12ch;margin-bottom:1rem;font-size:clamp(2.75rem,5.4vw,4.8rem);line-height:1.24}.menu-detail-image-frame{aspect-ratio:1.08}.ingredients-section{border-top:1px solid var(--line);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,6vw,5rem);margin-top:clamp(3.5rem,7vw,6rem);padding-top:2.5rem;display:grid}.ingredients-section h2{font-size:clamp(1.7rem,3vw,2.5rem)}.ingredients-section .section-intro{margin-top:.8rem;font-size:.95rem}.ingredient-list{flex-wrap:wrap;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.ingredient-list li{color:#41483a;background:var(--white);border:1px solid #d4d8cb;border-radius:999px;align-items:center;min-height:44px;padding:.5rem .9rem;font-size:.9rem;font-weight:600;display:inline-flex}.location-directory{margin-top:3rem}.location-filters{border-radius:var(--radius);background:var(--white);grid-template-columns:minmax(0,1.2fr) minmax(14rem,.8fr);gap:1.25rem;padding:clamp(1rem,2.5vw,1.75rem);display:grid}.filter-field{align-content:start;gap:.5rem;display:grid}.filter-field label{color:var(--ink);font-size:.92rem;font-weight:700}.filter-field input,.filter-field select{width:100%;height:3.125rem;min-height:3.125rem;color:var(--ink);background:var(--white);font:inherit;line-height:inherit;border:1px solid #858b7b;border-radius:10px;padding:.65rem .85rem}.field-hint{color:var(--muted);font-size:.8rem}.location-result-count{color:var(--body);margin-block:1.25rem;font-size:.9rem}.location-card-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.location-card{border-radius:var(--radius);background:var(--white);border:1px solid #d9ddd2;height:100%;padding:1.25rem}.location-card-district{color:var(--wood);font-size:.86rem;font-weight:700}.location-card h2{letter-spacing:0;text-wrap:auto;margin-top:.5rem;font-family:inherit;font-size:1.12rem;font-weight:700;line-height:1.55}.location-card-status{color:var(--muted);margin-top:.7rem;font-size:.85rem}.location-card>a{min-height:44px;color:var(--green);align-items:center;gap:.5rem;margin-top:.75rem;font-size:.88rem;font-weight:700;display:inline-flex}.location-empty-state{border-radius:var(--radius);background:var(--sage);text-align:center;padding:clamp(2rem,6vw,4rem)}.location-empty-state h2{margin-inline:auto;font-size:clamp(1.8rem,3.5vw,2.5rem)}.location-empty-state p{color:var(--body);margin-top:.6rem}.route-contact-band,.partnership-contact{border-radius:var(--radius);background:var(--sage);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:3rem;padding:clamp(1.5rem,4vw,2.5rem);display:flex}.route-contact-band>p,.partnership-contact>p{color:var(--ink);font-size:1.1rem;font-weight:700}.quality-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.quality-details li{justify-content:space-between;align-items:center;gap:1.5rem;padding-block:1.35rem;display:flex}.quality-details h2{font-size:1.45rem}.quality-details p{color:var(--body);margin-top:.35rem;font-size:.92rem}.guide-page-layout{max-width:58rem}.faq-page-list{margin-top:3rem}.about-page-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.about-page-copy .section-intro+.section-intro{margin-top:1.25rem}.partnership-steps{counter-reset:partnership-step;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:clamp(2.5rem,5vw,4rem) 0 0;padding:0;list-style:none;display:grid}.partnership-steps li{border-radius:var(--radius);background:var(--white);counter-increment:partnership-step;flex-direction:column;justify-content:flex-end;min-height:12rem;padding:clamp(1.5rem,3vw,2.25rem);display:flex}.partnership-steps li:before{color:var(--wood);content:"洽詢步驟 " counter(partnership-step);margin-bottom:auto;font-size:.9rem;font-weight:700}.partnership-steps h2{margin-top:2rem;font-size:1.5rem}.partnership-steps p{color:var(--body);margin-top:.55rem}.partnership-note{margin-top:1.25rem}.not-found-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;display:flex}@media (max-width:900px){.location-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.menu-index-layout,.quality-layout,.about-page-layout,.menu-detail-layout,.ingredients-section{grid-template-columns:minmax(0,1fr);gap:2.25rem}.menu-index-layout,.quality-layout,.about-page-layout{margin-top:2.5rem}.page-image-frame{aspect-ratio:1.28}.menu-detail-layout{margin-top:0}.ingredients-section{margin-top:3.5rem}.location-filters,.location-card-list{grid-template-columns:minmax(0,1fr)}.route-contact-band,.partnership-contact{flex-direction:column;align-items:flex-start}.partnership-steps{grid-template-columns:minmax(0,1fr)}}@media (max-width:420px){.page-heading h1,.menu-detail-copy h1{font-size:clamp(2.55rem,10vw,3.1rem)}.quality-details li{flex-direction:column;align-items:flex-start;gap:.5rem}}
