/* Public catalog presentation. Keep legacy components and routing intact. */
:root{--catalog-ink:#202322;--catalog-muted:#626762;--catalog-paper:#f5f5ef;--catalog-line:#dedfd7;--catalog-yellow:#f6cf42}
body{font-family:system-ui,-apple-system,"Noto Sans TC","Microsoft JhengHei",sans-serif;color:var(--catalog-ink);background:var(--catalog-paper);line-height:1.65}
.container{max-width:1240px;padding-left:24px;padding-right:24px}
img,video{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b27700;outline-offset:4px}
.skip-link{position:fixed;top:-80px;left:16px;z-index:9999;background:var(--catalog-yellow);padding:12px 20px;color:#202322}
.skip-link:focus{top:12px}
.site-header-wrap{height:auto;position:sticky;top:0;z-index:100;background:#202322}
.site-header,.site-header.fixed-top{position:relative;top:auto;transform:none;background:#202322;padding:14px 0}
.site-header .header-logo,.site-header.fixed-top .header-logo{width:56px}
.site-header .header-main{width:calc(100% - 90px)}
.site-header .searchbar{border-radius:6px;overflow:hidden;background:#fff}
.searchbar input{min-height:42px}
.searchbar button{min-width:44px;min-height:44px}
.site-header .link-shopping{display:flex;align-items:center;gap:8px;background:var(--catalog-yellow);color:#202322;padding:10px 14px;border-radius:6px;white-space:nowrap}
.site-header .link-shopping .entry-icon{font-size:22px}
.site-header .link-shopping .entry-text{font-weight:700}
.catalog-notice{background:#e9ebe3;border-bottom:1px solid var(--catalog-line);padding:12px 24px;text-align:center;font-size:13px;color:#494f48}
.catalog-notice a{color:#252a24;text-decoration:underline;text-underline-offset:3px}
.brand-hero{background:#202322;color:#fff;padding:64px 0 70px}
.hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:52px;align-items:center}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;margin-bottom:20px}
.hero-copy .eyebrow{color:var(--catalog-yellow)}
.hero-copy h1{font-size:clamp(36px,4.5vw,64px);font-weight:750;line-height:1.22;letter-spacing:-.035em;margin:0 0 24px;color:#fff}
.hero-copy h1 span{color:var(--catalog-yellow)}
.hero-description{max-width:30em;color:#d0d3cc;font-size:17px;line-height:1.9;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.btn-brand{background:var(--catalog-yellow);color:#202322;border:1px solid var(--catalog-yellow);font-weight:700;padding:13px 22px;border-radius:5px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:20px}
.btn-brand:hover{background:#ffe27a;color:#202322;border-color:#ffe27a}
.hero-shop{color:#fff;text-decoration:underline;text-underline-offset:6px;padding:12px 0}
.hero-shop:hover{color:var(--catalog-yellow)}
.hero-image{margin:0;position:relative}
.hero-image img{width:100%;aspect-ratio:1.13;object-fit:cover;object-position:60% center;border-radius:6px}
.hero-image figcaption{font-size:12px;color:#d0d3cc;margin-top:12px;text-align:right}
#products{scroll-margin-top:140px;padding:64px 0;background:var(--catalog-paper)!important}
#products .section-area{padding:0}
.section-header em{position:static!important;display:block;font-size:12px!important;letter-spacing:.14em;color:var(--catalog-muted)!important;opacity:1;font-style:normal;margin-bottom:10px}
.section-header h2{font-size:30px;font-weight:700;letter-spacing:0}
.tag-ctg{border:1px solid var(--catalog-line);border-radius:30px;padding:9px 16px;min-height:44px;background:#fff}
.tag-ctg.active{background:#202322;color:#fff;border-color:#202322}
.productCtg-itemBox,.product-item{background:#fff;border:1px solid var(--catalog-line);border-radius:8px;overflow:hidden;height:100%;transition:box-shadow .18s,border-color .18s}
.productCtg-itemBox:hover,.product-item:hover{border-color:#a5a99f;box-shadow:0 8px 22px #2023220c}
.productCtg-itemBox .entry-cover,.product-item .entry-cover{margin:0!important;background:#fff}
.productCtg-itemBox .entry-cover img,.product-item .entry-cover img{object-fit:contain;width:100%;aspect-ratio:1;height:auto;padding:16px}
.productCtg-itemBox .entry-title{padding:18px 12px;border-top:1px solid #f0f1eb;text-align:left!important}
.productCtg-itemBox h3{margin:0;font-weight:650}
.product-item>h4{padding:16px 14px 0;line-height:1.6}
.product-item>.d-flex{padding:0 14px 16px;gap:8px;flex-wrap:wrap}
.product-item a[aria-label="前往官方商城購買"]{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;background:#f4f4ee;border-radius:5px}
.brand-about{padding-top:64px;padding-bottom:64px;display:grid;grid-template-columns:1fr 2fr;gap:48px;border-top:1px solid var(--catalog-line)}
.brand-about h2,.shop-panel h2{font-size:30px;font-weight:700;margin-bottom:16px}
.brand-about p{max-width:48em;color:var(--catalog-muted)}
.text-link{font-weight:650;text-decoration:underline;text-underline-offset:5px;display:inline-block;padding:10px 0}
.shop-panel{padding:40px;display:flex;justify-content:space-between;align-items:center;gap:24px;background:#e9ebe1;border-radius:8px;margin-bottom:64px}
.shop-panel .eyebrow{margin-bottom:12px}.shop-panel p:last-child{margin:0}.shop-panel .btn{flex-shrink:0}
.catalog-footer{background:#202322;color:#e1e4dc;padding:48px 0 24px}
.footer-grid{display:grid;grid-template-columns:1fr .8fr 1fr;gap:40px;font-size:14px}
.catalog-footer a{color:#fff;display:inline-block;padding:6px 0}.catalog-footer a:hover{color:var(--catalog-yellow)}
.footer-brand{font-size:26px;font-weight:800;letter-spacing:.06em}.footer-brand span{display:block;font-size:14px;font-weight:400;letter-spacing:.1em}
.catalog-footer p{color:#aeb5aa;margin-top:12px}.catalog-footer nav{display:grid;grid-template-columns:1fr 1fr;align-content:start}
.footer-bottom{border-top:1px solid #ffffff25;padding-top:20px;margin-top:32px;font-size:12px;color:#aeb5aa}
.page-container{padding-top:16px}.page-main{gap:24px}.page-main>*{min-width:0}.page-main .aside{flex:0 0 210px;background:transparent!important;border-right:1px solid var(--catalog-line)}
.page-main .page-content{flex:1;background:transparent!important;min-width:0}
.breadcrumb{font-size:13px;flex-wrap:wrap;row-gap:8px;margin-bottom:12px}
.page-main .padding-a{padding:20px}.page-main .bg-light{background:#fff!important;border-radius:6px}
.page-main iframe{max-width:100%}.page-main img{max-width:100%}.page-main table{max-width:100%;display:block;overflow-x:auto}
.page-main h2{line-height:1.4}.page-main .btn-dark{min-height:48px;background:#202322;border-radius:5px;padding:12px 16px}
.m-menu-wrap{max-width:calc(100vw - 32px);overflow-y:auto;max-height:100dvh}
.btn-m-navi{border:0;background:transparent;min-width:44px;min-height:44px}
@media(max-width:991px){
.hero-grid{gap:28px}.brand-hero{padding:44px 0}.hero-copy h1{font-size:42px}
.page-main .aside{flex-basis:175px}.page-main{gap:16px}.page-main .padding-a{padding:12px}
.footer-grid{gap:24px}.shop-panel{max-width:calc(100% - 48px)}
}
@media(max-width:768px){
.container{padding-left:20px;padding-right:20px}.site-header,.site-header.fixed-top{padding:0}.site-header-wrap{height:auto}
.m-header-nav{background:#202322;background-image:none;align-items:center;justify-content:flex-end;padding:8px 12px;gap:4px;min-height:72px}
.m-header-nav .entry-nav{padding:0 7px}.m-header-nav .entry-nav:first-child{margin-right:auto}.m-header-nav .entry-nav a{padding:4px 0;min-width:44px;min-height:44px}.m-header-nav .entry-title{font-size:11px}.m-header-nav .entry-nav:first-child img{height:44px;width:auto}
.m-header-nav .mobile-account,.m-header-nav .mobile-favorites{display:none}.site-header .container{padding:0}.mobile-search{width:100%;left:0;padding:12px;background:#202322}.mobile-search input{width:100%;min-height:44px}.mobile-search button{min-height:44px;min-width:44px}
.catalog-notice{font-size:12px;text-align:left;padding:10px 20px;line-height:1.7}
.hero-grid{grid-template-columns:1fr;gap:30px}.hero-copy h1{font-size:42px}.hero-description{font-size:16px}.hero-image img{aspect-ratio:1.6}.hero-image figcaption{font-size:11px}.brand-hero{padding:36px 0}
#products{padding:36px 0;scroll-margin-top:100px}#products .row{--bs-gutter-x:12px;--bs-gutter-y:12px}.section-header h2{font-size:26px}
.productCtg-itemBox .entry-title{padding:14px 12px}.productCtg-itemBox .entry-cover img,.product-item .entry-cover img{padding:10px}
.brand-about{grid-template-columns:1fr;gap:12px;padding-top:36px;padding-bottom:36px}.brand-about .eyebrow{margin-bottom:12px}.brand-about h2,.shop-panel h2{font-size:26px}
.shop-panel{display:block;padding:26px;max-width:calc(100% - 40px);margin-bottom:36px}.shop-panel .btn{margin-top:24px;width:100%}
.footer-grid{grid-template-columns:1fr;gap:22px}.catalog-footer{padding-top:32px}.catalog-footer nav a{min-height:44px}
.page-main .aside{display:none}.page-main .page-content{width:100%;padding:0}.page-main .padding-fix{margin:0;padding:16px!important}.page-container{padding-top:4px}
.product-item>h4{padding:12px 10px 0;font-size:14px!important}.product-item>.d-flex{padding:0 10px 12px}.page-content>.row{--bs-gutter-x:12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.site-header .link-shopping .entry-icon,.site-header .link-shopping .entry-text{color:#202322!important}
.search-form,.searchbar{margin:0}.searchbar input{width:100%}
/* Anchor the desktop dropdown inside the viewport, including tablet widths. */
.site-header .mega-menu{left:auto;right:0;max-width:calc(100vw - 48px)}
