/* Tolvanera / dirección de arte 02 — sobremesa, papel y producto. */
:root{--red:#c44b2e;--wine:#562a23;--paper:#f5edda;--white:#fff9ea;--gold:#f2c558;--ink:#44251e;--muted:#7b6553;--line:#dfd0b8}
body{background:var(--paper)}
.site-header{position:fixed;inset:0 0 auto;height:100px;background:transparent;border-bottom:1px solid #f5edda33;padding-inline:4.5%;color:var(--paper);transition:background .35s,color .35s,transform .35s}
.site-header:not(.scrolled) .brand img{filter:url(#brand-white)}
.site-header.scrolled{height:82px;background:var(--paper);color:var(--ink);box-shadow:0 8px 45px #44251e12;border-bottom-color:#44251e15}
.desktop-nav{gap:35px}.desktop-nav a{font-size:13px}.desktop-nav a:after{background:currentColor}
.header-visit{border-color:#f5edda70;color:inherit;border-radius:40px;gap:14px;padding:13px 20px;font-size:12px}
.site-header.scrolled .header-visit{border-color:#44251e45}.site-header .brand{width:150px}.site-header .brand img{width:205px;height:205px}
.button{border-radius:40px;min-height:58px}.text-link{font-weight:500}
.campaign-hero{height:max(830px,100svh);min-height:830px;max-height:none;background:var(--red);color:var(--paper);overflow:hidden;isolation:isolate;--mx:0;--my:0;--out:0}
.campaign-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 75% 40%,#f0743a77,transparent 50%),linear-gradient(145deg,#a8362633,transparent 50%,#7d271433);z-index:-3}
.campaign-hero:after,.ritual-section:after{content:'';position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.2' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.3;mix-blend-mode:multiply;z-index:8}
.hero-background-word{position:absolute;top:105px;left:3.7%;font-family:var(--heading);font-size:16.9vw;line-height:.8;letter-spacing:-1.1vw;font-weight:700;color:#f7edce13;white-space:nowrap;z-index:-1;transform:translateX(calc(var(--mx)*-12px));user-select:none}
.hero-orbit{position:absolute;border:1px solid #f8eed327;border-radius:50%;pointer-events:none;z-index:-1}.orbit-one{width:950px;height:950px;right:-200px;top:0}.orbit-two{width:830px;height:830px;right:-140px;top:60px}
.campaign-copy{position:absolute;top:195px;left:5.1%;width:53%;z-index:2;animation:campaign-copy-in 1s cubic-bezier(.2,.8,.3,1) both}.campaign-copy .hero-location{font-size:12px;margin-bottom:28px;gap:11px}.campaign-copy .hero-location>span{width:5px;height:5px;background:var(--gold)}
.campaign-copy h1{font-family:var(--heading);font-size:clamp(88px,10.8vw,172px);font-weight:700;letter-spacing:-.075em;line-height:.79;max-width:none;transform:translateY(calc(var(--out)*-35px));text-shadow:none;isolation:isolate}
.campaign-copy h1>span{display:block}.campaign-copy h1>span:nth-child(2){margin-left:42px}.campaign-copy h1>span:nth-child(3){font-size:.83em;margin-top:6px}
.campaign-description{font-size:13px;line-height:1.8;margin-top:30px;max-width:270px;color:#faedd9}
.campaign-cta{background:var(--gold);color:var(--ink);font-size:12px;margin-top:24px;gap:32px;padding:18px 24px;box-shadow:0 10px 35px #60200d15}.campaign-cta:hover{background:var(--paper)}
.campaign-stage{position:absolute;inset:120px 0 50px;z-index:3;pointer-events:none;perspective:1200px}
.campaign-plate{position:absolute;width:clamp(600px,54vw,880px);height:auto!important;top:35px;right:-1.2%;filter:drop-shadow(-22px 45px 18px #4b1a1b55);transform:translate3d(calc(var(--mx)*16px),calc(var(--my)*-12px + var(--out)*45px),0) rotate(calc(-14deg + var(--mx)*2deg + var(--out)*8deg));animation:plate-arrive 1.3s cubic-bezier(.1,.8,.2,1) both;will-change:transform}
.campaign-cup{position:absolute;width:clamp(260px,27vw,425px);height:auto!important;bottom:3px;right:35%;filter:drop-shadow(0 28px 14px #4b1a1b66);transform:translate3d(calc(var(--mx)*-24px),calc(var(--my)*15px - var(--out)*38px),0) rotate(calc(10deg - var(--mx)*4deg));z-index:4;animation:cup-arrive 1.5s cubic-bezier(.1,.8,.2,1) both;will-change:transform}
.menu-ticket{position:absolute;right:4.5%;top:7px;width:170px;min-height:240px;background:var(--paper);color:var(--red);padding:26px 23px;transform:rotate(13deg);box-shadow:0 12px 60px #3f221c33;z-index:-1;border-radius:2px}.menu-ticket:after{content:'';height:12px;position:absolute;bottom:-7px;left:0;right:0;background:radial-gradient(circle at 6px 0,transparent 5px,var(--paper) 6px) 0 0/12px 12px}.menu-ticket>span{font-family:var(--heading);font-size:28px;letter-spacing:-1px;line-height:1.05;display:block;margin-bottom:18px}.menu-ticket i{font-size:11px;line-height:1.8;font-style:normal;display:block;border-block:1px dashed #b04a3277;padding-block:17px}.menu-ticket b{font-family:var(--heading);font-size:10px;font-weight:500;display:block;margin-top:18px}
.campaign-plate-caption{position:absolute;right:4%;bottom:34px;color:var(--paper);font-size:11px;line-height:1.7;transform:rotate(-8deg);max-width:190px}.campaign-plate-caption>span{display:block}.campaign-plate-caption svg{position:absolute;width:85px;height:45px;left:-80px;top:-24px;transform:rotate(160deg);stroke-width:1.2}
.campaign-seal{position:absolute;right:8%;top:365px;width:126px;height:126px;background:var(--gold);color:var(--ink);border-radius:50%;box-shadow:0 6px 0 #87332922;z-index:5;transform:rotate(12deg)}.campaign-seal>svg:first-child{width:100%;height:100%;fill:currentColor;stroke:none;animation:seal-turn 38s linear infinite}.campaign-seal text{font-family:var(--body);font-size:7.7px;letter-spacing:1.4px;font-weight:600}.campaign-seal .seal-sun{position:absolute;inset:32%;width:36%;height:36%;stroke-width:1.1}
.coffee-steam{position:absolute;right:47%;bottom:285px;display:flex;gap:13px;z-index:5;transform:rotate(-8deg)}.coffee-steam span{display:block;width:16px;height:75px;border-left:1px solid #fff9eacc;border-radius:50%;filter:blur(2px);opacity:.45;animation:coffee-steam 4s ease-in-out infinite}.coffee-steam span:nth-child(2){animation-delay:1s;height:90px}.coffee-steam span:nth-child(3){animation-delay:2s}
.campaign-bottom{position:absolute;left:5.1%;right:5.1%;bottom:54px;z-index:6;display:flex;align-items:end;justify-content:space-between;font-size:10px;line-height:1.7}.campaign-bottom>a{display:flex;gap:15px;align-items:center}.scroll-line{display:block;height:38px;width:1px;background:#f7e6c860;position:relative;overflow:hidden}.scroll-line:after{content:'';width:1px;height:18px;background:var(--paper);position:absolute;top:-18px;animation:scroll-line 2.5s ease-in-out infinite}.campaign-bottom>span{text-align:right}.campaign-bottom b{font-size:8px;font-weight:400;opacity:.7;letter-spacing:.5px}.hero-wave{position:absolute;inset:auto 0 -1px;width:100%;height:46px;fill:var(--paper);stroke:none;z-index:9}
.kinetic-ribbon{background:var(--paper);padding:26px 0 25px;overflow:hidden;border-bottom:1px solid #44251e1c;position:relative;z-index:10}.ribbon-track{width:max-content;display:flex;align-items:center;gap:35px;animation:ribbon-drift 35s linear infinite;font-family:var(--heading);font-size:25px;font-weight:600;letter-spacing:-.7px;color:var(--red)}.ribbon-track svg{width:28px;height:28px;flex-shrink:0}
.ritual-section{height:1400px;position:relative;background:var(--paper);--scene:0;isolation:isolate}.ritual-sticky{height:820px;position:sticky;top:82px;overflow:hidden;z-index:1}.ritual-topline{display:flex;justify-content:space-between;margin:36px 5.1% 0;font-size:10px;color:var(--muted)}.ritual-title{position:absolute;inset:130px 0 auto;text-align:center;z-index:1}.ritual-title h2{font-size:clamp(90px,10.5vw,165px);font-weight:600;line-height:.9;letter-spacing:-.075em;color:var(--red);transform:translateY(calc(var(--scene)*-30px))}.ritual-title .section-kicker{font-size:12px;margin-bottom:23px;color:var(--muted)}.ritual-cards{position:absolute;inset:285px 0 auto;height:430px;z-index:2}.ritual-photo{padding:10px 10px 18px;border:0;background:#fff9e9;position:absolute;width:300px;box-shadow:0 20px 55px #41261928;transform-origin:50% 100%;transition:box-shadow .3s;will-change:transform;cursor:pointer}.ritual-photo>img{width:100%;height:300px;object-fit:cover}.ritual-photo>span{display:block;text-align:left;font-family:var(--heading);color:var(--ink);font-size:13px;margin-top:14px;margin-left:5px}.ritual-one{left:calc(50% - 440px - var(--scene)*80px);transform:rotate(calc(-16deg + var(--scene)*-5deg)) translateY(calc(45px + var(--scene)*55px))}.ritual-two{left:calc(50% - 150px);z-index:3;transform:rotate(calc(6deg - var(--scene)*6deg)) translateY(calc(var(--scene)*-30px))}.ritual-three{left:calc(50% + 135px + var(--scene)*80px);transform:rotate(calc(16deg + var(--scene)*5deg)) translateY(calc(45px + var(--scene)*55px))}.ritual-photo:hover{box-shadow:0 26px 70px #4126194d;z-index:5}.ritual-bottom-copy{position:absolute;bottom:38px;text-align:center;left:22px;right:22px;font-size:12px;line-height:1.8;color:var(--muted);z-index:6}
.menu-section{background:var(--wine);color:var(--paper);padding:110px 0;overflow:hidden}.menu-section:before{opacity:.3}.menu-section:after{content:'AM';position:absolute;left:-30px;top:0;font:700 650px/.85 var(--heading);letter-spacing:-50px;color:#f5edda06;pointer-events:none}.menu-section>.section-shell{z-index:1}.menu-heading h2{font-size:clamp(60px,7.5vw,115px);letter-spacing:-.07em}.menu-heading .section-kicker{color:var(--gold)}.menu-heading>p{color:#eee0c8b0}.menu-times{border-color:#f5edda36;gap:20px}.time-tab{color:#d5c5af}.time-tab.active{color:var(--gold)}.time-tab.active:after{background:var(--gold)}.time-tab:after{bottom:-2px}.time-tab>span:not(.moon){font-size:26px}.time-tab small{font-size:11px}.category-tabs button{color:var(--paper)}.category-tabs button:hover{background:#f5edda15}.category-tabs button[aria-pressed=true]{background:var(--gold);color:var(--ink)}.category-tabs button[aria-pressed=true]:hover{background:var(--paper)}.menu-search{border-color:#f5edda66}.menu-search input{color:var(--paper)}.menu-search input::placeholder{color:#f5eddaaa}.menu-search .icon{color:#f5eddaaa}.menu-paper{background:var(--paper);color:var(--ink);padding:35px 42px 26px;border-radius:3px;box-shadow:0 24px 80px #210b1644;position:relative}.menu-paper:before{content:'';position:absolute;left:12px;right:12px;top:0;height:4px;border-top:1px dashed #b64b2f55}.paper-top{border-color:#c4ad8a}.paper-greeting{font-size:36px;font-weight:500}.menu-item p{font-size:12px;color:#776350}.menu-item{border-color:#d9c8af}.menu-item .price{color:#ad3f29}.paper-footer>span{color:#776350}.menu-empty{color:#776350}.extras{border-color:#f5edda44}.extras-content h3{color:var(--gold)}.extra-item{border-color:#f5edda22}.extra-item>span:last-child{color:var(--gold)}.pm-panel{background:#311b17;border:1px solid #f5edda22}.pm-panel .button-gold{color:var(--ink)}
.film-section{height:850px;background:#261b15}.film-section>img{object-position:70% 45%;transform:scale(1.04);will-change:transform}.film-section .slow-overlay{background:linear-gradient(180deg,#231b1255,transparent 40%,#231b12bb),linear-gradient(90deg,#231b12aa,transparent 80%)}.film-top{position:absolute;top:45px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;font-size:10px;border-bottom:1px solid #f5edda44;padding-bottom:22px}.film-top svg{width:28px;height:28px}.film-section .slow-copy{padding-top:220px}.film-section .slow-copy h2{font-weight:700;font-size:clamp(90px,14vw,210px);letter-spacing:-.075em;line-height:.8;max-width:none}.film-section .slow-copy h2>br{display:block}.film-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:50px;max-width:900px}.film-bottom>p{font-size:13px;line-height:1.8;margin:0}.round-cta{height:80px;width:80px;border-radius:50%;background:var(--gold);color:var(--ink);display:grid;place-items:center;transition:transform .3s}.round-cta>.icon{width:30px;height:30px;transform:rotate(-35deg)}.round-cta:hover{transform:rotate(35deg)}
.moments{padding-block:110px}.moments-heading h2{font-size:clamp(55px,6vw,90px);letter-spacing:-.065em}.moments-heading .section-kicker{font-size:12px;color:var(--muted)}.gallery{gap:22px;grid-template-columns:1fr 1fr 1fr;grid-template-rows:280px 280px}.gallery-item{border-radius:0;background:var(--ink)}.gallery-tall{border-radius:180px 180px 4px 4px}.gallery-wide{border-radius:4px 4px 130px 4px}.gallery-item>span{font-size:12px}.visit-section{background:#e8bd54;overflow:hidden}.visit-section:after{content:'CÁELE.';font:700 clamp(140px,24vw,360px)/.85 var(--heading);letter-spacing:-.08em;color:#4c2b2110;position:absolute;bottom:-35px;left:-20px;pointer-events:none}.visit-grid{position:relative;z-index:1}.visit-copy h2{font-size:clamp(65px,7vw,105px);letter-spacing:-.075em;line-height:.92}.visit-copy .section-kicker{font-size:12px}.visit-copy .button{background:var(--red);color:var(--paper)}.hours-card{background:#f9e0a4;border:0;box-shadow:10px 15px 0 #b8842c20;transform:rotate(3deg);border-radius:140px 140px 5px 5px}.hours-card>*{transform:rotate(-3deg)}.hours-card h3{font-size:32px}.hours-row{border-color:#7a592f44}.site-footer{background:var(--wine);color:var(--paper);padding-top:70px}.footer-top p{font-size:30px;letter-spacing:-1px}.footer-brand{font-size:17.4vw;color:var(--paper);letter-spacing:-.08em;line-height:.9;overflow:visible;margin:55px 0 45px}.footer-bottom{font-size:10px}.footer-brand>span{font-size:12px}
@keyframes plate-arrive{from{opacity:0;translate:140px 50px;rotate:22deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes cup-arrive{from{opacity:0;translate:-30px 160px;rotate:-20deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes campaign-copy-in{from{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}@keyframes seal-turn{to{rotate:360deg}}@keyframes coffee-steam{0%,100%{translate:0 8px;opacity:0}35%,65%{translate:-4px -10px;opacity:.35}85%{translate:5px -28px;opacity:0}}@keyframes scroll-line{to{translate:0 75px}}@keyframes ribbon-drift{to{transform:translateX(-50%)}}
@media(min-width:1600px){.campaign-hero{height:1000px}.campaign-copy{top:235px}.campaign-stage{inset:150px 0 70px}.campaign-seal{top:440px;right:12%}.campaign-cup{bottom:20px;right:36%}.campaign-plate{right:1%}.campaign-plate-caption{right:8%;bottom:70px}.coffee-steam{right:48%;bottom:350px}.ritual-sticky{height:900px}.ritual-section{height:1500px}}
@media(max-width:1150px){.campaign-hero{height:850px;min-height:850px}.campaign-copy{top:220px;left:4%}.campaign-copy h1{font-size:117px}.campaign-stage{top:165px}.campaign-plate{width:620px;right:-13%;top:35px}.campaign-cup{width:330px;right:28%;bottom:22px}.campaign-seal{width:105px;height:105px;right:4%;top:365px}.campaign-plate-caption{bottom:25px;right:4%;font-size:10px}.menu-ticket{right:1%;width:145px}.campaign-bottom{left:4%;right:4%}.hero-background-word{top:125px;font-size:16.8vw}.coffee-steam{right:42%;bottom:290px}.ritual-one{left:calc(50% - 390px - var(--scene)*40px)}.ritual-three{left:calc(50% + 90px + var(--scene)*40px)}.ritual-photo{width:280px}.ritual-photo>img{height:285px}.ritual-two{left:calc(50% - 140px)}.film-section{height:750px}.film-section .slow-copy{padding-top:220px}.gallery{grid-template-rows:240px 240px}.menu-heading h2{font-size:80px}}
@media(max-width:800px){.site-header{height:84px;padding-inline:24px}.site-header.scrolled{height:76px}.site-header:not(.scrolled) .mobile-toggle span{background:var(--paper)}.header-visit{font-size:10px;padding:11px 15px}.site-header .brand{width:135px}.site-header .brand img{width:190px;height:190px}.mobile-nav{inset-block-start:76px}.campaign-hero{height:950px;min-height:950px}.campaign-copy{top:180px;left:5%;width:78%}.campaign-copy h1{font-size:113px;letter-spacing:-.075em;line-height:.8}.campaign-copy h1>span:nth-child(2){margin-left:30px}.campaign-description{font-size:12px;max-width:220px;margin-top:30px}.campaign-cta{margin-top:20px;font-size:11px;gap:20px;min-height:52px;padding:15px 20px}.campaign-stage{inset:280px 0 50px}.campaign-plate{width:560px;right:-23%;top:0}.campaign-cup{width:310px;right:34%;bottom:-5px}.campaign-seal{top:320px;right:7%;width:100px;height:100px}.campaign-plate-caption{right:4%;bottom:50px;font-size:10px}.campaign-plate-caption svg{width:65px;left:-55px;top:-18px}.menu-ticket{top:18px;right:2%;width:135px;min-height:210px;padding:20px;transform:rotate(12deg)}.menu-ticket>span{font-size:25px}.campaign-bottom{bottom:48px;font-size:9px;left:5%;right:5%}.campaign-bottom>a{max-width:220px;line-height:1.6}.campaign-bottom>span{max-width:130px}.coffee-steam{right:55%;bottom:240px}.hero-background-word{top:115px;font-size:16.8vw}.orbit-one{width:750px;height:750px;right:-420px;top:180px}.orbit-two{width:650px;height:650px;right:-370px;top:230px}.kinetic-ribbon{padding-block:20px}.ribbon-track{font-size:21px;gap:28px}.ribbon-track svg{width:24px;height:24px}.ritual-section{height:1150px}.ritual-sticky{top:76px;height:780px}.ritual-title{top:145px}.ritual-title h2{font-size:98px}.ritual-cards{top:290px}.ritual-photo{width:230px;padding:8px 8px 15px}.ritual-photo>img{height:260px}.ritual-one{left:calc(50% - 310px - var(--scene)*40px)}.ritual-two{left:calc(50% - 115px)}.ritual-three{left:calc(50% + 85px + var(--scene)*40px)}.ritual-bottom-copy{font-size:11px;bottom:50px}.menu-section{padding-block:80px}.menu-heading h2{font-size:68px}.menu-paper{padding:28px}.film-section{height:690px}.film-section .slow-copy h2{font-size:120px}.film-section .slow-copy{padding-top:210px}.film-top{font-size:9px;left:22px;right:22px}.film-bottom{margin-top:35px}.film-bottom>p{font-size:12px}.round-cta{width:62px;height:62px}.moments-heading h2{font-size:58px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:330px 240px}.gallery-wide{border-radius:4px 4px 60px 4px}.visit-copy h2{font-size:64px}.hours-card{padding-inline:23px}.hours-card h3{font-size:27px}.site-footer{padding-top:55px}.footer-top p{font-size:25px}}
@media(max-width:580px){.site-header{padding-inline:18px;gap:12px}.site-header .brand{margin-left:-10px;width:126px}.site-header .brand img{width:188px;height:188px}.header-visit{padding:10px 12px}.campaign-hero{height:960px;min-height:960px}.campaign-copy{top:165px;left:6%;width:90%;z-index:2}.campaign-copy .hero-location{font-size:10px;margin-bottom:25px}.campaign-copy h1{font-size:clamp(79px,23vw,127px);letter-spacing:-.075em;line-height:.78}.campaign-copy h1>span:nth-child(2){margin-left:26px}.campaign-copy h1>span:nth-child(3){font-size:.82em;margin-top:5px}.campaign-description{font-size:11px;line-height:1.75;max-width:200px;margin-top:30px;position:relative;z-index:6}.campaign-cta{font-size:11px;gap:23px;min-height:50px;position:relative;z-index:6}.campaign-stage{inset:390px 0 60px;z-index:3}.campaign-plate{width:460px;max-width:none;right:-30%;top:-10px;filter:drop-shadow(-10px 27px 11px #4b1a1b44)}.campaign-cup{width:275px;max-width:none;right:35%;bottom:0;filter:drop-shadow(0 22px 10px #4b1a1b55)}.campaign-plate-caption{bottom:35px;right:7%;font-size:9px;line-height:1.5;max-width:130px}.campaign-plate-caption svg{top:-28px;left:-35px;transform:rotate(135deg);width:55px}.campaign-seal{width:91px;height:91px;right:8%;top:270px}.menu-ticket{width:105px;min-height:155px;top:0;right:0;padding:17px 14px;transform:rotate(15deg)}.menu-ticket>span{font-size:21px;margin-bottom:12px}.menu-ticket i{font-size:8px;padding-block:10px}.menu-ticket b{font-size:8px;margin-top:12px}.coffee-steam{right:64%;bottom:220px;gap:10px}.coffee-steam span{height:50px;width:10px}.coffee-steam span:nth-child(2){height:60px}.campaign-bottom{bottom:48px;left:6%;right:6%;font-size:8px;gap:20px}.campaign-bottom>a{max-width:175px;gap:10px}.campaign-bottom>span{max-width:110px;flex-shrink:0}.campaign-bottom b{font-size:7px}.scroll-line{height:30px;flex-shrink:0}.hero-background-word{top:108px;font-size:16.6vw;left:4%;opacity:.7}.hero-wave{height:28px}.orbit-one{width:640px;height:640px;right:-400px;top:290px}.orbit-two{width:550px;height:550px;right:-355px;top:335px}.kinetic-ribbon{padding-block:21px}.ribbon-track{font-size:21px;gap:25px}.ribbon-track svg{height:23px;width:23px}.ritual-section{height:1020px}.ritual-sticky{height:730px;top:76px}.ritual-topline{font-size:8px;margin:24px 6% 0;gap:20px}.ritual-title{top:108px}.ritual-title .section-kicker{font-size:10px;margin-bottom:20px}.ritual-title h2{font-size:clamp(64px,17vw,90px);letter-spacing:-.075em}.ritual-cards{top:285px;height:330px}.ritual-photo{width:190px;padding:7px 7px 13px}.ritual-photo>img{height:220px}.ritual-photo>span{font-size:10px;margin-top:11px;margin-left:3px}.ritual-one{left:calc(50% - 205px - var(--scene)*35px);transform:rotate(calc(-16deg + var(--scene)*-5deg)) translateY(calc(26px + var(--scene)*28px))}.ritual-two{left:calc(50% - 95px);transform:rotate(calc(5deg - var(--scene)*5deg)) translateY(calc(var(--scene)*-20px))}.ritual-three{left:calc(50% + 25px + var(--scene)*35px);transform:rotate(calc(16deg + var(--scene)*5deg)) translateY(calc(26px + var(--scene)*28px))}.ritual-bottom-copy{font-size:10px;line-height:1.8;bottom:49px;max-width:300px;margin:auto}.ritual-bottom-copy br{display:none}.menu-section{padding-block:65px}.menu-heading{gap:20px}.menu-heading h2{font-size:61px;line-height:.95;letter-spacing:-.075em}.menu-heading .section-kicker{font-size:11px}.menu-heading>p{font-size:12px;max-width:270px}.time-tab>span:not(.moon){font-size:21px}.time-tab small{font-size:9px;max-width:130px}.menu-paper{padding:23px 21px}.paper-greeting{font-size:31px}.menu-item h3{font-size:20px}.menu-item .price{font-size:19px}.menu-item p{font-size:12px;line-height:1.7}.extras summary{font-size:11px}.film-section{height:660px}.film-top{top:30px;left:22px;right:22px;font-size:8px;padding-bottom:18px;gap:20px}.film-top>span{max-width:105px;line-height:1.5}.film-top>span:last-child{text-align:right}.film-top svg{width:24px;height:24px;flex-shrink:0}.film-section .slow-copy{padding-top:245px}.film-section .slow-copy h2{font-size:clamp(70px,21vw,125px);line-height:.82;letter-spacing:-.075em}.film-bottom{margin-top:35px;gap:20px;align-items:end}.film-bottom>p{font-size:11px;line-height:1.8;max-width:240px}.round-cta{width:52px;height:52px;flex-shrink:0}.round-cta>.icon{width:23px;height:23px}.film-section>img{object-position:67% 50%}.moments{padding-block:65px}.moments-heading h2{font-size:53px;letter-spacing:-.065em;line-height:.98}.moments-heading .section-kicker{font-size:11px}.gallery{gap:10px;grid-template-rows:275px 230px}.gallery-tall{border-radius:100px 100px 3px 3px}.gallery-wide{border-radius:3px 3px 60px 3px}.gallery-item>span{font-size:10px}.visit-copy h2{font-size:73px;letter-spacing:-.075em;line-height:.92}.visit-copy .section-kicker{font-size:11px}.hours-card{padding:34px 30px;border-radius:140px 140px 3px 3px;margin-bottom:15px;transform:rotate(2deg)}.hours-card>*{transform:rotate(-2deg)}.hours-card h3{font-size:29px}.footer-top p{font-size:25px}.footer-brand{font-size:19.2vw;margin-block:45px}.footer-brand>span{font-size:8px}.footer-bottom{font-size:9px}}
@media(max-width:360px){.header-visit{width:36px;height:36px;justify-content:center;padding:0}.header-visit>span{display:none}.campaign-copy h1{font-size:83px}.campaign-hero{height:930px;min-height:930px}.campaign-stage{top:400px}.campaign-plate{width:420px;right:-42%;top:-4px}.campaign-cup{width:245px;right:34%;bottom:8px}.campaign-seal{top:270px;right:5%;width:80px;height:80px}.campaign-plate-caption{right:5%;bottom:38px;font-size:8px;max-width:115px}.campaign-description{font-size:10px;max-width:170px}.campaign-copy{top:160px}.campaign-copy .hero-location{margin-bottom:25px}.campaign-cta{font-size:10px;padding-inline:17px;gap:18px}.menu-ticket{top:-10px;right:-10px}.coffee-steam{right:66%;bottom:210px}.ritual-title h2{font-size:62px}.ritual-photo{width:170px}.ritual-photo>img{height:200px}.ritual-one{left:calc(50% - 175px - var(--scene)*30px)}.ritual-two{left:calc(50% - 85px)}.ritual-three{left:calc(50% + 20px + var(--scene)*30px)}.menu-heading h2{font-size:54px}.visit-copy h2{font-size:65px}.hours-card{padding-inline:23px}}
.ritual-sticky{height:calc(100svh - 82px);min-height:590px;max-height:850px}
.ritual-title{top:80px;transform:translateY(calc(var(--scene)*-20px))}.ritual-title h2{font-size:clamp(80px,8.5vw,130px);transform:none}
.ritual-cards{top:290px}.ritual-photo{width:260px}.ritual-photo>img{height:210px}
.ritual-one{left:calc(50% - 380px - var(--scene)*80px)}.ritual-two{left:calc(50% - 130px)}.ritual-three{left:calc(50% + 120px + var(--scene)*80px)}
.ritual-bottom-copy{display:none}
@media(max-width:800px){.ritual-sticky{height:calc(100svh - 76px);min-height:650px}.ritual-title{top:115px}.ritual-title h2{font-size:90px}.ritual-cards{top:310px}.ritual-photo{width:230px}.ritual-photo>img{height:245px}.ritual-one{left:calc(50% - 310px - var(--scene)*40px)}.ritual-two{left:calc(50% - 115px)}.ritual-three{left:calc(50% + 85px + var(--scene)*40px)}.ritual-bottom-copy{bottom:35px}}
@media(max-width:580px){.campaign-stage{top:490px}.campaign-plate{top:-10px}.menu-ticket{top:0}.campaign-seal{top:255px}.campaign-cup{bottom:0}.coffee-steam{bottom:215px}.ritual-sticky{height:calc(100svh - 76px);min-height:650px;max-height:780px}.ritual-title{top:95px}.ritual-title h2{font-size:clamp(64px,17vw,90px)}.ritual-cards{top:290px}.ritual-photo{width:190px}.ritual-photo>img{height:220px}.ritual-one{left:calc(50% - 205px - var(--scene)*35px)}.ritual-two{left:calc(50% - 95px)}.ritual-three{left:calc(50% + 25px + var(--scene)*35px)}.ritual-bottom-copy{bottom:35px}}
@media(max-width:360px){.campaign-stage{top:475px}.campaign-plate{top:-4px}.ritual-title h2{font-size:62px}.ritual-photo{width:170px}.ritual-photo>img{height:200px}.ritual-one{left:calc(50% - 175px - var(--scene)*30px)}.ritual-two{left:calc(50% - 85px)}.ritual-three{left:calc(50% + 20px + var(--scene)*30px)}}
@media(max-width:580px){.menu-times{gap:12px}.time-tab{flex:1;max-width:none;min-width:0;gap:8px}.time-tab>span:not(.moon){font-size:20px;white-space:nowrap}.time-tab small{font-size:9px;white-space:normal}.time-tab>.icon{width:22px;height:22px}.time-tab .moon{width:24px;flex-shrink:0;font-size:30px}}
@media(max-width:360px){.time-tab>span:not(.moon){font-size:17px}.time-tab small{font-size:8px}.time-tab{gap:5px}.time-tab>.icon{width:20px;height:20px}.time-tab .moon{width:20px;font-size:27px}}
.reviews-section{display:grid;grid-template-columns:.85fr 1.6fr;background:#e8bb55;padding:75px 5.1%;gap:7%;position:relative;overflow:hidden;color:var(--ink)}
.reviews-section:before{content:'“';position:absolute;right:4%;top:-65px;font-family:Georgia,serif;font-size:550px;line-height:1;color:#6e2d2010;pointer-events:none}.reviews-intro .section-kicker{font-size:11px;color:#7c502a;margin-bottom:18px}.reviews-intro h2{font-size:clamp(54px,6.1vw,90px);letter-spacing:-.07em;line-height:.9;color:var(--wine)}
.google-score{display:flex;align-items:center;gap:17px;margin-top:27px}.google-score>strong{font-family:var(--heading);font-size:68px;font-weight:600;letter-spacing:-4px;line-height:1}.google-score>strong>span{font-size:16px;letter-spacing:-.5px;font-weight:400;opacity:.6;margin-left:4px}.google-score>div{display:flex;flex-direction:column;gap:5px}.review-stars{font-family:Arial,sans-serif;color:#673222;font-size:13px;letter-spacing:3px;white-space:nowrap}.google-score>div>span:last-child{font-size:10px;color:#79512d}.reviews-all{font-size:11px;display:inline-flex;align-items:center;gap:16px;margin-top:22px;border-bottom:1px solid #6a362666;padding-bottom:6px}.reviews-all .icon{width:16px;height:16px}.reviews-window{min-width:0;display:flex;flex-direction:column;justify-content:center;position:relative}.reviews-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #6a36263b;padding-bottom:15px;gap:20px;color:#79512d;font-size:10px}.reviews-counter{font-size:10px;white-space:nowrap;letter-spacing:1px}.reviews-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain}.reviews-track::-webkit-scrollbar{display:none}.reviews-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.review-card{flex:0 0 100%;width:100%;min-width:0;scroll-snap-align:start;padding:26px 2px 10px}.review-card-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600}.review-card-top>span:last-child{font-size:12px;font-weight:500;color:#68402b}.review-card blockquote{font-family:var(--heading);font-size:clamp(29px,3.4vw,50px);letter-spacing:-1.5px;font-weight:500;line-height:1.12;margin:30px 0 32px;min-height:112px;max-width:640px}.review-author{display:flex;align-items:center;gap:12px}.review-avatar{display:grid;place-items:center;width:36px;height:36px;border:1px solid #6a36264a;border-radius:50%;font-size:14px;font-family:var(--heading)}.review-author>div{display:flex;flex-direction:column;gap:4px}.review-author cite{font-style:normal;font-size:12px;font-weight:600}.review-author>div>span{font-size:9px;color:#79512d}.review-author>a{margin-left:auto;width:32px;height:32px;border:1px solid #6a36264a;border-radius:50%;display:grid;place-items:center;font-size:18px}.reviews-bottomline{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #6a36263b;padding-top:15px;margin-top:20px;font-size:9px;color:#79512d}.review-controls{display:flex;align-items:center;gap:20px}.review-dots{display:flex;gap:9px;align-items:center}.review-dots>button{padding:0;width:6px;height:6px;border:0;border-radius:30px;background:#67322250;transition:width .3s,background .3s;position:relative}.review-dots>button:before{content:'';position:absolute;inset:-10px -4px}.review-dots>button[aria-pressed=true]{width:26px;background:var(--wine)}.review-pause{border:0;background:none;padding:3px;color:var(--wine);font-size:12px;line-height:1;width:24px;height:24px}.kinetic-ribbon:hover .ribbon-track{animation-play-state:paused}
.lookbook-note{display:flex;justify-content:space-between;gap:20px;margin-top:22px;font-size:10px;color:var(--muted)}.gallery.gallery-lookbook{display:flex;overflow-x:auto;gap:22px;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain;margin-right:calc(-1*(100vw - 100%)/2);padding-right:40px;padding-bottom:15px;height:520px}.gallery-lookbook::-webkit-scrollbar{display:none}.gallery-lookbook.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.gallery-lookbook>.gallery-item{flex:0 0 31%;height:100%;min-width:260px;scroll-snap-align:start;cursor:inherit}.gallery-lookbook>.gallery-item:nth-child(2){flex-basis:37%}.gallery-lookbook>.gallery-item:nth-child(4){flex-basis:55%}.gallery-lookbook>.gallery-tall{border-radius:180px 180px 4px 4px}.gallery-lookbook>.gallery-wide{border-radius:4px 4px 140px 4px}.gallery-lookbook>.gallery-item:focus-visible{outline-offset:-5px}
@media(max-width:1150px){.desktop-nav{gap:24px}.desktop-nav a{font-size:12px}.reviews-section{gap:6%;padding-block:65px}.reviews-intro h2{font-size:67px}.review-card blockquote{font-size:36px;min-height:120px}.gallery.gallery-lookbook{height:440px}}
@media(max-width:800px){.reviews-section{grid-template-columns:1fr 1.4fr;gap:35px;padding:60px 22px}.reviews-intro h2{font-size:63px}.google-score>strong{font-size:60px}.google-score{gap:12px}.review-card blockquote{font-size:30px;letter-spacing:-1px;min-height:120px}.review-card-top{font-size:10px}.reviews-topline{font-size:9px}.reviews-bottomline{font-size:8px}.gallery.gallery-lookbook{height:440px;gap:16px}.gallery-lookbook>.gallery-item{flex-basis:46%;min-width:230px}.gallery-lookbook>.gallery-item:nth-child(2){flex-basis:54%}.gallery-lookbook>.gallery-item:nth-child(4){flex-basis:80%}}
@media(max-width:580px){.reviews-section{grid-template-columns:1fr;gap:35px;padding:55px 22px}.reviews-intro{display:grid;grid-template-columns:1fr auto;column-gap:15px}.reviews-intro .section-kicker{grid-column:1/-1;font-size:10px;margin-bottom:20px}.reviews-intro h2{font-size:65px;grid-row:2}.google-score{grid-column:2;grid-row:2;display:flex;flex-direction:column;align-items:start;gap:10px;margin:0;justify-content:center}.google-score>strong{font-size:61px}.google-score>strong>span{font-size:13px}.google-score .review-stars{font-size:10px;letter-spacing:2px}.google-score>div{gap:6px}.google-score>div>span:last-child{font-size:8px}.reviews-all{grid-column:1/-1;font-size:10px;justify-self:start;margin-top:22px}.reviews-topline{font-size:9px;padding-bottom:13px}.review-card{padding-top:22px}.review-card blockquote{font-size:33px;line-height:1.12;min-height:112px;margin-block:28px;max-width:330px}.review-stars{font-size:12px;letter-spacing:3px}.review-card-top>span:last-child{font-size:11px}.review-author cite{font-size:11px}.review-author>div>span{font-size:8px}.review-avatar{width:33px;height:33px}.reviews-bottomline{margin-top:17px;font-size:8px}.review-controls{gap:16px}.gallery.gallery-lookbook{height:390px;margin-right:-22px;padding-right:22px;gap:14px}.gallery-lookbook>.gallery-item{flex-basis:75%;min-width:245px}.gallery-lookbook>.gallery-item:nth-child(2){flex-basis:80%}.gallery-lookbook>.gallery-item:nth-child(4){flex-basis:95%}.gallery-lookbook>.gallery-tall{border-radius:130px 130px 3px 3px}.gallery-lookbook>.gallery-wide{border-radius:3px 3px 80px 3px}.lookbook-note{font-size:9px}.lookbook-note>span:last-child{display:none}}
@media(max-width:360px){.reviews-intro h2{font-size:56px}.google-score>strong{font-size:52px}.review-card blockquote{font-size:29px}.review-controls{gap:10px}.gallery-lookbook>.gallery-item{min-width:220px}}
.gallery.gallery-lookbook{margin-right:-56px}
@media(max-width:1150px){.gallery.gallery-lookbook{margin-right:-36px}}
@media(max-width:800px){.gallery.gallery-lookbook{margin-right:-22px}}
@media(prefers-reduced-motion:reduce){.campaign-plate,.campaign-cup,.campaign-copy h1,.ritual-title,.ritual-title h2{transform:none!important}.ritual-one{transform:rotate(-16deg) translateY(26px)!important}.ritual-three{transform:rotate(16deg) translateY(26px)!important}.ritual-two{transform:rotate(3deg)!important}.coffee-steam{display:none}.ribbon-track,.campaign-seal>svg:first-child{animation:none!important}}

.club-invitation{background:#e8bb55;color:#562a23;display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:90px 8%;align-items:center}.club-invitation h2{font-family:var(--heading);font-size:clamp(44px,5.5vw,82px);line-height:.98;letter-spacing:-3px;margin:25px 0}.club-invitation p{font-size:16px;line-height:1.6}.club-invitation small{display:block;margin-top:15px;font-size:11px}.invitation-pass{background:#be452c;color:#f5edda;border-radius:26px;padding:35px;transform:rotate(5deg);box-shadow:15px 25px 0 #562a231a;max-width:390px;width:100%;justify-self:center}.invitation-pass>span{display:block;font-size:12px}.invitation-pass strong{font-family:var(--heading);display:block;font-size:48px;letter-spacing:-2px;margin:35px 0 20px}.invitation-pass div{font-size:35px;line-height:1.7;color:#efc65f;border-bottom:1px dashed #f5edda66;padding-bottom:25px;margin-bottom:20px}@media(max-width:700px){.club-invitation{grid-template-columns:1fr;padding:60px 24px;gap:45px}.invitation-pass{max-width:330px;padding:25px}.club-invitation h2{letter-spacing:-2px}}
.cafe-faq{display:grid;grid-template-columns:1fr 1.25fr;gap:8%;padding-block:90px}.cafe-faq h2{font:600 clamp(48px,5vw,70px)/.98 var(--heading);letter-spacing:-3px;margin:22px 0 30px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;padding:24px 38px 24px 0;cursor:pointer;font-size:17px;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:3px;top:20px;font-size:26px}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:14px;line-height:1.8;max-width:60ch;margin:0 20px 25px 0}.faq-list p a{text-decoration:underline;text-underline-offset:3px}.mobile-actions{display:none}@media(max-width:700px){.cafe-faq{grid-template-columns:1fr;padding-block:65px;gap:30px}.cafe-faq h2{font-size:58px}.faq-list summary{font-size:15px;padding-block:22px}.mobile-actions{position:fixed;display:flex;bottom:max(12px,env(safe-area-inset-bottom));left:16px;right:16px;z-index:60;background:#faf6edf2;backdrop-filter:blur(16px);border:1px solid #d2c5ac;padding:6px;border-radius:40px;gap:6px;box-shadow:0 8px 35px #30251f20;opacity:0;transform:translateY(120%);transition:transform .25s,opacity .25s}.mobile-actions.is-visible{opacity:1;transform:none}.mobile-actions a{flex:1;display:flex;align-items:center;justify-content:center;gap:18px;font-size:13px;min-height:46px;border-radius:30px}.mobile-actions a:first-child{background:var(--ink);color:var(--paper)}.mobile-actions .icon{width:17px;height:17px}.site-footer{padding-bottom:100px}}
