*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#F7F1EA;-webkit-font-smoothing:antialiased}
a{color:#2A1F1A}a:hover{color:#8F4A47}
img{max-width:100%}
.preview-bar{background:#8F4A47;color:#fff;text-align:center;font:500 16px/1.4 'Jost',system-ui,sans-serif;padding:8px 16px}
.btn-outline{border:1.5px solid #2A1F1A;background:transparent;border-radius:999px;padding:10px 20px;font:600 17px 'Jost',system-ui,sans-serif;color:#2A1F1A;min-height:44px;cursor:pointer;transition:transform .1s ease-out,background .15s}
.btn-outline:hover{background:#2A1F1A;color:#F7F1EA}
.btn-outline:active,a[style*="border-radius: 999px"]:active,button:active{transform:scale(.97)}
.thumb{padding:0;border-radius:14px;background:none;cursor:pointer;border:2px solid transparent;min-height:44px}
.thumb img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;border-radius:12px}
.thumb.is-on{border-color:#2A1F1A}
.bundle{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left;padding:16px 20px;border-radius:18px;background:#FFFDFA;font:inherit;color:#2A1F1A;cursor:pointer;min-height:72px;border:1.5px solid rgba(42,31,26,.2)}
.bundle.is-on{border:2px solid #2A1F1A}
.bundle .dot{width:20px;height:20px;border-radius:50%;flex:none;border:2px solid #2A1F1A;box-shadow:inset 0 0 0 3px #FFFDFA}
.bundle.is-on .dot{background:#2A1F1A}
.save-pill{background:#2A1F1A;color:#F7F1EA;font-size:16px;padding:1px 10px;border-radius:999px}
.drawer,.popup{position:fixed;inset:0;z-index:50;visibility:hidden}
.scrim{position:absolute;inset:0;background:rgba(42,31,26,.45);opacity:0;transition:opacity .3s}
.drawer-panel{position:absolute;top:0;right:0;width:min(440px,100vw);height:100%;transform:translateX(100%);transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.drawer.open,.popup.open{visibility:visible}
.drawer.open .scrim,.popup.open .scrim{opacity:1}
.drawer.open .drawer-panel{transform:none}
.popup{display:flex;align-items:center;justify-content:center;padding:16px}
.popup-panel{width:min(760px,100%);max-height:calc(100vh - 32px);overflow:auto;opacity:0;transform:scale(.96);transition:opacity .3s,transform .35s cubic-bezier(.2,.8,.2,1)}
.popup.open .popup-panel{opacity:1;transform:none}
@media (max-width:640px){.popup-img{display:none!important}}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#2A1F1A;color:#F7F1EA;font:500 16px 'Jost',system-ui,sans-serif;padding:12px 20px;border-radius:999px;opacity:0;transition:opacity .25s,transform .25s;z-index:60;pointer-events:none}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){*{transition:opacity .2s!important;scroll-behavior:auto!important}.drawer-panel,.popup-panel{transform:none!important}}
@media (max-width:720px){section[id="top"]>div{margin:0 16px 32px!important;padding:28px!important}}
/* Bodoni Moda: pin optical size so hairlines hold up at display sizes */
[style*="Bodoni Moda"]{font-optical-sizing:none;font-variation-settings:"opsz" 14}
