@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#191e1b;--paper:#f7f5ee;--green:#216344;--green-hover:#2b7553;--forest:#143f2f;--leaf:#a8d0b5;--muted:#c0c8c1;--line:#ffffff26;--light-line:#1c3e2c26;font-family:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--paper);background:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--leaf);outline-offset:6px}a.button:focus-visible{outline-color:var(--leaf)}.skip{position:absolute;top:-100px;left:20px;z-index:10;padding:14px;background:white;color:black}.skip:focus{top:12px}.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}.header{max-width:1480px;margin:auto;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{position:relative;display:block;width:134px;aspect-ratio:1.16;overflow:hidden;flex-shrink:0}.brand img{position:absolute;width:380%;max-width:none;height:auto;left:-51%;top:-53%;mix-blend-mode:screen}.header nav{display:flex;align-items:center;gap:38px;font-size:1rem;font-weight:600}.header nav>a:not(.button){padding:12px 0;border-bottom:1px solid transparent}.header nav>a:not(.button):hover{border-color:var(--leaf)}.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:56px;padding:17px 27px;border:1px solid var(--green);border-radius:6px;background:var(--green);color:var(--paper);font-weight:700;line-height:1.4;transition:background .18s,transform .18s}.button:hover{background:var(--green-hover);border-color:var(--green-hover);transform:translateY(-2px)}.button-small{min-height:48px;padding:12px 23px}.hero{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:.94fr 1.06fr;gap:48px;padding:34px 5% 62px;align-items:center}.eyebrow{font-size:.875rem;letter-spacing:.09em;text-transform:uppercase;font-weight:700;line-height:1.6;margin:0 0 23px;color:var(--leaf)}h1,h2{font-family:inherit;font-weight:700;letter-spacing:-.045em;margin:0;overflow-wrap:break-word}h1{font-size:clamp(2.8rem,5.1vw,4.75rem);line-height:1.08}em{font-style:normal;font-weight:inherit;color:var(--leaf)}.hero-intro{font-size:1.125rem;line-height:1.6;color:var(--muted);margin:27px 0}.small-note{font-size:.875rem;line-height:1.5;color:var(--muted);margin:13px 0 0}.hero-photo{margin:0;position:relative;padding:0}.hero-photo img{display:block;width:100%;height:clamp(440px,43vw,640px);object-fit:cover;object-position:center;border-radius:16px}.hero-photo figcaption{font-size:.875rem;line-height:1.4;color:var(--muted);padding:15px 0 0;border-bottom:1px solid var(--line);padding-bottom:16px}.location-strip{display:flex;justify-content:space-between;gap:20px;padding:23px 5%;border-block:1px solid var(--line);font-size:.875rem;letter-spacing:.01em;max-width:1480px;margin:auto}.location-strip a:hover{text-decoration:underline}.section{padding:95px max(5%,calc((100vw - 1332px)/2))}.story{display:grid;grid-template-columns:1fr 1fr;gap:75px;background:var(--paper);color:var(--ink)}.story .eyebrow,.visit .eyebrow{color:var(--green)}h2{font-size:clamp(2.5rem,4vw,4rem);line-height:1.12}.story em,.visit em{color:var(--green)}.translation{font-family:inherit;font-size:1.2rem;font-weight:600;line-height:1.6;margin:30px 0 0}.translation span{font-family:inherit;font-size:1rem;font-weight:400;color:#536057;margin-left:8px}.mission{border-left:1px solid var(--light-line);padding-left:40px;align-self:center}.mission p{font-size:1.125rem;line-height:1.85;margin:0;max-width:650px}.order-section{background:var(--forest);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.order-section .eyebrow{color:var(--leaf)}.order-copy{max-width:410px}.order-copy>p:first-child{font-size:1.25rem;line-height:1.65;margin:0 0 25px}.button-dark{background:var(--paper);border-color:var(--paper);color:var(--forest)}.button-dark:hover{background:#e6eee7;border-color:#e6eee7}.order-copy .small-note{color:#c0d5c7}.visit{display:grid;grid-template-columns:1fr 1fr;gap:75px;background:var(--paper);color:var(--ink)}address{font-style:normal;font-size:1.125rem;line-height:1.7;margin:28px 0 17px}.text-link{display:inline-block;font-weight:700;border-bottom:1px solid;padding-bottom:6px}.text-link:hover{color:var(--green)}.hours{align-self:center}.hours h3{font-size:1.4rem;font-weight:600;margin:0 0 27px}.hours dl{margin:0 0 35px}.hours dl>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--light-line);padding:20px 0}.hours dt,.hours dd{margin:0;font-size:1rem}.hours dd{font-weight:600}.hours>p{font-size:1rem;color:#536057}.phone{font-size:1.7rem;font-weight:600}.phone:hover{text-decoration:underline}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 5%;max-width:1480px;margin:auto}footer p{font-family:inherit;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}footer span,footer a{font-size:.875rem;color:var(--muted)}footer a{text-decoration:underline;text-underline-offset:4px}.mobile-order{display:none}
@media(min-width:1600px){.section{padding-left:calc((100vw - 1332px)/2);padding-right:calc((100vw - 1332px)/2)}}
@media(max-width:850px){.header{padding:14px 5%;gap:20px}.header nav{gap:22px}.brand{width:110px}.hero{gap:28px;grid-template-columns:1fr 1fr;padding-top:28px}h1{font-size:clamp(2.35rem,4.9vw,3.4rem)}.hero-photo img{height:480px;border-radius:12px}.hero .eyebrow{font-size:.875rem}.section{padding:65px 6%;gap:38px}.mission{padding-left:25px}.location-strip{flex-wrap:wrap}.hero .button{padding-inline:18px}.mission p{font-size:1rem}footer{flex-wrap:wrap}}
@media(max-width:600px){.header{padding:12px 6%}.header nav{gap:18px;font-size:.875rem;flex-wrap:wrap;justify-content:flex-end}.header .button{display:none}.brand{width:98px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:25px 6% 26px;gap:35px}.hero-copy{position:relative}h1{font-size:clamp(2.4rem,10.9vw,4rem);line-height:1.1}.hero-intro{font-size:1.0625rem;margin:22px 0}.hero .eyebrow{font-size:.875rem;margin-bottom:20px;letter-spacing:.10em}.hero-photo{padding:0;order:-1}.hero-photo img{height:auto;aspect-ratio:1.22;object-position:center;border-radius:12px}.hero-photo figcaption{font-size:.875rem}.hero .button{width:100%}.location-strip{display:grid;gap:12px;padding:23px 6%;font-size:.875rem}.section{display:block;padding:58px 6%}h2{font-size:clamp(2.2rem,8.8vw,3rem)}.mission{border-left:0;border-top:1px solid var(--light-line);padding:25px 0 0;margin-top:28px}.mission p{font-size:1.0625rem;line-height:1.8}.order-copy{margin-top:30px}.order-copy>p:first-child{font-size:1.125rem}.order-copy .button{width:100%}.hours{margin-top:50px}.hours h3{font-size:1.25rem}.hours dl>div{gap:12px}.hours dt,.hours dd{font-size:.9375rem}footer{padding:28px 6% 115px;display:block}footer p{margin-top:0}footer span{display:block;margin:14px 0}footer a{display:inline-block;margin-top:10px}.mobile-order{position:fixed;z-index:5;bottom:0;left:0;right:0;display:flex;align-items:center;gap:25px;padding:12px 6% calc(12px + env(safe-area-inset-bottom));background:var(--ink);border-top:1px solid #ffffff30;box-shadow:0 -4px 20px #0002}.mobile-order .button{flex:1;min-height:46px;padding:11px 20px}.mobile-order>a:last-child{font-size:.9375rem;font-weight:600}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Responsive typography and focus states for light surfaces. */
.hero-copy,.hero-photo,.section>div{min-width:0}.hours dl>div{flex-wrap:wrap;row-gap:8px}.hours dt,.hours dd{line-height:1.6}.story a:focus-visible,.visit a:focus-visible{outline-color:var(--green)}

/* Social profile links: labeled icons with comfortable touch targets. */
footer{flex-wrap:wrap}.social-links{display:flex;flex-wrap:wrap;gap:12px;width:100%;padding-top:24px;border-top:1px solid var(--line)}.social-links a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 16px;margin:0;border:1px solid var(--line);border-radius:6px;color:var(--paper);text-decoration:none;font-size:.875rem;font-weight:600}.social-links a:hover{color:var(--leaf);border-color:var(--leaf)}.social-links svg{display:block;flex-shrink:0;width:20px;height:20px}.social-links span{display:inline;margin:0;color:inherit;font-size:inherit;line-height:1.5}@media(max-width:600px){.social-links{margin-top:24px;gap:10px}.social-links a{flex:1 0 120px}}

.contact-email{margin-top:12px}.contact-email a{display:inline-block;padding:10px 0;font-size:1rem;line-height:1.6;color:var(--green);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;max-width:100%}.contact-email a:hover{color:var(--ink)}
