:root{--forest: #236044;--forest-deep: #194733;--cream: #ffebcf;--paper: #fff6e8;--kraft: #f3d9b6;--kraft-edge: #b08a64;--bark: #6c4d38;--moss: #a4a67c;--moss-soft: #d8d6b2;--ink: var(--forest);--ink-soft: #4d5e48;--font-display: "Baloo 2", "LXGW WenKai TC", system-ui, sans-serif;--font-body: "Baloo 2", "LXGW WenKai TC", system-ui, sans-serif;--step--1: .875rem;--step-0: 1.0625rem;--step-1: 1.3rem;--step-2: 1.65rem;--step-3: clamp(1.9rem, 1.4rem + 2vw, 2.6rem);--step-4: clamp(2.2rem, 1.4rem + 3.6vw, 3.9rem);--radius-cut: 22px;--edge: 3px solid var(--bark);--thickness: 0 5px 0 var(--kraft-edge);--gutter: clamp(16px, 4vw, 40px);--maxw: 1180px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:lang(zh-Hant),:lang(zh-Hant-TW){line-height:1.75}h1,h2,h3{font-family:var(--font-display);font-weight:800;line-height:1.15;margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--forest);outline-offset:3px;border-radius:6px}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.skip{position:absolute;left:16px;top:-60px;z-index:100;padding:10px 16px;background:var(--forest);color:var(--cream);border-radius:10px}.skip:focus{top:12px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:24px;padding:12px var(--gutter);background:color-mix(in srgb,var(--cream) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2px dashed color-mix(in srgb,var(--bark) 30%,transparent)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;margin-right:auto}.brand img{width:62px;height:auto}.brand-name{font-family:var(--font-display);font-size:var(--step-2);font-weight:800;letter-spacing:.02em}.nav{display:flex;gap:6px}.nav a{white-space:nowrap;padding:10px 15px;border-radius:12px;font-size:1.2rem;font-weight:700;text-decoration:none}.nav a:hover{background:var(--kraft)}.lang{font:inherit;font-weight:700;color:var(--forest);background:transparent;border:2px solid var(--forest);border-radius:12px;font-size:1.2rem;padding:5px 18px;cursor:pointer}.lang:hover{background:var(--forest);color:var(--cream)}@media(max-width:940px){html{scroll-padding-top:120px}.topbar{flex-wrap:wrap;row-gap:4px;padding-block:8px 4px}.brand{min-width:0}.brand img{width:52px}.brand-name{font-size:var(--step-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lang{padding:3px 13px;font-size:var(--step-0)}.nav{order:3;width:100%;overflow-x:auto;scrollbar-width:none;margin-inline:-8px}.nav a{white-space:nowrap;font-size:var(--step-0);padding:6px 10px}}.btn{display:inline-flex;align-items:center;min-height:48px;padding:10px 24px;border-radius:14px;background:var(--forest);color:var(--cream);border:2px solid var(--forest);box-shadow:0 4px 0 var(--forest-deep);font-family:var(--font-display);font-weight:700;font-size:var(--step-0);text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 0 var(--forest-deep)}.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--forest-deep)}.btn-ghost{background:var(--paper);color:var(--forest);box-shadow:0 4px 0 var(--kraft-edge)}.btn-ghost:hover{box-shadow:0 5px 0 var(--kraft-edge)}.btn-ghost:active{box-shadow:0 1px 0 var(--kraft-edge)}.hero{position:relative}.hero-copy{position:relative;z-index:2;max-width:60rem;margin-inline:auto;padding:clamp(40px,7vw,88px) var(--gutter) 0;text-align:center}.hero-copy h1{font-size:var(--step-4);letter-spacing:-.01em}:lang(zh-Hant-TW) .hero-copy h1{font-family:var(--font-display);font-weight:700;letter-spacing:.04em}.hero-lead{max-width:34em;margin:18px auto 0;text-wrap:balance;font-size:var(--step-1);color:var(--ink-soft)}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:28px}.hero-scene img{width:100%;max-height:82vh;object-fit:cover;object-position:50% 70%;margin-top:clamp(-120px,-8vw,-40px);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 22%);mask-image:linear-gradient(to bottom,transparent 0,#000 22%);animation:rise 1.1s cubic-bezier(.2,.7,.2,1) both}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@media(max-width:699px){.hero-copy{padding-top:28px}.hero-lead{font-size:var(--step-0);margin-top:12px}.hero-actions{gap:10px;margin-top:20px}.hero-actions .btn{flex:1 1 140px;justify-content:center}.hero-scene img{margin-top:0;max-height:none;aspect-ratio:5 / 4;object-position:50% 80%}}.section-head{max-width:40rem;margin-bottom:clamp(28px,4vw,48px)}.section-head h2{font-size:var(--step-3)}.section-head p{margin-top:10px;color:var(--ink-soft)}:lang(zh-Hant-TW) h2{font-family:var(--font-display);font-weight:700}.menu{position:relative;background:var(--moss-soft);padding-block:32px clamp(64px,8vw,112px)}.hills{position:absolute;left:0;bottom:100%;width:100%;height:clamp(32px,6vw,90px);fill:var(--moss-soft);margin-bottom:-1px}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:clamp(40px,5vw,56px) clamp(24px,3vw,36px)}.cake{position:relative;display:flex;flex-direction:column;background:var(--kraft);border:var(--edge);border-radius:var(--radius-cut);box-shadow:var(--thickness)}.cake-photo{position:relative}.cake-photo>img:first-child{width:100%;aspect-ratio:854 / 526;object-fit:cover;border-radius:calc(var(--radius-cut) - 3px) calc(var(--radius-cut) - 3px) 0 0;border-bottom:var(--edge)}.mascot{position:absolute;right:14px;bottom:-40px;height:clamp(120px,15vw,168px);width:auto;filter:drop-shadow(0 4px 0 rgba(108,77,56,.35));transform-origin:50% 100%;transition:transform .32s cubic-bezier(.22,1,.36,1)}.cake:hover .mascot{transform:rotate(-5deg) translateY(-6px)}.cake-body{display:flex;flex-direction:column;gap:12px;flex:1;padding:18px clamp(18px,2.4vw,26px) 24px}.cake h3{font-size:var(--step-2);padding-right:clamp(96px,12vw,140px)}:lang(zh-Hant-TW) .cake h3{font-family:var(--font-display);font-weight:700}.cake-alt{display:block;font-family:var(--font-display);font-size:var(--step-0);font-weight:600;color:var(--bark);margin-top:2px}.cake-desc{color:var(--bark);max-width:36em}.prices{margin-top:auto;padding-top:6px}.prices-size{font-size:var(--step--1);font-weight:600;color:var(--bark);margin-bottom:4px}.price-row{display:grid;grid-template-columns:repeat(var(--cols, 3),1fr);gap:6px;margin:0;padding-top:10px;border-top:2px dashed color-mix(in srgb,var(--bark) 45%,transparent)}.price{padding:6px 10px;border-radius:12px}.price dt{font-size:var(--step--1);font-weight:600;color:var(--bark);line-height:1.3}.price dd{margin:2px 0 0;font-family:var(--font-display);font-weight:800;font-size:var(--step-2);line-height:1.1;font-variant-numeric:tabular-nums}.price-unit{font-size:.55em;font-weight:700;margin-right:2px}.price-missing{font-size:var(--step--1);font-weight:600}.price-direct{background:var(--forest);color:var(--cream)}.price-direct dt{color:color-mix(in srgb,var(--cream) 85%,transparent)}.cake-wide{grid-column:1 / -1}.mascot-row{position:absolute;right:clamp(16px,4vw,40px);bottom:calc(100% - 10px);display:flex;align-items:flex-end;pointer-events:none}.mascot-row img{height:clamp(72px,9vw,112px);width:auto;margin-inline:-5px;filter:drop-shadow(0 3px 0 rgba(108,77,56,.35))}.cake-wide{margin-top:clamp(40px,6vw,72px)}.cake-wide h3{padding-right:0}@media(min-width:900px){.cake-wide{flex-direction:row}.cake-wide .cake-photo{flex:0 0 54%}.cake-wide .cake-photo>img:first-child{height:100%;aspect-ratio:auto;min-height:320px;border-radius:calc(var(--radius-cut) - 3px) 0 0 calc(var(--radius-cut) - 3px);border-bottom:0;border-right:var(--edge)}.cake-wide .cake-body{padding:32px clamp(24px,3vw,40px);justify-content:center}}.order{padding-block:clamp(64px,8vw,112px)}.order-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}.way{display:flex;flex-direction:column;gap:10px;padding:24px;background:var(--paper);border:var(--edge);border-radius:var(--radius-cut);box-shadow:var(--thickness)}.way h3{font-size:var(--step-1)}:lang(zh-Hant-TW) .way h3{font-family:var(--font-display);font-weight:700;font-size:var(--step-2)}.way p{color:var(--ink-soft)}.way-address{font-weight:700;color:var(--forest)!important}.way-links{display:flex;flex-wrap:wrap;gap:10px;margin:auto 0 0;padding:6px 0 0;list-style:none}.way-links a{display:inline-flex;align-items:center;min-height:44px;padding:6px 16px;border:2px solid var(--forest);border-radius:12px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.way-links a:hover{background:var(--forest);color:var(--cream)}.care{background:var(--forest);color:var(--cream);padding-block:clamp(64px,8vw,104px);text-align:center}.care-intro{max-width:40em;margin-inline:auto;font-family:var(--font-display);font-size:var(--step-2);line-height:1.6;white-space:pre-line;text-wrap:balance}.care-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:52rem;margin:44px auto 0;padding:0;list-style:none}.care-list li{display:flex;flex-direction:column;align-items:center;gap:18px;font-family:var(--font-display);font-weight:700;font-size:var(--step-1);line-height:1.4;white-space:pre-line}.care-icon{width:128px;height:128px;background:var(--cream);-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat}.care-note{max-width:40em;margin:48px auto 0;color:color-mix(in srgb,var(--cream) 88%,transparent);font-size:var(--step-1);line-height:1.6;white-space:pre-line;text-wrap:balance}.care-note strong{display:block;font-weight:400}@media(max-width:600px){.care-intro{font-size:1rem}.care-list{grid-template-columns:1fr;gap:32px}.care-icon{width:104px;height:104px}.care-note{font-size:var(--step-0)}}.footer{background:var(--forest-deep);color:var(--cream);padding-block:clamp(48px,6vw,80px) 32px}.footer-grid{display:grid;grid-template-columns:auto 1fr;gap:32px clamp(32px,6vw,80px);align-items:start}.footer-brand{display:flex;flex-direction:column;gap:14px}.footer-brand img{width:140px}.footer-brand p{font-family:var(--font-display);font-weight:600}.footer h2{font-size:var(--step-2);margin-bottom:16px}:lang(zh-Hant-TW) .footer h2{font-family:var(--font-display);font-weight:700}.footer-list{display:grid;grid-template-columns:max-content 1fr;gap:10px 24px;margin:0}.footer-list dt{color:color-mix(in srgb,var(--cream) 70%,transparent)}.footer-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}.footer-legal{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px 20px;padding-top:24px;border-top:2px dashed color-mix(in srgb,var(--cream) 25%,transparent);font-size:var(--step--1);color:color-mix(in srgb,var(--cream) 70%,transparent)}.footer :focus-visible{outline-color:var(--cream)}@media(max-width:640px){.footer-grid{grid-template-columns:1fr}.footer-list{grid-template-columns:1fr;gap:2px}.footer-list dd{margin-bottom:10px}}
