@import "https://fonts.googleapis.com/css2?family=Bagel+Fat+One&family=Instrument+Serif:ital@0;1&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,700&display=swap";:root{--cream:#f6ecd8;--butter:#f1dfb6;--ink:#17120e;--wood:#8a5a33;--pink:#f27aa7;--pink-soft:#ffd6e3;--caramel:#c9771f;--display:"Bagel Fat One", system-ui, sans-serif;--serif:"Instrument Serif", Georgia, serif;--sans:"DM Sans", system-ui, sans-serif}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}html,body{overflow-x:clip}body{font-family:var(--sans);background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}:focus-visible{outline:3px solid var(--pink);outline-offset:3px;border-radius:8px}.glass{-webkit-backdrop-filter:blur(16px)saturate(170%);background:linear-gradient(135deg,#ffffff8c,#ffffff38);border:1px solid #fff9;box-shadow:inset 0 1px #ffffffe6,inset 0 -1px #ffffff40,0 10px 30px #3c230a1f}.btn{white-space:nowrap;border-radius:999px;align-items:center;gap:.5em;padding:.95em 1.5em;font-weight:700;text-decoration:none;transition:transform .25s cubic-bezier(.3,1.6,.5,1),box-shadow .25s;display:inline-flex}.btn:hover{transform:translateY(-2px)scale(1.03)}.btn.sm{padding:.7em 1.15em;font-size:.9rem}.btn-ink{background:var(--ink);color:#fff8ec;box-shadow:0 8px 20px #17120e40}.btn-ink:hover{box-shadow:0 12px 28px #f27aa773}.btn-glass{-webkit-backdrop-filter:blur(10px);background:#fff9;border:1px solid #fffc}.row{flex-wrap:wrap;gap:.75rem;display:flex}.nav{z-index:20;border-radius:999px;justify-content:space-between;align-items:center;gap:1rem;width:min(1180px,100% - 24px);padding:.55rem .6rem .55rem 1.3rem;transition:background .3s;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.nav.solid{background:#f6ecd8d1}.brand{font-family:var(--display);letter-spacing:.02em;align-items:baseline;gap:.35rem;font-size:1.6rem;text-decoration:none;display:inline-flex}.brand small{font-family:var(--serif);letter-spacing:0;font-size:1rem;font-style:italic}.nav nav{gap:1.8rem;font-weight:500;display:flex}.nav nav a{text-decoration:none;position:relative}.nav nav a:after{content:"";background:var(--pink);transform-origin:0;height:2px;transition:transform .25s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.nav nav a:hover:after{transform:scaleX(1)}.nav-r{align-items:center;gap:.5rem;display:flex}.lang{background:#17120e14;border-radius:999px;padding:3px;font-size:.78rem;font-weight:700;display:inline-flex}.lang b{border-radius:999px;padding:.35em .7em;transition:background .2s}.lang b.on{background:var(--ink);color:#fff}.hero{background:var(--ink);height:1000svh;position:relative}.hero-pin{background:linear-gradient(#2e8cf5,#8fcbff 40%,#d9efff 70%);height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden}.hero-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0;transform:none}.hero-canvas{touch-action:pan-y;position:absolute;inset:0}.hero[data-in="1"] .hero-pin{background:#2a1b12}.hero[data-in="1"] .hero-img{visibility:hidden}.menu-anchor{position:absolute;bottom:100svh}.hero-menu{z-index:2;opacity:0;visibility:hidden;background:#2a1b12;transition:opacity .5s,visibility .5s;position:absolute;inset:0}.hero[data-in="1"] .hero-menu{opacity:1;visibility:visible}.hero-copy{opacity:calc(1 - var(--hp,0) * 6)}.hint{filter:opacity(calc(1 - var(--hp,0) * 6))}.hero-copy{z-index:2;pointer-events:none;max-width:560px;position:absolute;bottom:7vh;left:max(24px,50% - 590px)}.hero-copy>*{pointer-events:auto}.hero h1{font-family:var(--display);letter-spacing:-.01em;color:#fff8ec;text-shadow:0 4px 30px #00000059;font-size:clamp(2.8rem,6.4vw,5.6rem);font-weight:400;line-height:.95}.hero-copy p{color:#fff3e2;text-shadow:0 1px 12px #0006}.hero h1 em{color:var(--pink);-webkit-text-stroke:0;font-style:normal}.hero p{max-width:30em;margin:1rem 0 1.4rem;font-size:1.1rem;line-height:1.5}.w{vertical-align:bottom;display:inline-block;overflow:hidden}.w>span{animation:.8s cubic-bezier(.2,.9,.2,1.2) both rise;display:inline-block}@keyframes rise{0%{opacity:0;transform:translate(-50%,40px)}}.fade{animation:.8s both fade}@keyframes fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.hint{z-index:2;border-radius:999px;align-items:center;gap:.6rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:500;display:flex;position:absolute;top:96px;right:max(24px,50% - 590px)}.dot{background:var(--pink);width:10px;height:10px;box-shadow:0 0 0 0 var(--pink);border-radius:50%;animation:1.8s infinite ping}@keyframes ping{70%{box-shadow:0 0 0 10px #f27aa700}to{box-shadow:0 0 #f27aa700}}.door-tip{font:700 .8rem var(--sans);letter-spacing:.2em;color:#fff;background:var(--ink);opacity:0;white-space:nowrap;border-radius:999px;padding:.45em .9em;transition:all .25s;transform:translateY(6px)}.door-tip.on{opacity:1;transform:none}.treat-tip{font:700 .85rem var(--sans);color:var(--ink);white-space:nowrap;background:#fff;border-radius:999px;padding:.5em .9em;animation:.35s cubic-bezier(.3,1.7,.5,1) both pop;box-shadow:0 6px 18px #00000026}@keyframes pop{0%{opacity:0;transform:scale(.4)}}@keyframes slide{to{transform:translate(-50%)}}section h2{font-family:var(--display);font-size:clamp(2.2rem,5vw,4rem);font-weight:400;line-height:1}.mi-n{font-family:var(--serif);opacity:.6;font-style:italic}.mi-t{font-size:1.1rem;font-weight:700}.mi-tag{letter-spacing:.08em;text-transform:uppercase;background:var(--pink-soft);color:var(--ink);border-radius:999px;padding:.3em .7em;font-size:.72rem;font-weight:700}.stats{grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:4rem;display:grid}.stat{border-top:1.5px solid #f6ecd84d;padding-top:1rem;transition-delay:.1s}.stat:nth-child(2){transition-delay:.2s}.stat:nth-child(3){transition-delay:.3s}.stat:nth-child(4){transition-delay:.4s}.stat b{font-family:var(--display);color:var(--pink);font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:400;display:block}.stat span{opacity:.75}.visit{background:linear-gradient(135deg, var(--pink-soft), var(--butter));padding:7rem max(20px,50% - 590px);position:relative;overflow:hidden}.visit-in{grid-template-columns:1fr 1fr;align-items:stretch;gap:2rem;display:grid;position:relative}.visit-card{border-radius:32px;padding:2.4rem}.addr{margin:1.3rem 0 .4rem;font-size:1.15rem;line-height:1.4}.hours{font-family:var(--serif);margin-bottom:1.6rem;font-size:1.5rem;font-style:italic}.links{gap:1.4rem;margin-top:1.4rem;font-weight:700;display:flex}.map{border:0;border-radius:32px;width:100%;min-height:380px;box-shadow:0 20px 50px #3c230a2e}.foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem max(20px,50% - 590px);font-size:.9rem;display:flex}.wa-fab{z-index:30;background:#25d366;border-radius:50%;place-items:center;width:58px;height:58px;transition:transform .25s;display:grid;position:fixed;bottom:18px;right:18px;box-shadow:0 10px 26px #25d36673}.wa-fab:hover{transform:scale(1.08)rotate(-6deg)}@media (width<=900px){.nav nav{display:none}.menu-grid,.visit-in{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}}@media (width<=640px){.nav{padding-left:1rem}.nav .btn{display:none}.hero-copy{bottom:9vh;left:20px;right:20px}.hero p{font-size:1rem}.hint{white-space:nowrap;font-size:.8rem;inset:84px auto auto 50%;transform:translate(-50%)}.hint.fade{animation-name:fadeC}.visit-card{padding:1.6rem}.wa-fab{width:52px;height:52px}}@keyframes fadeC{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}.g-grid{grid-template-columns:repeat(3,1fr);gap:.8rem;display:grid}.g{aspect-ratio:3/4;border-radius:18px;position:relative;overflow:hidden}.g img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1);display:block}.g figcaption{color:#fff;text-shadow:0 1px 8px #0009;font-size:.82rem;font-weight:600;position:absolute;bottom:.6rem;left:.7rem}@media (width<=760px){.g-grid{grid-template-columns:repeat(2,1fr)}}.hero-flash{z-index:3;pointer-events:none;opacity:var(--flash,0);background:radial-gradient(circle,#fff 0 55%,#fffaf0 80%,#fff1d6);position:absolute;inset:0}.nav{transition:background .5s,box-shadow .5s,border-color .5s,-webkit-backdrop-filter .5s,backdrop-filter .5s}.nav.bare{box-shadow:none;-webkit-backdrop-filter:none;pointer-events:none;background:0 0;border-color:#0000;justify-content:center}.nav.bare nav,.nav.bare .nav-r{display:none}.nav.bare .brand{pointer-events:auto;color:#fff;text-shadow:0 3px #3b2418,0 10px 30px #3b241859;font-size:clamp(2.4rem,9vw,3.6rem);animation:4s ease-in-out infinite float}.nav.bare .brand small{font-size:.45em}@keyframes float{50%{transform:translateY(-8px)rotate(-1.5deg)}}@media (prefers-reduced-motion:reduce){.nav.bare .brand{animation:none}}.scroll-cue{z-index:2;width:26px;height:42px;opacity:calc(1 - var(--hp,0) * 8);pointer-events:none;border:2px solid #ffffffd9;border-radius:14px;margin-left:-13px;position:absolute;bottom:4vh;left:50%}.scroll-cue:after{content:"";background:#fff;border-radius:2px;width:4px;height:8px;margin-left:-2px;animation:1.6s ease-in-out infinite cue;position:absolute;top:8px;left:50%}@keyframes cue{0%{opacity:1;transform:translateY(0)}80%,to{opacity:0;transform:translateY(14px)}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tap-menu{width:max-content;color:var(--ink);cursor:pointer;border-radius:999px;margin:auto;padding:.8rem 1.4rem;font-weight:700;animation:2.4s ease-in-out infinite float;position:absolute;bottom:8svh;left:0;right:0}.book{touch-action:pan-y;border-radius:28px;width:min(560px,100% - 24px);padding:1.1rem 1.3rem 1rem;animation:.45s cubic-bezier(.2,.8,.2,1) both rise;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.book-x{cursor:pointer;color:var(--ink);background:0 0;border:0;font-size:1.6rem;line-height:1;position:absolute;top:.5rem;right:.8rem}.book-tabs{scrollbar-width:none;gap:.4rem;margin:0 2rem .8rem 0;display:flex;overflow-x:auto}.book-tabs button{font:600 .78rem var(--sans);cursor:pointer;background:#ffffff80;border:1px solid #17120e26;border-radius:999px;flex:none;padding:.35em .8em}.book-tabs .on{background:var(--ink);color:var(--cream)}.book-page{animation:.4s cubic-bezier(.2,.8,.2,1) both swipe-in}.book-page[data-dir="-1"]{animation-name:swipe-back}.book-page small{letter-spacing:.08em;text-transform:uppercase;color:var(--caramel);font-size:.72rem;font-weight:700}.book-page h3{font-family:var(--serif);margin-top:.2rem;font-size:1.9rem;font-weight:400;line-height:1}.book-page p{margin:.6rem 0 .8rem;line-height:1.45}.chips{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;display:flex}.chips span{background:#ffffffb3;border:1px solid #17120e26;border-radius:999px;padding:.4em .8em;font-size:.8rem;font-weight:600}.book-nav{opacity:.8;justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.book-nav button{cursor:pointer;background:#fff9;border:1px solid #17120e33;border-radius:50%;width:40px;height:40px;font-size:1.4rem}@keyframes swipe-in{0%{opacity:0;filter:blur(8px);transform:translate(60px)scaleX(1.15)}}@keyframes swipe-back{0%{opacity:0;filter:blur(8px);transform:translate(-60px)scaleX(1.15)}}.reviews{background:var(--ink);color:var(--cream);padding:6rem 0 5rem;overflow:hidden}.rev-head{margin-bottom:2.6rem;padding:0 max(20px,50% - 590px)}.reviews h2{color:var(--butter)}.rev-belt{padding:.6rem 0;overflow:hidden}.rev-belt>div{gap:1rem;width:max-content;animation:60s linear infinite slide;display:flex}.rev-belt[data-row="1"]>div{animation-duration:70s;animation-direction:reverse}.rev-belt:hover>div,.rev-belt:active>div{animation-play-state:paused}.rev{width:min(360px,78vw);color:var(--ink);border-radius:24px;margin:0;padding:1.3rem 1.4rem;transition:transform .35s}.rev:hover{transform:translateY(-6px)rotate(-1deg)}.rev-stars{color:var(--caramel);letter-spacing:.15em}.rev blockquote{font-family:var(--serif);margin:.6rem 0 .9rem;font-size:1.2rem;line-height:1.3}.rev figcaption{opacity:.75;font-size:.85rem}.rev-all{color:var(--ink);margin:2.4rem auto 0;display:table}.socials{background:var(--cream);grid-template-columns:1fr 1.3fr;align-items:center;gap:2.4rem;padding:6rem max(20px,50% - 590px);display:grid}.soc-head p{font-family:var(--serif);margin:1rem 0 1.6rem;font-size:1.5rem;line-height:1.3}.soc-links{gap:.7rem;display:grid}.soc{background:var(--ink);color:var(--cream);border-radius:18px;justify-content:space-between;align-items:center;padding:1rem 1.3rem;text-decoration:none;transition:transform .3s,background .3s;display:flex}.soc:hover{background:var(--wood);transform:translate(8px)}.soc b{font-family:var(--display);font-size:1.3rem;font-weight:400}.soc span{opacity:.75;font-size:.9rem}.g-cap{color:#fff;text-shadow:0 1px 8px #0009;font-size:.82rem;font-weight:600;position:absolute;bottom:.6rem;left:.7rem}.g:hover img{transform:scale(1.08)}@media (width<=860px){.socials{grid-template-columns:1fr}}.reveal{opacity:0;filter:blur(6px);transition:opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1),filter .9s;transform:translateY(40px)scale(.97)}.reveal.in{opacity:1;filter:none;transform:none}.g.reveal{transform:translateY(50px)rotate(-3deg)scale(.9)}.g.reveal:nth-child(2n){transform:translateY(50px)rotate(3deg)scale(.9)}.g.reveal.in{transform:none}.reveal .wipe,.reveal.wipe{clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(.7,0,.2,1) .15s}.reveal.in .wipe,.reveal.in.wipe{clip-path:inset(0)}@supports (animation-timeline:view()){.g img{animation:linear both drift;animation-timeline:view()}@keyframes drift{0%{transform:translateY(-6%)scale(1.12)}to{transform:translateY(6%)scale(1.12)}}}@media (prefers-reduced-motion:reduce){.rev-belt>div,.g img,.tap-menu{animation:none}.reveal,.reveal .wipe{filter:none;clip-path:none}}body:has(.book) .wa-fab{display:none}
