@font-face{font-family:'Antonio';src:url('fonts/Antonio-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:'Glacial Indifference';src:url('fonts/GlacialIndifference-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#f6f3ec;--ink:#1e1d1b;--orange:#a6603f;--lime:#d9df8b;--line:#d9d3c8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.5 'Glacial Indifference',Arial,sans-serif}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,a{outline-offset:4px}h1,h2,h3,p,figure{margin:0}.skip{position:absolute;left:-9999px;top:1rem;background:#fff;padding:.7rem;z-index:30}.skip:focus{left:1rem}.site-header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,72px);border-bottom:1px solid var(--ink);background:var(--paper);position:relative;z-index:5}.wordmark{font:700 1.8rem/.85 'Antonio','Arial Narrow',sans-serif;letter-spacing:-.05em;white-space:nowrap}.wordmark span{display:block}.wordmark i{font-style:normal;color:var(--orange);font-size:.75rem;position:relative;top:-19px;left:93px}.site-header nav{display:flex;gap:clamp(14px,3vw,50px);font-size:.87rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.header-menu{font-size:.85rem;font-weight:700;text-transform:uppercase;border:1px solid var(--ink);padding:11px 16px;white-space:nowrap}.header-menu span{margin-left:16px}.hero{display:grid;grid-template-columns:56% 44%;min-height:min(730px,calc(100svh - 80px));border-bottom:1px solid var(--ink)}.hero-copy{padding:clamp(35px,5vw,76px) clamp(24px,5vw,80px) 25px;display:flex;flex-direction:column}.eyebrow,.section-index{font-size:.77rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.star{font-size:1.5rem;color:var(--orange);vertical-align:-.1em;margin-right:.4rem}.hero h1,.intro h2,.food h2,.events h2,.visit h2{font:700 clamp(4rem,7.25vw,8.2rem)/.95 'Antonio','Arial Narrow',sans-serif;letter-spacing:-.02em;text-transform:uppercase}.hero h1{margin:auto 0 28px;max-width:900px}.hero h1 em,.food h2 em,.events h2 em,.visit h2 em{color:var(--orange);font-style:normal}.hero-intro{font-size:clamp(1.05rem,1.45vw,1.3rem);max-width:530px;line-height:1.55}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:17px 21px;font-size:.91rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;transition:transform .2s,background .2s;text-decoration:none!important}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#45413b}.text-link{font-size:.9rem;font-weight:700;text-transform:uppercase;border-bottom:1px solid;padding-bottom:4px}.hero-foot{border-top:1px solid var(--ink);margin-top:auto;padding-top:16px;display:flex;justify-content:space-between;font-size:.7rem;font-weight:700;letter-spacing:.12em}.hero-visual{position:relative;min-height:550px;overflow:hidden;background:#b49d80}.hero-visual img{object-position:center 50%}.hero-stamp{position:absolute;left:-12px;top:9%;width:155px;height:155px;background:var(--orange);color:var(--ink);border-radius:50%;transform:rotate(-13deg);display:grid;place-content:center;text-align:center;font:700 1rem/1.1 'Antonio',sans-serif;box-shadow:4px 6px 0 rgba(0,0,0,.22)}.hero-stamp span{font-size:1.8rem}.vertical-note{position:absolute;right:17px;bottom:22px;writing-mode:vertical-rl;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.15em}.ticker{overflow:hidden;background:var(--orange);border-bottom:1px solid var(--ink);font:700 clamp(1.4rem,2.1vw,2.1rem)/1 'Antonio',sans-serif;white-space:nowrap;padding:15px 0}.ticker div{width:max-content;animation:marquee 40s linear infinite}.ticker b{padding:0 24px;font-size:1.2rem}@keyframes marquee{to{transform:translateX(-50%)}}.section-pad{padding:clamp(65px,8vw,130px) clamp(24px,5vw,80px)}.intro{display:grid;grid-template-columns:22% 43% 35%;gap:0;min-height:700px}.intro .section-index{padding-top:12px}.intro h2{font-size:clamp(3.5rem,5vw,6.5rem)}.intro h2 span{color:var(--orange)}.intro-content p{max-width:570px;margin-top:34px;font-size:clamp(1.15rem,1.6vw,1.48rem);line-height:1.55}.intro-photos{padding-left:10%;display:flex;flex-direction:column;align-items:flex-end}.coffee-photo{width:100%;height:430px;transform:rotate(3deg);background:#b89476;box-shadow:12px 15px 0 #d7d2c6}.coffee-photo img{height:calc(100% - 35px);object-position:center 38%}.coffee-photo figcaption{padding:6px 9px;font-size:.7rem;font-weight:700;letter-spacing:.1em}.intro-note{margin-top:30px;display:flex;align-items:center;gap:12px;max-width:270px}.intro-note span{font-size:3.5rem;color:var(--orange)}.intro-note p{font:700 1.2rem/1.1 'Antonio',sans-serif}.food{background:#d6d7c5;border-top:1px solid var(--ink)}.food-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}.food h2{margin-top:16px;font-size:clamp(4rem,6vw,7rem)}.food-head>p{max-width:430px;font-size:1.08rem}.food-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;align-items:start}.food-card{position:relative;overflow:hidden;background:#ae9a81}.food-card.tall{height:570px}.food-card.short{height:465px}.food-card img{transition:transform .5s}.food-card:hover img{transform:scale(1.045)}.food-card:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.food-card figcaption{position:absolute;z-index:1;bottom:26px;left:25px;color:#fff}.food-card figcaption span{display:block;font-size:.75rem;font-weight:700;letter-spacing:.12em;margin-bottom:6px}.food-card strong{font:700 clamp(1.8rem,2.5vw,3.4rem)/1.05 'Antonio',sans-serif;text-transform:uppercase}.menu-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--ink);margin-top:50px;padding-top:22px;font-size:.87rem;font-weight:700;letter-spacing:.06em}.menu-strip a{font:700 clamp(1.5rem,2.3vw,2.5rem)/1 'Antonio',sans-serif;border-bottom:2px solid var(--ink);padding-bottom:5px}.events{display:grid;grid-template-columns:50% 50%;background:var(--ink);color:var(--paper);min-height:620px}.events-photo{position:relative;min-height:580px;overflow:hidden}.events-photo img{object-position:center}.image-label{position:absolute;bottom:22px;left:25px;color:white;background:rgba(30,29,27,.8);padding:7px 11px;font-size:.68rem;font-weight:700;letter-spacing:.1em}.events-copy{padding:clamp(55px,7vw,115px) clamp(35px,7vw,110px);display:flex;flex-direction:column;align-items:flex-start}.events h2{font-size:clamp(3.8rem,5.6vw,7rem);margin:27px 0}.events-copy>p:not(.section-index){font-size:1.16rem;max-width:540px}.events ul{list-style:none;padding:0;margin:28px 0 36px;width:100%;max-width:520px}.events li{border-top:1px solid #69655f;padding:9px 0;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}.events li:before{content:'';display:inline-block;width:4px;height:4px;background:var(--orange);margin-right:14px;vertical-align:middle}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--lime)}.visit{display:grid;grid-template-columns:1fr 1fr;gap:50px}.visit h2{font-size:clamp(3.5rem,5.2vw,6.5rem);margin-top:20px}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:35px}.visit-details>div{border-top:1px solid var(--ink);padding-top:16px}.visit-details h3{font-size:.78rem;letter-spacing:.13em;margin-bottom:18px}.visit-details p{font-size:1.05rem;line-height:1.8}.visit-details a{display:inline-block;border-bottom:1px solid;margin-top:12px;font-weight:700;font-size:.86rem;text-transform:uppercase}footer{background:var(--orange);color:var(--ink);padding:65px clamp(24px,5vw,80px) 20px}.footer-main{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:60px}.footer-mark{font:700 clamp(4rem,9vw,10rem)/.8 'Antonio',sans-serif;letter-spacing:-.07em}.footer-mark span{font-size:.5em;vertical-align:top;padding-left:8px}.footer-main p{font-size:.75rem;font-weight:700;letter-spacing:.1em;line-height:1.6}.footer-main>a:last-child{font:700 1.8rem 'Antonio',sans-serif;border-bottom:2px solid}.footer-bottom{border-top:1px solid var(--ink);padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:.72rem}.footer-bottom a{text-decoration:underline}@media(max-width:1100px){.site-header nav{gap:14px}.intro{grid-template-columns:20% 45% 35%}.intro-photos{padding-left:5%}.food-card.tall{height:510px}.food-card.short{height:430px}}@media(max-width:800px){.site-header{height:70px}.site-header nav{display:none}.wordmark{font-size:1.55rem}.wordmark i{left:80px;top:-16px}.hero{grid-template-columns:1fr}.hero-copy{min-height:620px;padding:40px 24px 22px}.hero h1{font-size:clamp(4.2rem,12vw,7rem)}.hero-visual{min-height:480px;max-height:650px}.hero-stamp{left:20px;top:-50px}.intro{grid-template-columns:1fr 1fr;gap:35px}.intro .section-index{grid-column:1/-1}.intro-photos{padding-left:0}.food-grid{grid-template-columns:1fr 1fr}.food-card.tall{grid-row:span 2;height:620px}.food-card.short{height:300px}.events{grid-template-columns:1fr}.events-photo{height:470px;min-height:0}.events-copy{padding:65px 35px}.visit{grid-template-columns:1fr}.footer-main{align-items:start;flex-wrap:wrap}.footer-main p{margin-left:auto}}@media(max-width:550px){.header-menu{padding:9px 10px;font-size:.75rem}.header-menu span{margin-left:4px}.hero-copy{min-height:560px}.hero h1{font-size:clamp(3.7rem,14vw,5.7rem)}.hero-actions{align-items:flex-start;gap:22px;flex-direction:column}.hero-foot{font-size:.62rem}.hero-visual{min-height:400px;height:500px}.intro{display:block}.intro-content{margin-top:25px}.intro h2,.food h2,.events h2,.visit h2{font-size:clamp(3.3rem,13vw,5rem)}.intro-photos{margin-top:45px}.coffee-photo{width:85%;height:410px;margin-right:6%}.food-head{display:block}.food-head>p{margin-top:25px}.food-grid{grid-template-columns:1fr}.food-card.tall,.food-card.short{height:450px}.menu-strip{align-items:flex-start;flex-direction:column}.events-photo{height:380px}.events-copy{padding:55px 24px}.visit-details{grid-template-columns:1fr}.footer-main{display:block}.footer-main p{margin:40px 0}.footer-bottom{flex-direction:column}.footer-mark{font-size:6rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.button,.food-card img{transition:none}}
.moments{background:#e8e4d8;border-bottom:1px solid var(--ink)}.moments-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.moments h2{font:700 clamp(3.6rem,5vw,6rem)/.95 'Antonio','Arial Narrow',sans-serif;letter-spacing:-.02em;text-transform:uppercase}.moments h2 em{color:var(--orange);font-style:normal}.moments-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.moments-grid figure{height:440px;position:relative;overflow:hidden;background:#c7b6a2}.moments-grid figure:nth-child(2){transform:translateY(26px)}.moments-grid img{object-position:center 40%}.moments-grid figcaption{position:absolute;left:14px;bottom:14px;background:var(--paper);padding:7px 11px;font-size:.72rem;font-weight:700;letter-spacing:.1em}.events-photo img{object-position:center 45%}@media(max-width:800px){.moments-grid figure{height:340px}}@media(max-width:550px){.moments-heading{display:block}.moments h2{margin-top:15px;font-size:clamp(3.3rem,13vw,5rem)}.moments-grid{grid-template-columns:1fr 1fr;gap:10px}.moments-grid figure{height:300px}.moments-grid figure:first-child{grid-column:1/-1;height:360px}.moments-grid figure:nth-child(2){transform:none}.moments-grid figcaption{font-size:.62rem}}

/* Refined typography, quiet surfaces and photography. */
.arrow{display:inline-block;width:19px;height:19px;flex:none;vertical-align:middle;margin-left:8px}
.site-header{height:94px;border-color:var(--line)}
.wordmark{letter-spacing:0;line-height:.94}
.site-header nav{font-weight:400;letter-spacing:.09em;font-size:.75rem}
.header-menu{border-color:var(--line);font-weight:400;font-size:.75rem;padding:12px 17px}
.hero{grid-template-columns:52% 48%;border-color:var(--line);min-height:720px}
.hero-copy{padding:60px clamp(28px,5vw,80px) 30px}
.eyebrow,.section-index{font-weight:400;font-size:.68rem;letter-spacing:.17em;color:#716a60}
.hero h1{font-size:clamp(4rem,6.7vw,7.7rem);line-height:1.02;letter-spacing:0;margin:70px 0 30px}
.hero-intro{font-size:1.13rem;line-height:1.7;max-width:460px;color:#514b43}
.hero-actions{gap:28px;margin:36px 0 64px}
.button{padding:18px 23px;font-size:.75rem;font-weight:400;letter-spacing:.1em;gap:26px}
.button:hover{transform:none}
.text-link{font-weight:400;font-size:.75rem;letter-spacing:.08em;border-color:var(--line);padding-bottom:7px}
.hero-foot{border-color:var(--line);font-weight:400;font-size:.61rem;letter-spacing:.14em;color:#716a60}
.vertical-note{font-weight:400;letter-spacing:.16em}
.intro h2,.food h2,.events h2,.visit h2,.moments h2{letter-spacing:0;line-height:1.02}
.coffee-photo{transform:none;box-shadow:none;height:450px}
.coffee-photo figcaption{padding:12px 0;font-weight:400;letter-spacing:.12em;color:#716a60}
.intro-note{border-top:1px solid var(--line);padding-top:18px;max-width:none;width:100%}
.intro-note p{font:400 .7rem/1.7 'Glacial Indifference',sans-serif;letter-spacing:.13em}
.intro-content p,.food-head>p{color:#514b43;line-height:1.7}
.food{background:#eae7df;border-color:var(--line)}
.food-grid{gap:22px;grid-template-columns:1fr 1fr 1fr}
.food-card.tall,.food-card.short{height:490px}
.food-card figcaption span{font-weight:400;letter-spacing:.15em}
.menu-strip{border-color:#cec7bb;font-weight:400;letter-spacing:.09em}
.menu-strip a{font-size:1.8rem;border-bottom-width:1px}
.events{background:#262822}
.events .section-index{color:#bcb7a9}
.events-copy>p:not(.section-index){color:#d6d2c7;line-height:1.7}
.events li{font-weight:400;font-size:.75rem;letter-spacing:.09em;border-color:#55564e;padding:13px 0}
.button-light:hover{background:#e8e2d7}
.image-label{background:rgba(30,29,27,.55);font-weight:400;letter-spacing:.13em;padding:10px 13px}
.moments{background:var(--paper);border-color:var(--line)}
.moments-grid{gap:22px}
.moments-grid figure:nth-child(2){transform:none}
.moments-grid figcaption{font-weight:400;letter-spacing:.12em;background:rgba(246,243,236,.94);padding:10px 13px}
.visit-details>div{border-color:var(--line)}
.visit-details h3{font-weight:400;color:#716a60;font-size:.7rem}
.visit-details a{font-weight:400;letter-spacing:.06em;font-size:.75rem;border-color:var(--line)}
footer{background:#e7e1d5;padding-top:70px}
.footer-mark{letter-spacing:-.02em}
.footer-main p,.footer-bottom{font-weight:400;color:#625b51}
.footer-main>a:last-child{font-size:1.4rem;border-bottom-width:1px}
.footer-bottom{border-color:#c9c0b1}
@media(max-width:800px){.site-header{height:80px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{min-height:0;padding:44px 28px 26px}.hero h1{margin:52px 0 28px;font-size:clamp(4rem,12vw,7rem)}.hero-actions{margin-bottom:45px}.hero-visual{min-height:460px}.intro{gap:35px}.food-card.tall,.food-card.short{height:430px}}
@media(max-width:550px){.hero-copy{padding:38px 24px 25px}.eyebrow{font-size:.61rem;letter-spacing:.13em}.hero h1{font-size:clamp(3.65rem,13vw,5.2rem);margin:48px 0 26px}.hero-intro{font-size:1.02rem;line-height:1.7}.hero-actions{gap:24px;margin-top:28px;margin-bottom:40px}.hero-visual{height:440px;min-height:0}.section-pad{padding:70px 24px}.food-grid{grid-template-columns:1fr;gap:18px}.food-card.tall,.food-card.short{height:430px}.coffee-photo{width:100%;margin:0;height:430px}.food-head>p{font-size:1.02rem}.moments-grid{gap:12px}.moments-grid figure{height:280px}.hero-foot{font-size:.55rem;letter-spacing:.1em}.header-menu{font-size:.7rem;padding:10px 12px}.footer-mark{font-size:5.5rem}}

.wordmark,.footer-mark{display:inline-block;line-height:.94;letter-spacing:0}
.wordmark .logo-top,.wordmark .logo-bottom,.footer-mark .logo-top,.footer-mark .logo-bottom{display:block;font-size:1em;vertical-align:baseline;padding:0}
.logo-top::before{content:'Á';visibility:hidden}

/* Food photo galleries */
.photo-carousel{position:relative;width:100%;height:100%}
.carousel-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.carousel-track::-webkit-scrollbar{display:none}
.food-card .carousel-track img{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;transform:none;object-fit:cover}
.food-card:has(.photo-carousel):after{pointer-events:none}
.food-card:has(.photo-carousel) figcaption{bottom:82px;pointer-events:none}
.carousel-controls{position:absolute;z-index:2;bottom:19px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;color:#fff}
.carousel-controls button{border:1px solid #ffffff80;color:#fff;background:#1e1d1b40;cursor:pointer;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font:400 1.8rem/1 Arial,sans-serif;padding:0}
.carousel-controls button:hover{background:#1e1d1b90}
.carousel-dots{display:flex;align-items:center;gap:2px}
.carousel-controls .carousel-dot{width:32px;height:44px;border:0;background:transparent}
.carousel-dot:before{content:'';width:6px;height:6px;border-radius:50%;background:#ffffff70}
.carousel-dot[aria-current=true]:before{background:#fff;width:8px;height:8px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.coffee-photo .photo-carousel{height:calc(100% - 35px)}
.coffee-photo .carousel-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.coffee-photo .photo-carousel:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0006);pointer-events:none}
