:root{--ink:#261710;--paper:#fbf9f5;--card:#f4efeb;--line:#e6dfd5;--amber:#d9822b;--rust:#a94d2a;--muted:#675b55;--forest:#314435}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 'Plus Jakarta Sans',sans-serif}a{text-decoration:none;color:inherit}.bar{position:sticky;top:0;z-index:9;display:flex;align-items:center;justify-content:space-between;padding:16px max(20px,6vw);background:#fbf9f5ef;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{font:700 30px/.72 'Playfair Display',serif;letter-spacing:-.07em}.brand small{display:block;margin:9px 0 0 2px;font:9px 'DM Mono',monospace;letter-spacing:.2em;text-transform:uppercase}nav{display:flex;gap:24px;align-items:center;font-size:11px;font-weight:700;text-transform:uppercase}nav a:not(.app){padding:8px 0;border-bottom:1px solid transparent}nav a.active,nav a:hover:not(.app){border-color:var(--rust)}.app,.button{display:inline-block;padding:11px 15px;background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.button:hover,.app:hover{background:var(--rust);border-color:var(--rust)}.shell{max-width:1240px;margin:auto;padding:72px 28px 100px}.eyebrow{color:var(--amber);font:500 11px 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:500;letter-spacing:-.055em;line-height:.98}h1{max-width:760px;margin:15px 0 20px;font-size:clamp(50px,7vw,96px)}h2{font-size:clamp(35px,4vw,60px)}h3{font-size:31px}.lead{max-width:640px;color:var(--muted);font-size:18px}.page-hero{padding-bottom:58px;border-bottom:1px solid var(--line)}.notice{margin-top:32px;padding:15px 18px;border-left:3px solid var(--amber);background:#f4ead9;color:var(--muted);font-size:13px}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-top:42px}.coffee-card{display:flex;flex-direction:column;min-height:100%;padding:18px;background:var(--card);border:1px solid var(--line);transition:transform .25s ease,box-shadow .25s ease}.coffee-card:hover{transform:translateY(-5px);box-shadow:0 15px 28px #26171017}.coffee-card img{width:100%;height:270px;object-fit:cover;mix-blend-mode:multiply}.tag{align-self:flex-start;padding:4px 8px;color:var(--rust);border:1px solid #d8c8bc;font:10px 'DM Mono',monospace}.coffee-card h2{margin:17px 0 8px;font-size:34px}.coffee-card p{margin:0;color:var(--muted)}.notes{margin-top:16px!important;color:#704022!important;font-weight:700}.card-link{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:20px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-link span{font-size:19px;color:var(--rust)}.journal{padding-top:42px}.feature{display:grid;grid-template-columns:1.2fr .8fr;margin-bottom:26px;background:var(--forest);color:#fff7e8}.feature img{width:100%;height:380px;object-fit:cover;mix-blend-mode:multiply}.feature-copy{display:flex;flex-direction:column;justify-content:center;padding:48px}.feature-copy h2{margin:14px 0;font-size:clamp(36px,4vw,56px)}.feature-copy p{color:#e1d7c6}.feature-copy .button{align-self:flex-start;margin-top:12px;border-color:#fff7e8;background:transparent}.feature-copy .button:hover{background:#fff7e8;color:var(--forest)}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.story{padding:20px;border:1px solid var(--line);background:#fff}.story img{width:100%;height:185px;object-fit:cover;mix-blend-mode:multiply}.story h2{margin:17px 0 11px;font-size:32px}.story p{color:var(--muted)}.story time,.article-meta{color:var(--amber);font:10px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}.article{max-width:840px}.article h1{font-size:clamp(47px,6vw,82px)}.article h2{margin-top:52px;font-size:40px}.article p,.article li{font-size:17px;color:#493c36}.article ul{padding-left:22px}.article-hero{padding-bottom:20px}.recipe{margin:30px 0;padding:24px;background:#efe4d4;border:1px solid #dfcba8}.recipe strong{display:block;font:11px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--rust)}.recipe-summary dl{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0 0}.recipe-summary dl div{border-left:1px solid #cfbfae;padding-left:12px}.recipe-summary dt{color:var(--muted);font-size:12px}.recipe-summary dd{margin:3px 0 0;font:600 20px 'Playfair Display',serif}.article-figure{margin:32px 0 52px}.article-figure img{display:block;width:100%;max-height:480px;object-fit:cover;background:#314435}.guide-figure{background:linear-gradient(135deg,#314435,#192a1f)}.guide-figure img{object-fit:contain;max-height:500px}.article-figure figcaption{padding:12px 16px;background:#f1ebe4;color:var(--muted);font-size:12px}.article-coffee-picks{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0}.article-pick{display:grid;grid-template-columns:145px 1fr;gap:16px;padding:15px;border:1px solid var(--line);background:#fff}.article-pick:hover{border-color:#c7a882}.article-pick img{width:145px;height:150px;object-fit:cover;mix-blend-mode:multiply}.article-pick span{color:var(--rust);font:10px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}.article-pick h3{margin:12px 0 7px;font-size:27px}.article-pick p{margin:0;font-size:13px}.article-note{margin:26px 0;padding:15px 18px;border-left:3px solid var(--amber);background:#f4ead9;font-size:14px!important}.article-checklist{display:grid;gap:13px;padding:0;list-style:none}.article-checklist li{padding:16px 0;border-bottom:1px solid var(--line)}.brew-steps{display:grid;gap:16px;padding:0;counter-reset:brew}.brew-steps li{display:grid;grid-template-columns:150px 1fr;gap:22px;padding:20px 0 20px 58px;border-bottom:1px solid var(--line);list-style:none;position:relative}.brew-steps li:before{position:absolute;left:0;top:16px;counter-increment:brew;content:"0" counter(brew);color:var(--amber);font:16px 'DM Mono',monospace}.brew-steps span{color:var(--muted);font-size:15px}.article-beans img{object-position:center 60%;mix-blend-mode:multiply;background:#eee6dc}.taste-table{margin-top:24px;border-top:1px solid var(--line)}.taste-table div{display:grid;grid-template-columns:210px 1fr;gap:25px;padding:20px 0;border-bottom:1px solid var(--line)}.taste-table b{font:600 21px 'Playfair Display',serif}.taste-table span{color:var(--muted)}.article-cta{margin-top:72px;padding:44px;background:var(--forest);color:#fff7e8}.article-cta h2{margin:14px 0}.article-cta p{max-width:550px;color:#d9d0c0}.article-cta .button{margin-top:10px;border-color:#fff7e8;background:transparent}.article-cta .button:hover{color:var(--forest);background:#fff7e8}.back{display:inline-block;margin-bottom:35px;color:var(--rust);font:11px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}footer{display:flex;justify-content:space-between;gap:20px;padding:30px max(20px,6vw);color:#eadfca;background:#191d15;font-size:11px}@media(max-width:760px){nav{gap:13px}nav a:not(.app){font-size:10px}.app{padding:9px}.shell{padding:48px 20px 72px}.catalog-grid,.story-grid,.feature,.article-coffee-picks{grid-template-columns:1fr}.feature img{height:270px}.feature-copy{padding:34px 25px}.recipe-summary dl{grid-template-columns:1fr 1fr}.article-pick{grid-template-columns:112px 1fr}.article-pick img{width:112px;height:125px}.brew-steps li,.taste-table div{grid-template-columns:1fr;gap:8px}.brew-steps li{padding-left:50px}.article-cta{margin-top:52px;padding:32px 24px}footer{flex-direction:column}}
