@font-face{font-family:Outfit;src:url('assets/outfit-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#f4f5f0;--tint:#e8ece4;--ink:#242620;--muted:#5c6257;--accent:#3f503c;--rule:#c7cdbf;--gutter:20px;--max:1240px;--header:76px;--radius:2px;/* Layers: page 0, fixed header 10, native dialogs in top layer. */}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 24px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Outfit,Arial,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}body.is-locked{position:fixed;width:100%;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0}img{max-width:100%;display:block}figure,blockquote{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-.055em;line-height:1.06}h2{font-size:clamp(38px,4.3vw,62px)}h3{font-size:25px;line-height:1.2;letter-spacing:-.03em}p{color:var(--muted)}a:focus-visible,button:focus-visible{outline:3px solid #8c592c;outline-offset:5px}::selection{background:#d7dfcc;color:var(--ink)}.wrap{width:min(calc(100% - var(--gutter)*2),var(--max));margin-inline:auto}.section{padding-block:64px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:500}.skip-link{position:fixed;top:8px;left:16px;background:var(--paper);padding:12px 20px;z-index:20;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:var(--header);position:fixed;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gutter);background:transparent;border-bottom:1px solid transparent;color:#f9faf5;transition:background-color .24s ease,border-color .24s ease,color .24s ease;isolation:isolate}.site-header:not(.is-solid) .brand>span,.site-header:not(.is-solid) .desktop-nav,.site-header:not(.is-solid) .header-actions{text-shadow:0 1px 9px rgb(0 0 0 / .36)}.site-header.is-solid{background:var(--paper);border-bottom-color:rgb(36 38 32 / .08);color:var(--ink)}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:44px;height:44px}.brand>span{font-size:20px;font-weight:500;letter-spacing:.23em;line-height:1.15}.brand small{display:block;font-size:9px;letter-spacing:.38em;text-align:center;padding-top:5px}.desktop-nav{display:none;gap:36px;align-items:center}.desktop-nav a{font-size:15px;padding:16px 0}.header-actions,.socials{display:flex;align-items:center}.icon-link{width:44px;height:44px;display:grid;place-items:center;transition:opacity .2s}.icon-link svg{width:20px;height:20px}.nav-toggle{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;margin-left:8px}.nav-toggle span{display:block;width:24px;height:1.5px;background:currentColor;margin-inline:auto}
.hero{min-height:100svh;position:relative;isolation:isolate;display:flex;align-items:flex-end;overflow:hidden;color:#f9faf5;background:#414638}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-photo{object-fit:cover;object-position:50% 54%}.hero-shade{z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.03) 20%,rgba(0,0,0,.08) 42%,rgba(0,0,0,.28) 100%)}.hero-content{padding-top:calc(var(--header) + 56px);padding-bottom:48px}.hero .eyebrow{color:inherit;margin-bottom:18px;font-size:11px;text-shadow:0 1px 8px rgb(0 0 0 / .2)}.hero h1{font-size:clamp(62px,10.4vw,148px);font-weight:500;line-height:.99;max-width:11ch;letter-spacing:-.065em;text-shadow:0 1px 12px rgb(0 0 0 / .14)}.hero-description{color:inherit;font-size:18px;line-height:1.5;max-width:34ch;margin-top:24px;text-shadow:0 1px 8px rgb(0 0 0 / .24)}.hero-buttons{display:flex;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:54px;padding:14px 24px;border-radius:var(--radius);font-size:15px;line-height:1.4;font-weight:500;white-space:nowrap;transition:background .2s,transform .2s}.button span{font-size:21px;line-height:1}.button:active{transform:scale(.98)}.button-light{background:var(--paper);color:var(--ink);border:1px solid var(--paper)}.button-outline{border:1px solid rgb(255 255 255 / .8);color:#fff;background:rgb(0 0 0 / .14)}.button-dark{background:var(--accent);color:var(--paper);border:1px solid var(--accent)}.text-link{display:inline-flex;gap:28px;align-items:center;font-size:15px;font-weight:500;min-height:44px;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--rule)}.text-link span{font-size:20px}
.story{display:grid;gap:40px;align-items:center}.story .eyebrow{margin-bottom:20px;color:var(--accent)}.story h2{margin-bottom:24px}.story-copy>p:not(.eyebrow){max-width:44ch;margin-bottom:16px}.story-copy .story-lead{font-size:23px;line-height:1.45;letter-spacing:-.025em;color:var(--accent);max-width:29ch!important}.story .text-link{margin-top:12px}.portrait{aspect-ratio:3 / 4;overflow:hidden;width:100%;align-self:start}.portrait img{width:100%;height:100%;display:block;object-fit:cover}.story-figure figcaption{font-size:13px;color:var(--muted);margin-top:14px}.menu-section,.reviews-section{background:var(--tint)}.section-heading{margin-bottom:36px}.section-heading p{max-width:40ch;margin-top:20px}.menu-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:42px}.menu-card h3{margin-top:22px;margin-bottom:12px}.menu-card p{font-size:16px;max-width:38ch}.menu-card ul{list-style:none;padding:0;margin:22px 0 0;border-top:1px solid var(--rule);font-size:15px}.menu-card li{padding:9px 0;border-bottom:1px solid var(--rule)}.gallery-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.gallery-figure{min-width:0}.gallery-figure figcaption{padding:12px 0 6px;font-size:14px;color:var(--muted);line-height:1.4}.gallery-item{display:block;position:relative;cursor:zoom-in;background:var(--tint)}.gallery-item img{transition:transform .35s}.enlarge{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:38px;height:38px;background:var(--paper);color:var(--ink);font-size:22px;border-radius:var(--radius)}
.review-heading{margin-bottom:36px}.review-heading>p{display:flex;align-items:center;gap:14px;font-size:14px;margin-top:20px}.review-heading strong{font-size:24px;font-weight:500;color:var(--ink)}.stars{font-family:Arial,sans-serif;font-size:16px;letter-spacing:2px;color:var(--accent)}.reviews-grid{display:grid;gap:32px}.review{display:flex;flex-direction:column;padding-top:24px;border-top:1px solid var(--rule);min-width:0}.review blockquote{font-size:21px;line-height:1.5;letter-spacing:-.012em;padding-block:20px 24px}.review-author{display:flex;align-items:center;gap:12px;margin-top:auto;font-size:15px}.review-author img{width:40px;height:40px;border-radius:50%;object-fit:cover}.review .text-link{align-self:start;margin-top:14px;font-size:13px;gap:12px}.visit-section{display:grid;gap:40px}.visit-heading .eyebrow{margin-bottom:20px}.visit-heading h2{max-width:14ch}.visit-copy address{font-style:normal;color:var(--muted);line-height:1.7}.phone-link{display:inline-block;font-size:20px;padding-block:12px}.opening-hours{margin-block:16px 24px}.opening-hours h3{font-size:17px;letter-spacing:0;margin-bottom:12px}.opening-hours dl{font-size:14px;margin:0;max-width:380px}.opening-hours dl>div{display:flex;justify-content:space-between;gap:20px;padding-block:5px}.opening-hours dt{color:var(--muted)}.opening-hours dd{margin:0;text-align:right;white-space:nowrap}.map-wrap{background:#e2e6db;overflow:hidden;height:430px;min-height:430px}.map-wrap iframe{width:100%;height:100%;min-height:430px;display:block;border:0}.site-footer{border-top:1px solid var(--rule);padding-top:40px;background:var(--tint)}.footer-top{display:grid;gap:28px;padding-bottom:32px}.footer-top p{font-size:14px;line-height:1.7}.footer-contact>a{font-size:16px;display:inline-flex;align-items:center;min-height:44px}.footer-contact .socials{margin:4px 0 0 -12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding-block:20px;font-size:12px;color:var(--muted)}.footer-bottom nav{display:flex;gap:16px;flex-wrap:wrap}.footer-bottom nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}
dialog{border:0;color:var(--ink)}dialog::backdrop{background:rgb(0 0 0 / .6)}.close-button{width:48px;height:48px;display:grid;place-items:center;background:transparent;font-size:36px;font-weight:300;line-height:1}.nav-dialog{width:100%;height:100svh;max-width:none;max-height:none;padding:20px var(--gutter) 32px;margin:0;background:var(--paper)}.nav-dialog-head{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-bottom:38px}.nav-dialog nav{display:flex;flex-direction:column;gap:8px;margin-bottom:40px}.nav-dialog nav a{font-size:clamp(26px,7vw,34px);letter-spacing:-.035em;padding-block:5px}.nav-dialog p{font-size:15px}.nav-dialog .text-link{margin-top:10px}.lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;background:transparent;color:#f6f7f2;overflow:hidden}.lightbox::backdrop{background:rgb(15 17 13 / .95)}.lightbox-toolbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding-inline:20px;font-size:14px}.lightbox-stage{height:calc(100% - 72px);position:relative;display:flex;align-items:center;justify-content:center;padding:0 20px 92px}.lightbox-stage figure{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;pointer-events:none}.lightbox-stage img{max-width:100%;max-height:calc(100% - 70px);width:auto;height:auto;object-fit:contain;pointer-events:auto}.lightbox figcaption{font-size:14px;max-width:60ch;text-align:center;line-height:1.4}.lightbox-arrow{position:absolute;bottom:22px;min-width:52px;height:48px;background:rgb(255 255 255 / .12);color:inherit;font-size:25px;z-index:1}.previous{left:calc(50% - 62px)}.next{right:calc(50% - 62px)}

/* Existing Native palette, with a single coffee feature colour block. */
.quick-info{border-bottom:1px solid var(--rule);background:var(--tint)}
.quick-info-inner{display:grid;grid-template-columns:1fr 1fr;padding-block:22px;gap:18px 14px}
.quick-info-inner>div,.quick-info-inner>a{display:flex;flex-direction:column;justify-content:center;gap:5px}
.info-label{font-size:10px;letter-spacing:.12em;color:var(--muted)}
.quick-info strong{font-size:15px;font-weight:500;line-height:1.4}
.quick-info a{grid-column:1 / -1;border-top:1px solid var(--rule);padding-top:14px;min-height:44px}
.quick-info a strong{display:flex;align-items:center;justify-content:space-between}

.section-heading .eyebrow{margin:0 0 18px;max-width:none;color:var(--accent);font-size:11px}
.coffee-feature{background:var(--accent);color:var(--paper)}
.coffee-layout{display:grid;gap:36px;align-items:center}
.coffee-figure{min-width:0}
.coffee-figure>img{width:100%;aspect-ratio:1440 / 1635;object-fit:cover;display:block}
.coffee-figure figcaption{font-size:12px;color:#dbe1d5;margin-top:12px}
.coffee-copy>.eyebrow{color:#dbe1d5;margin-bottom:22px;font-size:11px}
.coffee-copy h2{font-size:clamp(48px,6.1vw,86px);letter-spacing:-.055em;line-height:1.05}
.coffee-copy>p:not(.eyebrow){margin-top:24px;max-width:32ch;color:#e3e8dd;font-size:17px}
.coffee-note{border-top:1px solid #809079;margin-top:28px;padding-top:20px;font-size:14px;color:#dbe1d5;display:flex;flex-direction:column;gap:3px}
.coffee-copy .text-link{margin-top:24px;text-decoration-color:#809079}
.coffee-copy a:focus-visible{outline-color:var(--paper)}
.arrival-figure{margin:0 0 24px}
.arrival-figure img{width:100%;aspect-ratio:1385 / 1009;object-fit:cover}
.arrival-figure figcaption{font-size:12px;color:var(--muted);margin-top:10px}
.visit-copy>.button{justify-self:start}
.footer-brandline{display:grid;gap:18px;padding-bottom:32px;border-bottom:1px solid var(--rule);margin-bottom:28px}
.footer-wordmark{display:flex;gap:16px;align-items:center;min-width:0;max-width:max-content}
.footer-wordmark img{width:50px;height:50px;flex-shrink:0}
.footer-wordmark>span{font-size:clamp(56px,14.5vw,192px);letter-spacing:-.055em;font-weight:500;line-height:1.1}
.footer-brandline>p{font-size:18px;line-height:1.5;letter-spacing:-.01em}
.footer-top .footer-label{font-size:10px;letter-spacing:.13em;margin-bottom:10px;color:var(--accent)}
@media(min-width:640px){.visit-section{grid-template-columns:1fr 1fr;column-gap:32px;row-gap:36px;align-items:start}.visit-heading{grid-column:1 / -1}.visit-heading h2{max-width:none}.map-wrap{height:690px;min-height:690px}.map-wrap iframe{min-height:690px}.quick-info-inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-block:24px}.quick-info a{grid-column:auto;border-top:0;padding-top:0}.quick-info a strong{justify-content:flex-start;gap:16px}.quick-info strong{font-size:16px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px}.section-heading>p{max-width:28ch;margin-top:0}.coffee-layout{grid-template-columns:1fr 1fr;gap:40px}.coffee-copy h2{font-size:clamp(44px,6.1vw,86px)}.coffee-copy>p:not(.eyebrow){font-size:16px}.coffee-note{margin-top:24px}.menu-card-copy>p{min-height:7.5em}.footer-brandline{grid-template-columns:1fr auto;align-items:center}.footer-wordmark>span{font-size:clamp(72px,11vw,192px)}.footer-wordmark img{width:64px;height:64px}.footer-brandline>p{font-size:17px}:root{--gutter:32px}.section{padding-block:80px}.hero-content{padding-bottom:60px}.hero-description{max-width:34ch}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.menu-card h3{font-size:23px}.menu-card p{font-size:15px}.menu-card ul{font-size:14px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.story{grid-template-columns:1fr 1fr;gap:48px}.story-copy h2{font-size:clamp(36px,4.1vw,58px)}.footer-top{grid-template-columns:1fr 1fr 1fr;align-items:start}.footer-contact{justify-self:end}.lightbox-stage{padding:10px 90px 24px}.lightbox-arrow{bottom:auto;top:calc(50% - 48px)}.previous{left:20px}.next{right:20px}}
@media(min-width:1024px){.quick-info-inner{padding-block:25px;grid-template-columns:1fr 1fr 1fr;gap:48px}.quick-info-inner>div+div,.quick-info-inner>a{border-left:1px solid var(--rule);padding-left:40px}.quick-info strong{font-size:18px}.info-label{font-size:11px}.section-heading>p{font-size:18px;max-width:33ch}.menu-card-copy>p{min-height:4.8em}.coffee-layout{grid-template-columns:1fr 1fr;gap:100px}.coffee-figure{max-width:560px}.coffee-copy>p:not(.eyebrow){font-size:19px}.coffee-copy h2{font-size:clamp(64px,6.1vw,86px)}.coffee-note{margin-top:36px;padding-top:24px}.coffee-copy .text-link{margin-top:28px}.footer-brandline{padding-bottom:40px;margin-bottom:32px}.footer-wordmark{gap:30px}.footer-wordmark>span{font-size:clamp(112px,12vw,176px)}.footer-wordmark img{width:92px;height:92px}.footer-brandline>p{font-size:24px}:root{--gutter:56px;--header:80px}.desktop-nav{display:flex}.nav-toggle{display:none}.hero-photo{object-position:50% 52%}.hero-content{padding-bottom:64px}.hero h1{font-size:clamp(100px,9.5vw,144px)}.hero-description{font-size:20px;max-width:36ch}.hero-buttons{margin-top:28px}.story{grid-template-columns:1.1fr .9fr;gap:80px}.story-figure{max-width:470px;width:100%;justify-self:end}.story h2{font-size:clamp(45px,4vw,58px)}.section{padding-block:88px}.section-heading{margin-bottom:48px}.menu-grid{gap:28px}.menu-card h3{font-size:29px}.menu-card p{font-size:17px}.menu-card ul{font-size:16px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.review blockquote{font-size:21px}.review-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px}.review-heading>p{margin:0}.visit-section{grid-template-columns:.85fr 1.15fr;column-gap:72px;row-gap:40px;align-items:start}.visit-heading{grid-column:1 / -1}.visit-heading h2{max-width:none}.visit-copy{display:grid;grid-template-columns:1fr;align-content:start}.map-wrap{height:710px;min-height:710px}.map-wrap iframe{min-height:710px}.footer-top{grid-template-columns:1.1fr 1.2fr .7fr;padding-bottom:40px}.footer-bottom{font-size:13px}}
@media(max-width:374px){.brand>span{font-size:17px}.brand{gap:8px}.icon-link{width:38px}.nav-toggle{margin-left:0}.hero h1{font-size:56px}.button{padding-inline:18px;gap:22px}.opening-hours dl{font-size:13px}.footer-bottom{flex-direction:column;gap:10px}}

/* Embedded local Lucide SVG masks work under file:// and inherit interface colour. */
.lucide-icon{display:inline-block;flex:none;width:1em;height:1em;background-color:currentColor;vertical-align:-.14em;pointer-events:none;-webkit-mask:var(--lucide-mask) center/contain no-repeat;mask:var(--lucide-mask) center/contain no-repeat}.icon-clock-3{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1jbG9jay0zIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8cGF0aCBkPSJNMTIgNnY2aDQiIC8+Cjwvc3ZnPgo=")}.icon-map-pin{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1tYXAtcGluIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjAgMTBjMCA0Ljk5My01LjUzOSAxMC4xOTMtNy4zOTkgMTEuNzk5YTEgMSAwIDAgMS0xLjIwMiAwQzkuNTM5IDIwLjE5MyA0IDE0Ljk5MyA0IDEwYTggOCAwIDAgMSAxNiAwIiAvPgogIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjMiIC8+Cjwvc3ZnPgo=")}.icon-coffee{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1jb2ZmZWUiCiAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iY3VycmVudENvbG9yIgogIHN0cm9rZS13aWR0aD0iMiIKICBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIKPgogIDxwYXRoIGQ9Ik0xMCAydjIiIC8+CiAgPHBhdGggZD0iTTE0IDJ2MiIgLz4KICA8cGF0aCBkPSJNMTYgOGExIDEgMCAwIDEgMSAxdjhhNCA0IDAgMCAxLTQgNEg3YTQgNCAwIDAgMS00LTRWOWExIDEgMCAwIDEgMS0xaDE0YTQgNCAwIDEgMSAwIDhoLTEiIC8+CiAgPHBhdGggZD0iTTYgMnYyIiAvPgo8L3N2Zz4K")}.icon-utensils{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS11dGVuc2lscyIKICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgd2lkdGg9IjI0IgogIGhlaWdodD0iMjQiCiAgdmlld0JveD0iMCAwIDI0IDI0IgogIGZpbGw9Im5vbmUiCiAgc3Ryb2tlPSJjdXJyZW50Q29sb3IiCiAgc3Ryb2tlLXdpZHRoPSIyIgogIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIKICBzdHJva2UtbGluZWpvaW49InJvdW5kIgo+CiAgPHBhdGggZD0iTTMgMnY3YzAgMS4xLjkgMiAyIDJoNGEyIDIgMCAwIDAgMi0yVjIiIC8+CiAgPHBhdGggZD0iTTcgMnYyMCIgLz4KICA8cGF0aCBkPSJNMjEgMTVWMmE1IDUgMCAwIDAtNSA1djZjMCAxLjEuOSAyIDIgMmgzWm0wIDB2NyIgLz4KPC9zdmc+Cg==")}.icon-cookie{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1jb29raWUiCiAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iY3VycmVudENvbG9yIgogIHN0cm9rZS13aWR0aD0iMiIKICBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIKPgogIDxwYXRoIGQ9Ik0xMiAyYTEwIDEwIDAgMSAwIDEwIDEwIDQgNCAwIDAgMS01LTUgNCA0IDAgMCAxLTUtNSIgLz4KICA8cGF0aCBkPSJNOC41IDguNXYuMDEiIC8+CiAgPHBhdGggZD0iTTE2IDE1LjV2LjAxIiAvPgogIDxwYXRoIGQ9Ik0xMiAxMnYuMDEiIC8+CiAgPHBhdGggZD0iTTExIDE3di4wMSIgLz4KICA8cGF0aCBkPSJNNyAxNHYuMDEiIC8+Cjwvc3ZnPgo=")}.icon-phone{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1waG9uZSIKICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgd2lkdGg9IjI0IgogIGhlaWdodD0iMjQiCiAgdmlld0JveD0iMCAwIDI0IDI0IgogIGZpbGw9Im5vbmUiCiAgc3Ryb2tlPSJjdXJyZW50Q29sb3IiCiAgc3Ryb2tlLXdpZHRoPSIyIgogIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIKICBzdHJva2UtbGluZWpvaW49InJvdW5kIgo+CiAgPHBhdGggZD0iTTEzLjgzMiAxNi41NjhhMSAxIDAgMCAwIDEuMjEzLS4zMDNsLjM1NS0uNDY1QTIgMiAwIDAgMSAxNyAxNWgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtMiAyQTE4IDE4IDAgMCAxIDIgNGEyIDIgMCAwIDEgMi0yaDNhMiAyIDAgMCAxIDIgMnYzYTIgMiAwIDAgMS0uOCAxLjZsLS40NjguMzUxYTEgMSAwIDAgMC0uMjkyIDEuMjMzIDE0IDE0IDAgMCAwIDYuMzkyIDYuMzg0IiAvPgo8L3N2Zz4K")}.icon-arrow-up-right{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1hcnJvdy11cC1yaWdodCIKICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgd2lkdGg9IjI0IgogIGhlaWdodD0iMjQiCiAgdmlld0JveD0iMCAwIDI0IDI0IgogIGZpbGw9Im5vbmUiCiAgc3Ryb2tlPSJjdXJyZW50Q29sb3IiCiAgc3Ryb2tlLXdpZHRoPSIyIgogIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIKICBzdHJva2UtbGluZWpvaW49InJvdW5kIgo+CiAgPHBhdGggZD0iTTcgN2gxMHYxMCIgLz4KICA8cGF0aCBkPSJNNyAxNyAxNyA3IiAvPgo8L3N2Zz4K")}.icon-maximize-2{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1tYXhpbWl6ZS0yIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iY3VycmVudENvbG9yIgogIHN0cm9rZS13aWR0aD0iMiIKICBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIKPgogIDxwYXRoIGQ9Ik0xNSAzSDl2NiIgLz4KICA8cGF0aCBkPSJtMjEgMy03IDciIC8+CiAgPHBhdGggZD0ibTMgMjEgNy03IiAvPgogIDxwYXRoIGQ9Ik05IDIxSDN2LTYiIC8+Cjwvc3ZnPgo=")}.icon-arrow-left{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1hcnJvdy1sZWZ0IgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTIgMTktNy03IDctNyIgLz4KICA8cGF0aCBkPSJNMTkgMTJINSIgLz4KPC9zdmc+Cg==")}.icon-arrow-right{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1hcnJvdy1yaWdodCIKICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgd2lkdGg9IjI0IgogIGhlaWdodD0iMjQiCiAgdmlld0JveD0iMCAwIDI0IDI0IgogIGZpbGw9Im5vbmUiCiAgc3Ryb2tlPSJjdXJyZW50Q29sb3IiCiAgc3Ryb2tlLXdpZHRoPSIyIgogIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIKICBzdHJva2UtbGluZWpvaW49InJvdW5kIgo+CiAgPHBhdGggZD0iTTUgMTJoMTQiIC8+CiAgPHBhdGggZD0ibTEyIDUgNyA3LTcgNyIgLz4KPC9zdmc+Cg==")}
.button .lucide-icon{width:19px;height:19px;font-size:initial;line-height:1}.text-link .lucide-icon{width:17px;height:17px;font-size:initial;line-height:1}.info-label{display:inline-flex;align-items:center;gap:6px;width:max-content}.info-label .lucide-icon{width:13px;height:13px;color:var(--accent)}.quick-info a strong .lucide-icon{width:16px;height:16px;font-size:initial;line-height:1}.menu-card h3{display:flex;align-items:center;gap:9px}.menu-card h3 .lucide-icon{width:21px;height:21px;color:var(--accent)}.enlarge .lucide-icon{width:18px;height:18px;font-size:initial;line-height:1}.visit-copy address{display:flex;align-items:flex-start;gap:10px}.visit-copy address>.lucide-icon{width:19px;height:19px;margin-top:5px;color:var(--accent)}.phone-link{display:inline-flex;align-items:center;gap:10px}.phone-link .lucide-icon{width:19px;height:19px;color:var(--accent)}.opening-hours h3{display:flex;align-items:center;gap:8px}.opening-hours h3 .lucide-icon{width:17px;height:17px;color:var(--accent)}.lightbox-arrow .lucide-icon{width:24px;height:24px;vertical-align:middle}
.icon-maximize-2{--lucide-mask:url("data:image/svg+xml;base64,PCEtLSBAbGljZW5zZSBsdWNpZGUtc3RhdGljIHYxLjQxLjAgLSBJU0MgLS0+CjxzdmcKICBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1tYXhpbWl6ZS0yIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTUgM2g2djYiIC8+CiAgPHBhdGggZD0ibTIxIDMtNyA3IiAvPgogIDxwYXRoIGQ9Im0zIDIxIDctNyIgLz4KICA8cGF0aCBkPSJNOSAyMUgzdi02IiAvPgo8L3N2Zz4K")}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.gallery-item:hover img{transform:none}}

/* Desktop hero: two visual anchors leave the photograph open through the centre. */
.hero-primary,.hero-secondary{display:contents}.hero-title-desktop{display:none}
@media(min-width:1024px){
  :root{--hero-bottom:clamp(48px,5vw,76px);--hero-column-gap:clamp(32px,4vw,80px)}
  .hero-shade{background:linear-gradient(90deg,rgb(10 13 10 / .3) 0%,rgb(10 13 10 / .08) 52%,rgb(10 13 10 / .18) 100%),linear-gradient(180deg,rgb(10 13 10 / .12) 0%,transparent 34%,rgb(10 13 10 / .44) 100%)}
  .hero-content{height:100svh;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.92fr);grid-template-areas:"primary secondary";align-items:end;column-gap:var(--hero-column-gap);padding-top:calc(var(--header) + 52px);padding-bottom:var(--hero-bottom)}
  .hero-primary{display:block;grid-area:primary;align-self:end}
  .hero-secondary{display:block;grid-area:secondary;align-self:end;justify-self:end;width:min(100%,420px);text-align:right}
  .hero .eyebrow{margin-bottom:12px}
  .hero h1{max-width:none;font-family:Georgia,"Times New Roman",serif;font-size:clamp(68px,6.5vw,92px);font-weight:400;line-height:.92;letter-spacing:.018em;white-space:nowrap}
  .hero-title-mobile{display:none}.hero-title-desktop{display:inline}
  .hero-description{margin-top:0;margin-left:auto;font-size:clamp(18px,1.4vw,21px);max-width:34ch;line-height:1.45}
  .hero-buttons{justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:24px}
}
