@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+TC:wght@400;500;600;700&display=swap');
:root{--ink:#1b2924;--sage:#dce5da;--cream:#f7f5ef;--paper:#fffdf9;--accent:#d76145;--muted:#68726e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Noto Sans TC",sans-serif}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.nav{height:88px;display:flex;align-items:center;justify-content:space-between}.brand{color:var(--ink);font-weight:700;font-size:20px;text-decoration:none;line-height:1.05;display:flex;align-items:center;gap:8px}.brand small{display:block;font:9px "DM Mono";letter-spacing:1px;color:var(--muted);position:absolute;margin:31px 0 0 29px}.brand-mark{color:var(--accent);font-size:26px}.nav nav{display:flex;align-items:center;gap:25px}.nav a,.cart-link,.text-button{font:500 14px "Noto Sans TC";color:var(--ink);text-decoration:none;border:0;background:none;cursor:pointer}.cart-link b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ink);color:white;font:11px "DM Mono"}.hero{display:grid;grid-template-columns:1fr 1.05fr;min-height:575px;gap:54px;align-items:center;padding:44px 0 70px}.eyebrow{font:11px "DM Mono";letter-spacing:1.5px;color:var(--accent);margin:0 0 13px}.hero h1,.finder-section h2,.section-heading h2,.how h2,dialog h2{font-size:clamp(34px,4.5vw,60px);line-height:1.15;letter-spacing:-2px;margin:0;font-weight:600}.hero h1 em{font-style:normal;color:var(--accent)}.intro{font-size:16px;line-height:1.8;max-width:420px;color:#52615b;margin:25px 0}.button{border:0;padding:14px 19px;font:600 14px "Noto Sans TC";cursor:pointer;text-decoration:none;display:inline-flex;gap:19px;align-items:center;justify-content:center}.dark{background:var(--ink);color:white}.pale{background:var(--sage);color:var(--ink);height:46px;align-self:end}.full{width:100%}.hero-notes{display:flex;gap:18px;margin-top:27px;color:var(--muted);font-size:12px}.hero-image{height:460px;position:relative;overflow:hidden;background:#e6e3db}.hero-image img{width:100%;height:100%;object-fit:cover}.image-note{position:absolute;bottom:18px;left:18px;background:var(--paper);padding:12px 15px;font-size:12px;line-height:1.6}.image-note b{font:10px "DM Mono";letter-spacing:1px;color:var(--accent)}.finder-section{background:var(--sage);padding:76px 0}.finder-section h2{font-size:42px}.finder-section>.wrap>p:not(.eyebrow):not(.search-message){color:#52615b}.finder-card{margin-top:29px;background:var(--paper);padding:16px}.query-row{display:flex;border:1px solid #cdd4ca;align-items:center;padding-left:15px}.search-icon{font-size:30px;margin-right:10px}.query-row input{border:0;background:transparent;outline:0;width:100%;padding:15px 0;font:14px "Noto Sans TC"}.query-row .button{white-space:nowrap;margin:-1px;height:52px}.or{height:36px;display:grid;place-items:center;color:#8a928d;font:11px "DM Mono"}.or span{background:var(--paper);padding:0 9px;position:relative;z-index:1}.or:before{content:"";height:1px;background:#dce1d9;width:100%;position:absolute}.filters{display:grid;grid-template-columns:1.3fr repeat(3,1fr) auto;gap:9px}.filters label,.form-grid label{display:grid;gap:7px;font-size:11px;color:var(--muted)}input,select{width:100%;border:1px solid #ccd4ce;border-radius:0;background:#fff;padding:12px;font:14px "Noto Sans TC";color:var(--ink);outline-color:var(--accent)}.search-message{font-size:13px;color:#53615b;margin:16px 0 0}.products{padding:90px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-heading h2{font-size:40px}.text-button{color:var(--accent);text-decoration:underline}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.product-card{background:var(--paper);cursor:pointer;transition:transform .2s}.product-card:hover{transform:translateY(-4px)}.product-image{height:225px;background:#ede9df;overflow:hidden}.product-image img{width:200%;height:200%;object-fit:cover}.pos-1 img{object-position:0 0}.pos-2 img{object-position:100% 0}.pos-3 img{object-position:0 100%}.pos-4 img{object-position:100% 100%}.product-info{padding:17px}.tag{font:10px "DM Mono";color:var(--accent);letter-spacing:.6px}.product-info h3{font-size:16px;margin:7px 0;font-weight:600}.dimensions{font:12px "DM Mono";color:var(--muted)}.price{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-weight:700}.price span{font-size:12px;font-weight:400;color:var(--muted)}.how{padding:80px 0;background:var(--ink);color:white}.how h2{font-size:42px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:45px}.steps>div{border-top:1px solid #56635e;padding-top:16px}.steps b{font:13px "DM Mono";color:#bdcdbb}.steps h3{font-size:19px;margin:18px 0 5px}.steps p{font-size:14px;line-height:1.8;color:#bdc7c1;max-width:280px}footer{padding:35px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.cart-drawer{position:fixed;z-index:10;right:0;top:0;height:100%;width:min(420px,100%);background:var(--paper);padding:25px;transform:translateX(100%);transition:.28s;display:flex;flex-direction:column}.cart-drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e4dc;padding-bottom:16px}.drawer-head h2{font-size:24px;margin:0}.close{border:0;background:none;font-size:31px;line-height:1;cursor:pointer;color:var(--ink)}#cartItems{flex:1;padding:16px 0}.cart-item{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #e7e9e3;font-size:14px}.cart-item small{display:block;color:var(--muted);margin-top:5px}.remove{border:0;background:none;color:var(--accent);cursor:pointer}.drawer-foot{border-top:1px solid #e1e4dc;padding-top:15px}.drawer-foot p{font-size:12px;color:var(--muted)}.overlay{position:fixed;inset:0;background:rgba(20,35,29,.35);z-index:9;opacity:0;pointer-events:none;transition:.25s}.overlay.show{opacity:1;pointer-events:auto}dialog{border:0;padding:30px;background:var(--paper);color:var(--ink);width:min(650px,calc(100% - 28px));box-shadow:0 20px 70px #162c2230}dialog::backdrop{background:#14261f78}.modal-close{position:absolute;right:16px;top:15px;z-index:1}.detail{display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail-image{height:300px;overflow:hidden;background:#eee}.detail-image img{width:200%;height:200%;object-fit:cover}.detail h2{font-size:31px}.detail p{line-height:1.7;color:var(--muted);font-size:14px}.detail-spec{border-top:1px solid #dfe4dc;border-bottom:1px solid #dfe4dc;padding:13px 0;margin:18px 0;font:12px "DM Mono";line-height:1.8}.detail-price{font-size:23px;font-weight:700;margin-bottom:14px}.form-note{color:var(--muted);font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.form-grid .wide{grid-column:span 2}fieldset{border:1px solid #d8ddd5;margin:0 0 21px;padding:13px}legend{font-size:12px;color:var(--muted)}.radio{font-size:13px;margin-right:18px}.radio input{width:auto}.success{text-align:center;width:min(380px,calc(100% - 28px))}.success-icon{width:55px;height:55px;border-radius:50%;display:grid;place-items:center;background:var(--sage);font-size:25px;margin:0 auto 15px}.success h2{font-size:29px}.success p{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:22px}@media(max-width:780px){.wrap{width:min(100% - 32px,1160px)}.nav{height:74px}.nav a:not(.brand),.nav nav a{display:none}.hero{grid-template-columns:1fr;padding-top:22px;gap:35px}.hero-image{height:310px}.filters{grid-template-columns:1fr 1fr}.filters .button{grid-column:span 2}.query-row{align-items:stretch}.query-row .button{font-size:12px;padding:10px}.product-grid{grid-template-columns:1fr 1fr}.product-image{height:190px}.steps{grid-template-columns:1fr}.how{padding:60px 0}.section-heading h2,.finder-section h2,.how h2{font-size:32px}footer{display:grid;gap:8px}.detail{grid-template-columns:1fr}.detail-image{height:220px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}

dialog{max-height:90vh;overflow:auto}.detail-image img,.product-image img{width:100%;height:100%;object-fit:contain}.nav nav{flex-wrap:wrap;gap:12px}.filters label,.form-grid label{font-size:14px}.or{position:relative}.cart-drawer:not(.open){visibility:hidden}#cartItems{overflow:auto}@media(max-width:780px){.nav{height:auto;min-height:85px;gap:12px;flex-wrap:wrap;padding:15px 0}.nav nav a{display:inline!important}.hero-notes{flex-wrap:wrap}.detail-image{height:180px}}


.save-order-reminder{background:#fff0c2;color:#713e00!important;border:2px solid #bd7200;padding:14px;font-size:21px!important;font-weight:800;line-height:1.5}.save-order-reminder small{display:block;font-size:15px;font-weight:600}.receipt-credentials{text-align:left}.receipt-credentials>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.receipt-credentials strong{width:100%}.receipt-credentials span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:17px;font-weight:700;user-select:text}.receipt-credentials button{padding:8px 12px}#copyResult{font-weight:700;color:#24583f}#successDialog{max-height:90vh;overflow-y:auto}

[hidden]{display:none!important}

.delivery-time-heading{font-size:20px;color:#1b2924}.delivery-time-heading strong{font-size:24px}.delivery-time-banner{background:#fff0ca;border:2px solid #99721d;border-radius:10px;padding:18px;color:#33260b}.delivery-time-banner span{display:block;font-weight:700}.delivery-time-banner strong{display:block;font-size:32px;line-height:1.5}.delivery-time-banner p{margin:6px 0 0;font-size:15px}

/* Brand tagline and concise, verifiable store contact information. */
.brand-copy small{font-family:"Noto Sans TC",sans-serif;font-size:10px;letter-spacing:.2px;line-height:1.6}.brand-logo{width:42px;height:42px}
.store-section{padding:76px 0;background:#eeeae1}.store-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:start}.store-section h2{font-size:34px;line-height:1.4;margin:0}.store-intro{font-size:18px;line-height:1.9}.store-note{max-width:420px;font-size:14px;line-height:1.9;color:var(--muted)}.store-card{background:var(--paper);padding:28px}.store-card h3{font-size:24px;margin:0 0 20px}.store-card dl{margin:0}.store-card dl>div{padding:12px 0;border-top:1px solid #e3e5df;display:grid;grid-template-columns:82px 1fr;gap:14px}.store-card dt{color:var(--muted);font-size:13px}.store-card dd{margin:0;font-size:15px;line-height:1.7;overflow-wrap:anywhere}.store-card dd a{color:var(--ink)}.store-card dd small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.store-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.store-source{font-size:11px;line-height:1.7;color:var(--muted);margin:18px 0 0}@media(max-width:780px){.store-layout{grid-template-columns:1fr;gap:22px}.store-section{padding:48px 0}.store-section h2{font-size:28px}.store-card{padding:22px}.store-actions .button{width:100%}.nav{gap:18px}.brand-copy small{font-size:10px}}

.line-contact-button{background:#087f40;color:#fff}.line-contact-button:hover{background:#066b35}.official-line-id{font-weight:700;text-underline-offset:3px}.store-actions .line-contact-button{width:100%}

.notice-page{max-width:900px;padding:36px 0 70px}.notice-page>article{margin-top:28px;background:var(--paper);padding:32px}#shoppingNotice{font-size:15px;line-height:1.9}#shoppingNotice h1{font-size:30px;margin:0 0 12px}#shoppingNotice h2{font-size:21px;letter-spacing:0;line-height:1.5;margin:26px 0 12px}#shoppingNotice li{margin:10px 0}#shoppingNotice ol{padding-left:25px}#shoppingNotice a,.form-note a{color:#185e43;text-underline-offset:3px}.notice-version{font-size:12px;color:var(--muted)}.notice-contact{padding-top:20px;border-top:1px solid #d6ddd5}#shoppingNoticeDialog{width:min(820px,calc(100% - 24px));max-height:92vh;padding:24px;display:none;flex-direction:column;overflow:hidden}#shoppingNoticeDialog[open]{display:flex}#shoppingNoticeTitle{font-size:25px;letter-spacing:0;line-height:1.5;padding-right:0}#shoppingNoticeDialog>p{font-size:14px;line-height:1.7}.notice-scroll{overflow-y:auto;min-height:100px;flex:1;border:1px solid #d4dbd3;padding:18px;background:#fff;overscroll-behavior:contain}.notice-actions{display:flex;justify-content:space-between;gap:12px;padding-top:16px;flex-shrink:0}.notice-actions button{height:auto}.notice-actions button:disabled{opacity:.5;cursor:wait}@media(max-width:600px){.notice-page>article{padding:20px}.notice-actions{flex-direction:column-reverse}.notice-actions button{width:100%}#shoppingNoticeDialog{padding:18px}.notice-scroll{padding:12px}#shoppingNoticeTitle{font-size:21px}}

/* Homepage invitation: online and physical store carry different products. */
.store-invitation{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);align-items:center;gap:28px;padding:38px 36px;margin-bottom:60px;border-radius:20px;background:radial-gradient(ellipse at 30% 80%,#eef1e5 0,transparent 65%),#dce6da;color:#12392f}
.store-invitation-art svg{display:block;width:100%;height:auto}
.store-invitation-kicker{font-size:15px;font-weight:600;letter-spacing:2px;margin:0 0 12px}
.store-invitation h2{font-size:clamp(26px,3vw,38px);line-height:1.45;margin:0 0 12px;letter-spacing:-1px}.store-invitation h2 em{font-style:normal;color:#e8664e}
.store-invitation-highlight{display:inline-block;margin:0 0 12px;background:#ec6a51;color:white;border-radius:30px;padding:9px 20px;font-size:clamp(16px,1.9vw,22px);font-weight:700;line-height:1.5}
.store-invitation-description{font-size:18px;line-height:1.8;margin:0 0 20px;color:#4e5f58}.store-invitation-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border-radius:4px;font-size:19px;padding:17px 28px;background:#103c30;color:white;text-decoration:none}
.store-invitation-contact{border-top:1px solid #9caf9c;margin-top:22px;padding-top:13px;font-size:15px;color:#41574c}.store-invitation-contact p{margin:6px 0;line-height:1.7}.store-invitation-contact span{font-size:22px;vertical-align:middle;margin-right:8px}.store-invitation-contact a{color:inherit;text-underline-offset:4px}
@media(max-width:780px){.store-invitation{grid-template-columns:1fr;gap:6px;padding:22px;margin-bottom:38px}.store-invitation-art{max-width:310px;width:100%;margin:auto}.store-invitation h2{font-size:29px}.store-invitation-description{font-size:16px}.store-invitation-highlight{font-size:17px;padding:9px 14px;border-radius:14px}.store-invitation-contact{font-size:14px}.store-invitation-button{width:100%;font-size:18px}.store-invitation-kicker{font-size:13px}}
