:root{--paper:#f5f2e9;--ink:#263b31;--line:#c9cfc2;--lilac:#c1a4ce;--green:#dce7c8;--muted:#576456}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #6c407a;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}figure,p{margin:0}button{border:0}h1,h2,h3{font-weight:400;letter-spacing:-.065em;line-height:1.02;margin:0}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em}p{line-height:1.65}h2{font-size:clamp(44px,5.1vw,78px)}h3{font-size:36px}.wrap{max-width:1440px;margin:auto;padding-left:60px;padding-right:60px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600}.tiny{font-size:10px;letter-spacing:.13em}.icon{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center}.icon svg{display:block;width:24px;height:24px}header{height:92px;margin:0 60px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.logo{font-family:Georgia,serif;font-weight:bold;font-size:26px;letter-spacing:-1.5px;display:flex;align-items:center;gap:6px}.logo i{font-family:Arial;font-size:32px;font-style:normal;color:#867499;margin-left:10px}nav{display:flex;gap:40px;font-size:13px}nav a{position:relative;padding:12px 0}nav a:after{content:'';position:absolute;bottom:6px;left:0;width:0;height:1px;background:var(--ink);transition:width .2s}nav a:hover:after{width:100%}.languages{display:flex;gap:8px;align-items:center;font-size:11px}.languages button{padding:12px 5px;background:transparent;opacity:.5}.languages button[aria-pressed=true]{opacity:1;text-decoration:underline;text-underline-offset:5px}.skip{position:fixed;z-index:10;top:-60px;left:20px;padding:12px;background:var(--ink);color:white}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:60px;padding-top:45px;padding-bottom:70px}.hero-copy{padding-top:22px;display:flex;flex-direction:column}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ink);margin-right:9px}.hero h1{font-size:clamp(60px,6.3vw,99px);margin:35px 0 26px}.intro{font-size:15px;max-width:395px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:53px;padding:14px 20px;font-size:12px;border:1px solid var(--ink);transition:background .2s,color .2s}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#4c6350}.text-link{font-size:12px;display:inline-flex;gap:15px;align-items:center;border-bottom:1px solid currentColor;padding:8px 0}.text-link:hover .icon{transform:translateX(3px)}.icon{transition:transform .2s}.hero-bottom{margin-top:auto;padding-top:38px;display:flex;align-items:center;gap:18px;font-size:11px;color:var(--muted)}.hero-bottom span{font-size:28px;color:var(--ink)}.hero-photo{position:relative;min-width:0;height:620px}.hero-photo img{object-position:50% 70%;border-radius:2px 2px 100px 2px}.hero-photo figcaption{position:absolute;bottom:20px;left:24px;color:white;font-size:10px;text-shadow:0 1px 8px #000}.seal{position:absolute;top:26px;right:-23px;width:104px;height:104px;border-radius:50%;background:var(--lilac);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:9px;letter-spacing:.14em;transform:rotate(10deg);box-shadow:0 0 0 5px var(--paper)}.seal b{font-size:28px;line-height:1}.place{padding-top:45px;padding-bottom:110px}.section-top{border-top:1px solid var(--line);padding-top:28px;display:flex;justify-content:space-between}.place-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:end;margin:48px 0 55px}.place-heading p{font-size:15px;color:var(--muted);max-width:410px}.photo-story{display:grid;grid-template-columns:1.15fr 1fr;gap:110px}.art-photo{height:690px}.art-photo img{height:calc(100% - 38px);object-position:50% 0%}.coffee-story{padding-top:38px}.story-quote{font-family:Georgia,serif;font-style:italic;font-size:36px;line-height:1.2;max-width:360px;margin-bottom:45px}.coffee-photo{height:490px}.coffee-photo img{height:calc(100% - 38px);object-position:center 47%}figcaption{display:flex;gap:22px;padding-top:14px;font-size:10px;color:var(--muted)}figcaption span{font-size:9px}.menu-section{padding:80px 0;background:var(--green)}.menu-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:32px 0 44px}.menu-heading p{max-width:300px;font-size:14px}.menu-tabs{display:flex;border-bottom:1px solid #aab89a;gap:6px;flex-wrap:wrap}.menu-tabs button{background:transparent;padding:17px 21px;font-size:12px;border-radius:2px 2px 0 0}.menu-tabs button[aria-selected=true]{background:var(--ink);color:var(--paper)}.menu-tabs button:hover:not([aria-selected=true]){background:#cad9b5}#menu-panel{display:grid;grid-template-columns:.8fr 1.4fr;gap:90px;padding:45px 0 28px;min-height:342px}.menu-index{font-size:12px;letter-spacing:.1em}.menu-name h3{font-family:Georgia,serif;font-style:italic;font-size:46px;margin-top:18px;letter-spacing:-.04em}.menu-flower{font-size:70px;line-height:1.3;display:inline-block;margin-top:16px;color:#6c825f}.menu-name{position:relative}#menu-panel ul{list-style:none;padding:0;margin:0}#menu-panel li{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #bac6ac;font-size:16px}#menu-panel li:first-child{padding-top:0}#menu-panel li span{font-size:22px}.menu-notes{border-top:1px solid #aab89a;padding-top:20px;display:flex;justify-content:space-between;gap:40px;font-size:11px}.menu-notes p:first-child{max-width:450px}.menu-notes p:last-child{max-width:250px}.sweet{display:grid;grid-template-columns:160px 1fr 1fr;gap:48px;align-items:center;border-top:1px solid #aab89a;margin-top:48px;padding-top:40px}.sweet-mark{color:var(--ink)}.sweet h3{font-size:44px}.sweet p{font-size:13px;margin-bottom:10px}.visit{padding-top:100px;padding-bottom:90px}.visit h2{margin:30px 0 48px}.courtyard{height:490px;position:relative}.courtyard img{object-position:center 58%}.photo-label{position:absolute;bottom:22px;left:25px;background:var(--paper);padding:12px 17px;font-size:10px;letter-spacing:.13em}.visit-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;margin-top:48px}.visit-intro{max-width:360px;font-size:17px;margin-bottom:25px}.contact{border-top:1px solid var(--line);padding-top:22px}.contact address{font-size:28px;line-height:1.35;font-style:normal;margin:14px 0 8px}.contact-bottom{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin-top:30px}.contact-bottom a{font-size:13px;display:inline-block;margin-top:12px;overflow-wrap:anywhere}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;margin-top:90px;padding-top:34px;border-top:1px solid var(--line)}.faq h3{font-size:38px}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;font-size:14px;list-style:none;padding:18px 0}.faq summary::-webkit-details-marker{display:none}.faq details[open] .icon{transform:rotate(45deg)}.faq details p{font-size:13px;padding:0 30px 20px 0;color:var(--muted)}footer{background:var(--ink);color:var(--paper);padding:40px 0 25px;overflow:hidden}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:13px}.footer-top>div{display:flex;gap:30px}.footer-top a{display:flex;gap:8px;align-items:center;font-size:11px}.footer-top .icon{width:17px;height:17px;flex-basis:17px}.footer-top svg{width:17px;height:17px}.footer-word{font-family:Georgia,serif;font-size:clamp(80px,17vw,255px);font-weight:bold;line-height:1.1;letter-spacing:-.065em;text-align:center;white-space:nowrap;padding:30px 24px;color:#e6edda}.footer-word span{font-family:Arial;font-size:.5em;color:var(--lilac);vertical-align:middle;margin-left:.2em}.footer-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;opacity:.75}.reveal.in-view{animation:appear .8s ease both}@keyframes appear{from{opacity:.55;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1101px){header{height:80px}.hero{padding-top:35px}.hero-copy{padding-top:12px}.hero h1{font-size:clamp(60px,6vw,92px);margin:26px 0 22px}.hero-photo{height:clamp(530px,70vh,620px)}}
@media(min-width:1600px){header{max-width:1320px;margin:auto}}
@media(max-width:1100px){.wrap{padding-left:35px;padding-right:35px}header{margin:0 35px}.hero{gap:35px}.hero h1{font-size:70px}.hero-photo{height:570px}.hero-actions{gap:16px}.photo-story{gap:55px}.art-photo{height:600px}.coffee-photo{height:425px}.place-heading{gap:50px}.visit-grid,.faq{gap:55px}.contact-bottom{grid-template-columns:1fr}.menu-tabs button{padding:16px}.sweet{gap:25px;grid-template-columns:120px 1fr 1.2fr}.footer-top>div{gap:16px}}
@media(max-width:760px){html{scroll-padding-top:24px}.wrap{padding-left:22px;padding-right:22px}header{height:76px;margin:0 22px;gap:14px;flex-wrap:wrap}.logo{font-size:23px}.logo i{font-size:26px;margin-left:5px}nav{display:none}.languages{margin-left:auto}.hero{grid-template-columns:1fr;padding-top:22px;padding-bottom:42px;gap:32px}.hero-copy{padding-top:0}.hero .eyebrow{font-size:10px}.hero h1{font-size:clamp(55px,12vw,85px);margin:27px 0 22px;letter-spacing:-.065em}.intro{font-size:14px;max-width:420px}.hero-actions{margin-top:25px;gap:24px}.hero-actions .text-link{font-size:11px}.hero-bottom{display:none}.hero-photo{height:490px;margin-right:9px}.hero-photo img{border-bottom-right-radius:70px}.seal{right:-10px;top:20px;width:90px;height:90px;font-size:8px}.hero-photo figcaption{left:18px;bottom:19px;font-size:9px;max-width:240px}.place{padding-top:20px;padding-bottom:65px}.section-top .tiny{display:none}.section-top{padding-top:22px}.place-heading{grid-template-columns:1fr;gap:25px;margin:30px 0}.place-heading p{font-size:14px}h2{font-size:47px}.photo-story{gap:24px;grid-template-columns:1fr}.art-photo{height:480px;max-width:500px}.coffee-story{padding-top:4px;display:grid;grid-template-columns:.8fr 1fr;gap:20px;align-items:center}.story-quote{font-size:25px;margin:0}.coffee-photo{height:290px}.coffee-photo figcaption{font-size:8px;gap:6px;line-height:1.4}.menu-section{padding:50px 0}.menu-heading{display:block;margin:25px 0 28px}.menu-heading p{margin-top:22px;max-width:340px;font-size:13px}.menu-tabs{gap:3px;border-bottom:0;display:grid;grid-template-columns:repeat(3,1fr)}.menu-tabs button{padding:13px 5px;border:1px solid #aab89a;font-size:11px;border-radius:0}#menu-panel{display:block;padding:28px 0 22px;min-height:360px}.menu-name{display:flex;align-items:center;gap:12px;margin-bottom:22px}.menu-name h3{font-size:32px;margin:0}.menu-flower{font-size:36px;margin:0 0 0 auto}.menu-index{font-size:10px}#menu-panel li{font-size:14px;padding:12px 0}.menu-notes{gap:12px;display:grid}.menu-notes p:last-child{max-width:none}.sweet{grid-template-columns:1fr 1.4fr;gap:18px;margin-top:30px;padding-top:28px}.sweet-mark{max-width:115px}.sweet h3{font-size:35px}.sweet>div:last-child{grid-column:1/-1}.sweet p{font-size:13px}.visit{padding-top:60px;padding-bottom:55px}.visit h2{font-size:43px;margin:24px 0 30px}.courtyard{height:360px}.courtyard img{object-position:65% center}.photo-label{font-size:8px;left:15px;bottom:15px;padding:11px}.visit-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.visit-intro{font-size:15px}.contact-bottom{grid-template-columns:1fr 1.4fr;gap:16px}.contact-bottom a{font-size:11px}.contact address{font-size:25px}.faq{grid-template-columns:1fr;gap:22px;margin-top:50px;padding-top:28px}.faq h3{font-size:35px}.faq summary{font-size:13px}.footer-top{display:block}.footer-top>div{flex-wrap:wrap;margin-top:22px;gap:18px}.footer-word{font-size:17vw;padding:30px 12px}.footer-bottom{font-size:7px;gap:15px}footer{padding-top:30px}.button{gap:18px;padding:13px 17px}.eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
