*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button{color:inherit}svg{flex-shrink:0}h1,h2,h3,p{margin:0}a,button,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid currentColor;outline-offset:6px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:20;top:-6rem;left:1rem;padding:1rem;background:var(--ink);color:var(--paper)}.skip-link:focus{top:1rem}.wrap{width:min(100% - var(--gutter)*2,var(--max-width));margin-inline:auto}.stack>*+*{margin-top:var(--stack-gap,1.5rem)}.flow{display:grid;gap:var(--flow-gap,2rem)}.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.text-link{display:inline-flex;align-items:center;gap:1rem;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.6rem}.text-link:hover svg{transform:translateX(4px)}.text-link svg{transition:transform .2s ease}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600}.rule{border-top:1px solid var(--line)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}


@font-face{font-family:BrandSans;src:url('../fonts/lark-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:BrandSans;src:url('../fonts/lark-sans-600.woff2') format('woff2');font-weight:600 800;font-display:swap}@font-face{font-family:BrandSerif;src:url('../fonts/lark-serif-500.woff2') format('woff2');font-weight:400 600;font-display:swap}
:root{--ink:#30291f;--muted:#62594f;--paper:#fbfaf6;--accent:#3b514d;--line:#d5cfc3;--soft:#f0ede5;--serif:BrandSerif,Georgia,serif;--sans:BrandSans,Arial,sans-serif;color:var(--ink);background:var(--paper);font:18px/1.65 var(--sans)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}img{display:block;max-width:100%;height:auto}figure{margin:0}button,input,select,textarea{font:inherit}button,.button{cursor:pointer}button,.button,select,input{min-height:48px}button,.button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:12px 23px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.35;gap:12px;font-weight:600}button:hover,.button:hover{background:var(--accent);border-color:var(--accent)}input,select,textarea{width:100%;border:1px solid #82796d;border-radius:0;background:var(--paper);color:var(--ink);padding:10px 13px}textarea{min-height:150px;resize:vertical}label{display:block;font-size:16px;font-weight:600}label input,label select,label textarea{margin-top:7px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #267181;outline-offset:4px}h1,h2,h3{color:var(--ink);line-height:1.15;margin:0 0 22px;font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.035em}h1{font-size:clamp(42px,5.1vw,72px)}h2{font-size:clamp(30px,3.2vw,45px)}h3{font-size:24px;font-weight:600;letter-spacing:-.02em}p{margin:0 0 22px}p:last-child{margin-bottom:0}.wrap{width:100%;max-width:1328px;margin-inline:auto;padding-inline:48px}.section{padding-block:88px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.split>*,.section-top>*{min-width:0}.media-split{align-items:center}.media-split>img{width:100%;aspect-ratio:1/1;object-fit:cover}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:19px}.caption,figcaption{font-size:15px;line-height:1.55;color:var(--muted);margin-top:18px}.text-link{display:inline-flex;min-height:44px;align-items:center;font-weight:600;gap:15px;background:none;color:var(--ink);border:0;padding:0;text-decoration:underline;font-size:17px}.text-link:hover{background:none;color:var(--accent)}.utility{background:var(--ink);color:var(--paper);font-size:14px}.utility .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:40px}.utility a{min-height:40px;display:inline-flex;align-items:center}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand svg{width:45px;height:50px;flex:none}.brand>span{font-family:var(--serif);font-size:40px;line-height:1}.brand small{display:block;font:600 11px/1.7 var(--sans);letter-spacing:.12em;margin-top:6px}.desktop-nav{display:flex;justify-content:center;gap:28px}.desktop-nav a{font-size:16px;min-height:48px;display:flex;align-items:center;text-decoration:none}.desktop-nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}.mobile-menu{display:none}.page-heading{border-bottom:1px solid var(--line);padding:26px 0 52px}.page-heading nav{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;margin-bottom:38px}.page-heading nav a{display:inline-flex;min-height:34px;align-items:center}.page-heading h1{font-size:clamp(38px,4.5vw,60px)}.page-heading p{max-width:780px;font-size:19px}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.number{display:block;font:22px var(--serif);padding-bottom:15px;margin-bottom:22px;border-bottom:1px solid var(--line)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:42px}.section-top h2,.section-top p{margin-bottom:0}.soft,.paper{background:var(--soft)}.narrow{max-width:860px}.filters{display:flex;flex-wrap:wrap;gap:20px;align-items:end;padding:25px;background:var(--soft);margin-bottom:38px}.filters label{flex:1;min-width:180px}.filters button{margin:0}.note{padding:30px;border-top:2px solid var(--ink);margin-top:50px;background:var(--soft)}.note h2{font-size:25px}.note p{font-size:16px}.facts{margin:24px 0 30px;border-top:1px solid var(--line)}.facts>div{display:grid;grid-template-columns:160px 1fr;gap:22px;border-bottom:1px solid var(--line);padding:14px 0;font-size:16px}.facts dt{font-weight:600}.facts dd{margin:0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.contact-grid aside img{margin:28px 0}.enquiry-form{display:grid;gap:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:15px;color:var(--muted)}.enquiry-result{padding:25px;background:var(--soft);border:1px solid var(--line)}.faq{border-bottom:1px solid var(--line)}.faq summary{font-weight:600;cursor:pointer;padding:22px 30px 22px 0;min-height:55px}.faq p{padding:0 25px 22px 0}.site-footer{background:var(--ink);color:var(--paper);padding:62px 0 25px}.site-footer h2{font:600 17px var(--sans);color:var(--paper);margin-bottom:20px}.site-footer p{font-size:16px}.site-footer .brand{margin-bottom:25px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:70px}.footer-grid nav a{display:block;font-size:16px;min-height:38px}.footer-bottom{border-top:1px solid #6c645b;padding-top:24px;margin-top:45px;display:flex;align-items:start;gap:70px}.footer-bottom p{font-size:13px;max-width:900px}.footer-bottom a{font-size:14px;white-space:nowrap}.error-page{text-align:center}.error-number{font:110px var(--serif);color:var(--accent)}.error-page .text-link{margin-left:25px}.viewer{width:min(1150px,95vw);height:min(900px,94dvh);max-width:95vw;max-height:94dvh;background:var(--paper);color:var(--ink);border:0;padding:24px}.viewer::backdrop{background:#1d1916e8}.viewer-head,.viewer-controls{display:flex;justify-content:space-between;align-items:center;gap:16px}.viewer img{width:100%;height:calc(94dvh - 220px);max-height:650px;object-fit:contain;margin:10px 0}.viewer p{font-size:15px}.viewer button{font-size:15px}.viewer-controls{margin-top:15px}.large{font-size:23px}.steps{padding-left:26px}.steps li{padding-left:10px;margin-bottom:26px}.steps h3{font-size:22px;margin-bottom:10px}
@media(max-width:1000px){.wrap{padding-inline:30px}.split{gap:40px}.contact-grid{gap:45px}.desktop-nav{gap:18px}.desktop-nav a{font-size:15px}.footer-grid{gap:35px}.three-grid{gap:25px}.section{padding-block:65px}}
@media(max-width:800px){.wrap{padding-inline:24px}.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;min-height:48px;display:flex;align-items:center;gap:25px;font-size:16px}.mobile-menu nav{position:absolute;top:50px;right:0;z-index:5;width:min(310px,calc(100vw - 48px));padding:15px 25px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 25px #30291f20}.mobile-menu nav a{display:flex;min-height:48px;align-items:center;text-decoration:none}.split,.contact-grid{grid-template-columns:1fr;gap:34px}.three-grid{grid-template-columns:1fr}.section-top{align-items:start;flex-direction:column;gap:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:20px}.page-heading{padding-bottom:35px}.page-heading nav{margin-bottom:25px}.section{padding-block:50px}.media-split>img{max-height:550px}.utility{font-size:12px}.utility .wrap{gap:10px}.facts>div{grid-template-columns:130px 1fr;gap:15px}}
@media(max-width:450px){.wrap{padding-inline:20px}.brand>span{font-size:34px}.brand svg{width:35px}.brand small{font-size:10px}.footer-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.filters{padding:20px}.filters label{min-width:100%;width:100%}.filters button{width:100%}.facts>div{grid-template-columns:1fr;gap:4px}.utility span{max-width:150px}.error-page .text-link{margin:20px 0 0}.viewer{padding:15px}.viewer button{padding:10px;font-size:14px}.page-heading h1{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{.utility,.site-header,.site-footer,.filters,button,.button,.text-link,.viewer{display:none!important}:root{font-size:12pt;background:#fff;color:#111}.wrap{max-width:none;padding-inline:0}.section{padding-block:20px}.page-heading{padding:10px 0}.split,.contact-grid,.three-grid{display:block}.note{break-inside:avoid}h1,h2,h3{break-after:avoid}img{max-height:300px;width:auto}a{color:#111}.faq p{display:block}.page-heading nav{display:none}}

.coffee .site-header{display:flex;flex-direction:column;padding-top:28px;padding-bottom:15px;border-bottom:1px solid var(--line)}.coffee .site-header .brand{margin-bottom:19px}.coffee .brand>span{font-size:49px}.home-intro{text-align:center;padding-top:58px;padding-bottom:46px}.home-intro h1{font-size:clamp(48px,5.8vw,80px);line-height:1.06}.home-intro>p:not(.eyebrow){max-width:600px;margin:0 auto 16px;font-size:20px}.cafe-banner{position:relative}.cafe-banner img{width:100%;height:440px;object-fit:cover;object-position:center 49%}.cafe-banner>span{position:absolute;right:72px;bottom:25px;color:white;font:36px var(--serif);text-shadow:0 2px 10px #000}.coffee-shelf{background:#e9eeeb}.coffee-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.coffee-card .bag-stage{height:320px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;background:#e4e3dc}.coffee-card svg{width:215px;max-height:280px}.coffee-card h3{font-family:var(--serif);font-size:30px;font-weight:400;margin-bottom:12px}.coffee-card .eyebrow{font-size:13px;margin-bottom:12px}.coffee-card p{font-size:16px}.coffee-card .price{font-weight:600}.coffee-card>a{display:block;text-decoration:none}.coffee-card>a:hover h3{text-decoration:underline}.coffee-card .text-link{font-size:16px}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:80px}.product-detail>.bag-stage{display:flex;align-items:center;justify-content:center;min-height:560px}.product-detail svg{width:340px;max-width:90%}.visit-band{background:#d6b674;padding-block:50px}.visit-band h2{margin-bottom:16px}.menu-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.menu-layout>div>img{width:100%;aspect-ratio:4/3;object-fit:cover;margin:30px 0 20px}.menu-list article{border-bottom:1px solid var(--line);padding:25px 0}.menu-list article:first-child{padding-top:10px}.menu-list article>div{display:flex;justify-content:space-between;gap:20px}.menu-list h3{font-family:var(--serif);font-weight:400;font-size:27px;margin-bottom:12px}.menu-list article>div>span{white-space:nowrap}.menu-list p{font-size:16px;color:var(--muted)}.brew-calculator{background:var(--paper);padding:30px;margin-top:30px;display:grid;gap:18px}.brew-calculator output{font:30px var(--serif);display:block;padding:15px 0;border-block:1px solid var(--line)}
@media(max-width:1000px){.coffee-grid{gap:22px}.coffee-card .bag-stage{height:270px}.coffee-card svg{width:180px}.product-detail{gap:40px}.menu-layout{gap:45px}}
@media(max-width:800px){.coffee .site-header{flex-direction:row;justify-content:space-between;align-items:center;padding-top:15px;padding-bottom:15px}.coffee .site-header .brand{margin-bottom:0}.coffee .brand>span{font-size:38px}.home-intro{padding-top:45px;padding-bottom:32px}.home-intro>p:not(.eyebrow){font-size:18px}.cafe-banner img{height:350px}.cafe-banner>span{right:45px;font-size:28px}.coffee-grid{grid-template-columns:repeat(2,1fr)}.product-detail,.menu-layout{grid-template-columns:1fr;gap:35px}.product-detail>.bag-stage{min-height:410px}.product-detail svg{width:280px}.visit-band{padding-block:40px}}
@media(max-width:500px){.coffee-grid{grid-template-columns:1fr}.coffee-card .bag-stage{height:300px}.coffee-card svg{width:210px}.cafe-banner img{height:280px}.cafe-banner>span{right:35px;font-size:24px}.home-intro h1{font-size:47px}.brew-calculator{padding:22px}.coffee .brand>span{font-size:34px}}

.enquiry form{display:grid;gap:18px}.enquiry>h2{font-size:29px}.fine{font-size:14px;color:var(--muted)}.plain-link{display:inline-flex;min-height:44px;align-items:center;font-weight:600;font-size:16px}.form-result{background:var(--soft);padding:25px;margin-top:25px}.bag-link{display:flex!important;justify-content:center;background:#f0ece2;margin-bottom:25px}.coffee-card .bag-link svg{width:100%;max-height:none}.sample-price{font-weight:600}.work-card .eyebrow{font-size:12px;letter-spacing:.03em}.enquiry label{margin-top:5px}

.fine,.caption,figcaption,.footer-bottom p,.footer-bottom a,.note p,.work-card .fine,.work-card .caption,.gallery-hero .caption,.artwork-detail figcaption{font-size:16px}.viewer h2{font:24px var(--serif);margin:0}.viewer footer span{font-size:14px}@media(max-width:600px){.viewer footer span{display:none}.viewer footer{justify-content:space-between}}

@media(min-width:801px){.coffee .site-header{align-items:center}}
