:root{--cream: #F7F2E8;--cream-2: #FFFDF8;--ink: #2A1A14;--red: #ED1C24;--bordo: #7B1E2B;--gold: #C9A227;--gold-2: #E6C66E;--gold-ink: #8A6D1B;--font-display: "Marcellus", serif;--font-body: "Manrope", system-ui, sans-serif;--pad: clamp(1.25rem, 4vw, 4rem);--nav-h: 84px;--container: 1200px;--space-section: clamp(6rem, 15vh, 11rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:auto;background:var(--cream)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}::selection{background:var(--bordo);color:var(--cream)}img,svg,video{display:block;max-width:100%}h1,h2,h3,blockquote{font-family:var(--font-display);font-weight:400;margin:0;line-height:1.08;letter-spacing:.01em}a{color:inherit;text-decoration:none}.kicker{font-size:.72rem;font-weight:600;letter-spacing:.34em;color:var(--bordo);margin:0 0 1.4rem}:focus-visible{outline:2px solid var(--bordo);outline-offset:4px}.nav__cta:focus-visible,.btn:focus-visible{outline-offset:3px}body[data-theme=sky] .nav a:focus-visible{outline-color:var(--cream-2)}.quote a:focus-visible,.footer a:focus-visible{outline-color:var(--gold-2)}.btn:active,.nav__cta:active{transform:scale(.97)}.intro{display:none}html.js .intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--cream);display:grid;place-items:center}.intro__inner{text-align:center;color:var(--bordo)}.intro__emblem{width:clamp(64px,9vw,110px);margin:0 auto 1.4rem;opacity:0;transform:rotate(-14deg) scale(.92)}.intro__word{font-family:var(--font-display);font-size:clamp(1.4rem,3.2vw,2.2rem);letter-spacing:.55em;margin-right:-.55em;display:flex;justify-content:center}.intro__word span{opacity:0;transform:translateY(.6em)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);transition:color .5s ease}body[data-theme=sky] .nav{color:var(--cream-2)}body[data-theme=light] .nav{color:var(--ink)}.nav:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:color-mix(in srgb,var(--cream) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transition:opacity .5s ease}body[data-theme=light] .nav:before{opacity:1}.nav__logo svg{height:30px;width:auto}.nav__logo{color:var(--red);filter:drop-shadow(0 1px 6px rgba(20,12,8,.25))}.nav__links{display:flex;align-items:center;gap:clamp(1.2rem,3vw,2.6rem)}.nav__links a{font-size:.85rem;font-weight:500;letter-spacing:.08em;position:relative}.nav__links a:not(.nav__cta):after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.65,0,.35,1)}.nav__links a:not(.nav__cta):hover:after{transform:scaleX(1);transform-origin:left}.nav__cta{padding:.65em 1.6em;border:1px solid currentColor;border-radius:100px;overflow:hidden;transition:color .4s ease,border-color .4s ease,background-color .4s ease}body[data-theme=sky] .nav__cta:hover,body[data-theme=light] .nav__cta:hover{background:var(--bordo);border-color:var(--bordo);color:var(--cream-2)}.progress{position:fixed;top:0;left:0;right:0;z-index:110;height:2px;pointer-events:none}.progress__bar{height:100%;width:100%;background:linear-gradient(90deg,var(--gold),var(--red));transform-origin:left;transform:scaleX(0)}.hero{height:420vh;position:relative}.hero__sticky{position:sticky;top:0;height:100vh;height:100dvh;overflow:clip;background:var(--ink)}.hero__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero--static{height:100vh;height:100svh}.hero--static .hero__caption,.hero--static .hero__cue{display:none}.hero__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(20,12,8,.42) 0%,transparent 36%),linear-gradient(to bottom,rgba(20,12,8,.18) 0%,transparent 22%);pointer-events:none}.hero__copy{position:absolute;left:var(--pad);bottom:clamp(4rem,12vh,8rem);color:var(--cream-2);max-width:14ch}.hero__kicker{font-size:.72rem;font-weight:600;letter-spacing:.34em;margin:0 0 1.2rem;color:var(--cream-2);opacity:.92;text-shadow:0 1px 22px rgba(20,12,8,.4)}.hero__title{font-size:clamp(3.2rem,9vw,8.5rem);line-height:1.02;text-wrap:balance;text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 12px rgba(0,0,0,.35)}.hero__title .line{display:inline-block}.hero__caption{position:absolute;left:50%;top:50%;font-family:var(--font-display);font-size:clamp(2rem,5.4vw,4.6rem);color:var(--cream-2);text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 10px rgba(0,0,0,.35);opacity:0;white-space:nowrap;margin:0;z-index:0}.hero__cue{position:absolute;left:50%;bottom:2.2rem;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.7rem;color:var(--cream-2);font-size:.68rem;font-weight:600;letter-spacing:.3em}.hero__cue i{width:1px;height:44px;background:linear-gradient(to bottom,transparent,var(--cream-2));animation:cue 1.8s ease-in-out infinite}@keyframes cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.ritual{position:relative;padding:var(--space-section) var(--pad);max-width:var(--container);margin:0 auto;text-align:center}.ritual__line{font-size:clamp(1.8rem,4.4vw,3.6rem);line-height:1.25;text-wrap:balance}.ritual__line .w{display:inline-block;opacity:.12}.ritual__emblem{position:absolute;right:clamp(.5rem,5vw,5rem);top:12%;width:clamp(120px,18vw,260px);color:var(--gold);opacity:.1;pointer-events:none}.story{padding:calc(var(--space-section) * .8) var(--pad)}.story__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2.5rem,6vw,6rem);max-width:var(--container);margin:0 auto;align-items:center}.story__text h2{font-size:clamp(2.4rem,5vw,4.4rem)}.story__body{margin:1.6rem 0 0;font-size:clamp(1rem,1.35vw,1.2rem);font-weight:300;max-width:46ch}.story__triad{list-style:none;margin:3rem 0 0;padding:0;display:grid;gap:1.2rem}.story__triad li{display:grid;grid-template-columns:6.5rem 1fr;align-items:baseline;gap:1rem;padding-top:1.2rem;border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.story__triad strong{font-family:var(--font-display);font-weight:400;font-size:1.25rem;color:var(--bordo)}.story__triad span{font-size:.95rem;font-weight:300}.story__figure{margin:0}.story__arch{border-radius:999px 999px 14px 14px;overflow:hidden;aspect-ratio:4 / 5;box-shadow:0 30px 80px -30px #2a1a1459}.story__arch img{width:100%;height:112%;object-fit:cover;will-change:transform}.marquee{overflow:clip;padding:1.6rem 0;border-block:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.marquee__track{display:flex;width:max-content;animation:marquee 26s linear infinite}.marquee__track span{font-family:var(--font-display);font-size:clamp(1.1rem,2.2vw,1.7rem);letter-spacing:.28em;color:color-mix(in srgb,var(--ink) 42%,transparent);white-space:nowrap}@keyframes marquee{to{transform:translate(-33.333%)}}.gallery{padding:calc(var(--space-section) * .6) 0}.gallery__kicker{text-align:center;margin-bottom:2.4rem}.gallery__track{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(300px,33vw,500px);gap:clamp(1.4rem,2.4vw,2.2rem) clamp(.8rem,1.6vw,1.4rem);padding-inline:var(--pad);max-width:1400px;margin:0 auto}.gallery__track figure{margin:0;min-width:0;display:flex;flex-direction:column;gap:.75rem}.gallery__track figure:nth-child(4n+1),.gallery__track figure:nth-child(4n+4){grid-column:span 7}.gallery__track figure:nth-child(4n+2),.gallery__track figure:nth-child(4n+3){grid-column:span 5}.gallery__frame{flex:1;min-height:0;overflow:hidden;border-radius:14px;box-shadow:0 24px 60px -28px #2a1a1459}.gallery__frame img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.gallery__track figure:hover .gallery__frame img{transform:scale(1.04)}.gallery__track figcaption{display:flex;align-items:baseline;gap:.7rem;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 62%,transparent)}.gallery__track figcaption span{color:var(--gold);letter-spacing:.1em}@media(max-width:900px){.gallery__track{display:flex;grid-template-columns:none;max-width:none;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);gap:.9rem;padding-bottom:.6rem}.gallery__track figure{flex:0 0 86%;scroll-snap-align:center}.gallery__frame{flex:none;aspect-ratio:16 / 10}}.sweets{padding:calc(var(--space-section) * .7) var(--pad) var(--space-section);max-width:var(--container);margin:0 auto}.sweets h2{font-size:clamp(2.4rem,5vw,4.4rem)}.sweets__grid{list-style:none;margin:clamp(2.5rem,6vh,4rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.5vw,2rem)}.sweet{background:var(--cream-2);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:14px;padding:clamp(1.4rem,3vw,2.2rem);display:grid;gap:.6rem;align-content:start;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}.sweet:hover{transform:translateY(-6px);box-shadow:0 24px 50px -24px #2a1a1440}.sweet__no{font-size:.78rem;font-weight:600;letter-spacing:.2em;color:var(--gold-ink)}.sweet h3{font-size:clamp(1.4rem,2.4vw,1.9rem)}.sweet p{margin:0;font-size:.92rem;font-weight:300;color:color-mix(in srgb,var(--ink) 72%,transparent)}.sweet__price{font-family:var(--font-display);color:var(--bordo);font-size:1.15rem;margin-top:.4rem}.sweets__more{margin-top:clamp(1.8rem,4vh,2.6rem)}.sweets__more a{font-size:.9rem;letter-spacing:.06em;color:var(--bordo);border-bottom:1px solid currentColor;padding-bottom:2px;transition:opacity .3s ease}.sweets__more a:hover{opacity:.7}@media(max-width:900px){.sweets__grid{grid-template-columns:1fr}}.signatures{padding:var(--space-section) var(--pad);max-width:var(--container);margin:0 auto}.signatures h2{font-size:clamp(2.4rem,5vw,4.4rem)}.signatures__list{list-style:none;margin:clamp(3rem,7vh,5rem) 0 0;padding:0}.sig{display:grid;grid-template-columns:4rem 1fr auto;align-items:baseline;gap:clamp(1rem,3vw,2.5rem);padding:clamp(1.6rem,3.5vh,2.4rem) .6rem;border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent);position:relative;transition:background-color .45s ease}.sig:last-of-type{border-bottom:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.sig:hover{background:color-mix(in srgb,var(--cream-2) 60%,transparent)}.sig__no{font-size:.78rem;font-weight:600;letter-spacing:.2em;color:var(--gold-ink)}.sig__main h3{font-size:clamp(1.6rem,3.4vw,2.6rem)}.sig__main p{margin:.5rem 0 0;font-size:.95rem;font-weight:300;color:color-mix(in srgb,var(--ink) 72%,transparent)}.sig__price{font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.5rem);color:var(--bordo)}.signatures__cta{margin-top:clamp(3rem,7vh,4.5rem);display:flex;justify-content:center}.btn{position:relative;display:inline-block;padding:1.1em 3.2em;border:1px solid var(--ink);border-radius:100px;font-size:.92rem;font-weight:500;letter-spacing:.12em;overflow:hidden;will-change:transform}.btn span{position:relative;z-index:1;transition:color .4s ease}.btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bordo);border-radius:inherit;transform:translateY(102%);transition:transform .5s cubic-bezier(.65,0,.35,1)}.btn:hover:before{transform:translateY(0)}.btn:hover{border-color:var(--bordo)}.btn:hover span{color:var(--cream-2)}.visit{padding:var(--space-section) var(--pad);max-width:var(--container);margin:0 auto}.visit__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(2.5rem,6vw,6rem);align-items:center}.visit__info h2{font-size:clamp(2.4rem,5vw,4.4rem);margin-bottom:clamp(2rem,5vh,3rem)}.visit__list{margin:0 0 clamp(2.4rem,5vh,3.4rem);padding:0;display:grid;gap:0}.visit__list>div{display:grid;grid-template-columns:8.5rem 1fr;gap:1.2rem;align-items:baseline;padding:1.3rem 0;border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.visit__list>div:last-child{border-bottom:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.visit__list dt{font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink)}.visit__list dd{margin:0;font-size:clamp(1.05rem,1.6vw,1.3rem);font-family:var(--font-display);line-height:1.45}.visit__list dd a{border-bottom:1px solid color-mix(in srgb,var(--ink) 25%,transparent);transition:color .3s ease,border-color .3s ease}.visit__list dd a:hover{color:var(--bordo);border-color:var(--bordo)}.visit__hint{font-family:var(--font-body);font-size:.78rem;font-weight:300;color:color-mix(in srgb,var(--ink) 55%,transparent)}.visit__figure{margin:0}.visit__card{aspect-ratio:4 / 5;border-radius:999px 999px 16px 16px;background:var(--cream-2);box-shadow:0 30px 80px -30px #2a1a1480;position:relative;overflow:hidden}.visit__card img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}.visit__figure:hover .visit__card img{transform:scale(1.03)}.visit__caption{display:flex;justify-content:center;gap:.9rem;margin-top:1.1rem;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 62%,transparent)}.visit__caption span{color:var(--gold-ink);font-weight:600}@media(max-width:900px){.visit__grid{grid-template-columns:1fr}.visit__figure{order:-1;max-width:360px;margin:0 auto}.visit__list>div{grid-template-columns:6.5rem 1fr}}.quote{background:var(--bordo);color:var(--gold-2);text-align:center;padding:clamp(7rem,20vh,13rem) var(--pad)}.quote__emblem{width:clamp(54px,7vw,84px);margin:0 auto 2.4rem;color:var(--gold-2);opacity:.9}.quote__line{font-size:clamp(2rem,5.2vw,4.4rem);line-height:1.2;text-wrap:balance;max-width:20ch;margin:0 auto}.quote__line .w{display:inline-block;opacity:.15}.footer{background:var(--bordo);color:var(--cream);padding:0 var(--pad) 2.4rem}.footer__word{padding-top:clamp(2rem,6vh,4rem);border-top:1px solid color-mix(in srgb,var(--cream) 18%,transparent);margin-bottom:clamp(2.5rem,7vh,5rem)}.footer__word svg{width:100%;height:auto;color:var(--cream)}.footer__row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.footer__links{display:flex;gap:2rem}.footer__links a{font-size:.85rem;letter-spacing:.08em;opacity:.85;transition:opacity .3s ease,color .3s ease}.footer__links a:hover{opacity:1;color:var(--gold-2)}.footer__note{font-size:.78rem;opacity:.78;margin:0;letter-spacing:.05em}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:240px 240px;opacity:.05;animation:grain 9s steps(10) infinite}@keyframes grain{0%,to{background-position:0 0}10%{background-position:-7px -14px}20%{background-position:-22px 7px}30%{background-position:10px -17px}40%{background-position:-7px 22px}50%{background-position:-19px -10px}60%{background-position:14px 5px}70%{background-position:2px 14px}80%{background-position:-14px 19px}90%{background-position:19px -5px}}@media(max-width:600px){.grain{display:none}}.reveal{opacity:1}@media(orientation:portrait){.hero__sticky{background:var(--cream);display:flex;flex-direction:column;justify-content:flex-start;gap:1.3rem;padding:calc(var(--nav-h) + .4rem) clamp(.9rem,3vw,2rem) 1.4rem}.hero__video{position:relative;inset:auto;width:100%;height:auto;max-height:70vh;aspect-ratio:3 / 4;margin:0 auto;object-fit:cover;border-radius:14px;box-shadow:0 26px 60px -26px #2a1a1466}.hero__shade{display:none}.hero__copy{position:static;color:var(--ink);max-width:none}.hero__kicker{color:var(--red);opacity:1;text-shadow:none}.hero__title{font-size:clamp(2.4rem,10vw,4.2rem);text-shadow:none}.hero__caption{top:auto;bottom:clamp(4.5rem,13vh,8rem);left:clamp(.9rem,3vw,2rem);right:clamp(.9rem,3vw,2rem);color:var(--ink);text-shadow:none;white-space:normal;text-align:left;font-size:clamp(2.4rem,10vw,4.2rem)}.hero__cue{position:static;transform:none;margin-top:auto;align-self:flex-end;flex-direction:row;align-items:center;color:var(--ink)}.hero__cue i{height:28px;background:linear-gradient(to bottom,transparent,var(--ink))}}@media(max-width:900px)and (orientation:landscape){.hero__cue{left:auto;right:var(--pad);transform:none;align-items:flex-end}}@media(max-width:900px){.story__grid{grid-template-columns:1fr}.story__figure{order:-1}.story__arch{aspect-ratio:1 / 1;max-width:480px;margin:0 auto}.sig{grid-template-columns:2.6rem 1fr auto}}@media(max-width:600px){:root{--nav-h: 68px}.nav__logo svg{height:24px}.nav__links a:not(.nav__cta){display:none}.hero__copy{max-width:none;right:var(--pad)}.footer__row{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html.js .intro{display:none}.hero{height:100vh}.hero__caption{display:none}.marquee__track,.hero__cue i,.grain{animation:none}.ritual__line .w,.quote__line .w{opacity:1}}
