@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-4.ttf) format('truetype');
}

:root{--ink:#172b10;--cream:#e8f1d7;--serif:'Cormorant Garamond','Bodoni 72',Didot,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scrollbar-width:none}html::-webkit-scrollbar{display:none}body{margin:0;background:#c4d4a9;color:var(--ink);font-family:var(--sans)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:6px}button{border:0}button:disabled{cursor:default}.scroll-story{height:300vh;height:300svh}.hero{height:100vh;height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate;transition:color .9s ease-in-out;touch-action:none}.hero[data-flavor=cacao]{--ink:#341a0e;--cream:#f4dfcb}.hero[data-flavor=vainilla]{--ink:#493719;--cream:#fff6df}.backgrounds,.decorations,.cookies{position:absolute;inset:0;pointer-events:none}.backgrounds{z-index:-4;background:linear-gradient(110deg,#e5f1ce,#769049)}.background{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:0}.background.active{opacity:1}.decorations{z-index:-3;transform:translate(var(--mx,0px),var(--my,0px))}.deco{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}.deco.active{opacity:1;animation:float 7s ease-in-out infinite alternate}.cookies{z-index:-2}.cookie{position:absolute;left:27%;top:13%;width:43%;height:73%;object-fit:contain;opacity:0;transform-origin:50% 55%;filter:drop-shadow(0 16px 8px #25370b26)}.cookie.active{opacity:1}header{position:absolute;top:4.5%;left:4.2%;right:4.2%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;flex-direction:column;align-items:center}.brand-name{font:500 clamp(24px,2vw,36px)/1.1 var(--serif);letter-spacing:.16em;white-space:nowrap}.brand-sub{font-size:8px;letter-spacing:.48em;margin-top:9px}nav{display:flex;gap:clamp(20px,2.8vw,48px);align-items:center;font-size:12px;letter-spacing:.16em}nav button{background:none;padding:0;font-size:inherit;letter-spacing:inherit}.order{display:flex;align-items:center;gap:30px;background:none;padding:0}.order svg{width:29px;height:34px}.order span,.buy{background:var(--ink);color:var(--cream);border-radius:40px;transition:background .9s,color .9s}.order span{padding:14px 35px;font-size:12px;letter-spacing:.22em}.intro{position:absolute;left:4.2%;top:31%;width:24%}.eyebrow{font-size:11px;letter-spacing:.23em;font-weight:500;margin:0 0 22px}.claim{font:400 clamp(27px,3.1vw,53px)/1.04 var(--serif);letter-spacing:-.045em;margin:0}.rule{display:block;width:38px;height:1px;background:currentColor;margin-top:25px}.product{position:absolute;right:3.4%;top:24%;width:23%;text-align:center}.titles{position:relative;height:clamp(108px,10.1vw,190px)}h1{font:400 clamp(48px,5.05vw,90px)/.94 var(--serif);letter-spacing:-.046em;margin:0;position:absolute;inset:0;white-space:nowrap}.product>.rule{margin:25px auto}.buy{width:66%;padding:12px 22px;font-size:14px;letter-spacing:.23em;display:inline-flex;justify-content:space-between;align-items:center;gap:12px}.buy span{font-size:26px;line-height:14px}.flavors{display:flex;gap:12px;margin-top:34px}.flavor{flex:1;min-width:0;padding:12px 7px 10px;border:1px solid transparent;border-radius:17px;background:#f3f8e338;display:flex;align-items:center;flex-direction:column;position:relative}.flavor[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 2px #ffffff45}.flavor img{width:100%;height:82px;object-fit:contain}.flavor-label{font-size:10px;letter-spacing:.16em;margin-top:9px}.dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;position:absolute;bottom:-17px}.flavor[aria-pressed=true] .dot{opacity:1}footer{position:absolute;bottom:5%;left:4.2%;right:4.2%;display:flex;align-items:end;justify-content:space-between}footer p{font-size:10px;letter-spacing:.28em;line-height:1.9;margin:0}footer .rule{width:25px;margin-top:10px}.scroll-hint{opacity:.65;font-size:9px}.scroll-hint span{display:block;text-align:center;font-size:19px;line-height:1.4}.loading{position:absolute;inset:0;background:#dce8c8;display:grid;place-items:center;z-index:20;font-size:13px;letter-spacing:.12em;transition:opacity .5s}.loading.hidden{opacity:0;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.hero[aria-busy=true] header,.hero[aria-busy=true] .product{pointer-events:none}dialog{border:1px solid #6b775255;border-radius:8px;color:#1b3015;background:#eff2e4;padding:48px;max-width:440px;width:calc(100% - 40px)}dialog::backdrop{background:#14210a50;backdrop-filter:blur(8px)}dialog h2{font:42px/1 var(--serif);margin:15px 0}dialog .dialog-copy{font-size:15px;line-height:1.7}dialog .close{position:absolute;right:15px;top:10px;background:none;font-size:28px}.dialog-ok{background:#1b3015;color:#eff2e4;border-radius:25px;padding:14px 20px;font-size:10px;letter-spacing:.12em;margin-top:12px}@keyframes float{from{translate:0 -4px}to{translate:3px 5px}}
@media(min-aspect-ratio:2/1){.cookie{top:14%;height:75%}.product{top:22%}.flavors{margin-top:20px}.flavor img{height:55px}.titles{height:9vw}h1{font-size:4.4vw}}
@media(max-width:760px){header{top:24px;left:6%;right:6%}.brand-name{font-size:24px}.brand-sub{font-size:6px;margin-top:6px}nav{display:none}.order{gap:10px}.order svg{width:23px}.order span{padding:11px 19px;font-size:10px}.intro{left:6%;top:15%;width:88%;text-align:center}.eyebrow{font-size:9px;margin-bottom:8px}.claim{font-size:27px;line-height:1.05}.claim br{display:none}.intro .rule{display:none}.product{inset:27% 6% auto;width:88%;height:68%;display:flex;flex-direction:column;align-items:center}.titles{height:52px;width:100%}h1{font-size:46px;line-height:1;white-space:nowrap}h1 br{display:none}h1 span:before{content:' '}.product>.rule{display:none}.buy{font-size:10px;width:auto;gap:28px;padding:9px 22px;margin-top:6px}.buy span{font-size:22px}.cookie{left:15%;width:70%;top:39%;height:36%;filter:drop-shadow(0 8px 5px #25370b24)}.flavors{position:absolute;bottom:3%;width:min(310px,100%);gap:13px;margin:0}.flavor{border-radius:12px;padding:6px}.flavor img{height:58px}.flavor-label{font-size:9px;margin-top:3px}.dot{bottom:-12px}.deco{object-fit:cover;width:170%;max-width:none;left:-35%}footer{bottom:2%;left:6%;right:6%}footer p{font-size:6px}footer .rule{display:none}.scroll-hint{display:none}}
@media(max-height:650px) and (max-width:760px){header{top:15px}.intro{top:14%}.claim{font-size:23px}.product{top:27%;height:68%}h1{font-size:38px}.titles{height:39px}.cookie{top:40%;height:34%}.flavor img{height:43px}.flavors{bottom:4%}.buy{margin-top:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}.decorations{transform:none}}

.cookies:before{content:"";position:absolute;left:40%;top:82%;width:18%;height:2%;background:radial-gradient(ellipse,#24301366,transparent 70%);filter:blur(4px);z-index:-1}
.decorations{mask-image:linear-gradient(to bottom,#000 20%,#0008 30%,#0005 50%,#000b 72%,#000 85%)}
@media(max-width:760px){.cookies:before{left:33%;top:73%;width:34%;height:1.5%}.claim br{display:block}.claim{font-size:25px}.intro{top:14%}}
.hero{color:var(--ink)}
.decorations{mask-image:radial-gradient(ellipse 29% 40% at 86% 44%,transparent 68%,#000 100%),radial-gradient(ellipse 29% 30% at 12% 41%,transparent 68%,#000 100%),linear-gradient(to bottom,transparent 8%,#000 19%);mask-composite:intersect}
.hero[data-flavor=cacao]{--ink:#faecd6;--cream:#422513}
.hero[data-flavor=cacao] .order span,.hero[data-flavor=cacao] .buy{background:#422513;color:#faecd6}
@media(max-width:760px){.decorations{mask-image:linear-gradient(to bottom,transparent 12%,#000 40%,#000 70%,transparent 85%)}}
.hero[data-flavor=cacao]{--ink:#29180e;--cream:#f5e4cd}.hero[data-flavor=cacao] .product{color:#fff0da}.hero[data-flavor=cacao] .flavor{color:#29180e;background:#f3dfc66b}
.hero[data-flavor=cacao] .cookies:before{top:80.5%}.hero[data-flavor=vainilla] .cookies:before{top:81%}
@media(max-width:760px){h1{font-size:clamp(30px,9.4vw,46px)}.cookies:before,.hero[data-flavor=cacao] .cookies:before,.hero[data-flavor=vainilla] .cookies:before{top:71.5%}}

/* Staging: dismissible pack promotion. */
.pack-popup{position:fixed;inset:0;margin:auto;width:min(660px,88vw);max-width:660px;max-height:90svh;overflow:auto;padding:44px 38px 34px;background:#1b3015;color:#eff2df;border:1px solid #dbe8bd80;border-radius:24px;box-shadow:0 20px 70px #15250c40;text-align:center}
.pack-popup::backdrop{background:#15250c65;backdrop-filter:blur(5px)}
.pack-popup h2{font:500 clamp(22px,2.3vw,36px)/1.15 var(--sans);letter-spacing:.08em;margin:8px 0 14px}
.pack-popup .pack-detail{font-size:16px;letter-spacing:.04em;margin:0 0 20px}
.pack-popup strong{display:block;font:500 clamp(90px,10vw,150px)/.95 var(--serif);letter-spacing:-.055em;color:#e3efb5}
.pack-close{position:absolute;top:10px;right:12px;width:44px;height:44px;display:grid;place-items:center;background:transparent;border-radius:50%;font-size:32px;line-height:1}
.pack-close:hover{background:#ffffff18}.pack-dismiss{background:#e3efb5;color:#1b3015;border-radius:30px;padding:14px 24px;margin-top:26px;font-size:12px;letter-spacing:.12em}
@media(max-width:760px){.pack-popup{padding:50px 22px 28px;border-radius:20px}.pack-popup h2{font-size:23px}.pack-popup .pack-detail{font-size:13px}.pack-popup strong{font-size:108px}}
