:root{--ink:#171717;--muted:#676767;--brand:#171717;--brand2:#9c9c9c;--paper:#fff;--wash:#f4f5f9;--line:#d7d7d3;--danger:#b42318;--shadow:0 12px 30px rgba(0,0,0,.07)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--wash)}
a{color:inherit;text-decoration:none}
button{font:inherit}
img{display:block;max-width:100%}
.container{width:min(1120px,calc(100% - 32px));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.nav{min-height:78px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;margin-right:auto;flex:0 1 230px}
.brand img{width:220px;height:62px;object-fit:contain;object-position:left center}
.nav-links{display:flex;gap:18px}
.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--brand)}
.cart-button,.button{border:0;border-radius:999px;background:var(--brand);color:#fff;padding:10px 17px;cursor:pointer;font-weight:700}
.cart-button:hover,.button:hover{background:#3f87bb}
.button.secondary{background:#e8f4fb;color:var(--brand)}
.button.danger{background:#fff0ee;color:var(--danger)}
.hero{padding:82px 0 64px;background:linear-gradient(135deg,#e3f3fc,#fff)}
.eyebrow{color:var(--brand);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}
.hero h1{font-size:clamp(2.3rem,6vw,4.8rem);line-height:1.02;max-width:800px;margin:12px 0 20px}
.hero p{font-size:1.1rem;color:var(--muted);max-width:620px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.section{padding:56px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.section h1,.section h2{margin:0}
.section-head p{color:var(--muted);margin:4px 0 0}
.category-grid,.product-grid{display:grid;gap:22px}
.category-grid{grid-template-columns:repeat(3,1fr)}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.category-card,.product-card,.panel{background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.category-card{padding:26px;transition:.2s}
.category-card:hover{transform:translateY(-3px);border-color:var(--brand2)}
.category-card span{font-size:2rem}
.category-card h3{margin:12px 0 5px}
.category-card p{margin:0;color:var(--muted)}
.seo-section{background:#eaf5fc}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.benefit-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px}
.benefit-card h3{margin:0 0 8px}
.benefit-card p,.seo-copy p,.faq-list details p{margin:0;color:var(--muted)}
.seo-copy{margin-top:30px;box-shadow:none}
.seo-copy h2{font-size:1.45rem;margin:0 0 9px}
.faq-list{margin-top:42px;max-width:820px}
.faq-list h2{margin-bottom:16px}
.faq-list details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:10px}
.faq-list summary{font-weight:780;cursor:pointer}
.faq-list details p{padding-top:10px}
.product-search{margin:-4px 0 22px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:16px}
.product-search>label{display:block;font-weight:800;margin-bottom:8px}
.product-search-row{display:flex;align-items:center;gap:14px}
.product-search input{min-width:0;flex:1;border:1px solid #bccbc7;border-radius:11px;padding:12px 13px;font:inherit}
.product-search input:focus,.variant-field select:focus,.variant-field input:focus{outline:3px solid rgba(20,184,166,.2);border-color:var(--brand2)}
.product-search-row span{min-width:90px;color:var(--muted);font-size:.92rem;text-align:right}
.product-search small{display:block;color:var(--muted);margin-top:7px}
.brand-groups{display:grid;gap:28px}
.brand-group{background:rgba(255,255,255,.65);border:1px solid var(--line);border-radius:22px;padding:22px}
.brand-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.brand-heading .eyebrow{margin:0 0 4px}
.brand-heading h2{font-size:clamp(1.45rem,3vw,2rem)}
.brand-heading>span{background:#e8f4fb;color:var(--brand);border-radius:999px;padding:6px 11px;font-size:.85rem;font-weight:800;white-space:nowrap}
.brand-group .product-grid{grid-template-columns:repeat(auto-fill,minmax(280px,340px))}
.product-card{position:relative;overflow:hidden;display:flex;flex-direction:column;height:600px}
.product-card img{width:100%;height:230px;flex:0 0 230px;object-fit:cover;object-position:center;background:#e7f4f1}
.product-body{padding:20px;display:flex;flex-direction:column;flex:1}
.product-body h3{margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-body p{color:var(--muted);margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.variant-grid{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:10px;margin-bottom:18px}
.variant-field{display:grid;gap:6px}
.variant-field span{font-size:.85rem;font-weight:750;color:var(--muted)}
.variant-field select,.variant-field input{width:100%;min-width:0;border:1px solid #bccbc7;border-radius:10px;padding:10px;background:#fff;color:var(--ink);font:inherit}
.quantity-field input{text-align:center}
.search-empty{grid-column:1/-1;background:#fff;border:1px solid var(--line);border-radius:16px}
.product-load-error{grid-column:1/-1;padding:40px 28px;border:1px solid #e5b6af;border-radius:18px;background:#fff8f7;text-align:center;box-shadow:0 8px 20px rgba(120,45,35,.08)}
.product-load-error h2{margin:0 0 9px;color:#8d241b}
.product-load-error p:not(.eyebrow){max-width:480px;margin:0 auto 20px;color:var(--muted);line-height:1.65}
.product-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}
.price{font-size:1.2rem;font-weight:850;color:var(--brand)}
.notice{padding:12px 16px;border-radius:12px;background:#fff8d8;color:#695500;margin-bottom:20px;display:none}
.notice.show{display:block}
.cart-panel{position:fixed;inset:0 0 0 auto;width:min(430px,100%);z-index:40;background:#fff;box-shadow:-15px 0 35px rgba(0,0,0,.18);padding:24px;transform:translateX(110%);transition:.25s;overflow:auto}
.cart-panel.open{transform:none}
.cart-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px}
.icon-button{border:0;background:transparent;font-size:1.7rem;cursor:pointer}
.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
.cart-item img{width:64px;height:64px;border-radius:10px;object-fit:cover}
.cart-item h4{margin:0}
.qty{display:flex;align-items:center;gap:8px;margin-top:7px}
.qty button{width:27px;height:27px;border:1px solid var(--line);background:#fff;border-radius:50%;cursor:pointer}
.remove{border:0;background:transparent;color:var(--danger);cursor:pointer}
.cart-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:800;margin:22px 0}
.empty{text-align:center;color:var(--muted);padding:40px 5px}
.checkout-actions{display:grid;gap:10px}
.checkout-actions .button{text-align:center}
.panel{padding:clamp(22px,5vw,42px)}
.order-list{margin:20px 0;border-block:1px solid var(--line)}
.order-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0}
.summary{width:100%;min-height:220px;border:1px solid var(--line);border-radius:12px;padding:14px;resize:vertical;background:#f9fbfa}
.form-intro,.pickup-head p,.ready-order>p{color:var(--muted)}
.simulation-notice{margin:18px 0;padding:16px 18px;border:1px solid #ebc7aa;border-left:5px solid #c86b2c;border-radius:12px;background:#fff8f1;color:#623b22}
.simulation-notice strong{display:block;margin-bottom:6px;font-size:1rem}
.simulation-notice p{margin:0;line-height:1.65}
.text-link,.policy-page a:not(.button){color:var(--brand);font-weight:750;text-decoration:underline;text-underline-offset:3px}
.form-grid,.pickup-filters{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:7px}
.field span,.delivery-fieldset legend{font-weight:750}
.field b,.delivery-fieldset b{color:var(--danger)}
.field input,.field textarea,.field select{width:100%;border:1px solid #bccbc7;border-radius:11px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit}
.field textarea{min-height:105px;resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{outline:3px solid rgba(20,184,166,.2);border-color:var(--brand2)}
.delivery-fieldset{border:0;padding:0;margin:26px 0}
.delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:9px}
.delivery-card,.pickup-card{display:flex;gap:12px;border:1px solid var(--line);border-radius:14px;padding:15px;cursor:pointer;background:#fff}
.delivery-card:has(input:checked),.pickup-card:has(input:checked){border-color:var(--brand);box-shadow:0 0 0 2px rgba(15,118,110,.13);background:#f2fbf9}
.delivery-card span,.pickup-card span{display:grid;gap:3px}
.delivery-card small,.pickup-card small,.pickup-card em{font-style:normal;color:var(--muted)}
.pickup-section{margin-top:26px;padding:22px;background:#f5faf8;border:1px solid var(--line);border-radius:16px}
.pickup-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:18px}
.pickup-head h2{font-size:1.2rem}
.pickup-head p{margin:4px 0 0;font-size:.9rem}
.pickup-head a{color:var(--brand);font-weight:700;white-space:nowrap}
.pickup-results{display:grid;gap:9px;max-height:440px;overflow:auto;padding:3px;margin-top:8px}
.pickup-card strong{color:var(--ink)}
.pickup-card em{font-size:.94rem}
.result-count{color:var(--muted);font-size:.9rem;margin-bottom:8px}
.field-error{color:var(--danger);font-weight:700}
.empty.compact{padding:24px}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.ready-order{margin-top:32px;padding-top:28px;border-top:2px solid var(--line)}
.whatsapp-button{background:#168c4c}
.whatsapp-button:hover{background:#10733d}
[hidden]{display:none!important}
.footer{padding:28px 0;color:var(--muted);border-top:1px solid var(--line);background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:18px}
.policy-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.policy-links a:hover{color:var(--brand)}
.policy-page{max-width:860px;margin:auto}
.policy-page h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;margin:8px 0 12px}
.policy-page .updated{color:var(--muted);margin:0 0 32px}
.policy-page h2{font-size:1.35rem;margin:30px 0 10px}
.policy-page h3{font-size:1.05rem;margin:20px 0 6px}
.policy-page p,.policy-page li{color:#4f5b66}
.policy-page ul,.policy-page ol{padding-left:1.35rem}
.policy-page li+li{margin-top:8px}
.policy-callout{margin:24px 0;padding:16px 18px;border-left:4px solid var(--brand);border-radius:0 12px 12px 0;background:#edf8f5}
.age-gate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(11,25,29,.86);backdrop-filter:blur(10px)}
.age-gate-card{width:min(540px,100%);padding:clamp(28px,6vw,48px);border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.35);text-align:center}
.age-gate-card h1{margin:7px 0 14px;font-size:clamp(1.7rem,5vw,2.5rem);line-height:1.12}
.age-gate-card>p:not(.eyebrow){color:var(--muted)}
.age-mark{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 18px;border-radius:50%;background:var(--brand);color:#fff;font-size:1.35rem;font-weight:900;box-shadow:0 0 0 9px #e3f3ef}
.age-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.age-note{margin:14px 0 0;font-size:.84rem}
.age-blocked{border-top:6px solid var(--danger)}
body.age-gate-open{overflow:hidden}
.toast{position:fixed;left:50%;bottom:24px;z-index:60;transform:translate(-50%,120px);background:var(--ink);color:#fff;padding:10px 18px;border-radius:999px;transition:.25s}
.toast.show{transform:translate(-50%,0)}
@media(max-width:760px){.nav{flex-wrap:wrap;padding:12px 0;gap:12px}
.brand{flex-basis:190px}
.brand img{width:185px;height:54px}
.nav-links{order:3;width:100%;overflow:auto;padding-bottom:3px}
.category-grid,.product-grid,.benefit-grid,.form-grid,.pickup-filters,.delivery-options{grid-template-columns:1fr}
.hero{padding:55px 0}
.section{padding:38px 0}
.section-head,.pickup-head{align-items:start;flex-direction:column}
.product-grid{gap:16px}
.product-search-row{align-items:stretch;flex-direction:column}
.product-search-row span{min-width:0;text-align:left}
.brand-group{padding:16px}
.brand-heading{align-items:start}
.brand-group .product-grid{grid-template-columns:minmax(0,1fr)}
.product-card{height:590px}
.product-card img{height:230px;flex-basis:230px}
.pickup-section{padding:16px}
.pickup-results{max-height:520px}
.footer-inner{flex-direction:column;text-align:center}
.age-actions{grid-template-columns:1fr}
}

/* HK DZY：銀白首頁與更緊湊的商品展示 */
body.home-page{background:#eff0ee}
.home-page .site-header{background:rgba(250,250,248,.9)}
.home-page .hero{padding:clamp(42px,7vw,92px) 0;background:radial-gradient(circle at 15% 15%,#fff 0,#f4f5f3 42%,#e4e6e3 100%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(30px,6vw,88px)}
.hero-media{overflow:hidden;border:1px solid rgba(112,124,120,.22);border-radius:28px;background:#e9ecea;box-shadow:0 24px 65px rgba(39,48,45,.13)}
.hero-media img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center}
.hero-copy{padding-block:12px}
.hero-copy h1{max-width:680px;font-size:clamp(2.35rem,5.1vw,5rem);letter-spacing:-.05em}
.hero-copy p{max-width:590px}
.home-page .seo-section{background:#e3e5e2}
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-card{min-height:190px;background:rgba(255,255,255,.76)}
.service-card h3{font-size:1.08rem}

.container{width:min(1440px,calc(100% - 40px))}
.brand-group .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.product-card{height:500px;border-radius:16px;box-shadow:0 8px 22px rgba(23,32,42,.075)}
.product-card img{height:170px;flex-basis:170px}
.product-body{padding:14px}
.product-body h3{font-size:1rem;line-height:1.35}
.product-body p{font-size:.88rem;line-height:1.45;margin-bottom:12px}
.variant-grid{grid-template-columns:minmax(0,1fr) 62px;gap:7px;margin-bottom:12px}
.variant-field{gap:4px}
.variant-field span{font-size:.74rem}
.variant-field select,.variant-field input{padding:8px 7px;font-size:.85rem}
.product-foot{gap:7px}
.product-foot .button{padding:8px 10px;font-size:.84rem;white-space:nowrap}
.price{font-size:1rem}
.hot-products{margin:0 0 28px;padding:22px;background:linear-gradient(135deg,#fff,#f4f7f5);box-shadow:none}
.hot-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px}
.hot-section-head h2{font-size:clamp(1.35rem,2.7vw,2rem)}
.hot-section-head p{margin:4px 0 0;color:var(--muted)}
.hot-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.hot-product-card{position:relative;height:415px}
.hot-product-card img{height:145px;flex-basis:145px}
.hot-product-card .product-body{padding:13px}
.hot-product-card .product-body p{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.hot-badge{position:absolute;top:10px;left:10px;z-index:1;padding:4px 9px;border-radius:999px;background:var(--brand);color:#fff;font-size:.75rem;font-weight:800;letter-spacing:.06em}

@media(max-width:1200px){.brand-group .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:920px){.hero-grid{grid-template-columns:1fr 1fr;gap:32px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-group .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.container{width:min(100% - 28px,1440px)}.hero-grid{grid-template-columns:1fr;gap:25px}.hero{padding:36px 0 46px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(2.35rem,11vw,3.4rem)}.hero-media{border-radius:20px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-card{min-height:0;padding:18px}.hot-products{padding:16px;margin-bottom:22px}.hot-section-head{align-items:start;flex-direction:column;gap:4px}.hot-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.brand-group .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-card{height:457px}.product-card img{height:128px;flex-basis:128px}.product-body{padding:11px}.product-body h3{font-size:.93rem}.product-body p{display:none}.variant-grid{grid-template-columns:1fr;margin-top:7px}.variant-field select,.variant-field input{font-size:.8rem}.quantity-field{max-width:78px}.product-foot{align-items:stretch;flex-direction:column}.product-foot .button{width:100%}.hot-product-card{height:430px}.hot-product-card img{height:126px;flex-basis:126px}.hot-product-card .product-body p{display:none}}

/* 卡片信息比例与首页留白 */
.container{width:min(1320px,calc(100% - 96px))}
.home-page .hero{padding:52px 0 58px}
.hero-grid{grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);gap:clamp(40px,7vw,100px)}
.hero-media{width:100%;max-width:520px;justify-self:start}
.home-hot-section{padding:42px 0 22px}
.product-card{height:580px}
.product-card>img{height:68%;flex:0 0 68%;object-fit:cover}
.product-body{min-height:0;padding:12px}
.product-body h3{margin:0 0 7px;font-size:.98rem}
.product-specs{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;margin-bottom:8px}
.capacity-chip{grid-column:1/-1;color:var(--muted);font-size:.76rem;font-weight:800}
.rating-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px;min-width:0}
.rating-row b{font-size:.7rem;color:var(--muted);white-space:nowrap}
.rating-stars{overflow:hidden;color:#e3a008;font-size:.72rem;font-style:normal;letter-spacing:-.08em;white-space:nowrap}
.ice-stars{color:#2583b8}
.variant-grid{margin-bottom:8px}
.product-foot{margin-top:auto}
.hot-product-card{height:auto}
.hot-product-card>img{width:100%;height:auto;aspect-ratio:1/1;flex:0 0 auto;object-fit:cover}
.hot-product-card .product-body{min-height:184px;padding:13px}
.hot-badge{top:12px;left:12px;padding:7px 12px;background:#d92d20;font-size:.82rem;box-shadow:0 5px 15px rgba(217,45,32,.35)}

@media(max-width:920px){.container{width:min(100% - 48px,1320px)}.hero-grid{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:36px}.product-card{height:540px}}
@media(max-width:760px){.container{width:min(100% - 28px,1320px)}.home-page .hero{padding:30px 0 38px}.hero-grid{grid-template-columns:1fr;gap:24px}.hero-media{max-width:410px;justify-self:center}.home-hot-section{padding:28px 0 10px}.product-card{height:455px}.product-card>img{height:58%;flex-basis:58%}.product-body{padding:10px}.product-body h3{font-size:.9rem}.product-specs{gap:3px 5px;margin-bottom:5px}.capacity-chip{font-size:.68rem}.rating-row{grid-template-columns:1fr}.rating-row b{font-size:.64rem}.rating-stars{font-size:.65rem}.variant-grid{grid-template-columns:1fr 58px;margin-top:2px}.quantity-field{max-width:none}.product-foot{align-items:center;flex-direction:row}.product-foot .button{width:auto;padding:7px 8px;font-size:.75rem}.hot-product-card{height:auto}.hot-product-card>img{height:auto;aspect-ratio:1/1;flex-basis:auto}.hot-product-card .product-body{min-height:190px}}

/* 首頁主圖改為較寬、較低的橫向比例 */
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,5vw,72px)}
.hero-media{max-width:620px}
.hero-media img{aspect-ratio:21/9;object-position:center}
@media(max-width:920px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero-media{max-width:560px}}
@media(max-width:760px){.hero-media{max-width:430px}.hero-media img{aspect-ratio:4/3}}

/* 卡片內多口味選擇與更清晰的商品參數 */
.product-card{height:auto;min-height:560px}
.product-card>img{height:300px;flex:0 0 300px}
.rating-row{gap:7px}
.rating-row b{font-size:.84rem}
.rating-stars{font-size:1rem;letter-spacing:0}
.card-variant-list{display:grid;gap:7px;margin-top:2px}
.card-variant-row{display:grid;grid-template-columns:minmax(0,1fr) 48px 26px;align-items:end;gap:6px}
.card-variant-field{display:grid;gap:3px;min-width:0}
.card-variant-field>span{color:var(--muted);font-size:.68rem;font-weight:800}
.card-variant-field select,.card-variant-field input{width:100%;min-width:0;height:34px;border:1px solid #bccbc7;border-radius:8px;padding:5px 7px;background:#fff;color:var(--ink);font:inherit;font-size:.78rem}
.card-variant-field input{text-align:center;padding-inline:3px}
.card-variant-field select:focus,.card-variant-field input:focus{outline:3px solid rgba(20,184,166,.2);border-color:var(--brand2)}
.card-remove-flavor{width:26px;height:34px;border:0;border-radius:8px;background:#fff0ee;color:var(--danger);cursor:pointer;font-size:1rem;font-weight:850}
.card-remove-spacer{width:26px;height:34px}
.add-flavor-button{align-self:flex-start;margin:5px 0 8px;padding:2px 0;border:0;background:transparent;color:var(--brand);cursor:pointer;font-size:.76rem;font-weight:850;text-align:left}
.add-flavor-button:hover{text-decoration:underline;text-underline-offset:3px}
.custom-flavor-request{margin:-2px 0 9px;padding:7px 8px;border:1px dashed #bad4e6;border-radius:9px;background:#f7fbfe}
.custom-flavor-request small{display:block;margin-bottom:6px;color:var(--muted);font-size:.67rem;line-height:1.38}
.custom-flavor-request>div{display:flex;gap:6px}
.custom-flavor-request input{min-width:0;flex:1;height:30px;border:1px solid #bccbc7;border-radius:7px;padding:4px 7px;background:#fff;color:var(--ink);font:inherit;font-size:.74rem}
.custom-flavor-request button{flex:0 0 auto;border:0;border-radius:7px;background:#e8f4fb;color:var(--brand);padding:4px 9px;cursor:pointer;font-size:.72rem;font-weight:800;line-height:1}
.custom-flavor-request input:focus{outline:3px solid rgba(20,184,166,.2);border-color:var(--brand2)}
.product-foot .card-cart-button{min-height:38px;padding:8px 11px;font-size:.78rem;white-space:nowrap}
.order-subtotal{margin-top:4px;border-top:1px dashed var(--line)}
.order-shipping{color:var(--muted)}
.order-grand-total{font-size:1.12rem;border-top:2px solid var(--line)}
.hot-product-card{min-height:0}
.hot-product-card>img{height:auto;flex-basis:auto;aspect-ratio:1/1}

@media(max-width:760px){
  .product-card{min-height:485px}
  .product-card>img{height:180px;flex-basis:180px}
  .rating-row b{font-size:.75rem}
  .rating-stars{font-size:.85rem}
  .card-variant-row{grid-template-columns:minmax(0,1fr) 42px 24px;gap:4px}
  .card-variant-field>span{font-size:.62rem}
  .card-variant-field select,.card-variant-field input{height:32px;padding:4px;font-size:.7rem}
  .card-remove-flavor{width:24px;height:32px}
  .card-remove-spacer{width:24px;height:32px}
  .add-flavor-button{font-size:.7rem}
  .product-foot{align-items:stretch;flex-direction:column}
  .product-foot .card-cart-button{width:100%;font-size:.74rem}
  .hot-product-card>img{height:auto;flex-basis:auto}
}

/* 更均衡的商品卡片：桌面四欄、圖片 4:3、手機兩欄 */
.brand-group .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.product-card{min-height:500px}
.product-card>img{height:auto;aspect-ratio:4/3;flex:0 0 auto;object-fit:cover}
.hot-product-card>img{aspect-ratio:1/1}
.service-card{min-height:150px;padding:24px}
.service-card h3{margin-top:0;font-size:1.12rem}

.order-success{max-width:620px;margin:20px auto;padding:42px 20px;text-align:center}
.success-check{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 20px;border-radius:50%;background:#e3f3ef;color:var(--brand);font-size:2rem;font-weight:900}
.order-success h2{margin:7px 0 10px;font-size:clamp(1.8rem,5vw,2.7rem)}
.order-success>p:not(.eyebrow){margin:0 auto 24px;color:var(--muted);max-width:480px}

.about-hero{padding:clamp(58px,9vw,118px) 0;background:linear-gradient(135deg,#f7f8f6 0,#e4e7e4 100%)}
.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:end;gap:clamp(40px,8vw,120px)}
.about-hero h1{max-width:760px;margin:10px 0 0;font-size:clamp(2.6rem,6vw,5.2rem);line-height:1.02;letter-spacing:-.05em}
.about-intro{font-size:1.08rem;color:var(--muted)}
.about-intro p{margin:0}
.about-intro p+p{margin-top:16px}
.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.about-values article{padding:30px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}
.about-values article>span{color:var(--brand);font-size:.78rem;font-weight:900;letter-spacing:.12em}
.about-values h2{margin:22px 0 10px;font-size:1.35rem}
.about-values p{margin:0;color:var(--muted)}
.about-contact-section{background:#e8efed}
.about-contact{display:flex;align-items:center;justify-content:space-between;gap:34px}
.about-contact h2{margin:5px 0 8px;font-size:clamp(1.8rem,4vw,3rem)}
.about-contact p:not(.eyebrow){margin:0;color:var(--muted)}

@media(max-width:1200px){.brand-group .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:920px){.brand-group .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-hero-grid{grid-template-columns:1fr}.about-values{grid-template-columns:1fr}.about-contact{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.product-card{min-height:430px}.product-card>img{height:auto;flex-basis:auto}.service-card{min-height:0;padding:18px}.about-hero{padding:54px 0}.about-values article{padding:22px}.about-contact .hero-actions{margin-top:0}}

/* 首頁主圖固定為正方形，手機端不再因舊比例規則而拉長 */
.home-page .hero-media{width:100%;max-width:520px;aspect-ratio:1/1;justify-self:start;background:#dfe4e1}
.home-page .hero-media img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;object-position:center}
@media(max-width:760px){.home-page .hero-media{width:min(100%,400px);max-width:400px;justify-self:center}.home-page .hero-media img{height:100%;aspect-ratio:1/1}}

/* 主機卡、積木容量選項與品牌系列篩選 */
.device-product-card{min-height:500px;border-color:#c7ddea}
.device-product-body{gap:0}
.device-type-label{display:block!important;margin:0 0 7px!important;color:var(--brand)!important;font-size:.72rem!important;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.device-description{display:block!important;margin:4px 0 16px!important;color:var(--muted)!important;font-size:.82rem!important;line-height:1.5!important;-webkit-line-clamp:4!important}
.device-pairing-note{display:block!important;margin:0 0 12px!important;padding:9px 10px;border-left:3px solid #d92d20;border-radius:0 8px 8px 0;background:#fff3f1;color:#8d2118!important;font-size:.72rem!important;font-weight:800;line-height:1.45!important}
.device-option-grid{display:grid;grid-template-columns:minmax(0,1fr) 62px;align-items:end;gap:8px;margin-top:auto;margin-bottom:12px}
.device-quantity input{text-align:center}
.product-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:7px}
.product-title-row h3{margin:0;flex:1}
.series-badge{flex:0 0 auto;padding:4px 7px;border-radius:999px;background:#eef2f1;color:#586661;font-size:.64rem;font-weight:900;white-space:nowrap}
.series-badge.kit{background:#fff0ee;color:#b42318}
.block-product-card{min-height:570px}
.block-capacity-field{margin:2px 0 8px}
.block-capacity-field select{font-weight:800;border-color:#9fc4dc}
.block-flavor-list{margin-top:0}
.kit-product-card{min-height:530px}
.kit-scent-field{margin-bottom:7px}
.kit-fixed-note{display:block!important;margin:0 0 10px!important;color:var(--muted)!important;font-size:.7rem!important;font-weight:750;line-height:1.4!important}
.brand-tools{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.brand-tools>span{background:#e8f4fb;color:var(--brand);border-radius:999px;padding:6px 11px;font-size:.85rem;font-weight:800;white-space:nowrap}
.brand-series-filters{display:flex;align-items:center;gap:10px;margin:0;padding:7px 10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.brand-series-filters legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.brand-series-filters label{display:flex;align-items:center;gap:5px;color:#4f5b66;font-size:.8rem;font-weight:800;white-space:nowrap;cursor:pointer}
.brand-series-filters input{width:16px;height:16px;accent-color:var(--brand)}
.brand-series-empty{margin:16px 0 0;padding:20px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);text-align:center}
.cart-pairing-warning{margin:14px 0;padding:14px;border:1px solid #f0b8b2;border-radius:12px;background:#fff4f2;color:#8d2118}
.cart-pairing-warning strong{display:block;margin-bottom:4px}
.cart-pairing-warning p{margin:0 0 8px;font-size:.88rem;line-height:1.5}
.cart-pairing-warning a{color:#8d2118;font-weight:850;text-decoration:underline}
.pairing-blocked{max-width:680px;margin:auto;padding:36px 12px;text-align:center}
.pairing-blocked h1{margin:8px 0 12px;font-size:clamp(1.8rem,5vw,2.8rem)}
.pairing-blocked>p:not(.eyebrow):not(.pairing-missing){max-width:560px;margin:0 auto;color:var(--muted)}
.pairing-missing{display:inline-block;margin:20px auto!important;padding:10px 14px;border:1px solid #f0b8b2;border-radius:999px;background:#fff4f2;color:#8d2118;font-weight:900}
.pairing-blocked .hero-actions{justify-content:center}

@media(max-width:760px){
  .device-product-card,.block-product-card{min-height:470px}
  .kit-product-card{min-height:440px}
  .device-description{font-size:.72rem!important;-webkit-line-clamp:3!important}
  .device-option-grid{grid-template-columns:minmax(0,1fr) 44px;gap:5px}
  .product-title-row{display:block}
  .series-badge{display:inline-flex;margin-bottom:6px;font-size:.58rem}
  .brand-heading{gap:10px;flex-direction:column}
  .brand-tools{width:100%;align-items:flex-start;justify-content:flex-start}
  .brand-series-filters{width:100%;justify-content:space-between;gap:5px;padding:7px}
  .brand-series-filters label{font-size:.66rem}
}

/* 商品卡片最終比例：提高圖片占比，縮短內容區，手機使用寬卡片 */
.brand-group .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:16px}
.product-card,
.device-product-card,
.block-product-card,
.kit-product-card{height:auto;min-height:0}
.product-card>img{width:100%;height:auto;aspect-ratio:1/1;flex:0 0 auto;object-fit:cover}
.product-card>.product-image-wrap{position:relative!important;display:block;isolation:isolate;align-self:stretch;width:100%;height:auto;aspect-ratio:1/1;flex:0 0 auto;overflow:hidden}
.product-card>.product-image-wrap>.product-image-trigger{display:block;width:100%;height:100%;object-fit:cover}
.product-body{min-height:0;flex:0 0 auto;padding:12px}
.product-body h3{margin:0 0 5px;font-size:.96rem;line-height:1.3}
.product-specs{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin-bottom:7px}
.capacity-chip{grid-column:auto;font-size:.7rem}
.rating-row{display:flex;align-items:center;gap:5px}
.rating-row b{font-size:.72rem}
.rating-stars{font-size:.82rem}
.card-variant-list{gap:5px;margin-top:0}
.card-variant-field{gap:2px}
.card-variant-field select,
.card-variant-field input{height:32px;padding:4px 6px;font-size:.75rem}
.card-remove-flavor,.card-remove-spacer{height:32px}
.add-flavor-button{margin:3px 0 6px;font-size:.72rem}
.product-foot{margin-top:7px;align-items:center;flex-direction:row}
.product-foot .card-cart-button{width:auto;min-height:34px;padding:7px 10px;font-size:.75rem}
.device-type-label{margin-bottom:4px!important;font-size:.66rem!important}
.device-description{margin:2px 0 8px!important;font-size:.74rem!important;line-height:1.4!important;-webkit-line-clamp:2!important}
.device-pairing-note{margin-bottom:8px!important;padding:7px 8px;font-size:.66rem!important;line-height:1.35!important}
.device-option-grid{margin-top:0;margin-bottom:6px}
.product-title-row{margin-bottom:5px}
.block-capacity-field{margin:0 0 6px}
.kit-scent-field{margin-bottom:5px}
.kit-fixed-note{margin-bottom:6px!important}
.hot-product-grid{align-items:start}
.hot-product-card>img{aspect-ratio:1/1}
.hot-product-card .product-body{min-height:0}

@media(max-width:1200px){
  .brand-group .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:920px){
  .brand-group .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:600px){
  .container{width:min(100% - 24px,1320px)}
  .brand-group .product-grid,
  .hot-product-grid{grid-template-columns:minmax(0,1fr);gap:16px}
  .product-card>img{aspect-ratio:5/4}
  .hot-product-card>img{aspect-ratio:1/1}
  .product-body{padding:13px 14px 14px}
  .product-body h3{font-size:1rem}
  .product-specs{gap:6px 12px;margin-bottom:8px}
  .capacity-chip{font-size:.74rem}
  .rating-row b{font-size:.74rem}
  .rating-stars{font-size:.88rem}
  .card-variant-row{grid-template-columns:minmax(0,1fr) 58px 28px;gap:6px}
  .card-variant-field>span{font-size:.68rem}
  .card-variant-field select,
  .card-variant-field input{height:36px;padding:5px 7px;font-size:.8rem}
  .card-remove-flavor,.card-remove-spacer{width:28px;height:36px}
  .product-foot{align-items:center;flex-direction:row}
  .product-foot .card-cart-button{width:auto;min-height:38px;padding:8px 13px;font-size:.8rem}
  .device-description{display:-webkit-box!important;font-size:.78rem!important;-webkit-line-clamp:2!important}
  .device-option-grid{grid-template-columns:minmax(0,1fr) 68px;gap:8px}
  .product-title-row{display:flex}
  .series-badge{display:inline-flex;margin-bottom:0;font-size:.62rem}
}

/* 分批載入與產品介紹視窗 */
.product-image-trigger{cursor:zoom-in;transition:transform .25s ease,filter .25s ease}
.product-image-hint{position:absolute;right:12px;bottom:12px;z-index:3;display:inline-flex;align-items:center;gap:5px;padding:6px 9px 6px 7px;border:1px solid rgba(255,255,255,.68);border-radius:999px;background:rgba(21,30,35,.72);box-shadow:0 5px 14px rgba(0,0,0,.18);color:#fff;font-size:.7rem;line-height:1;letter-spacing:.02em;pointer-events:none;backdrop-filter:blur(4px)}
.product-image-hint i{display:grid;place-items:center;width:18px;height:18px;border:1.5px solid currentColor;border-radius:50%;font-family:Arial,sans-serif;font-size:1.25rem;font-style:normal;font-weight:400;line-height:12px;transform:rotate(-18deg)}
.product-image-hint b{font-weight:800;white-space:nowrap}
.country-flag{position:absolute;top:16px;left:0;z-index:2;display:flex;align-items:center;gap:8px;padding:11px 19px 11px 14px;border-radius:0 999px 999px 0;background:#c92232;color:#fff;box-shadow:0 8px 18px rgba(124,21,30,.36);font-size:1.02rem;line-height:1;letter-spacing:.06em}
.country-flag span{font-size:1.48rem;line-height:1}
.country-flag b{font-weight:850;white-space:nowrap}
.product-image-trigger:focus-visible{outline:4px solid rgba(20,184,166,.45);outline-offset:-4px}
.product-card:hover .product-image-trigger{filter:brightness(.96);transform:scale(1.015)}
.product-scroll-loader{display:grid;place-items:center;min-height:104px;margin:10px 0 2px;color:var(--muted);font-size:.9rem;font-weight:750}
.product-scroll-loader span{display:inline-flex;align-items:center;gap:10px}
.product-scroll-loader span::before{width:18px;height:18px;border:2px solid #c7ddea;border-top-color:var(--brand);border-radius:50%;content:"";animation:product-loader-spin .8s linear infinite}
@keyframes product-loader-spin{to{transform:rotate(1turn)}}
body.product-modal-open{overflow:hidden}
.product-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:24px}
.product-modal[hidden]{display:none}
.product-modal-backdrop{position:absolute;inset:0;background:rgba(18,28,31,.38);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)}
.product-modal-card{position:relative;z-index:1;width:min(80vw,780px);max-height:80vh;overflow:auto;border:1px solid rgba(255,255,255,.68);border-radius:24px;background:#fbfcfb;box-shadow:0 28px 90px rgba(9,20,24,.34)}
.product-modal-image{display:block;width:100%;height:clamp(180px,30vh,300px);object-fit:cover;border-radius:24px 24px 0 0;background:#eef2f1}
.product-modal-close{position:sticky;top:14px;float:right;z-index:2;display:grid;place-items:center;width:38px;height:38px;margin:14px 14px 0 0;border:0;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 4px 14px rgba(23,32,42,.14);color:var(--ink);font-size:1.65rem;line-height:1;cursor:pointer}
.product-modal-content{padding:clamp(34px,5vw,58px)}
.product-modal-content h2{margin:5px 0 12px;font-size:clamp(1.65rem,3.2vw,2.7rem);line-height:1.08;letter-spacing:-.035em}
.product-modal-description{margin:0 0 24px;color:var(--muted);font-size:1rem;line-height:1.65}
.product-modal-content section{padding:19px 0;border-top:1px solid var(--line)}
.product-modal-content h3{margin:0 0 7px;font-size:1.08rem}
.product-modal-content section p{margin:0 0 9px;color:var(--muted);line-height:1.55}
.product-modal-content ul{display:grid;gap:7px;margin:0;padding-left:20px;color:#35423e;line-height:1.55}
.product-reasons{list-style:none;padding-left:0!important}
.product-reasons strong{color:var(--ink)}
@media(max-width:760px){
  .product-modal{padding:14px}
  .product-modal-card{width:min(92vw,620px);max-height:80svh;border-radius:19px}
  .product-modal-image{height:190px;border-radius:19px 19px 0 0}
  .product-modal-content{padding:24px 20px 28px}
  .product-modal-close{position:absolute;margin:10px 10px 0 0}
}

/* 購物車：商品可捲動，合計與結帳固定在底部 */
.cart-panel{display:flex;flex-direction:column;overflow:hidden;padding:0;background:#f5f7f6}
.cart-head{flex:0 0 auto;padding:22px 22px 17px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);box-shadow:0 4px 16px rgba(23,32,42,.04)}
.cart-head h2{margin:0;font-size:1.3rem;letter-spacing:-.025em}
.cart-head .icon-button{width:36px;height:36px;border-radius:50%;background:#f1f4f2;transition:background .2s ease,transform .2s ease}
.cart-head .icon-button:hover{background:#e3ece8;transform:rotate(90deg)}
#cart-items{flex:1 1 auto;min-height:0;overflow:auto;padding:10px 16px 18px;scrollbar-width:thin;scrollbar-color:#becdc8 transparent}
#cart-items::-webkit-scrollbar{width:6px}
#cart-items::-webkit-scrollbar-thumb{border-radius:999px;background:#becdc8}
.cart-item{grid-template-columns:70px minmax(0,1fr) auto;gap:11px;margin:10px 0;padding:11px;border:1px solid #e5ebe8;border-radius:15px;background:#fff;box-shadow:0 6px 16px rgba(23,32,42,.045)}
.cart-item img{width:70px;height:70px;border-radius:11px;background:#edf2f0}
.cart-item h4{margin:1px 0 4px;font-size:.9rem;line-height:1.32}
.cart-item small{display:block;color:var(--muted);font-size:.72rem;line-height:1.4}
.qty{gap:0;width:max-content;margin-top:9px;overflow:hidden;border:1px solid #dce6e2;border-radius:999px;background:#f7faf8}
.qty button{width:28px;height:28px;border:0;border-radius:0;background:transparent;color:var(--brand);font-size:1rem;font-weight:850;transition:background .18s ease}
.qty button:hover{background:#e3f0eb}
.qty span{display:grid;min-width:29px;place-items:center;color:var(--ink);font-size:.78rem;font-weight:850}
.remove{align-self:start;padding:5px 2px;border-radius:6px;font-size:.72rem;font-weight:800;transition:background .18s ease,color .18s ease}
.remove:hover{background:#fff0ee;color:#b42318}
.cart-pairing-warning{flex:0 0 auto;margin:0;padding:12px 22px;border-width:1px 0 0;border-radius:0;background:#fff7f5;box-shadow:0 -5px 14px rgba(80,35,30,.035)}
.cart-total{flex:0 0 auto;align-items:baseline;margin:0;padding:17px 22px 8px;border-top:1px solid var(--line);background:#fff;font-size:.9rem}
.cart-total span:last-child{color:var(--brand);font-size:1.38rem;letter-spacing:-.035em}
.cart-shipping-note{flex:0 0 auto;margin:0;padding:0 22px 12px;background:#fff;color:var(--muted);font-size:.77rem;line-height:1.45}
.cart-shipping-note strong{display:block;color:var(--brand)}
.cart-shipping-note span,.cart-shipping-note small{display:block}
.minimum-top-up-button{margin-top:8px;border:0;border-radius:8px;background:#ef6b40;color:#fff;padding:7px 10px;cursor:pointer;font:inherit;font-size:.75rem;font-weight:850}
.minimum-top-up-button:hover{background:#d95730}
.cart-top-up{border-color:#f0bcaa;background:#fff9f6}
.cart-top-up img{object-position:left center}
.top-up-note{margin-top:5px;color:#bd542f!important;font-weight:800}
.checkout-actions{flex:0 0 auto;padding:8px 22px 22px;background:#fff}
.checkout-actions .button{min-height:48px;border-radius:12px;box-shadow:0 10px 18px rgba(20,114,91,.2)}
.checkout-actions .button.is-disabled{background:#aeb8be;box-shadow:none;cursor:not-allowed}
#cart-items .empty{margin:28px 4px;padding:28px 18px;border:1px dashed #cfdad6;border-radius:15px;background:rgba(255,255,255,.72);text-align:center}
@media(max-width:520px){
  .cart-head{padding:18px 18px 14px}
  #cart-items{padding:9px 12px 16px}
  .cart-item{grid-template-columns:62px minmax(0,1fr) auto;padding:9px;gap:9px}
  .cart-item img{width:62px;height:62px}
  .cart-total{padding:15px 18px 7px}
  .cart-shipping-note{padding:0 18px 11px}
  .checkout-actions{padding:8px 18px calc(18px + env(safe-area-inset-bottom))}
  .cart-pairing-warning{padding-inline:18px}
}

/* 首頁 Hero：手機端明確改回單欄，避免桌面雙欄規則覆蓋 */
@media(max-width:760px){
  .home-page .hero{padding:24px 0 42px;overflow:hidden}
  .home-page .hero-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:26px}
  .home-page .hero-media{width:min(100%,360px);max-width:360px;aspect-ratio:1/1;justify-self:center;border-radius:20px}
  .home-page .hero-media img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover}
  .home-page .hero-copy{width:100%;padding:0}
  .home-page .hero-copy h1{max-width:12ch;margin:8px 0 14px;font-size:clamp(2.15rem,10vw,3.25rem);line-height:1.05}
  .home-page .hero-copy>p:not(.eyebrow){max-width:35rem;margin-bottom:20px;line-height:1.7}
  .home-page .hero-actions{gap:10px}
}
@media(max-width:390px){
  .home-page .hero-media{width:100%;max-width:none}
  .home-page .hero-copy h1{font-size:clamp(2rem,10.5vw,2.7rem)}
}

/* 銀白質感的全站頂部導覽 */
.site-header{border-bottom-color:rgba(188,201,196,.72);background:rgba(252,253,252,.86);box-shadow:0 6px 22px rgba(27,38,35,.045);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.site-header::after{position:absolute;right:0;bottom:-1px;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(20,118,110,.42),transparent);content:""}
.nav{min-height:86px;gap:18px}
.brand{flex:0 1 215px}
.brand img{width:198px;height:60px;filter:drop-shadow(0 2px 5px rgba(35,45,42,.06))}
.nav-links{align-items:center;gap:3px;padding:5px;border:1px solid rgba(211,222,218,.9);border-radius:999px;background:rgba(238,243,241,.78)}
.nav-links a{position:relative;padding:8px 11px;border-radius:999px;color:#4f5d59;font-size:.84rem;font-weight:780;white-space:nowrap;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.nav-links a:hover{background:rgba(255,255,255,.84);color:var(--brand)}
.nav-links a[aria-current=page]{background:#fff;color:var(--brand);box-shadow:0 3px 10px rgba(30,53,47,.1)}
.cart-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:42px;padding:10px 15px;border:1px solid rgba(8,85,79,.16);box-shadow:0 7px 15px rgba(15,118,110,.18);letter-spacing:.01em;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}
.cart-button::before{font-size:.94rem;content:"⌑"}
.cart-button:hover{box-shadow:0 10px 20px rgba(15,118,110,.25);transform:translateY(-1px)}
.cart-button:focus-visible,.nav-links a:focus-visible,.brand:focus-visible{outline:3px solid rgba(20,184,166,.32);outline-offset:3px}
@media(max-width:760px){
  .nav{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:0;gap:10px;padding:10px 0 11px}
  .brand{width:auto;min-width:0;margin:0}
  .brand img{width:174px;height:48px}
  .cart-button{min-height:38px;padding:8px 11px;font-size:.78rem}
  .nav-links{grid-column:1/-1;order:initial;width:100%;gap:4px;overflow:auto;padding:4px;border-radius:14px;scrollbar-width:none}
  .nav-links::-webkit-scrollbar{display:none}
  .nav-links a{flex:0 0 auto;padding:8px 10px;font-size:.76rem}
}
@media(max-width:390px){
  .brand img{width:154px}
  .cart-button{padding:8px 9px}
  .cart-button::before{display:none}
}

/* 積木系列：同品牌的套裝、純替換與主機卡片保持等高 */
@media(min-width:761px){
  body[data-category="block"] .brand-group .product-grid{align-items:stretch}
  body[data-category="block"] .brand-group .product-card{height:100%}
  body[data-category="block"] .brand-group .product-body{flex:1 1 auto}
}

/* 商品價格與購物車按鈕固定對齊在卡片底部 */
.brand-group .product-grid,
.hot-product-grid{align-items:stretch}
.brand-group .product-card,
.hot-product-card{height:100%}
.brand-group .product-card .product-body,
.hot-product-card .product-body{flex:1 1 auto}
.brand-group .product-card .product-foot,
.hot-product-card .product-foot{margin-top:auto}
.brand-row-actions{display:flex;justify-content:center;gap:9px;margin:16px auto 0}
.brand-quick-nav{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:13px 15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.82)}
.brand-quick-nav>span{flex:0 0 auto;color:#171717;font-size:.86rem;font-weight:900}
.brand-quick-nav>div{display:flex;flex-wrap:wrap;gap:9px}
.brand-quick-nav a{border:1px solid #bad4e6;border-radius:999px;background:#fff;color:#171717;padding:8px 13px;font-size:.86rem;font-weight:850;text-decoration:none;white-space:nowrap}
.brand-quick-nav a:hover{border-color:#171717;background:#f1f4f6;color:#171717}
.brand-show-more,.brand-collapse{display:block;border:1px solid #bad4e6;border-radius:999px;background:#fff;color:var(--brand);padding:9px 18px;cursor:pointer;font-size:.82rem;font-weight:850}
.brand-show-more:hover,.brand-collapse:hover{background:#eaf5fc}
.brand-show-more[hidden],.brand-collapse[hidden]{display:none}
.product-inquiry-notice{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:11px 14px;border:1px solid #bad4e6;border-radius:12px;background:#f5fbff;color:#405366;font-size:.84rem}
.product-inquiry-notice strong{color:#171717}
.product-inquiry-notice a,.brand-stock-notice a{color:#287cb9;font-weight:850;text-decoration:underline;text-underline-offset:2px}
.brand-stock-notice{margin:-5px 0 15px;padding:9px 11px;border-left:3px solid #ef6b40;border-radius:0 8px 8px 0;background:#fff8f5;color:#75402d;font-size:.82rem;font-weight:750}

/* 商品參數：甜度與冰度固定同一行 */
.product-specs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:5px 10px}
.product-specs .capacity-chip{grid-column:1/-1}
.product-specs .spec-summary{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.product-specs .spec-summary .capacity-chip{grid-column:auto}
.nicotine-chip{color:#a44718;font-size:.72rem;font-weight:850;white-space:nowrap}

@media(max-width:600px){
  .brand-quick-nav{align-items:flex-start;flex-direction:column;gap:7px;padding:10px}
  .brand-quick-nav>div{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
  .brand-quick-nav>div::-webkit-scrollbar{display:none}
  .brand-quick-nav a{flex:0 0 auto;font-size:.68rem;padding:6px 9px}
  .brand-group .product-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .hot-product-grid{gap:22px}
  .brand-group .product-image-wrap{aspect-ratio:5/3}
  .product-image-hint{right:10px;bottom:10px}.product-image-hint b{display:block}
  .brand-group .product-body{padding:13px 14px 14px}
  .brand-group .product-body h3{font-size:1rem}
  .brand-group .product-specs{gap:6px 12px}
  .brand-group .capacity-chip,.brand-group .nicotine-chip{font-size:.76rem}
  .brand-group .rating-row b,.brand-group .rating-stars{font-size:.78rem}
  .brand-group .card-variant-field>span,.brand-group .add-flavor-button,.brand-group .custom-flavor-request{font-size:.73rem}
  .brand-group .card-variant-field select,.brand-group .card-variant-field input{height:34px;font-size:.78rem}
  .brand-group .product-foot{align-items:center;flex-direction:row;gap:10px}
  .brand-group .product-foot .card-cart-button{width:auto;padding:8px 11px;font-size:.78rem}
}
.product-specs .rating-row{display:flex;align-items:center;min-width:0;gap:5px}
.product-specs .rating-stars{white-space:nowrap}

/* 價格在卡片底部保持清晰醒目 */
.product-foot .price{font-size:1.48rem;font-weight:900;letter-spacing:-.035em;color:#171717;line-height:1;white-space:nowrap}
.product-foot .card-cart-button{background:#ef6b40;color:#fff;box-shadow:0 6px 13px rgba(211,77,37,.2)}
.product-foot .card-cart-button:hover{background:#d95730}
.card-minimum-note{margin:8px 0 0;color:#6f6f6b;font-size:.72rem;line-height:1.45}
.product-foot .card-cart-button:disabled,.product-foot .card-cart-button:disabled:hover{background:#b9b9b5;color:#fff;cursor:not-allowed;box-shadow:none}
@media(max-width:600px){.brand-group .product-foot .price{font-size:1.42rem}}

/* 加強產品卡片的視覺分隔 */
.brand-group .product-card,.hot-product-card{background:#fff;border:1px solid #bfd9ea;border-radius:18px;box-shadow:0 9px 22px rgba(29,89,132,.12);isolation:isolate}
.brand-group .product-card::after,.hot-product-card::after{position:absolute;inset:0;border:1px solid rgba(255,255,255,.75);border-radius:inherit;content:"";pointer-events:none}
.brand-group .product-card:hover,.hot-product-card:hover{border-color:#70add1;box-shadow:0 14px 28px rgba(29,89,132,.18)}
@media(max-width:600px){.brand-group .product-card{border-width:2px;box-shadow:0 10px 24px rgba(22,54,45,.14)}}

/* HK DZY：保留原有圖標，重新繪製簡約藝術字標 */
.brand{position:relative;gap:10px;flex-basis:245px}
.brand img{width:82px;height:58px;flex:0 0 82px;object-fit:cover;object-position:left center}
.brand::after{content:"HK DZY";display:block;color:#2678b5;font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;font-size:1.34rem;font-weight:900;font-style:normal;letter-spacing:.06em;line-height:1;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.8)}
@media(max-width:760px){.brand{gap:8px;flex-basis:190px}.brand img{width:68px;height:50px;flex-basis:68px}.brand::after{font-size:1.08rem;letter-spacing:.04em}}

/* 手機版漢堡選單：Logo、選單與購物車同列，導航按需要展開 */
.mobile-nav-toggle{display:none}
@media(max-width:760px){
  .nav{position:relative;grid-template-columns:minmax(0,1fr) 42px auto;min-height:0;gap:9px;padding:9px 0}
  .brand{min-width:0;margin:0}
  .mobile-nav-toggle{display:grid;place-content:center;gap:4px;width:42px;height:40px;border:1px solid #c8d9e3;border-radius:12px;background:#fff;color:#266b9d;cursor:pointer}
  .mobile-nav-toggle span{display:block;width:18px;height:2px;border-radius:99px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
  .nav.mobile-nav-open .mobile-nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .nav.mobile-nav-open .mobile-nav-toggle span:nth-child(2){opacity:0}
  .nav.mobile-nav-open .mobile-nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .cart-button{min-height:40px;padding:8px 11px;font-size:.78rem}
  .nav-links{position:absolute;top:calc(100% + 7px);right:0;left:0;z-index:30;display:none;flex-direction:column;align-items:stretch;gap:2px;width:auto;padding:8px;border:1px solid #c8d9e3;border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 14px 32px rgba(35,65,85,.16);overflow:visible}
  .nav.mobile-nav-open .nav-links{display:flex}
  .nav-links a{padding:10px 12px;border-radius:10px;font-size:.84rem}
}

@media(max-width:600px){.brand-quick-nav{padding:12px;gap:9px}.brand-quick-nav>span{font-size:.8rem}.brand-quick-nav a{padding:7px 11px;font-size:.78rem}}

/* 手機產品頁：品牌導覽固定於 Header 下方，並標示目前區域 */
@media(max-width:600px){
  .brand-quick-nav{position:sticky;top:calc(var(--mobile-header-height, 0px) + 8px);z-index:19;margin:0 0 16px;border-color:#bad4e6;background:rgba(255,255,255,.96);box-shadow:0 8px 20px rgba(29,89,132,.12)}
  .brand-quick-nav a.is-active{border-color:#2678b5;background:#2678b5;color:#fff;box-shadow:0 3px 9px rgba(38,120,181,.23)}
}

/* 全頁固定 WhatsApp 聯絡按鈕 */
#whatsapp-float{position:fixed;right:22px;bottom:86px;z-index:35;display:grid;place-items:center;width:56px;height:56px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:0 10px 24px rgba(16,125,68,.24);line-height:1;transition:transform .18s ease,filter .18s ease}
#whatsapp-float img{display:block;width:100%;height:100%;filter:drop-shadow(0 1px 1px rgba(0,0,0,.06))}
#whatsapp-float:hover{transform:translateY(-3px);filter:brightness(1.04)}
#whatsapp-float:focus-visible{outline:3px solid #b7ddf3;outline-offset:3px}
@media(max-width:600px){#whatsapp-float{right:14px;bottom:76px;width:52px;height:52px}}

/* 全站黑白主題：暗白背景、純白組件與黑色導覽 */
body,body.home-page{background:#f4f5f9}
.hero,.home-page .hero{background:linear-gradient(135deg,#e2e2df,#f7f7f5)}
.seo-section,.home-page .seo-section{background:#f4f5f9}
.about-contact-section{background:#e1e1de}
.brand-group,.hot-products,.service-card,.category-card,.panel,#cart-panel{background:#fff}
.site-header,.home-page .site-header{background:rgba(255, 255, 255, 1);border-bottom-color:#d0d0cc}
.site-header::after{background:linear-gradient(90deg,transparent,rgba(23,23,23,.38),transparent)}
.nav-links{border-color:#d4d4d0;background:#fff}
.nav-links a,.nav-links a:hover,.nav-links a[aria-current=page]{color:#171717}
.nav-links a:hover,.nav-links a[aria-current=page]{background:#eeeeeb;box-shadow:none}
.brand::after{color:#171717}
.button,.cart-button{background:#fc6f03}
.button:hover,.cart-button:hover{background:#333}
.button.secondary{background:#fff;color:#171717;border:1px solid #bdbdb8}
.eyebrow,.brand-heading>span,.brand-tools>span{color:#171717}
.brand-heading>span,.brand-tools>span{background:#fff;border:1px solid #d7d7d3}
.product-inquiry-notice{border-color:#d3d3cf;background:#fff;color:#333}
.product-inquiry-notice a,.brand-stock-notice a{color:#00962d}
.custom-flavor-request{border-color:#cfcfca;background:#fff}
.custom-flavor-request button{background:#171717;color:#fff}
.brand-quick-nav a,.brand-show-more,.brand-collapse{border-color:#bdbdb8;color:#171717}
.brand-show-more:hover,.brand-collapse:hover,.brand-quick-nav a:hover{border-color:#171717;background:#f0f0ed;color:#171717}
.brand-group .product-card,.hot-product-card{border-color:#d2d2ce;box-shadow:0 9px 22px rgba(0,0,0,.1)}
.brand-group .product-card:hover,.hot-product-card:hover{border-color:#171717;box-shadow:0 14px 28px rgba(0,0,0,.14)}
.product-foot .card-cart-button{background:#ef6b40;box-shadow:0 6px 13px rgba(211,77,37,.22)}
.product-foot .card-cart-button:hover{background:#d95730}
.add-flavor-button,.custom-flavor-request button{border-radius:7px;background:#18945b!important;color:#fff!important;padding:6px 10px}
.add-flavor-button:hover,.custom-flavor-request button:hover{background:#117443!important;text-decoration:none}
.add-flavor-button{padding:2px 0!important;border-radius:0!important;background:transparent!important;color:var(--brand)!important}
.add-flavor-button:hover{background:transparent!important;text-decoration:underline!important;text-underline-offset:3px}
.mobile-nav-toggle{border-color:#bdbdb8!important;color:#171717!important}
.nav-links{border-color:#d0d0cc!important}
@media(max-width:600px){.brand-quick-nav{border-color:#c8c8c4;background:rgba(255,255,255,.97);box-shadow:0 8px 20px rgba(0,0,0,.11)}.brand-quick-nav a.is-active{border-color:#171717;background:#171717;box-shadow:0 3px 9px rgba(0,0,0,.2)}}

/* 購物車只保留圖示，右上角以紅色徽章顯示數量 */
.cart-button,.cart-button:hover{position:relative;width:46px;min-height:42px;padding:0!important;border:0!important;border-radius:0;background:transparent;color:#171717;font-size:0;box-shadow:none;transform:none}
.cart-button::before{display:block!important;content:"🛒︎"!important;font-family:Arial,sans-serif;font-size:1.55rem;line-height:1}
.cart-button [data-cart-count]{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:#d92d20;color:#fff;font-size:.66rem;font-weight:900;line-height:1}

/* 價格統一以橙色美元格式顯示 */
.product-foot .price,#cart-total,.cart-shipping-note span,.cart-shipping-note small,.cart-item small,.order-row strong{color:#262626!important}

/* 首頁產品類型探索：左右導覽式版面 */
.category-explorer{padding:34px 0 58px}
.category-explorer-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);overflow:hidden;border-radius:28px;background:#fff;box-shadow:0 16px 38px rgba(0,0,0,.1)}
.category-explorer-intro{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:540px;padding:clamp(34px,5vw,76px);background:#171717 url("../assets/products/intro.webp") center/cover no-repeat;color:#fff}
.category-explorer-intro::before{position:absolute;z-index:0;inset:0;background:rgba(12,12,12,.58);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);content:""}
.category-explorer-intro>*{position:relative;z-index:1}
.category-explorer-intro .eyebrow{color:#ef6b40}
.category-explorer-intro h2{margin:18px 0 auto;font-size:clamp(2.6rem,5vw,5.2rem);line-height:1.08;letter-spacing:-.06em}
.category-explorer-intro>p:last-child{max-width:450px;margin:42px 0 0;color:#d6d6d2;font-size:1rem;line-height:1.8}
.category-explorer-options{padding:clamp(34px,5vw,76px);background:#fff}
.category-explorer-options>.eyebrow{margin:0 0 20px;color:#ef6b40}
.category-explorer-options>h2{max-width:620px;margin:0 0 46px;font-size:clamp(2rem,4vw,3.8rem);line-height:1.15;letter-spacing:-.05em}
.category-explorer .category-grid{display:grid;grid-template-columns:1fr;gap:16px}
.category-explorer .category-card{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:112px;padding:22px 26px;border:1px solid #ddddda;border-radius:20px;background:#fff;box-shadow:none;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.category-explorer .category-card:hover{border-color:#171717;transform:translateX(4px);box-shadow:0 8px 18px rgba(0,0,0,.08)}
.category-explorer .category-card h3{margin:0 0 4px;font-size:1.16rem}
.category-explorer .category-card p{margin:0;color:#747474;font-size:.9rem}
.category-card-action{flex:0 0 auto;color:#ef6b40;font-size:.68rem;font-weight:850;white-space:nowrap}
@media(max-width:760px){
  .category-explorer{padding:22px 0 40px}
  .category-explorer-layout{grid-template-columns:1fr;border-radius:20px}
  .category-explorer-intro{min-height:300px;padding:34px 26px}
  .category-explorer-intro h2{margin:10px 0 0;font-size:clamp(2.25rem,12vw,3.3rem)}
  .category-explorer-intro>p:last-child{margin-top:24px;font-size:.9rem}
  .category-explorer-options{padding:30px 20px}
  .category-explorer-options>h2{margin-bottom:28px;font-size:2rem}
  .category-explorer .category-card{min-height:94px;padding:18px;gap:14px;border-radius:16px}
  .category-explorer .category-card h3{font-size:1rem}
  .category-explorer .category-card p{font-size:.8rem;line-height:1.45}
  .category-card-action{font-size:.64rem}
}

/* 產品卡片只保留層次陰影，不顯示邊框或內描邊 */
.brand-group .product-card,.hot-product-card{border:0!important}
.brand-group .product-card::after,.hot-product-card::after{display:none}
.brand-group .product-card:hover,.hot-product-card:hover{border-color:transparent!important}

/* 首頁 Hero：參考強對比大字版式，白色背景 */
.home-page .hero{padding:clamp(40px,5vw,68px) 0;background:#fff}
.home-page .hero-grid{grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);align-items:center;gap:clamp(36px,7vw,112px)}
.home-page .hero-copy{order:1;padding:0}
.home-page .hero-copy .eyebrow{margin:0 0 22px;color:#ef6b40;letter-spacing:.14em}
.home-page .hero-copy h1{max-width:760px;margin:0 0 32px;font-size:clamp(3.1rem,6.6vw,6.6rem);line-height:1.02;letter-spacing:-.075em}
.home-page .hero-copy>p:not(.eyebrow){max-width:620px;margin:0;color:#737373;font-size:1.05rem;line-height:1.8}
.home-page .hero-media{order:2;justify-self:end;width:min(100%,420px);max-width:none;aspect-ratio:1/1;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}
.home-page .hero-media img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center}
@media(max-width:760px){
  .home-page .hero{padding:32px 0 38px}
  .home-page .hero-grid{grid-template-columns:1fr;gap:30px}
  .home-page .hero-copy{order:1}
  .home-page .hero-copy .eyebrow{margin-bottom:14px;font-size:.68rem}
  .home-page .hero-copy h1{margin-bottom:20px;font-size:clamp(2.9rem,14vw,4.35rem);line-height:1.04}
  .home-page .hero-copy>p:not(.eyebrow){font-size:.92rem}
  .home-page .hero-media{order:2;justify-self:center;width:min(100%,360px);aspect-ratio:1/1}
}

/* 頂部不顯示邊框或底部細線 */
.site-header,.home-page .site-header{border-bottom:0!important}
.site-header::after{display:none}
.site-header,.home-page .site-header{box-shadow:0 4px 12px rgba(0,0,0,.045)}

/* 首頁快速探索 */
.quick-explorer{padding:34px 0 48px;background:#f4f5f9}
.quick-explorer-head{margin-bottom:18px}
.quick-explorer-head .eyebrow{margin:0 0 5px;color:#ef6b40}
.quick-explorer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.quick-explorer-card{position:relative;display:block;min-height:250px;overflow:hidden;border-radius:20px;background:#171717;box-shadow:none}
.quick-explorer-card::after{display:none}
.quick-explorer-card img{width:100%;height:100%;min-height:250px;object-fit:cover;transition:transform .3s ease}
.quick-explorer-card span{position:absolute;z-index:1;right:20px;bottom:17px;color:#5f5f5c;font-size:clamp(.76rem,1.1vw,.9rem);font-weight:750;letter-spacing:-.02em}
.quick-explorer-card:hover img{transform:scale(1.045)}
@media(max-width:760px){.quick-explorer{padding:24px 0 34px}.quick-explorer-grid{grid-template-columns:1fr;gap:14px}.quick-explorer-card,.quick-explorer-card img{min-height:190px}.quick-explorer-card span{right:16px;bottom:14px;left:auto;font-size:.78rem}}

/* 首頁與關於我們頁面的指定按鈕／背景 */
.home-page .hero-actions>a.button{border:1px solid #171717;background:#fff;color:#171717}
.home-page .hero-actions>a.button:hover{background:#f1f1ef;color:#171717}
.about-page .about-hero{background:#fff}
.about-page .about-contact-section{background:#fff}
.about-page .about-contact .whatsapp-button{border-color:#18945b;background:#18945b;color:#fff}
.about-page .about-contact .whatsapp-button:hover{border-color:#117443;background:#117443;color:#fff}
