@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--bg:#f0e9dc;--ink:#30231f;--wine:#642c32;--gold:#c1a16d;--line:#c9bdab}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Arial,sans-serif}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b08036;outline-offset:5px}header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line)}.logo{font-family:Georgia,serif;font-size:32px;letter-spacing:5px}.logo span{font-size:36px}.logo small{display:block;font:8px Manrope,Arial;letter-spacing:2px;margin-top:6px}nav{display:flex;gap:34px}nav button{background:none;border:0;padding:12px 0;color:#776a60;font-size:12px}nav button.active{color:var(--wine);border-bottom:1px solid var(--wine)}.header-order{border:1px solid var(--line);padding:15px 22px;background:none;font-size:12px}.header-order span{margin-left:20px}.page{display:none}.page.active{display:block}.hero{padding:60px 7% 0;display:grid;grid-template-columns:1fr 1fr;gap:20px;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;margin-bottom:25px}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(64px,6.7vw,106px);line-height:.99;letter-spacing:-3px}em{font-weight:400;color:var(--wine)}.intro{font-size:13px;line-height:1.9;margin:25px 0 30px;color:#796d61}.primary{background:var(--wine);color:#fff6e7;border:1px solid var(--wine);padding:18px 25px;font-size:12px;min-height:50px}.primary span{margin-left:35px}.primary:hover{background:#462126}.micro{font-size:8px;letter-spacing:1.5px;color:#8b786a;margin-top:18px}.hero-art{position:relative;min-height:565px;display:flex;align-items:center;justify-content:center}.arch{position:absolute;width:90%;height:560px;border:1px solid #bba98d;border-radius:50% 50% 0 0;top:0;background:radial-gradient(ellipse at 50% 35%,#dcd0bc,#e8dfd0 65%)}.arch.inner{width:81%;height:535px;top:22px;background:none;border-color:#c7b697}.column{position:absolute;top:180px;width:47px;height:335px;background:repeating-linear-gradient(90deg,#b9a88f 0,#ece2ce 6px,#d4c4a8 10px);opacity:.5}.column:before,.column:after{content:'';position:absolute;left:-10px;width:67px;height:17px;background:#c3b295;box-shadow:0 4px 0 #e4d6bf}.column:after{bottom:0}.column.left{left:0}.column.right{right:0}.cake-holder{width:100%;position:relative;z-index:2}.hero-art .cake-holder{width:105%;margin-top:52px;filter:drop-shadow(0 25px 18px #5a34233b)}.cake-holder svg{display:block;width:100%;height:auto;overflow:visible}.pedestal{position:absolute;bottom:0;width:75%;height:93px;background:linear-gradient(120deg,#d3c4ab,#f5ead6 40%,#b9a68b);clip-path:polygon(0 12%,100% 12%,97% 28%,90% 28%,90% 100%,10% 100%,10% 28%,3% 28%)}.pedestal:after{content:'';position:absolute;inset:20px 15%;background:repeating-linear-gradient(100deg,transparent 0 25px,#a7967d22 26px 28px,transparent 29px 42px)}.orbit-label{position:absolute;top:72px;font-size:8px;letter-spacing:3px;z-index:2}.art-note{position:absolute;bottom:112px;right:-26px;font-size:8px;letter-spacing:2px;writing-mode:vertical-rl}.star{position:absolute;color:#987749;font-size:40px}.s1{top:120px;right:20px}.s2{bottom:150px;left:12px;font-size:22px}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;padding:30px 0;font-size:8px;letter-spacing:1.6px;border-top:1px solid var(--line);margin-top:35px}.ticker{background:var(--wine);color:#ead7b9;white-space:nowrap;overflow:hidden;padding:21px 0;font-size:12px;letter-spacing:4px;word-spacing:20px}.ticker b{font-size:20px;margin:0 25px}.collection{padding:80px 7%}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:42px}h2{font-size:48px;line-height:1.08;letter-spacing:-1px}.text-link{border:0;border-bottom:1px solid #b5a58e;background:none;color:var(--ink);padding:10px 0;font-size:11px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card .image{position:relative;background:#e2d7c5;overflow:hidden;padding:25px 0 4px;min-height:230px}.card:nth-child(2) .image{background:#d8c8b7}.card:nth-child(3) .image{background:#e4dccb}.card .image svg{width:100%;transition:transform .4s}.card:hover .image svg{transform:translateY(-7px) rotate(-2deg)}.card .number{position:absolute;top:17px;left:18px;font-size:9px;color:#776651}.card h3{font-size:30px;margin-top:20px}.card p{font-size:11px;line-height:1.8;color:#82715e;min-height:38px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;font-size:12px}.card-bottom button{border:1px solid var(--line);border-radius:50%;background:none;width:35px;height:35px;font-size:19px}.card-bottom button:hover{background:var(--wine);color:white}.manifesto{text-align:center;background:#ded4c2;padding:55px 20px 65px}.manifesto>span{font-size:35px;color:#896f45}.manifesto p{font-family:'Cormorant Garamond',Georgia,serif;font-size:48px;line-height:1.15;margin:20px 0}.manifesto small{font-size:8px;letter-spacing:2px}footer{display:flex;align-items:center;justify-content:space-between;padding:35px 5%;gap:20px;border-top:1px solid var(--line)}footer p,footer small{font-size:10px;color:#7d6d5c}footer .logo{font-size:22px}.page-heading{padding:70px 7% 30px}.page-heading h1{font-size:76px}.page-heading>p:last-child{font-size:13px;color:#81715f;line-height:1.8}.filters{display:flex;gap:10px;padding:0 7% 40px;flex-wrap:wrap}.filters button{padding:12px 21px;border:1px solid var(--line);background:none;font-size:11px}.filters .selected{background:var(--wine);color:white;border-color:var(--wine)}.menu-cards{padding:0 7% 60px}.demo-note{text-align:center;font-size:11px;color:#847460;margin:15px 20px 50px}.ritual-stage{position:relative;background:#2e2220;margin:0 7%;height:405px;overflow:hidden;display:flex;justify-content:center;align-items:center}.ritual-stage .cake-holder{max-width:530px}.ritual-stage>span{position:absolute;bottom:23px;color:#dfc9a2;font-size:11px;text-align:center;padding:0 10px}.ritual-controls{text-align:center;margin:25px}.ritual-controls .text-link{margin-left:20px}.ingredients{display:grid;grid-template-columns:repeat(3,1fr);padding:30px 10% 70px;gap:40px;text-align:center}.ingredients small{color:#a28b61}.ingredients h3{font-size:32px;margin:12px}.ingredients p{font-size:12px;line-height:1.8;color:#87745f}.sponge{transition:opacity .25s,transform .5s}.eaten{opacity:0;transform:translateX(15px)}#pacman{position:absolute;left:-100px;top:36%;width:80px;height:80px;background:#d8b55f;border-radius:50%;z-index:4;clip-path:polygon(0 0,100% 0,100% 12%,49% 50%,100% 88%,100% 100%,0 100%)}#pacman.eating{animation:chomp 1.25s linear 3}@keyframes chomp{0%{left:-100px;clip-path:polygon(0 0,100% 0,100% 12%,49% 50%,100% 88%,100% 100%,0 100%)}50%{clip-path:polygon(0 0,100% 0,100% 47%,49% 50%,100% 53%,100% 100%,0 100%)}100%{left:110%}}#kick{position:fixed;inset:0;z-index:20;background:#351f20;color:#e7d3a7;display:none;align-items:center;justify-content:center;overflow:hidden}#kick.show{display:flex;animation:kick-in .65s both}#kick svg{width:350px;animation:warrior .6s both}#kick .kick-title{font-family:Georgia,serif;font-size:75px;line-height:.95}#kick em{color:#dcaa6b}#kick p{position:absolute;bottom:15%;font-size:9px;letter-spacing:3px}@keyframes kick-in{0%{transform:translateX(-100%)}20%,78%{transform:translateX(0)}100%{transform:translateX(100%)}}@keyframes warrior{0%{transform:translateX(-150px) rotate(-20deg)}65%,100%{transform:translateX(15px) rotate(0)}}dialog{width:min(490px,92vw);padding:38px;border:1px solid #c9b48d;background:var(--bg);color:var(--ink);max-height:90vh}dialog::backdrop{background:#211410ba;backdrop-filter:blur(5px)}dialog h2{font-size:38px}dialog>p{font-size:12px;line-height:1.6}dialog .close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px}label{display:block;font-size:11px;margin:20px 0 0}select,textarea{display:block;width:100%;margin-top:8px;background:#fbf5ea;border:1px solid var(--line);padding:12px;color:var(--ink);font:12px Manrope,Arial}textarea{height:80px;resize:vertical}dialog small{display:block;font-size:10px;line-height:1.7;color:#87745f;margin-top:22px}#order-price{font-size:14px;margin:23px 0}pre{font:12px/1.9 Manrope,Arial;white-space:pre-wrap;overflow-wrap:anywhere;padding:15px;background:#e4d8c4}.no-motion *, .no-motion *:before{animation:none!important;transition:none!important}
@media(min-width:1500px){main,header,footer{max-width:1600px;margin:auto}.hero{padding-top:80px}.hero-art{min-height:650px}.arch{height:640px}.arch.inner{height:615px}.column{height:400px}.hero-art .cake-holder{margin-top:70px}}@media(max-width:800px){header{height:auto;min-height:100px;flex-wrap:wrap;padding:22px 6% 0;gap:15px}.logo{font-size:25px}.logo small{font-size:6px}.logo span{font-size:29px}nav{order:3;width:100%;justify-content:center;gap:35px}.header-order{padding:11px;font-size:10px}.header-order span{margin-left:12px}.hero{padding:38px 7% 0;grid-template-columns:1fr}.hero-copy{position:relative;z-index:3}h1{font-size:70px;letter-spacing:-2px}.hero-copy h1 br:nth-child(2){display:none}.intro{font-size:12px}.hero-art{min-height:440px;max-width:500px;width:100%;margin:15px auto 0}.arch{height:440px}.arch.inner{height:420px}.column{top:140px;height:265px;width:35px}.column:before,.column:after{width:51px;left:-8px}.hero-art .cake-holder{width:100%;margin-top:45px}.orbit-label{top:50px;font-size:7px;letter-spacing:2px}.pedestal{height:72px}.art-note{right:-8px;bottom:90px;font-size:7px}.hero-foot{margin-top:20px;padding:24px 0;line-height:1.8;font-size:7px}.hero-foot>span:first-child{max-width:135px}.hero-foot>span:last-child{display:none}.ticker{font-size:10px;padding:14px 0;letter-spacing:2px}.collection{padding:50px 7%}.section-title{align-items:start;gap:20px}.section-title h2{font-size:35px}.section-title .text-link{white-space:nowrap;font-size:9px;margin-top:25px}.cards{grid-template-columns:1fr;gap:35px}.card .image{min-height:0;padding:10px 10% 0}.card h3{font-size:32px;margin-top:17px}.card p{min-height:0}.card .image svg{max-height:280px}.manifesto p{font-size:36px}.manifesto small{font-size:7px;letter-spacing:1px}footer{flex-wrap:wrap;padding:30px 7%;gap:15px}footer p{flex-basis:60%;text-align:right}footer small{font-size:8px}footer .text-link{font-size:9px}.page-heading{padding-top:45px}.page-heading h1{font-size:53px;letter-spacing:-2px}.page-heading .eyebrow{font-size:8px;line-height:1.9}.filters{padding-bottom:30px;gap:8px}.filters button{padding:10px 13px;font-size:10px}.ritual-stage{height:300px;margin:0 4%}.ingredients{gap:16px;padding:20px 5% 45px}.ingredients h3{font-size:25px;margin:10px 0}.ingredients p{font-size:10px}.ritual-stage>span{font-size:9px;bottom:20px}#pacman{width:60px;height:60px;top:37%}#kick .kick-title{font-size:40px;position:absolute;top:20%;left:10%}#kick svg{width:290px;position:absolute;top:35%;right:0}.ritual-controls .text-link{display:block;margin:15px auto 0}dialog{padding:30px 25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition:none!important}}

[hidden]{display:none!important}
/* Keep the artwork inside narrow mobile grid tracks. */
.hero>*{min-width:0}
@media(max-width:800px){
 .hero{grid-template-columns:minmax(0,1fr)}
 .hero-copy h1{font-size:clamp(50px,14.5vw,64px);line-height:1.02}
 .hero-copy h1 br:nth-child(2){display:initial}
 .hero-art{min-height:390px}
 .arch{height:390px}.arch.inner{height:370px}
 .column{top:120px;height:245px}
 .section-title>div{min-width:0}
 nav button{min-height:44px}
 #kick.show{animation-duration:1.15s}
 #kick svg{width:min(82vw,330px);top:35%}
 #kick .kick-title{top:19%;left:9%;font-size:clamp(36px,11vw,48px)}
}
#kick.show{animation-duration:1.15s}
/* The kick and feast happen on the selected cake itself. */
.card .image{display:block;width:100%;border:0;color:inherit;cursor:pointer;text-align:initial;padding:22px 0 35px;touch-action:manipulation}
.cake-scene{display:block;position:relative;width:100%;line-height:0;isolation:isolate}
.card .image .cake-svg{display:block;width:100%;height:auto;max-height:none;transform-origin:50% 85%;transition:none}
.card:hover .image .cake-svg{transform:none}
.card .image .inline-warrior{position:absolute;z-index:3;left:-9%;top:1%;width:82%;height:auto;max-height:none;opacity:0;pointer-events:none;filter:drop-shadow(0 4px 3px #301b1933);transform:none;transition:none}
.card-pacman{position:absolute;display:block;left:0;top:0;z-index:4;border-radius:50%;background:#ebbe43;opacity:0;pointer-events:none;clip-path:polygon(0 0,100% 0,100% 12%,49% 50%,100% 88%,100% 100%,0 100%)}
.card-pacman:after{content:'';position:absolute;top:19%;left:48%;width:9%;height:9%;border-radius:50%;background:#34231a}
.card-pacman.chomping{animation:mouth .18s infinite alternate linear}
@keyframes mouth{to{clip-path:polygon(0 0,100% 0,100% 46%,49% 50%,100% 54%,100% 100%,0 100%)}}
.impact{position:absolute;z-index:5;left:49%;top:58%;font-size:55px;color:#e0ad55;opacity:0;line-height:1;pointer-events:none}
.feast-hint{position:absolute;bottom:13px;left:8px;right:8px;text-align:center;font:9px/1.5 Manrope,Arial,sans-serif;color:#665340;letter-spacing:.2px}
.card p.feast-status{min-height:30px;font-size:10px;line-height:1.5;margin:10px 0 0;color:var(--wine)}
.card .filling{transform-box:view-box}
.card.feasted .feast-hint{visibility:hidden}
.card .image[aria-busy="true"]{cursor:progress}
@media(max-width:800px){.card .image{padding:12px 0 35px}.card .image svg.cake-svg{max-height:none}.feast-hint{font-size:9px}}
#pacman.eating{animation-iteration-count:4}
