.subpage{overflow:hidden}
.page-hero{display:grid;grid-template-columns:1.06fr .94fr;min-height:610px;border-bottom:1px solid var(--line)}
.page-hero-copy{padding:75px 8.5%;display:flex;align-items:flex-start;justify-content:center;flex-direction:column}
.page-hero h1{font-size:clamp(3.6rem,6vw,6.5rem);line-height:1.04;margin:26px 0;max-width:780px}
.page-hero h1 em,.page-section h2 em{font-style:normal;color:#dc3333}
.page-lead{font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.75;color:#555;max-width:520px}
.page-hero .button{margin-top:29px}
.hero-mini{margin-top:18px;font-size:12px;color:#686868}
.page-hero-media{position:relative;min-height:500px;overflow:hidden;background:#d6d3cb}
.page-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero-media .media-stamp{position:absolute;bottom:28px;left:30px;right:30px;display:flex;justify-content:space-between;color:#fff;font-weight:700;font-size:12px;letter-spacing:.07em;text-shadow:0 1px 12px #0007}
.page-hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,#0005);pointer-events:none}
.page-hero-media .media-stamp{z-index:1}
.page-hero.compact{min-height:470px}.page-hero.compact .page-hero-media{min-height:470px}
.page-hero.dark{background:#1a1a1a;color:#f4f4ef}.page-hero.dark .page-lead,.page-hero.dark .hero-mini{color:#c1c1bb}
.page-hero.red{background:var(--red)}.page-hero.red h1 em{color:#191919}.page-hero.red .page-lead{color:#343434}
.page-section{padding:85px 4.5%}.page-section.soft{background:#ebeae4}.page-section.dark{background:#1b1b1b;color:#f5f5ef}.page-section.red{background:var(--red)}
.page-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}.page-section-head .eyebrow{margin-bottom:16px}.page-section h2{font-size:clamp(2.4rem,4.4vw,4.8rem);max-width:780px}
.page-section-head p{max-width:350px;color:#666;line-height:1.7}.dark .page-section-head p{color:#bbb}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.feature-card{background:#f5f5f1;border:1px solid #d9d9d1;padding:30px;min-height:260px;display:flex;flex-direction:column}.feature-card.dark-card{background:#292929;color:white;border-color:#414141}
.feature-number{font-size:12px;letter-spacing:.1em;color:#d43737;font-weight:700}.feature-card h3{font-size:clamp(1.4rem,2.2vw,2.05rem);letter-spacing:-.055em;line-height:1.16;margin:24px 0 14px}.feature-card p{font-size:14px;line-height:1.75;color:#666;margin-top:auto}.feature-card.dark-card p{color:#bcbcbc}
.editorial-split{display:grid;grid-template-columns:1fr 1fr}.editorial-split.reverse .editorial-photo{order:2}.editorial-photo{min-height:510px;position:relative;overflow:hidden}.editorial-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.editorial-content{padding:75px 9%;display:flex;flex-direction:column;justify-content:center;align-items:start;background:#eaeae2}.editorial-content h2{margin:20px 0 25px;font-size:clamp(2.5rem,4vw,4.2rem)}.editorial-content p{font-size:16px;line-height:1.8;color:#565656;margin-bottom:19px;max-width:470px}.editorial-content .button{margin-top:12px}
.statement-band{background:#1c1c1c;color:white;text-align:center;padding:80px 7%}.statement-band .eyebrow{color:#ff5858}.statement-band p{font:700 clamp(2.3rem,5vw,5.2rem)/1.15 Manrope,Arial,sans-serif;letter-spacing:-.06em;max-width:1060px;margin:22px auto}.statement-band strong{color:#ff4949;font-weight:inherit}
.numbered-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.step-card{border-top:2px solid var(--ink);padding-top:22px}.step-card .step-index{display:block;font-size:13px;font-weight:700;color:#da3030;margin-bottom:30px}.step-card h3{font-size:clamp(1.6rem,2.3vw,2.25rem);letter-spacing:-.06em;line-height:1.12;margin-bottom:17px}.step-card p{font-size:15px;line-height:1.75;color:#666;max-width:390px}
.shop-controls{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px}.shop-controls p{font-size:13px;color:#666}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.shop-product{background:#ecece6;padding:0 0 25px;display:flex;flex-direction:column;min-width:0}.shop-product:nth-child(2){background:#202020;color:#f5f5ef}.shop-product-image{height:250px;overflow:hidden;position:relative}.shop-product-image img{width:100%;height:100%;object-fit:cover}.shop-product-image .pill{position:absolute;left:20px;top:20px;background:#ff4141;padding:7px 11px;font-size:11px;font-weight:700;color:#171717;letter-spacing:.04em}.shop-product-body{padding:24px 25px 0;display:flex;flex-direction:column;flex:1}.shop-product h3{font-size:29px;letter-spacing:-1.3px;margin:5px 0}.shop-product p{font-size:14px;color:#666;line-height:1.6;margin:0 0 18px}.shop-product:nth-child(2) p{color:#c1c1c1}.shop-price{font-size:29px;font-weight:700;letter-spacing:-1px;margin-top:auto}.shop-price small{font-size:13px;font-weight:400;letter-spacing:0;color:#666}.shop-product:nth-child(2) .shop-price small{color:#ccc}.shop-product .button{margin-top:20px}.shop-product:nth-child(2) .button{background:var(--red);color:#151515}.shop-product .button:hover{opacity:.9}
.compare-table{width:100%;border-collapse:collapse;font-size:14px}.compare-table th,.compare-table td{text-align:left;border-bottom:1px solid #c6c6be;padding:20px 14px}.compare-table th{font-size:13px;letter-spacing:.02em}.compare-table th:first-child,.compare-table td:first-child{padding-left:0}.compare-table td:not(:first-child),.compare-table th:not(:first-child){text-align:center}.compare-table tr:last-child td{border-bottom:0}
.roaster-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bfc0b8;border-left:1px solid #bfc0b8}.roaster-tile{min-height:180px;border-right:1px solid #bfc0b8;border-bottom:1px solid #bfc0b8;padding:20px;display:flex;flex-direction:column;justify-content:space-between}.roaster-tile span{font-size:11px;color:#777}.roaster-tile h3{font-size:clamp(1.5rem,2.3vw,2.45rem);letter-spacing:-.06em;line-height:1.12}.roaster-tile:nth-child(4n) h3,.roaster-tile:nth-child(4n+2) h3{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.03em}
.gift-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gift-option{background:#e7e7e0;border:1px solid #d2d2ca;padding:38px;display:flex;flex-direction:column;min-height:360px}.gift-option.dark{background:#1b1b1b;color:white;border-color:#1b1b1b}.gift-option .tag{font-size:11px;font-weight:700;letter-spacing:.09em;color:#d43333}.gift-option h3{font-size:clamp(2rem,3vw,3.2rem);letter-spacing:-.06em;margin:25px 0}.gift-option p{font-size:15px;color:#666;max-width:430px;line-height:1.7}.gift-option.dark p{color:#bebebe}.gift-option .button{margin-top:auto;align-self:start}.gift-option.dark .button{background:var(--red);color:#191919}
.review-page-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.review-quote{background:#eaeae3;padding:35px;min-height:245px;display:flex;flex-direction:column}.review-quote .stars{font-size:20px;letter-spacing:4px;color:#d53333}.review-quote blockquote{font:600 clamp(1.25rem,2vw,1.75rem)/1.4 Manrope,Arial,sans-serif;letter-spacing:-.04em;margin:20px 0}.review-quote cite{font-style:normal;color:#666;font-size:12px;margin-top:auto}
.faq-search-wrap{position:relative;max-width:680px;margin:0 auto 45px}.faq-search-wrap label{display:block;font-size:12px;letter-spacing:.09em;font-weight:700;margin-bottom:12px}.faq-search-wrap input{width:100%;border:1px solid #b7b7b0;background:transparent;padding:18px 22px;font:500 17px 'DM Sans',sans-serif;outline-offset:4px}.faq-search-wrap p{font-size:12px;color:#666;margin-top:12px}.faq-list{max-width:840px;margin:auto}.faq-entry{border-bottom:1px solid var(--line)}.faq-entry:first-child{border-top:1px solid var(--line)}.faq-entry summary{font-size:17px;font-weight:600;padding:24px 42px 24px 0}.faq-entry p{font-size:15px;line-height:1.8;color:#555;padding:0 42px 24px 0}.faq-entry[hidden]{display:none}
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.contact-card{padding:40px;background:#e8e8e0;min-height:320px;display:flex;flex-direction:column;align-items:start}.contact-card h3{font-size:clamp(1.7rem,2.5vw,2.7rem);letter-spacing:-.06em;margin:20px 0}.contact-card p{font-size:15px;line-height:1.7;color:#626262;max-width:460px}.contact-card .button{margin-top:auto}.contact-card.secondary{background:#1e1e1e;color:white}.contact-card.secondary p{color:#c2c2c2}.contact-card.secondary .button{background:var(--red);color:#171717}.email-line{font-size:clamp(1.2rem,2vw,1.8rem);font-weight:700;letter-spacing:-.045em;overflow-wrap:anywhere;margin:10px 0}
.policy-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:9%;max-width:1150px;margin:auto}.policy-menu{position:sticky;top:20px;align-self:start;display:flex;flex-direction:column;gap:12px;border-top:2px solid #1c1c1c;padding-top:20px}.policy-menu a{font-size:14px;color:#555}.policy-menu a:hover{text-decoration:underline}.policy-content section{margin-bottom:55px;scroll-margin-top:24px}.policy-content h2{font-size:clamp(1.9rem,3vw,2.8rem);margin-bottom:18px}.policy-content p,.policy-content li{font-size:15px;line-height:1.8;color:#555;max-width:740px;margin:0 0 13px}.policy-content ul{list-style:disc;padding-left:25px;margin:15px 0}.policy-content li:before{content:none}.policy-note{padding:22px 24px;background:#eee4dc;border-left:4px solid #e44738;font-size:14px;line-height:1.65;color:#4e4640;margin-top:25px}
.final-panel{padding:85px 4.5%;text-align:center;background:var(--red)}.final-panel h2{font-size:clamp(3rem,6vw,6.3rem);margin:22px 0}.final-panel p{font-size:16px;max-width:550px;margin:0 auto 26px;line-height:1.7}.final-panel .button{min-width:210px}
.empty-state{padding:100px 5%;text-align:center}.empty-state h1{font-size:clamp(5rem,12vw,12rem)}.empty-state p{margin:10px 0 30px;font-size:18px;color:#666}
@media(max-width:1000px){.page-hero{min-height:520px}.page-hero-copy{padding:55px 7%}.page-hero h1{font-size:clamp(3.5rem,6.3vw,5rem)}.page-section{padding:70px 4.5%}.shop-product-image{height:205px}.shop-product-body{padding:20px}.feature-card{padding:23px}.roaster-tile{min-height:150px}.editorial-content{padding:55px 7%}}
@media(max-width:700px){.page-hero,.editorial-split{grid-template-columns:1fr}.page-hero{min-height:0}.page-hero-copy{padding:46px 6% 48px}.page-hero h1{font-size:clamp(3.2rem,12vw,5rem);margin:19px 0}.page-hero-media,.page-hero.compact .page-hero-media{min-height:360px}.page-hero.compact{min-height:0}.page-hero .button{margin-top:24px}.page-section{padding:60px 6%}.page-section-head{display:block;margin-bottom:28px}.page-section-head p{margin-top:22px}.feature-grid,.numbered-steps,.shop-grid,.gift-grid,.review-page-grid,.contact-grid{grid-template-columns:1fr}.feature-card{min-height:215px}.editorial-split.reverse .editorial-photo{order:0}.editorial-photo{min-height:335px}.editorial-content{padding:55px 6%}.statement-band{padding:65px 6%}.shop-controls{display:block}.shop-controls p{margin:0 0 18px}.shop-product-image{height:270px}.shop-product h3{font-size:29px}.compare-table th,.compare-table td{padding:14px 8px;font-size:12px}.roaster-grid{grid-template-columns:repeat(2,1fr)}.roaster-tile{min-height:145px}.roaster-tile h3{font-size:23px}.gift-option{min-height:310px;padding:27px}.gift-option h3{margin:20px 0}.review-quote{min-height:220px}.faq-search-wrap{margin-bottom:30px}.faq-entry summary{font-size:16px}.contact-card{padding:28px;min-height:290px}.policy-layout{grid-template-columns:1fr;gap:30px}.policy-menu{position:static;display:flex;flex-wrap:wrap;flex-direction:row;gap:14px 25px}.policy-content section{margin-bottom:42px}.final-panel{padding:65px 6%}.final-panel h2{font-size:clamp(3rem,12vw,5rem)}}
