:root{--cream:#f7efe1;--paper:#fffbf4;--awning-red:#c6403a;--awning-red-dark:#a63530;--blush:#f0a8b6;--sage:#8fc3a6;--dusk-blue:#8fb8d6;--ink:#2b2119;--ink-soft:#6b5c4e;--gold:#e8b04b;--radius-lg:28px;--radius-md:18px;--shadow-card:0 10px 24px #2b21191a;--awning:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22140%22%20height%3D%22127%22%20viewBox%3D%220%200%20140%20127%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g0%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%238F2A25%22/%3E%3Cstop%20offset%3D%220.5%22%20stop-color%3D%22%23C6403A%22/%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%238F2A25%22/%3E%3C/linearGradient%3E%3ClinearGradient%20id%3D%22g1%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23D8C4A8%22/%3E%3Cstop%20offset%3D%220.5%22%20stop-color%3D%22%23FFFBF4%22/%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23D8C4A8%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath%20d%3D%22M0.0%2C12.0%20V70.0%20A35.0%2C35.0%200%200%200%2070.0%2C70.0%20V12.0%20Z%22%20fill%3D%22url%28%23g0%29%22%20stroke%3D%22%232B2119%22%20stroke-width%3D%223%22/%3E%3Cpath%20d%3D%22M70.0%2C12.0%20V70.0%20A35.0%2C35.0%200%200%200%20140.0%2C70.0%20V12.0%20Z%22%20fill%3D%22url%28%23g1%29%22%20stroke%3D%22%232B2119%22%20stroke-width%3D%223%22/%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22140%22%20height%3D%2214%22%20fill%3D%22%232B2119%22/%3E%3C/svg%3E)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Noto Sans TC,sans-serif;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3{margin:0;font-family:Noto Sans TC,sans-serif;font-weight:900;line-height:1.25}p{margin:0}.container{max-width:1160px;margin:0 auto;padding:0 28px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--awning-red);align-items:center;gap:8px;margin-bottom:14px;font-family:Fredoka,sans-serif;font-size:13px;font-weight:600;display:inline-flex}.eyebrow:before{content:"✦";font-size:12px}.btn{cursor:pointer;border:2px solid var(--ink);border-radius:999px;align-items:center;gap:8px;padding:14px 28px;font-family:Fredoka,sans-serif;font-size:15.5px;font-weight:600;transition:transform .18s,box-shadow .18s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.btn-primary{background:var(--awning-red);color:var(--paper);box-shadow:0 6px 0 var(--ink)}.btn-primary:hover{box-shadow:0 8px 0 var(--ink)}.btn-ghost{color:var(--ink);border-color:var(--ink);background:0 0}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.awning{background-image:var(--awning);background-position:0 0;background-repeat:repeat-x;background-size:auto 100%;width:100%}.awning.tall{height:96px}.awning.thin{height:64px}.awning.mini{height:36px}header{z-index:50;background:var(--paper);border-bottom:2px solid var(--ink);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:18px;max-width:1160px;margin:0 auto;padding:14px 28px;display:flex}.brand{flex:none;align-items:center;gap:10px;display:flex}.brand img{object-fit:cover;border:2px solid var(--ink);border-radius:50%;width:44px;height:44px}.brand-text{line-height:1.15}.brand-text b{font-size:16.5px;font-weight:900;display:block}.brand-text small{letter-spacing:.16em;color:var(--ink-soft);font-family:Fredoka,sans-serif;font-size:10.5px}nav.page-nav{flex:1;justify-content:center;align-items:center;gap:26px;display:flex}nav.page-nav a{cursor:pointer;padding:6px 2px;font-family:Fredoka,sans-serif;font-size:14.5px;font-weight:500;position:relative}nav.page-nav a:after{content:"";background:var(--awning-red);width:0;height:2px;transition:width .2s;position:absolute;bottom:-2px;left:0}nav.page-nav a:hover:after{width:100%}nav.page-nav a.active{color:var(--awning-red)}nav.page-nav a.active:after{width:100%}section{padding:70px 0}.page-hero-band{text-align:center;padding:44px 0 34px}.page-hero-band h1{font-size:clamp(26px,3.6vw,38px)}.page-hero-band p{color:var(--ink-soft);margin-top:12px;font-size:14.5px}.section-head{text-align:center;max-width:560px;margin:0 auto 46px}.section-head h2{font-size:clamp(26px,3.2vw,38px)}.section-head p{color:var(--ink-soft);margin-top:14px;font-size:15px;line-height:1.8}.band-cream{background:var(--cream)}.band-paper{background:var(--paper)}.band-ink{background:var(--ink);color:var(--paper)}.hero{padding:50px 0 40px}.hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:52px;display:grid}.hero h1{letter-spacing:-.01em;font-size:clamp(34px,4.6vw,54px)}.hero h1 .accent{color:var(--awning-red)}.hero p.lede{color:var(--ink-soft);max-width:460px;margin-top:20px;font-size:16.5px;line-height:1.85}.hero-ctas{flex-wrap:wrap;gap:16px;margin-top:32px;display:flex}.hero-visual{position:relative}.hero-visual .frame{background:var(--paper);border-radius:var(--radius-lg);border:3px solid var(--ink);box-shadow:var(--shadow-card);padding:14px 14px 22px;transform:rotate(1.4deg)}.hero-visual .frame img{border-radius:16px}.hero-visual .tag{background:var(--gold);border:2.5px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:999px;padding:10px 18px;font-family:Caveat;font-size:19px;font-weight:700;position:absolute;bottom:-18px;left:-18px;transform:rotate(-6deg)}.filter-row{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:34px;display:flex}.chip{border:1.6px solid var(--ink);background:var(--paper);cursor:pointer;border-radius:999px;padding:8px 16px;font-family:Fredoka;font-size:12.5px;font-weight:600}.chip.active{background:var(--ink);color:var(--paper)}.search-status{text-align:center;color:var(--ink-soft);margin-bottom:24px;font-size:13.5px}.search-status a{color:var(--awning-red);margin-left:8px;font-family:Fredoka;font-size:12px;text-decoration:underline}.search-box{border:2px solid var(--ink);background:var(--paper);border-radius:999px;align-items:center;gap:8px;max-width:320px;margin:0 auto 34px;padding:4px 6px 4px 18px;display:flex}.search-box input{background:0 0;border:none;outline:none;flex:1;padding:9px 4px;font-family:Noto Sans TC;font-size:13.5px}.search-box button{background:var(--ink);color:var(--paper);cursor:pointer;border:none;border-radius:999px;padding:8px 16px;font-family:Fredoka;font-size:12.5px}.product-grid{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.product-card{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);cursor:pointer;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.product-card:hover{transform:translateY(-6px);box-shadow:0 16px 28px #2b211929}.product-card:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.new-badge{z-index:2;background:var(--gold);border:2px solid var(--ink);color:var(--ink);border-radius:999px;padding:4px 12px;font-family:Fredoka;font-size:11px;font-weight:600;position:absolute;top:14px;left:14px}.stock-badge{z-index:2;border:2px solid var(--ink);border-radius:999px;padding:4px 12px;font-family:Fredoka;font-size:11px;font-weight:600;position:absolute;top:14px;right:14px}.stock-badge.low{background:var(--blush);color:var(--ink)}.stock-badge.out{background:var(--ink);color:var(--paper)}.product-photo{aspect-ratio:1;overflow:hidden}.product-photo img{object-fit:cover;width:100%;height:100%}.product-info{flex-direction:column;flex:1;gap:6px;padding:18px 20px 22px;display:flex}.product-info h3{font-size:16px}.product-info .tag{color:var(--ink-soft);letter-spacing:.04em;font-family:Fredoka;font-size:11.5px}.product-info .row{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.price{color:var(--awning-red);font-family:Fredoka;font-size:16px;font-weight:600}.view-btn{border:1.5px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:8px 14px;font-family:Fredoka;font-size:12.5px;font-weight:600}.grid-note{text-align:center;color:var(--ink-soft);margin-top:30px;font-size:12.5px}.grid-empty{text-align:center;color:var(--ink-soft);grid-column:1/-1;padding:30px 0;font-size:14px}.home-preview-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.home-preview-head h2{font-size:26px}.news-grid{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.news-card{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;transition:transform .2s;display:flex;overflow:hidden}.news-card:hover{transform:translateY(-6px)}.news-thumb{aspect-ratio:4/3;color:var(--paper);background:var(--dusk-blue);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.news-thumb svg{width:32px;height:32px}.news-thumb img{object-fit:cover;width:100%;height:100%}.news-thumb span{opacity:.85;font-family:Fredoka;font-size:11px}.news-info{flex-direction:column;gap:8px;padding:18px 20px 22px;display:flex}.news-badge{background:var(--cream);border:1.5px solid var(--ink);border-radius:999px;align-self:flex-start;padding:5px 12px;font-family:Fredoka;font-size:11px;font-weight:600}.news-info h3{margin-top:2px;font-size:16px}.news-info .loc{color:var(--ink-soft);align-items:center;gap:5px;font-family:Fredoka;font-size:12px;display:flex}.news-info .loc svg{flex:none;width:13px;height:13px}.news-info p.desc{color:var(--ink-soft);font-size:13px;line-height:1.7}.char-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.char-card{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);padding:26px 20px 24px;transition:transform .2s}.char-card:hover{transform:translateY(-6px)}.char-card img.char-avatar{object-fit:contain;width:96px;height:96px;margin-bottom:14px}.char-card h3{font-size:18px}.char-card .en{letter-spacing:.14em;color:var(--ink-soft);text-transform:uppercase;margin:4px 0 10px;font-family:Fredoka;font-size:10.5px}.char-card p{color:var(--ink-soft);font-size:13.5px;line-height:1.7}.story{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.story-photo img{border:3px solid var(--ink);box-shadow:var(--shadow-card);aspect-ratio:1;object-fit:cover;border-radius:50%}.story p.body{color:var(--ink-soft);margin-top:18px;font-size:15.5px;line-height:2}.story .signature{color:var(--awning-red);margin-top:22px;font-family:Caveat;font-size:24px}.legal-body{max-width:720px;color:var(--ink-soft);margin:0 auto;font-size:14.5px;line-height:2}.legal-body h3{color:var(--ink);margin:30px 0 10px;font-size:17px}.legal-body h3:first-child{margin-top:0}.legal-disclaimer{border:1.6px solid var(--ink);color:#5c4a16;background:#fbe8b0;border-radius:14px;margin-bottom:34px;padding:14px 18px;font-size:12.5px;line-height:1.8}.faq-list{flex-direction:column;gap:12px;max-width:680px;margin:0 auto;display:flex}.faq-item{background:var(--paper);border:2px solid var(--ink);border-radius:16px;padding:16px 20px}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;font-size:15px;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--awning-red);flex:none;margin-left:12px;font-family:Fredoka;font-size:20px}.faq-item[open] summary:after{content:"−"}.faq-item p{color:var(--ink-soft);margin-top:12px;font-size:13.5px;line-height:1.8}.detail-wrap{max-width:960px;margin:0 auto}.detail-grid{background:var(--paper);border:3px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.detail-photo{aspect-ratio:1;border-right:3px solid var(--ink);overflow:hidden}.detail-photo img{object-fit:cover;width:100%;height:100%}.detail-info{flex-direction:column;padding:32px 30px;display:flex}.detail-info .tag{color:var(--ink-soft);letter-spacing:.05em;font-family:Fredoka;font-size:11.5px}.detail-info h1{margin-top:8px;font-size:24px}.detail-desc{color:var(--ink-soft);margin-top:16px;font-size:14.5px;line-height:1.9}.detail-price{color:var(--awning-red);margin-top:22px;font-family:Fredoka;font-size:24px;font-weight:600}.detail-extra{padding:0 30px 30px}.detail-extra h4{margin:26px 0 14px;font-size:15px}.related-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.related-card{border:1.8px solid var(--ink);cursor:pointer;background:var(--paper);border-radius:16px;overflow:hidden}.related-card img{aspect-ratio:1;object-fit:cover;width:100%}.related-card .rc-info{padding:8px 10px}.related-card .rc-info b{margin-bottom:2px;font-size:12px;display:block}.related-card .rc-info span{color:var(--awning-red);font-family:Fredoka;font-size:11.5px}.form-card-like{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:26px 24px}.cf-field{margin-bottom:14px}.cf-field label{color:var(--ink-soft);margin-bottom:6px;font-family:Fredoka;font-size:12px;display:block}:where(input:not([type=checkbox]):not([type=file]):not([type=radio]),select,textarea){color:var(--ink);background:#fff;border:1.6px solid #d9cbb8;border-radius:10px;padding:10px 12px;font-family:Noto Sans TC;font-size:14px}.cf-field input,.cf-field select,.cf-field textarea{width:100%}.cf-field textarea{resize:vertical;min-height:56px}.cf-field input:focus,.cf-field select:focus,.cf-field textarea:focus{outline:2px solid var(--dusk-blue);border-color:var(--dusk-blue)}.toggle-row{align-items:center;gap:10px;display:flex}.toggle-row input{width:18px;height:18px}.nav-actions{flex:none;align-items:center;gap:12px;display:flex}.icon-round{border:2px solid var(--ink);background:var(--paper);cursor:pointer;width:42px;height:42px;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.icon-round:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.icon-round svg{width:20px;height:20px}.cart-badge{background:var(--awning-red);color:var(--paper);border:2px solid var(--paper);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-family:Fredoka;font-size:10.5px;font-weight:600;display:flex;position:absolute;top:-6px;right:-6px}.cart-overlay{z-index:200;opacity:0;pointer-events:none;background:#2b21196b;transition:opacity .25s;position:fixed;inset:0}.cart-overlay.open{opacity:1;pointer-events:auto}.cart-panel{background:var(--paper);flex-direction:column;width:min(420px,100%);height:100%;transition:transform .3s;display:flex;position:absolute;top:0;right:0;transform:translate(100%);box-shadow:-12px 0 30px #2b21192e}.cart-overlay.open .cart-panel{transform:translate(0)}.cart-panel-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.cart-panel-head h3{font-size:18px}.cart-close{border:1.6px solid var(--ink);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;display:flex}.cart-close:hover{background:var(--ink);color:var(--paper)}#cart-body{flex:1;padding:20px 22px 26px;overflow-y:auto}.cart-item{border-bottom:1px solid #ead9c4;gap:12px;padding:12px 0;display:flex}.cart-item img{object-fit:cover;border:1.5px solid var(--ink);border-radius:10px;flex:none;width:60px;height:60px}.cart-item .ci-info{flex:1;min-width:0}.cart-item .ci-info b{margin-bottom:3px;font-size:14px;display:block}.cart-item .ci-price{color:var(--ink-soft);font-family:Fredoka;font-size:12.5px}.qty-row{align-items:center;gap:10px;margin-top:8px;display:flex}.qty-btn{border:1.5px solid var(--ink);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;line-height:1;display:flex}.qty-btn:disabled{opacity:.4;cursor:not-allowed}.qty-num{text-align:center;min-width:16px;font-family:Fredoka;font-size:13px}.ci-remove{color:var(--awning-red);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-family:Fredoka;font-size:11.5px}.cart-empty{text-align:center;color:var(--ink-soft);padding:60px 10px;font-size:13.5px}.cart-summary{border-top:2px solid var(--ink);padding:18px 22px 22px}.cart-summary .row{justify-content:space-between;margin-bottom:16px;font-size:15px;display:flex}.cart-summary .row b{color:var(--awning-red);font-family:Fredoka;font-size:19px}.cart-cta{text-align:center;justify-content:center;width:100%}.cart-cta:disabled{opacity:.5;cursor:not-allowed}.cart-link-btn{text-align:center;width:100%;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;margin-top:10px;font-family:Fredoka;font-size:12.5px;display:block}.checkout-note{border:1.6px solid var(--ink);color:#5c4a16;background:#fbe8b0;border-radius:14px;margin-bottom:18px;padding:12px 14px;font-size:12px;line-height:1.7}.checkout-items{background:var(--cream);color:var(--ink-soft);border-radius:14px;margin-bottom:18px;padding:12px 14px;font-size:12.5px}.checkout-items div{justify-content:space-between;padding:3px 0;display:flex}.success-box{text-align:center;padding:30px 6px}.success-box .check{background:var(--sage);border:2.5px solid var(--ink);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 18px;display:flex}.success-box h4{margin-bottom:10px;font-size:17px}.success-box p{color:var(--ink-soft);margin-bottom:6px;font-size:13.5px;line-height:1.8}.track-order-card{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px 24px}.order-status-pill{background:var(--sage);border-radius:999px;padding:5px 14px;font-family:Fredoka;font-size:12px;font-weight:600;display:inline-block}.track-order-card .order-status-pill{margin-bottom:12px}.track-order-card .ti-row{color:var(--ink-soft);justify-content:space-between;padding:5px 0;font-size:13.5px;display:flex}.detail-qty-row{align-items:center;gap:14px;margin-top:20px;display:flex}.detail-qty-row .qty-btn{width:32px;height:32px;font-size:15px}.detail-qty-row .qty-num{min-width:22px;font-size:16px}.detail-add-btn{margin-top:22px}.chip.variant{background:#fff}.chip.variant.out{opacity:.4;cursor:not-allowed;text-decoration:line-through}.back-link{color:var(--ink-soft);align-items:center;gap:4px;margin-bottom:16px;font-family:Fredoka;font-size:12.5px;display:inline-flex}footer{background:var(--ink);color:#efe4d4}.footer-inner{padding:56px 0 30px}.footer-grid{grid-template-columns:1.3fr repeat(3,1fr);gap:40px;display:grid}.footer-brand{align-items:center;gap:12px;margin-bottom:14px;display:flex}.footer-brand b{font-size:17px}footer .col h4{letter-spacing:.08em;color:var(--gold);margin-bottom:14px;font-family:Fredoka;font-size:13px}footer .col ul{flex-direction:column;gap:10px;display:flex}footer .col li a{color:#cbbba6;font-size:13.5px}footer .col li a:hover{color:#efe4d4}.social-row{gap:12px;margin-top:18px;display:flex}.social-row a{border:1.5px solid #6b5c4e;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.social-row a:hover{background:var(--gold);border-color:var(--gold)}.social-row svg{width:16px;height:16px}.footer-bottom{border-top:1px solid #4a3e33;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:22px 0;display:flex}.footer-bottom p{color:#9c8c79;font-size:12px}.proto-note{color:#7a6c5b;background:#332a22;border-radius:999px;padding:6px 14px;font-size:11.5px;display:inline-block}@media (max-width:760px){.footer-grid{grid-template-columns:1fr 1fr;row-gap:32px}}@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}@media (max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px}.product-grid,.news-grid,.char-grid{grid-template-columns:repeat(2,1fr)}.story{grid-template-columns:1fr;gap:36px}}@media (max-width:760px){nav.page-nav{gap:14px}.detail-grid{grid-template-columns:1fr}.detail-photo{border-right:none;border-bottom:3px solid var(--ink);aspect-ratio:4/3}.detail-info{padding:24px 22px 28px}.cart-panel{width:100%}}@media (max-width:560px){.product-grid,.related-grid{grid-template-columns:1fr 1fr}.news-grid{grid-template-columns:1fr}.char-grid{grid-template-columns:1fr 1fr}}
