:root { --ink:#22150f; --cream:#f0e8da; --sand:#d8c8ae; --clay:#b15438; --ochre:#cf8446; --green:#3c4d3e; --mono:"DM Mono",monospace; --sans:"DM Sans",sans-serif; --serif:"Fraunces",Georgia,serif; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);overflow-x:hidden}.grain{position:fixed;z-index:10;inset:0;pointer-events:none;opacity:.065;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E")}.site-header{height:88px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:5;inset:0 0 auto;color:#fff;border-bottom:1px solid rgba(255,255,255,.22)}a{color:inherit;text-decoration:none}.logo,.footer-logo{display:flex;align-items:baseline;gap:5px;font-family:var(--serif);font-size:27px;letter-spacing:-1.5px}.logo svg,.footer-logo svg{width:25px;height:25px;fill:currentColor}.logo em,.footer-logo em{font:10px var(--mono);letter-spacing:1px;text-transform:uppercase}.site-header nav{display:flex;gap:30px;font-size:13px}.site-header nav a{opacity:.85;transition:opacity .2s}.site-header nav a:hover{opacity:1}.header-action{font:11px var(--mono);letter-spacing:.4px;text-transform:uppercase}.header-action span{font-size:16px;margin-left:6px}.menu-toggle{display:none}.hero{height:min(800px,100vh);min-height:670px;position:relative;color:white;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;animation:slowZoom 16s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,10,5,.72),rgba(20,10,5,.1) 62%),linear-gradient(0deg,rgba(10,5,2,.5),transparent 40%)}.hero-copy{position:absolute;top:23%;left:9vw}.eyebrow,.section-label{font:10px var(--mono);letter-spacing:1.2px;text-transform:uppercase}.hero h1{font:500 clamp(61px,8vw,126px)/.85 var(--serif);letter-spacing:-.075em;margin:24px 0 34px}.hero h1 i,h2 i{font-style:italic;font-weight:400}.pill-button{display:inline-flex;align-items:center;gap:30px;padding:15px 19px 15px 21px;border-radius:50px;background:var(--cream);color:var(--ink);font:10px var(--mono);letter-spacing:.9px;text-transform:uppercase;transition:transform .25s,background .25s}.pill-button span{font-size:16px}.pill-button:hover{transform:translateY(-3px);background:#fff}.hero-bottom{position:absolute;left:4.5vw;right:4.5vw;bottom:34px;display:flex;justify-content:space-between;align-items:end}.hero-bottom p{font:14px/1.35 var(--serif);letter-spacing:-.3px;margin:0}.scroll-cue{display:flex;align-items:center;gap:12px;font:9px var(--mono);letter-spacing:.8px;text-transform:uppercase}.scroll-cue b{width:39px;height:1px;background:#fff;display:block}.hero-mark{position:absolute;right:-.5vw;bottom:-2.7vw;font:500 clamp(90px,16vw,260px)/.7 var(--serif);letter-spacing:-.12em;opacity:.22;margin:0}.marquee{height:58px;background:var(--clay);color:#fff;display:flex;align-items:center;overflow:hidden}.marquee-track{display:flex;align-items:center;gap:32px;flex-shrink:0;width:max-content;animation:marquee 24s linear infinite;font:11px var(--mono);letter-spacing:.8px;text-transform:uppercase}.marquee i{font-style:normal;color:#f9cf8d}.section{padding:120px 8vw}.section-label{margin:0;color:#806c59}.introduction{min-height:640px}.intro-main{display:grid;grid-template-columns:1.25fr .75fr;gap:9vw;margin:70px 0 85px}.intro-lead{font:500 clamp(34px,4.1vw,65px)/1.02 var(--serif);letter-spacing:-.055em;margin:0}.intro-copy{padding-top:11px}.intro-copy p{font-size:16px;line-height:1.55;margin:0 0 32px;max-width:345px}.text-link{font:10px var(--mono);letter-spacing:.7px;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:6px}.text-link span{font-size:16px;margin-left:25px}.origin-card{background:#d6b588;padding:27px 32px;display:grid;grid-template-columns:1fr 1.2fr .8fr;align-items:end;min-height:190px;position:relative;overflow:hidden}.origin-number{font:500 76px/.8 var(--serif);letter-spacing:-.08em}.origin-card p{font:500 20px/1.04 var(--serif);margin:0 0 26px}.origin-card div span{font:9px var(--mono);text-transform:uppercase;letter-spacing:.5px}.origin-card svg{width:100%;stroke:var(--ink);fill:none;stroke-width:1.5;opacity:.65}.menu{background:#e1d3bf}.menu-heading{display:grid;grid-template-columns:1fr 1.35fr .7fr;align-items:end;margin-bottom:53px}.menu h2,.manifesto h2,.visit h2{font:500 clamp(42px,5vw,78px)/.92 var(--serif);letter-spacing:-.07em;margin:0}.menu-heading>p:last-child{font-size:13px;line-height:1.45;margin:0}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:35px}.product-card{min-height:418px;padding:22px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s}.product-card:hover{transform:translateY(-7px)}.card-one{background:#b75f42}.card-two{background:#799188}.card-three{background:#edc081}.product-index{font:10px var(--mono);color:rgba(34,21,15,.65)}.product-info{z-index:1}.product-info h3{font:500 29px/1 var(--serif);letter-spacing:-.045em;margin:0 0 7px}.product-info p{font-size:12px;margin:0 0 18px}.product-info b{font:10px var(--mono);font-weight:400}.cup{position:absolute;width:160px;height:117px;border-radius:12px 12px 45px 45px;right:16%;top:22%;box-shadow:inset -15px -12px 15px rgba(0,0,0,.12),9px 16px 17px rgba(45,20,10,.2);transform:rotate(-10deg)}.cup:before{content:"";position:absolute;z-index:-1;right:-39px;top:22px;width:48px;height:62px;border:14px solid currentColor;border-left:0;border-radius:0 42px 42px 0}.cup span{display:block;width:88%;height:26px;background:#32170f;border-radius:50%;margin:7px auto;box-shadow:inset 0 4px 3px rgba(255,255,255,.16)}.cup-espresso{background:#e7d5bc;color:#e7d5bc}.cup-latte{width:180px;height:135px;background:#ead4af;color:#ead4af;top:18%;right:13%;transform:rotate(8deg)}.cup-latte span{height:32px;background:#b87c4d;position:relative}.cup-latte span:after{content:"";position:absolute;inset:7px 26px;background:#e8d2b0;border-radius:50%;opacity:.9}.plate{position:absolute;width:210px;height:90px;border-radius:50%;right:10%;top:27%;background:#f1dfbd;box-shadow:8px 12px 15px rgba(77,45,13,.13);transform:rotate(-12deg)}.plate div{width:96px;height:65px;position:absolute;top:10px;left:55px;background:#ba7447;border-radius:50% 52% 44% 50%;box-shadow:inset 5px -7px 7px rgba(83,36,17,.22)}.dark{background:var(--ink);color:var(--cream)}.dark:hover{background:var(--green);color:#fff}.manifesto{background:var(--green);color:var(--cream);min-height:690px;position:relative;overflow:hidden;display:flex;align-items:center;padding:100px 8vw}.manifesto-word{position:absolute;left:-5.5vw;top:13%;font:500 clamp(120px,23vw,380px)/.75 var(--serif);letter-spacing:-.13em;color:#d5c3a4;opacity:.12}.manifesto-copy{position:relative;margin-left:auto;width:min(570px,57%)}.manifesto .section-label{color:#c5b89d}.manifesto h2{margin:24px 0 34px}.manifesto-copy>p:not(.section-label){font-size:16px;line-height:1.55;max-width:400px;margin-bottom:30px}.light{color:var(--cream)}.visit{padding-top:130px;padding-bottom:130px}.visit-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;margin-top:64px}.visit h2{font-size:clamp(49px,6.3vw,100px);margin-bottom:45px}.location-details{border-top:1px solid #baa990}.location-details div{padding:21px 0;border-bottom:1px solid #baa990;display:flex;justify-content:space-between;gap:25px}.location-details span{font:9px var(--mono);letter-spacing:.7px;text-transform:uppercase;color:#806c59}.location-details p,.location-details a{font:15px/1.45 var(--serif);margin:0;text-align:right}footer{background:var(--ink);color:var(--cream);padding:38px 4.5vw;display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:30px}footer p{font:11px/1.5 var(--mono);color:#c8b8a5;margin:0;text-align:center}footer p a{color:var(--cream);text-decoration:underline}.back-top{font:10px var(--mono);text-transform:uppercase;letter-spacing:.5px;text-align:right}@keyframes slowZoom{from{transform:scale(1.04)}to{transform:scale(1.15)}}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:760px){.site-header{height:72px;padding:0 22px}.site-header nav,.header-action{display:none}.menu-toggle{display:flex;background:none;border:0;padding:6px;flex-direction:column;gap:6px}.menu-toggle span{background:#fff;width:25px;height:1px}.logo{font-size:24px}.hero{min-height:650px;height:100svh}.hero-image{object-position:64% center}.hero-copy{left:24px;top:22%}.hero h1{font-size:clamp(55px,16vw,77px)}.hero-bottom{left:24px;right:24px;bottom:23px}.scroll-cue span{display:none}.hero-mark{right:2vw;bottom:-2vw;font-size:29vw}.section{padding:78px 24px}.intro-main,.menu-heading,.visit-grid{display:flex;flex-direction:column;gap:28px;margin:40px 0 50px}.intro-lead{font-size:39px}.origin-card{margin:0 -24px;padding:26px 24px;grid-template-columns:1fr 1.2fr;min-height:185px}.origin-card svg{display:none}.origin-number{font-size:63px}.menu-heading>p:last-child{max-width:280px}.products{display:flex;overflow-x:auto;margin-right:-24px;padding-right:24px;scroll-snap-type:x mandatory}.product-card{min-width:277px;scroll-snap-align:start;min-height:370px}.manifesto{min-height:600px;padding:82px 24px;align-items:end}.manifesto-copy{width:100%;margin:0}.manifesto h2{font-size:51px}.manifesto-word{font-size:42vw;left:-4vw;top:11%}.visit-grid{margin-top:45px}.visit h2{font-size:60px}.location-details{width:100%}footer{padding:31px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}footer p,.back-top{text-align:left}.marquee{height:52px}.hero-bottom p{font-size:13px}}
