/* Cafe: menu-first, dark roast palette and visit-planning hierarchy. */
.page-cafe{--paper:#f5eee1;--ink:#2c211b;--muted:#766457;--accent:#bb5738;background:#f5eee1}
.page-cafe .sample-head{height:84px;background:#f5eee1;border-bottom:1px solid #4a332844}.page-cafe .sample-logo{font:800 .9rem var(--display);letter-spacing:.12em}.page-cafe .sample-logo small{font:500 .49rem var(--mono);letter-spacing:.1em}.page-cafe .sample-nav a{font:600 .63rem var(--mono);text-transform:uppercase;letter-spacing:.08em}.page-cafe .sample-nav .nav-cta{background:#bd5738;color:white}
.page-cafe .cafe-hero{min-height:640px;padding:5rem 10vw;background:#362219}.page-cafe .cafe-hero:before{background:linear-gradient(90deg,#271811f2 0%,#271811bd 46%,#27181120 100%),url('https://images.unsplash.com/photo-1554118811-1e0d58224f24?auto=format&fit=crop&w=1800&q=85') center/cover}.page-cafe .cafe-hero>div{max-width:700px}.page-cafe .cafe-hero .b-kicker{font:600 .58rem var(--mono);letter-spacing:.12em}.page-cafe .cafe-hero h1{font:500 clamp(4.6rem,10vw,9rem)/.82 var(--serif);letter-spacing:-.08em}.page-cafe .cafe-hero p:not(.b-kicker){max-width:430px;font-size:.83rem;line-height:1.85}
.page-cafe .cafe-facts{margin:0;grid-template-columns:repeat(3,1fr);padding:1.5rem 10vw;background:#a7462f}.page-cafe .cafe-facts>div{padding-left:1rem;border-left:1px solid #fff5e755}.page-cafe .cafe-facts b{font:600 .54rem var(--mono);letter-spacing:.1em}.page-cafe .cafe-facts span{font-size:.68rem;line-height:1.65}.page-cafe .cafe-menu{max-width:1220px;padding:5rem 10vw}.page-cafe .cafe-menu-head{align-items:end;border-bottom:1px solid #4a3328;padding-bottom:1.5rem}.page-cafe .cafe-menu-head h2{font:500 clamp(3rem,6vw,5.5rem)/.95 var(--serif);letter-spacing:-.06em}.page-cafe .menu-groups{gap:3rem 8vw;padding-top:2.4rem}.page-cafe .menu-group h3{font:600 .65rem var(--mono);text-transform:uppercase;letter-spacing:.13em;border-bottom:2px solid #4a3328;padding-bottom:.8rem}.page-cafe .menu-item{padding:1rem 0;border-bottom:1px solid #4a332829}.page-cafe .menu-item b{font:600 .81rem var(--display)}.page-cafe .menu-item span{font:600 .72rem var(--mono);color:#a7462f}.page-cafe .menu-item small{font-size:.65rem}.page-cafe .cafe-note{max-width:640px;border-left:2px solid #b65339;padding-left:1rem}.page-cafe .cafe-visit{padding:4rem 10vw;grid-template-columns:1fr 1fr;background:#e7d9c5}.page-cafe .cafe-visit h2{font:500 clamp(2.7rem,5vw,4.5rem)/.95 var(--serif);letter-spacing:-.05em}.page-cafe .visit-address{display:inline-block;margin-top:1.3rem;padding:1rem 1.2rem;background:#f5eee1;font-size:.7rem;line-height:1.8}.page-cafe .visit-address b{font:600 .55rem var(--mono);letter-spacing:.08em}.page-cafe .visit-link{display:inline-block;margin-top:1rem;border-bottom:1px solid #a7462f;padding-bottom:.35rem;font-size:.69rem;font-weight:700}.page-cafe .sample-cta{background:#2b1d17;color:#f8efe1}.page-cafe .sample-cta .sample-action{background:#bb5738}
@media(max-width:760px){.page-cafe .cafe-hero{min-height:520px;padding:3.5rem 7vw}.page-cafe .cafe-facts{grid-template-columns:1fr;padding:1.2rem 7vw}.page-cafe .cafe-facts>div{padding:.4rem 0 .4rem 1rem}.page-cafe .cafe-menu{padding:3.5rem 7vw}.page-cafe .menu-groups{gap:1rem}.page-cafe .cafe-visit{padding:3rem 7vw;grid-template-columns:1fr;gap:1rem}}
@media(max-width:760px){.page-cafe .sample-head{height:auto;min-height:102px;flex-wrap:wrap;gap:.55rem;padding:.8rem 5vw}.page-cafe .sample-nav{width:100%;justify-content:space-between;gap:.45rem;flex-wrap:nowrap}.page-cafe .sample-nav a{font-size:.56rem;white-space:nowrap}.page-cafe .sample-nav .nav-cta{padding:.55rem .65rem}}

/* Extended cafe journey: daypart stories, scannable demo menu and wide-screen pacing. */
.page-cafe .sample-head{position:relative;z-index:3}
.page-cafe .cafe-rituals{max-width:1600px;margin:auto;padding:clamp(4rem,8vw,8rem) clamp(7vw,10vw,12rem);background:#f1e7d7}
.page-cafe .rituals-head{display:grid;grid-template-columns:1fr minmax(230px,.55fr);align-items:end;gap:0 5vw;margin-bottom:3.2rem}
.page-cafe .rituals-head .b-kicker{grid-column:1/-1}
.page-cafe .rituals-head h2{margin:.65rem 0 0;font:500 clamp(3.6rem,7vw,7.2rem)/.88 var(--serif);letter-spacing:-.075em}
.page-cafe .rituals-head h2 em{color:#a7462f}
.page-cafe .rituals-head>p:last-child{max-width:380px;margin:0 0 .35rem;color:#766457;font-size:.76rem;line-height:1.8}
.page-cafe .ritual-grid{display:grid;grid-template-columns:1.1fr .88fr 1fr;align-items:start;gap:1.3rem}
.page-cafe .ritual-card{min-width:0;background:#f8f3eb}
.page-cafe .ritual-card:nth-child(2){margin-top:5rem}
.page-cafe .ritual-card:nth-child(3){margin-top:1.8rem}
.page-cafe .ritual-card img{display:block;width:100%;aspect-ratio:1.02;object-fit:cover;filter:saturate(.78)}
.page-cafe .ritual-card>div{padding:1.25rem 1.3rem 1.5rem}
.page-cafe .ritual-card span{font:600 .52rem var(--mono);letter-spacing:.11em;color:#a7462f}
.page-cafe .ritual-card h3{margin:.65rem 0 .35rem;font:500 clamp(1.35rem,2vw,2rem)/1.05 var(--serif)}
.page-cafe .ritual-card p{margin:0;color:#766457;font-size:.69rem;line-height:1.75}
.page-cafe .ritual-disclosure{max-width:560px;margin:1.8rem 0 0;color:#766457;font:500 .55rem/1.7 var(--mono)}
.page-cafe .cafe-qr{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.65fr);align-items:center;gap:6vw;padding:clamp(4rem,7vw,7rem) clamp(7vw,12vw,15rem);background:#a7462f;color:#fff4e8}
.page-cafe .cafe-qr .b-kicker{color:#f3c4a4}
.page-cafe .cafe-qr h2{margin:.7rem 0 1rem;font:500 clamp(3.5rem,7vw,6.8rem)/.88 var(--serif);letter-spacing:-.075em}
.page-cafe .cafe-qr h2 em{color:#f0c795}
.page-cafe .qr-copy>p:not(.b-kicker){max-width:510px;color:#f0ded0;font-size:.78rem;line-height:1.85}
.page-cafe .qr-text-link{display:inline-flex;gap:1rem;margin-top:.7rem;padding-bottom:.35rem;border-bottom:1px solid #f5d7bd;color:#fff5e9;font-size:.68rem;font-weight:700}
.page-cafe .qr-card{justify-self:center;width:min(100%,340px);margin:0;padding:1.15rem;background:#fffdf8;color:#30251f;box-shadow:12px 12px 0 #73362475;text-align:center}
.page-cafe .qr-card>a{display:grid;place-items:center;padding:.55rem;background:#fff}
.page-cafe .qr-card img{display:block;width:min(100%,240px);height:auto;aspect-ratio:1;image-rendering:pixelated}
.page-cafe .qr-card figcaption{display:grid;gap:.4rem;padding:.8rem .3rem .2rem}
.page-cafe .qr-card figcaption b{font:600 .55rem var(--mono);letter-spacing:.1em}
.page-cafe .qr-card figcaption span{color:#766457;font-size:.59rem;line-height:1.65}
.page-cafe [data-reveal].reveal-pending{opacity:0;transform:translateY(24px)}
.page-cafe [data-reveal].reveal-visible{opacity:1;transform:translateY(0);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
@media(min-width:1500px){.page-cafe .cafe-hero{min-height:760px}.page-cafe .cafe-menu{max-width:1440px;padding-block:7rem}.page-cafe .cafe-facts{padding-inline:max(10vw,calc((100vw - 1280px)/2))}.page-cafe .cafe-visit{padding-inline:max(10vw,calc((100vw - 1280px)/2))}}
@media(max-width:900px){.page-cafe .cafe-rituals{padding:4.5rem 7vw}.page-cafe .ritual-grid{gap:.8rem}.page-cafe .ritual-card:nth-child(2){margin-top:2.5rem}.page-cafe .cafe-qr{padding:4.5rem 7vw;gap:3vw}}
@media(max-width:760px){.page-cafe .sample-nav{flex-wrap:wrap;justify-content:flex-start;gap:.4rem}.page-cafe .sample-nav a{font-size:.53rem}.page-cafe .sample-nav .nav-cta{margin-left:auto}.page-cafe .rituals-head{grid-template-columns:1fr;gap:.8rem;margin-bottom:1.7rem}.page-cafe .rituals-head .b-kicker{grid-column:1}.page-cafe .rituals-head>p:last-child{max-width:500px}.page-cafe .ritual-grid{grid-template-columns:1fr;gap:1rem}.page-cafe .ritual-card:nth-child(n){margin:0}.page-cafe .ritual-card{display:grid;grid-template-columns:.9fr 1.1fr;align-items:stretch}.page-cafe .ritual-card img{height:100%;min-height:190px;aspect-ratio:auto}.page-cafe .ritual-card>div{align-self:center;padding:1rem}.page-cafe .cafe-qr{grid-template-columns:1fr;padding:3.8rem 7vw;gap:1.8rem}.page-cafe .qr-card{width:min(100%,300px);justify-self:start}}
@media(max-width:420px){.page-cafe .ritual-card{grid-template-columns:1fr}.page-cafe .ritual-card img{height:auto;aspect-ratio:1.35;min-height:0}.page-cafe .sample-nav .nav-cta{margin-left:0}.page-cafe .qr-card{justify-self:center}}
@media(prefers-reduced-motion:reduce){.page-cafe [data-reveal].reveal-pending{opacity:1;transform:none}.page-cafe [data-reveal].reveal-visible{transition:none}.page-cafe html{scroll-behavior:auto}}
.page-cafe .menu-category{align-self:start;border-bottom:1px solid #4a332866}
.page-cafe .menu-category summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:68px;padding:.9rem 0;border-bottom:2px solid #4a3328;cursor:pointer;list-style:none}
.page-cafe .menu-category summary::-webkit-details-marker{display:none}
.page-cafe .menu-category summary:focus-visible{outline:3px solid #a7462f;outline-offset:4px}
.page-cafe .menu-category-title{font:600 .68rem var(--mono);letter-spacing:.12em;text-transform:uppercase}
.page-cafe .menu-category-icon{position:relative;width:22px;height:22px;border:1px solid #4a3328;border-radius:50%;flex:none}
.page-cafe .menu-category-icon:before,.page-cafe .menu-category-icon:after{content:"";position:absolute;left:6px;right:6px;top:10px;height:1px;background:#4a3328;transition:transform .25s ease}
.page-cafe .menu-category-icon:after{transform:rotate(90deg)}
.page-cafe .menu-category[open] .menu-category-icon:after{transform:rotate(0)}
.page-cafe .menu-category-inner{min-height:0;overflow:hidden}
@supports selector(details::details-content){
 .page-cafe .menu-category::details-content{content-visibility:visible;overflow:clip;block-size:0;transition:content-visibility .34s allow-discrete,block-size .34s ease}
 .page-cafe .menu-category[open]::details-content{block-size:auto;block-size:calc-size(auto,size)}
}
@media(prefers-reduced-motion:reduce){.page-cafe .menu-category-icon:before,.page-cafe .menu-category-icon:after{transition:none}.page-cafe .menu-category::details-content,.page-cafe .menu-category[open]::details-content{transition:none}}
.page-cafe{font-size:17px;overflow-x:hidden}
.page-cafe .sample-head{position:sticky;top:0;z-index:10;padding-inline:max(7vw,calc((100vw - 1540px)/2));height:92px}
.page-cafe .sample-logo{font-size:1.08rem}.page-cafe .sample-logo small{font-size:.56rem}.page-cafe .sample-nav{gap:clamp(1.1rem,2vw,2rem)}.page-cafe .sample-nav a{font-size:.75rem}
.page-cafe .cafe-hero{position:relative;isolation:isolate;min-height:min(850px,calc(100svh - 126px));padding:clamp(5.5rem,9vw,9rem) max(10vw,calc((100vw - 1420px)/2));display:flex;align-items:center}
.page-cafe .cafe-hero:before{z-index:-2;background-position:center 55%;transform:scale(1.025);animation:cafe-hero-settle 1.2s cubic-bezier(.2,.7,.2,1) both}
.page-cafe .cafe-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#21150ff5 0%,#21150fbd 38%,#21150f18 75%),linear-gradient(0deg,#21150f70,transparent 42%)}
.page-cafe .cafe-hero>div{max-width:750px}.page-cafe .cafe-hero .b-kicker{font-size:.73rem}.page-cafe .cafe-hero h1{font-size:clamp(6rem,10vw,10rem);line-height:.78}.page-cafe .cafe-hero p:not(.b-kicker){max-width:560px;font-size:1rem;line-height:1.9;color:#f3e8d9}
.page-cafe .cafe-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.7rem}.page-cafe .cafe-hero-actions a{display:inline-flex;align-items:center;gap:1.1rem;padding:.95rem 1.1rem;background:#bd5738;color:white;font-size:.78rem;font-weight:700}.page-cafe .cafe-hero-actions a+a{border:1px solid #f5e8d4;background:#24191276}.page-cafe .cafe-hero-note{display:block;margin-top:1.15rem;color:#eadfd1;font-size:.68rem}
.page-cafe .cafe-hero-stamp{position:absolute;right:max(10vw,calc((100vw - 1420px)/2));bottom:clamp(3rem,7vw,7rem);display:grid;place-items:center;width:clamp(120px,13vw,190px);height:clamp(120px,13vw,190px);border:1px solid #f7eadb99;border-radius:50%;color:#fff2df;text-align:center;font:600 .69rem/1.6 var(--mono);letter-spacing:.12em;rotate:9deg}.page-cafe .cafe-hero-stamp i{font-size:.55rem;font-style:normal;color:#f0c795}
.page-cafe .cafe-facts{padding-block:2rem}.page-cafe .cafe-facts b{font-size:.66rem}.page-cafe .cafe-facts span{font-size:.84rem}
.page-cafe .cafe-menu{max-width:1500px;padding:clamp(5rem,8vw,8rem) clamp(5rem,10vw,10rem)}.page-cafe .cafe-menu-head{gap:4rem}.page-cafe .cafe-menu-head h2{font-size:clamp(4rem,6vw,6rem)}.page-cafe .menu-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 5vw;padding-top:3rem}.page-cafe .menu-category summary{min-height:82px}.page-cafe .menu-category-title{font-size:.8rem}.page-cafe .menu-item{padding:1.2rem 0}.page-cafe .menu-item b{font-size:.96rem}.page-cafe .menu-item span{font-size:.8rem}.page-cafe .menu-item small{font-size:.76rem}.page-cafe .cafe-note{font-size:.69rem;line-height:1.8;margin-top:1.7rem}
.page-cafe .cafe-rituals{max-width:1720px;padding:clamp(5rem,8vw,9rem) clamp(5rem,10vw,11rem)}.page-cafe .rituals-head{margin-bottom:4rem}.page-cafe .rituals-head .b-kicker{font-size:.7rem}.page-cafe .rituals-head>p:last-child{font-size:.9rem;line-height:1.85}.page-cafe .ritual-grid{gap:1.6rem}.page-cafe .ritual-card{overflow:hidden;box-shadow:0 18px 45px #3b26100d}.page-cafe .ritual-card img{aspect-ratio:.96;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.page-cafe .ritual-card:hover img{transform:scale(1.035)}.page-cafe .ritual-card>div{padding:1.5rem 1.6rem 1.8rem}.page-cafe .ritual-card span{font-size:.63rem}.page-cafe .ritual-card h3{font-size:clamp(1.65rem,2.2vw,2.3rem)}.page-cafe .ritual-card p{font-size:.83rem;line-height:1.8}.page-cafe .ritual-disclosure{font-size:.66rem}
.page-cafe .cafe-service{padding:clamp(5rem,8vw,9rem) max(8vw,calc((100vw - 1440px)/2));background:#f7f1e7}.page-cafe .cafe-service-head{display:grid;grid-template-columns:1fr minmax(280px,.6fr);gap:0 5vw;align-items:end;margin-bottom:3rem}.page-cafe .cafe-service-head .b-kicker{grid-column:1/-1}.page-cafe .cafe-service-head h2{margin:.65rem 0 0;font:500 clamp(4rem,6vw,6.2rem)/.86 var(--serif);letter-spacing:-.075em}.page-cafe .cafe-service-head h2 em{color:#a7462f}.page-cafe .cafe-service-head>p:last-child{max-width:470px;margin:0;color:#766457;font-size:.9rem;line-height:1.85}.page-cafe .cafe-service-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #4a332866;border-bottom:1px solid #4a332866}.page-cafe .cafe-service-steps article{min-height:295px;padding:1.8rem 1.7rem;border-right:1px solid #4a332866;display:flex;flex-direction:column;align-items:flex-start}.page-cafe .cafe-service-steps article:first-child{padding-left:0}.page-cafe .cafe-service-steps article:last-child{border-right:0}.page-cafe .cafe-service-steps article>span{font:600 .61rem var(--mono);letter-spacing:.08em;color:#a7462f}.page-cafe .cafe-service-steps h3{margin:1.7rem 0 .6rem;font:500 1.7rem var(--serif)}.page-cafe .cafe-service-steps p{margin:0;color:#766457;font-size:.84rem;line-height:1.8}.page-cafe .cafe-service-steps a{margin-top:auto;padding-top:1.2rem;color:#8e3e29;font-size:.75rem;font-weight:700}.page-cafe .cafe-service-steps a b{margin-left:.5rem}.page-cafe .cafe-service-note{margin:1rem 0 0;color:#766457;font-size:.68rem;line-height:1.7}
.page-cafe .cafe-qr{padding:clamp(5rem,8vw,9rem) max(8vw,calc((100vw - 1440px)/2))}.page-cafe .qr-copy>p:not(.b-kicker){font-size:.92rem;line-height:1.9}.page-cafe .qr-text-link{font-size:.78rem}.page-cafe .qr-card{width:min(100%,390px);padding:1.35rem}.page-cafe .qr-card img{width:min(100%,275px)}.page-cafe .qr-card figcaption b{font-size:.62rem}.page-cafe .qr-card figcaption span{font-size:.7rem}
.page-cafe .cafe-visit{padding:clamp(4.5rem,7vw,7rem) max(8vw,calc((100vw - 1440px)/2));gap:clamp(3rem,7vw,7rem)}.page-cafe .cafe-visit h2{font-size:clamp(3.5rem,5.6vw,5.6rem)}.page-cafe .cafe-visit>div>p:not(.visit-address){font-size:.9rem;line-height:1.9}.page-cafe .visit-address{font-size:.85rem}.page-cafe .visit-address b{font-size:.64rem}.page-cafe .visit-link{font-size:.78rem}.page-cafe .sample-cta .sample-wrap>p:not(.kicker):not(.sample-disclosure){font-size:.95rem;line-height:1.85}.page-cafe .sample-cta .sample-disclosure{font-size:.68rem}
.page-cafe .cafe-service [data-reveal]{opacity:1}
.page-cafe .cafe-offer-note{max-width:780px;margin:1.6rem 0;padding:1rem 1.1rem;border-left:3px solid #d8a477;background:#ffffff12;text-align:left}
.page-cafe .cafe-offer-note b,.page-cafe .cafe-offer-note span{display:block}
.page-cafe .cafe-offer-note b{margin-bottom:.45rem;color:#fff2df;font-size:.85rem}
.page-cafe .cafe-offer-note span{color:#e2d5c5;font-size:.83rem;line-height:1.8}
.page-cafe .cafe-offer-note span+span{margin-top:.5rem}
.page-cafe [data-reveal].reveal-pending{opacity:0;transform:translateY(32px)}.page-cafe [data-reveal].reveal-visible{opacity:1;transform:translateY(0);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.page-cafe .ritual-card{transition:box-shadow .35s ease}.page-cafe .ritual-card:hover{box-shadow:0 24px 55px #3b26101c}
@keyframes cafe-hero-settle{from{transform:scale(1.07);opacity:.7}to{transform:scale(1.025);opacity:1}}
@media(min-width:1800px){.page-cafe .cafe-hero{min-height:900px}.page-cafe .cafe-menu{max-width:1640px}.page-cafe .cafe-rituals{max-width:1800px}}
@media(max-width:1050px){.page-cafe .sample-head{padding-inline:5vw}.page-cafe .sample-nav{gap:.9rem}.page-cafe .sample-nav a{font-size:.67rem}.page-cafe .cafe-hero{padding-inline:8vw}.page-cafe .cafe-hero-stamp{right:6vw}.page-cafe .cafe-menu{padding-inline:7vw}.page-cafe .cafe-rituals{padding-inline:7vw}.page-cafe .cafe-qr{padding-inline:7vw}.page-cafe .cafe-service,.page-cafe .cafe-visit{padding-inline:7vw}}
@media(max-width:760px){.page-cafe{font-size:16px}.page-cafe .sample-head{position:relative;height:auto;min-height:104px;padding:.8rem 1.1rem}.page-cafe .sample-nav{width:100%;justify-content:flex-start;gap:.8rem;flex-wrap:wrap}.page-cafe .sample-nav a{font-size:.64rem}.page-cafe .sample-nav .nav-cta{margin-left:auto}.page-cafe .cafe-hero{min-height:660px;padding:4rem 1.2rem;align-items:flex-start}.page-cafe .cafe-hero:before{background-position:58% center}.page-cafe .cafe-hero:after{background:linear-gradient(90deg,#21150fe8 0%,#21150f9c 72%,#21150f58 100%),linear-gradient(0deg,#21150f88,transparent 65%)}.page-cafe .cafe-hero h1{font-size:clamp(5rem,17vw,7rem)}.page-cafe .cafe-hero p:not(.b-kicker){font-size:.95rem}.page-cafe .cafe-hero-stamp{width:98px;height:98px;right:1.2rem;bottom:1.3rem;font-size:.5rem}.page-cafe .cafe-hero-stamp i{font-size:.43rem}.page-cafe .cafe-facts{grid-template-columns:1fr;padding:1.2rem 1.2rem}.page-cafe .cafe-facts>div{padding:.75rem 0 .75rem 1rem}.page-cafe .cafe-facts span{font-size:.83rem}.page-cafe .cafe-menu{padding:3.8rem 1.2rem}.page-cafe .cafe-menu-head{display:block}.page-cafe .cafe-menu-head h2{font-size:3.7rem}.page-cafe .cafe-menu-head>p{margin-top:1rem}.page-cafe .menu-groups{grid-template-columns:1fr;gap:.8rem;padding-top:1.4rem}.page-cafe .menu-category summary{min-height:68px}.page-cafe .menu-item b{font-size:.88rem}.page-cafe .menu-item small{font-size:.73rem}.page-cafe .cafe-rituals{padding:4rem 1.2rem}.page-cafe .rituals-head{grid-template-columns:1fr;gap:.8rem;margin-bottom:1.7rem}.page-cafe .rituals-head h2{font-size:3.7rem}.page-cafe .rituals-head .b-kicker{grid-column:1}.page-cafe .rituals-head>p:last-child{font-size:.85rem}.page-cafe .ritual-grid{grid-template-columns:1fr;gap:1rem}.page-cafe .ritual-card:nth-child(n){margin:0}.page-cafe .ritual-card{display:grid;grid-template-columns:.9fr 1.1fr}.page-cafe .ritual-card img{height:100%;min-height:190px;aspect-ratio:auto}.page-cafe .ritual-card>div{align-self:center;padding:1rem}.page-cafe .ritual-card h3{font-size:1.6rem}.page-cafe .ritual-card p{font-size:.77rem}.page-cafe .cafe-service{padding:4rem 1.2rem}.page-cafe .cafe-service-head{grid-template-columns:1fr;gap:.8rem;margin-bottom:1.7rem}.page-cafe .cafe-service-head .b-kicker{grid-column:1}.page-cafe .cafe-service-head h2{font-size:3.8rem}.page-cafe .cafe-service-head>p:last-child{font-size:.85rem}.page-cafe .cafe-service-steps{grid-template-columns:1fr}.page-cafe .cafe-service-steps article,.page-cafe .cafe-service-steps article:first-child{min-height:0;padding:1.2rem 0;border-right:0;border-bottom:1px solid #4a332866}.page-cafe .cafe-service-steps article:last-child{border-bottom:0}.page-cafe .cafe-service-steps h3{margin:1rem 0 .4rem;font-size:1.5rem}.page-cafe .cafe-service-steps p{font-size:.83rem}.page-cafe .cafe-qr{grid-template-columns:1fr;padding:4rem 1.2rem;gap:1.8rem}.page-cafe .cafe-qr h2{font-size:3.8rem}.page-cafe .qr-copy>p:not(.b-kicker){font-size:.87rem}.page-cafe .qr-card{width:min(100%,320px);justify-self:start}.page-cafe .cafe-visit{padding:3.5rem 1.2rem;grid-template-columns:1fr;gap:1rem}.page-cafe .cafe-visit h2{font-size:3.5rem}.page-cafe .cafe-visit>div>p:not(.visit-address){font-size:.86rem}}
@media(max-width:420px){.page-cafe .sample-nav{gap:.5rem}.page-cafe .sample-nav a{font-size:.57rem}.page-cafe .sample-nav .nav-cta{margin-left:0}.page-cafe .cafe-hero{min-height:630px}.page-cafe .cafe-hero-actions a{font-size:.69rem;padding:.8rem}.page-cafe .ritual-card{grid-template-columns:1fr}.page-cafe .ritual-card img{height:auto;aspect-ratio:1.35;min-height:0}.page-cafe .cafe-hero-stamp{display:none}}
@media(prefers-reduced-motion:reduce){.page-cafe .cafe-hero:before{animation:none;transform:none}.page-cafe .ritual-card img{transition:none}.page-cafe [data-reveal].reveal-pending{opacity:1;transform:none}.page-cafe [data-reveal].reveal-visible{transition:none}}

/* Keep the five-section sample inside the static, customer-content-first offer. */
.page-cafe .cafe-hero{padding-bottom:11rem}
.page-cafe .cafe-hero .cafe-facts{position:absolute;left:max(10vw,calc((100vw - 1420px)/2));right:max(10vw,calc((100vw - 1420px)/2));bottom:0;margin:0;min-height:92px;align-items:center;gap:1.5rem;background:#a7462fef;backdrop-filter:blur(8px)}
.page-cafe .cafe-hero-stamp{bottom:11rem}
.page-cafe .cafe-menu .cafe-qr{width:auto;max-width:none;margin:clamp(3rem,6vw,6rem) calc(-1 * clamp(5rem,10vw,10rem)) calc(-1 * clamp(5rem,8vw,8rem));}
.page-cafe .menu-item{grid-template-columns:minmax(0,1fr) minmax(9.5rem,auto);align-items:start;gap:.5rem 1rem}
.page-cafe .menu-item span{max-width:13rem;text-align:right;font-size:.67rem;line-height:1.45;color:#8f3e2a}
.page-cafe .visit-details{display:grid;gap:0;margin:1.4rem 0 0;border-top:1px solid #4a332866}
.page-cafe .visit-details>div{display:grid;grid-template-columns:minmax(130px,.55fr) 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid #4a332844}
.page-cafe .visit-details dt{font:600 .62rem var(--mono);letter-spacing:.04em}
.page-cafe .visit-details dd{margin:0;color:#6d5d50;font-size:.76rem;line-height:1.65}
.page-cafe .visit-channels>p{max-width:620px;color:#6d5d50;font-size:.84rem;line-height:1.85}
.page-cafe .channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.5rem 0}
.page-cafe .channel-grid article{padding:1.2rem;background:#f5eee1;border-top:2px solid #a7462f}
.page-cafe .channel-grid article>span{font:600 .55rem var(--mono);letter-spacing:.08em;color:#a7462f}
.page-cafe .channel-grid h3{margin:.7rem 0 .4rem;font:500 1.35rem var(--serif)}
.page-cafe .channel-grid p{margin:0;color:#6d5d50;font-size:.73rem;line-height:1.75}
.page-cafe .cafe-visit{align-items:start;gap:clamp(2rem,5vw,5rem)}
.page-cafe .sample-cta{padding-block:clamp(4rem,7vw,7rem)}
@media(min-width:1500px){.page-cafe .cafe-hero .cafe-facts{padding-inline:max(2rem,calc((100vw - 1280px)/2))}}
@media(max-width:1050px){.page-cafe .cafe-hero{padding-bottom:12rem}.page-cafe .cafe-hero .cafe-facts{left:7vw;right:7vw}}
@media(max-width:760px){.page-cafe .cafe-hero{padding:3.5rem 1.2rem 0;min-height:0}.page-cafe .cafe-hero-stamp{bottom:11rem}.page-cafe .cafe-hero .cafe-facts{position:relative;left:auto;right:auto;bottom:auto;width:calc(100% + 2.4rem);margin:2rem -1.2rem 0;padding:1rem 1.2rem;grid-template-columns:1fr;gap:.45rem;backdrop-filter:none}.page-cafe .cafe-facts>div{padding:.65rem 0 .65rem .8rem}.page-cafe .cafe-menu .cafe-qr{margin:3rem -1.2rem -3.8rem}.page-cafe .menu-item{grid-template-columns:minmax(0,1fr) auto}.page-cafe .menu-item span{max-width:10rem;font-size:.61rem}.page-cafe .visit-details>div{grid-template-columns:1fr;gap:.35rem}.page-cafe .channel-grid{grid-template-columns:1fr}.page-cafe .cafe-visit{padding:3.5rem 1.2rem}}
@media(max-width:420px){.page-cafe .menu-item{grid-template-columns:1fr}.page-cafe .menu-item span{text-align:left;max-width:none}.page-cafe .cafe-menu .cafe-qr{margin-inline:-1.2rem}}

/* Guest questions: visible answers about verified menu facts and real service channels. */
.page-cafe .cafe-faq{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(2rem,7vw,7rem);align-items:start;padding:clamp(4rem,8vw,8rem) max(8vw,calc((100vw - 1420px)/2));background:#e9ddca;color:#2c211b}
.page-cafe .faq-intro h2{margin:.65rem 0 1rem;font:500 clamp(3.3rem,6.3vw,6rem)/.88 var(--serif);letter-spacing:-.07em}
.page-cafe .faq-intro h2 em{color:#a7462f}
.page-cafe .faq-intro>p:last-child{max-width:440px;color:#766457;font-size:.88rem;line-height:1.8}
.page-cafe .faq-list{border-top:1px solid #4a332866}
.page-cafe .faq-card{border-bottom:1px solid #4a332866}
.page-cafe .faq-card summary{position:relative;padding:1.2rem 2.5rem 1.2rem 0;cursor:pointer;list-style:none;font:600 clamp(.9rem,1.1vw,1.05rem)/1.5 var(--display)}
.page-cafe .faq-card summary::-webkit-details-marker{display:none}
.page-cafe .faq-card summary:after{content:"+";position:absolute;right:.25rem;top:50%;translate:0 -50%;color:#a7462f;font:400 1.5rem var(--display);transition:rotate .22s ease}
.page-cafe .faq-card[open] summary:after{rotate:45deg}
.page-cafe .faq-card summary:focus-visible{outline:3px solid #a7462f;outline-offset:3px}
.page-cafe .faq-card p{max-width:740px;margin:0;padding:0 2rem 1.25rem 0;color:#66564a;font-size:.85rem;line-height:1.85}
.page-cafe .faq-card p a{color:#8e3e29;text-decoration:underline;text-underline-offset:.2em}
@media(max-width:900px){.page-cafe .cafe-faq{padding-inline:7vw;gap:3vw}}
@media(max-width:760px){.page-cafe .cafe-faq{grid-template-columns:1fr;padding:3.8rem 1.2rem;gap:1rem}.page-cafe .faq-intro h2{font-size:3.7rem}.page-cafe .faq-card summary{padding-block:1rem}.page-cafe .faq-card p{font-size:.84rem}}
@media(prefers-reduced-motion:reduce){.page-cafe .faq-card summary:after{transition:none}}

/* Stack the hero copy, facts and stamp instead of squeezing them side by side on phones. */
@media(max-width:760px){.page-cafe .cafe-hero{flex-direction:column;align-items:stretch}.page-cafe .cafe-hero>div{width:100%;max-width:none;position:relative;z-index:1}.page-cafe .cafe-hero .cafe-facts{flex:0 0 auto}.page-cafe .cafe-hero-stamp{z-index:2}}
