@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Noto+Sans+TC:wght@400;500;600;700&display=swap";:root{--cream:#fffaf4;--paper:#fffdf9;--milk:#f7eee4;--tea:#e9d6c3;--caramel:#bd7850;--cocoa:#55382b;--ink:#44322a;--pink:#f0d4d0;--line:#eadbd0;color:var(--ink);background:var(--cream);scroll-behavior:smooth;font-family:Noto Sans TC,sans-serif}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;font-size:16px;line-height:1.8;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%}a:focus-visible,button:focus-visible{outline-offset:3px;outline:3px solid #d78b5d}h1,h2{letter-spacing:.01em;margin:0;font-family:DM Serif Display,Noto Sans TC,serif;font-weight:400;line-height:1.24}h1{font-size:clamp(47px,5.5vw,75px)}h2{font-size:clamp(36px,4vw,54px)}.section-pad{max-width:1180px;margin:auto;padding:104px 28px}.site-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#fffaf4e6;border-bottom:1px solid #eadbd0b3;justify-content:space-between;align-items:center;height:78px;padding:0 max(28px,50vw - 610px);display:flex;position:sticky;top:0}.brand{letter-spacing:.05em;align-items:center;gap:10px;font-size:16px;font-weight:700;line-height:1.35;display:flex}.brand-mark{background:var(--caramel);color:#fff;border-radius:50% 45% 52% 48%;flex:none;place-items:center;width:37px;height:37px;font-family:DM Serif Display,serif;font-size:21px;display:grid;transform:rotate(-7deg)}.brand small{color:#997969;letter-spacing:.14em;font-size:8px;font-weight:500;display:block}nav{align-items:center;gap:27px;font-size:14px;font-weight:500;display:flex}nav>a:not(.nav-line):after{content:"";background:var(--caramel);width:0;height:1px;transition:all .25s;display:block}nav>a:hover:after{width:100%}.nav-line{background:var(--cocoa);color:#fff;border-radius:99px;padding:8px 16px;font-size:13px}.line-pending-button{color:#79665b;cursor:not-allowed;background:#d8c8bc;border:0;border-radius:99px;padding:8px 16px;font-size:13px}.cart-toggle{border:1px solid var(--line);background:var(--paper);color:var(--cocoa);cursor:pointer;border-radius:99px;align-items:center;gap:8px;min-height:38px;padding:6px 9px 6px 13px;font-size:13px;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex}.cart-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 16px #55382b1a}.cart-toggle b{background:var(--caramel);color:#fff;border-radius:99px;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:11px;display:grid}.menu-toggle{cursor:pointer;background:0 0;border:0;padding:8px;display:none}.menu-toggle i{background:var(--ink);width:22px;height:1.5px;margin:4px;display:block}.hero{grid-template-columns:1.02fr .98fr;align-items:center;gap:34px;max-width:1270px;min-height:675px;margin:auto;padding:55px 42px 74px;display:grid}.eyebrow{letter-spacing:.18em;color:var(--caramel);margin:0 0 15px;font-size:11px;font-weight:700}.hero-copy>p:not(.eyebrow){color:#705c51;max-width:460px;margin:22px 0 30px;font-size:16px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{border-radius:99px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:12px 21px;font-size:14px;font-weight:700;transition:transform .25s,box-shadow .25s,background .25s;display:inline-flex}.button:hover,.order-mini:hover{transform:translateY(-3px);box-shadow:0 8px 18px #55382b1f}.primary{background:var(--cocoa);color:#fff}.secondary{background:var(--tea);color:var(--cocoa)}.hero-visual{isolation:isolate;position:relative}.hero-orbit{z-index:-1;border:1px dashed #d5ad91;border-radius:50%;position:absolute}.orbit-one{width:110px;height:110px;top:-25px;right:-20px}.orbit-two{width:65px;height:65px;bottom:-15px;left:-25px}.hero-real-grid{background:#f0dfd2;border-radius:38px 46px 42px 50px;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);gap:12px;min-height:475px;padding:12px;display:grid;transform:rotate(1.5deg);box-shadow:12px 16px #f6e8dc}.product-photo{background:var(--milk);position:relative;overflow:hidden}.product-photo>img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.hero-real-photo{border-radius:22px;width:100%;height:100%;min-height:0;padding:6px;transform:rotate(-1.5deg);box-shadow:0 7px 16px #55382b1f}.hero-note{background:var(--paper);color:var(--cocoa);border:1px solid var(--line);text-align:center;border-radius:50%;place-content:center;width:96px;height:96px;font:15px/1.2 DM Serif Display,serif;display:grid;position:absolute;bottom:22px;right:-24px;transform:rotate(-11deg);box-shadow:0 8px 20px #55382b1a}.section-heading{margin-bottom:44px}.section-heading.centered{text-align:center}.section-heading>p:not(.eyebrow),.row-heading p,.menu-intro{color:#806b5e;font-size:13px}.feature-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.feature-card{background:var(--paper);border:1px solid #f2e8df;border-radius:22px;padding:28px 24px;box-shadow:0 8px 25px #6648330a}.feature-icon{width:44px;height:44px;color:var(--caramel);background:var(--milk);border-radius:50%;place-items:center;font-size:23px;display:grid}.feature-card h3{margin:15px 0 5px;font-size:17px}.feature-card p{color:#806b5e;margin:0;font-size:14px;line-height:1.75}.products-section{max-width:1236px}.row-heading{justify-content:space-between;align-items:end;gap:22px;margin-bottom:31px;display:flex}.row-heading>div>p:not(.eyebrow){margin:8px 0 0}.text-link{color:var(--cocoa);white-space:nowrap;align-items:center;gap:8px;font-weight:700;display:inline-flex}.text-link span{color:var(--caramel);font-size:20px;line-height:1}.product-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.product-card{background:var(--paper);border:1px solid #f1e7df;border-radius:22px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.product-card:hover{transform:translateY(-6px);box-shadow:0 18px 35px #603d271f}.product-image{aspect-ratio:1;border-bottom:1px solid #f1e7df;padding:10px}.product-image>img{border-radius:14px}.new-badge{color:#fff;background:var(--cocoa);letter-spacing:.08em;border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700;position:absolute;top:14px;left:14px}.product-info{flex:1;gap:9px;padding:18px 18px 16px;display:grid}.product-info h3{overflow-wrap:anywhere;margin:0;font-size:18px;line-height:1.45}.category-label{color:var(--caramel);letter-spacing:.05em;margin:0 0 -4px;font-size:11px;font-weight:700}.product-spec{color:#8f7869;margin:0;font-size:13px;font-weight:600}.product-bottom{justify-content:space-between;align-items:end;gap:10px;margin-top:5px;display:flex}.product-bottom strong{color:var(--caramel);font-family:DM Serif Display,Noto Sans TC,serif;font-size:25px;line-height:1.2;display:block}.order-mini{background:var(--milk);color:var(--cocoa);white-space:nowrap;border:0;border-radius:99px;padding:8px 10px;font-size:12px;font-weight:700;transition:all .25s}.limited-badge{color:#8b4b31;background:#f3dfd1;border-radius:99px;margin:0 0 5px;padding:2px 7px;font-size:10px;font-weight:700;display:table}.section-cta{margin:32px auto 0;display:table}.menu-section{background:#fcf6f0;max-width:none;padding-left:max(28px,50vw - 590px);padding-right:max(28px,50vw - 590px)}.menu-intro{margin:12px auto 0}.menu-tabs{flex-wrap:wrap;justify-content:center;gap:9px;margin:0 auto 32px;display:flex}.menu-tabs button{cursor:pointer;color:#765a4c;background:#fffaf5;border:1px solid #dec8b8;border-radius:99px;padding:8px 15px;font-size:13px;font-weight:700;transition:all .2s}.menu-tabs button:hover,.menu-tabs button.active{background:var(--cocoa);color:#fff;border-color:var(--cocoa)}.menu-grid{max-width:1180px;margin:auto}.is-unavailable{opacity:.77}.is-unavailable .product-image img{filter:grayscale(.65)}.order-disabled{color:#8b7c74;white-space:nowrap;background:#e8dfd9;border-radius:99px;align-items:center;min-height:29px;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.gift-section{background:var(--milk);grid-template-columns:1fr 1fr;min-height:550px;display:grid}.gift-photo{background:#f0e4d8;min-height:510px;padding:28px}.gift-photo>img{border-radius:22px;box-shadow:0 12px 28px #55382b1a}.gift-copy{align-self:center;max-width:530px;padding:84px min(9vw,130px) 75px 11%}.gift-copy>p:not(.eyebrow){color:#705c51;max-width:420px}.gift-emphasis{border-left:3px solid var(--caramel);margin:21px 0 25px;padding-left:13px;font-weight:700;color:var(--cocoa)!important}.gift-emphasis small{font-weight:400}.about{grid-template-columns:42% 58%;align-items:center;gap:30px;min-height:530px;display:grid}.about-stamp{text-align:center;width:238px;height:238px;color:var(--caramel);background:var(--pink);outline-offset:8px;border-radius:50%;outline:1px dashed #c98252;place-content:center;justify-self:center;font-family:DM Serif Display,serif;font-size:34px;font-style:italic;line-height:1.05;display:grid;transform:rotate(-11deg)}.about-stamp span{letter-spacing:.12em;font-family:Noto Sans TC;font-size:12px}.about-copy{max-width:585px}.about-copy>p:not(.eyebrow){color:#735d50;margin:17px 0}.process{padding-top:40px}.process-list{justify-content:center;align-items:center;margin:0;padding:0;list-style:none;display:flex}.process-list li{text-align:center;flex-direction:column;align-items:center;gap:8px;width:175px;display:flex;position:relative}.process-list li>span{color:var(--caramel);font-family:DM Serif Display,serif;font-size:22px}.process-list li>strong{font-weight:700}.process-list i{color:#c9ab95;font-size:22px;font-style:normal;position:absolute;top:19px;right:-13px}.contact-section{background:var(--cocoa);color:#fff9f3;max-width:none;padding:92px max(28px,50vw - 562px)}.contact-card{justify-content:space-between;align-items:center;gap:45px;max-width:1124px;margin:auto;display:flex}.contact-card .eyebrow{color:#edb496}.contact-card>div>p:not(.eyebrow){color:#ead6c8;max-width:520px;margin:18px 0 0}.contact-actions{flex-wrap:wrap;gap:12px;display:flex}.contact-card .primary{color:var(--cocoa);background:#edc3ac}.contact-card .secondary{color:#fff9f3;background:0 0;border:1px solid #fff6}.faq{grid-template-columns:minmax(0,.56fr) minmax(0,1fr);gap:55px;display:grid}.faq .section-heading{margin-bottom:0}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:16px;padding:19px 3px;font-size:15px;font-weight:600;display:flex}.faq-item button b{color:var(--caramel);font-size:23px;font-style:normal;line-height:1;transition:all .25s}.faq-item.open button b{transform:rotate(45deg)}.faq-answer{max-height:0;transition:max-height .35s;overflow:hidden}.faq-item.open .faq-answer{max-height:160px}.faq-answer p{color:#7c675a;margin:0 0 18px;font-size:13px}.line-float{bottom:calc(18px + env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right));z-index:15;color:#fff;background:#4cbf72;border-radius:99px;align-items:center;gap:7px;padding:10px 16px 10px 11px;font-size:13px;font-weight:700;transition:transform .25s;display:flex;position:fixed;box-shadow:0 8px 25px #25552b40}footer{background:#f5e9de;grid-template-columns:1.3fr 1fr;gap:26px;padding:45px max(28px,50vw - 562px) 24px;display:grid}.footer-brand{align-items:center;gap:11px;display:flex}.footer-brand strong{font-size:17px}.footer-brand p{color:#826d5e;margin:3px 0 0;font-size:14px}.footer-links{flex-wrap:wrap;align-content:start;gap:11px 23px;font-size:14px;display:flex}.footer-links a:hover{color:var(--caramel)}footer>small{color:#9c8575;border-top:1px solid #dfcfc1;grid-column:1/-1;padding-top:18px;font-size:11px}.line-float{cursor:pointer;bottom:calc(18px + env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right));z-index:15;color:#fff;background:#4cbf72;border:0;border-radius:99px;align-items:center;gap:7px;padding:10px 16px 10px 11px;font-size:13px;font-weight:700;transition:transform .25s;display:flex;position:fixed;box-shadow:0 8px 25px #25552b40}.line-float:hover{transform:translateY(-3px)}.line-float span{color:#4cbf72;background:#fff;border-radius:50%;place-items:center;width:25px;height:25px;font-size:8px;display:grid}.line-float b{color:#35965b;background:#fff;border-radius:50%;place-items:center;min-width:18px;height:18px;font-size:10px;display:grid}.cart-backdrop{z-index:40;opacity:0;pointer-events:none;background:#39251c59;border:0;transition:opacity .25s;position:fixed;inset:0}.cart-backdrop.is-open{opacity:1;pointer-events:auto}.cart-drawer{z-index:41;background:var(--paper);flex-direction:column;width:min(100%,450px);height:100dvh;transition:transform .3s;display:flex;position:fixed;top:0;right:0;transform:translate(104%);box-shadow:-12px 0 35px #3c261a2e}.cart-drawer.is-open{transform:none}.cart-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:26px 24px 18px;display:flex}.cart-header .eyebrow{margin-bottom:5px}.cart-header h2{font-size:36px}.cart-close{border:1px solid var(--line);width:40px;height:40px;color:var(--cocoa);cursor:pointer;background:0 0;border-radius:50%;font-size:28px;line-height:1}.cart-items{padding:14px 24px 24px;overflow:auto}.cart-item{border-bottom:1px solid var(--line);grid-template-columns:92px 1fr;gap:14px;padding:14px 0;display:grid}.cart-image{border-radius:14px;width:92px;height:92px;padding:5px}.cart-image>img{border-radius:10px}.cart-item-info{flex-direction:column;justify-content:space-between;gap:9px;min-width:0;display:flex}.cart-item h3{margin:0;font-size:16px;line-height:1.4}.cart-item p{color:#8f7869;margin:3px 0;font-size:12px}.cart-item strong{color:var(--caramel);font-family:DM Serif Display,Noto Sans TC,serif;font-size:20px}.cart-item-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.quantity-control{border:1px solid var(--line);border-radius:99px;align-items:center;display:flex;overflow:hidden}.quantity-control button{width:28px;height:28px;color:var(--cocoa);cursor:pointer;background:0 0;border:0;font-size:17px}.quantity-control span{text-align:center;min-width:25px;font-size:13px;font-weight:700}.cart-remove,.cart-clear{color:#9a7565;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.cart-footer{padding:20px 24px max(22px,calc(18px + env(safe-area-inset-bottom)));border-top:1px solid var(--line);background:#fffaf5;margin-top:auto}.cart-total{justify-content:space-between;align-items:baseline;margin:10px 0 3px;display:flex}.cart-total span{font-size:14px;font-weight:700}.cart-total strong{color:var(--caramel);font-family:DM Serif Display,Noto Sans TC,serif;font-size:29px}.cart-footer p{color:#806b5e;margin:4px 0 14px;font-size:12px;line-height:1.55}.cart-checkout{width:100%}.cart-line-pending{color:#8f6552;background:#fff6ef;border:1px dashed #d6b6a0;border-radius:14px;padding:10px 12px;font-size:12px;line-height:1.55}.cart-empty{text-align:center;place-items:center;gap:8px;padding:85px 32px;display:grid}.cart-empty>span{background:var(--milk);width:58px;height:58px;color:var(--caramel);border-radius:50%;place-items:center;font-size:28px;display:grid}.cart-empty h3{margin:6px 0 0;font-size:20px}.cart-empty p{color:#806b5e;margin:0 0 12px;font-size:14px}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(17px)}.reveal.is-visible{opacity:1;transform:none}@media (width<=760px){html{scroll-padding-top:80px}.site-header{gap:8px;height:68px;padding:0 20px}.brand{margin-right:auto;font-size:14px}.brand-mark{width:33px;height:33px;font-size:18px}.cart-toggle{min-height:34px;padding:5px 7px 5px 10px}.cart-toggle span{display:none}.menu-toggle{z-index:22;display:block}nav{background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:20px;display:none;position:absolute;top:67px;left:0;right:0;box-shadow:0 12px 20px #55382b14}nav.open{display:flex}nav>a{padding:9px 4px}nav>a:not(.nav-line):after{display:none}.nav-line{text-align:center;margin-top:7px}.hero{grid-template-columns:1fr;gap:34px;min-height:auto;padding:42px 24px 74px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-real-grid{border-radius:28px;gap:9px;min-height:330px;padding:9px}.hero-real-photo{border-radius:15px;padding:4px}.hero-note{width:75px;height:75px;font-size:12px;bottom:-18px;right:-8px}.section-pad{padding:74px 21px}.section-heading{margin-bottom:30px}.feature-grid{grid-template-columns:1fr 1fr;gap:10px}.feature-card{border-radius:17px;padding:18px 15px}.feature-icon{width:36px;height:36px;font-size:18px}.feature-card h3{margin:11px 0 4px;font-size:15px}.feature-card p{font-size:12px}.row-heading{display:block}.row-heading .text-link{display:none}.product-grid{grid-template-columns:1fr;gap:16px}.product-card{border-radius:17px;grid-template-columns:42% 58%;display:grid}.product-image{aspect-ratio:auto;min-height:190px;padding:8px}.product-image>img{border-radius:11px}.product-info{gap:8px;padding:15px}.product-info h3{font-size:17px}.product-spec{font-size:12px}.product-bottom strong{font-size:23px}.order-mini{padding:7px 8px;font-size:11px}.menu-section{padding-left:21px;padding-right:21px}.menu-tabs{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;margin-left:-21px;margin-right:-21px;padding:0 21px 8px;overflow-x:auto}.menu-tabs::-webkit-scrollbar{display:none}.menu-tabs button{white-space:nowrap;flex:none}.menu-grid{margin:0}.gift-section{grid-template-columns:1fr}.gift-photo{min-height:290px;padding:20px}.gift-copy{padding:55px 25px 60px}.about{text-align:center;grid-template-columns:1fr;gap:35px;padding-top:81px}.about-stamp{width:175px;height:175px;font-size:26px}.about-copy{margin:auto}.process-list{flex-direction:column;align-items:stretch;max-width:240px;margin:auto}.process-list li{text-align:left;flex-direction:row;gap:17px;width:auto;padding:11px 0}.process-list i{top:14px;right:3px;transform:rotate(90deg)}.contact-section{padding:70px 24px}.contact-card{display:block}.contact-actions{margin-top:26px}.contact-actions .button{flex:1}.faq{grid-template-columns:1fr;gap:26px}.faq-item button{font-size:16px}.line-float{bottom:calc(14px + env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right))}.cart-drawer{width:100%}.cart-header{padding:22px 20px 16px}.cart-items{padding:10px 20px 20px}.cart-footer{padding:16px 20px max(18px,calc(14px + env(safe-area-inset-bottom)))}.reveal{opacity:1;transform:none}}@media (width>=761px) and (width<=960px){.hero{padding-inline:35px}.feature-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.gift-copy{padding:55px}.section-pad{padding-inline:35px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
