/* ILD product experience. Original identity, native WooCommerce purchasing. */
body.single-product{background:#fff}.single-product .site-header{height:145px;padding-top:20px;align-items:flex-start}.single-product .site-header .brand{width:135px;height:99px}.single-product .main-navigation{padding-top:25px}.single-product .basket-link{margin-top:34px}.single-product .commerce-shell{width:90%;max-width:1320px;padding:0 0 70px}.coffee-product{--rule:#d9d5cd;color:var(--ink);font-family:Maison,Arial,sans-serif;font-size:17px;line-height:1.5}.coffee-product a{color:inherit}.coffee-product button,.coffee-product input{font:inherit}.coffee-product :focus-visible{outline:3px solid var(--ink);outline-offset:4px}.coffee-product h1,.coffee-product h2{font-family:Sharp,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:0}.coffee-product h3{font-family:Arvo,Georgia,serif;text-transform:none;letter-spacing:-.025em;line-height:1.25}.coffee-breadcrumb{display:flex;gap:12px;font-size:13px;margin:5px 0 24px}.coffee-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.coffee-breadcrumb>span:last-child{color:#615e58}.coffee-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:6%;align-items:start}.coffee-media{min-width:0}.coffee-stage{position:relative;background:var(--coffee-colour);border-radius:5px;aspect-ratio:1/1.08;display:flex;align-items:center;justify-content:center;overflow:hidden}.coffee-main-image{width:100%;height:100%;object-fit:contain;padding:32px 15px 42px;filter:drop-shadow(0 18px 18px #221f1f18)}.coffee-stage>p{position:absolute;bottom:16px;left:24px;margin:0;font:700 18px Arvo,serif}.coffee-stamp{position:absolute;z-index:1;left:24px;top:24px;border:1px solid currentColor;padding:7px 14px;border-radius:50px;font-size:13px;font-weight:700;background:#ffffffb0}.coffee-enlarge{position:absolute;right:20px;bottom:18px;border:1px solid currentColor;border-radius:50%;background:white;width:44px;height:44px;font-size:28px!important;cursor:pointer}.coffee-photo-row{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:16px}.coffee-photo-row>a{font-size:13px;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}.coffee-thumbnails{display:flex;gap:8px}.coffee-thumbnails button{padding:0;border:1px solid var(--rule);border-radius:4px;background:#f8f8f8;cursor:pointer;width:58px;height:58px}.coffee-thumbnails button[aria-pressed=true]{border:2px solid var(--ink);background:var(--coffee-colour)}.coffee-thumbnails img{object-fit:contain;width:100%;height:100%}.coffee-buy{padding-top:8px;min-width:0}.coffee-kicker{font-family:Maison,Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 13px}.coffee-buy h1{font-size:clamp(43px,5.5vw,76px);line-height:.92;margin:0 0 18px;overflow-wrap:normal}.coffee-intro{font:400 21px/1.4 Arvo,Georgia,serif;margin:0 0 16px}.coffee-rating{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:13px;text-decoration:none}.coffee-rating>span:last-child{text-decoration:underline;text-underline-offset:3px}.coffee-stars{color:var(--ink);letter-spacing:.06em;font-size:16px}.coffee-taste{margin:22px 0 0;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.coffee-taste>span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.coffee-taste p{margin:4px 0 0;font:700 16px/1.5 Maison,sans-serif}.coffee-price-row{display:flex;align-items:baseline;gap:15px;flex-wrap:wrap;margin:20px 0 16px}.coffee-price{font:700 31px/1.2 Maison,sans-serif}.coffee-price .woocommerce-Price-currencySymbol{font:inherit}.coffee-unit{font-size:13px;color:#615e58}.coffee-form .variations{border:0;border-radius:0;display:block;margin:0;overflow:visible;background:none}.coffee-form .variations tbody,.coffee-form .variations tr,.coffee-form .variations th,.coffee-form .variations td{display:block;width:100%;border:0;padding:0;background:none}.coffee-form .variations tr{margin:0 0 18px}.coffee-form .variations th{font:700 14px/1.4 Maison,sans-serif;text-align:left;margin-bottom:9px;color:var(--ink)}.coffee-form .variations td{position:relative}.coffee-form .variations select:not(.screen-reader-text){width:100%;border:1px solid var(--rule);border-radius:8px;padding:10px}.coffee-form .reset_variations{font-size:12px;display:inline-block;margin:7px 0 0}.coffee-options{display:flex;gap:10px}.coffee-option{position:relative;display:block;flex:1;cursor:pointer;margin:0!important}.coffee-option input{position:absolute;opacity:0;width:1px;height:1px}.coffee-option-content{border:1px solid #9d9991;border-radius:50px;display:flex;justify-content:center;align-items:center;min-height:48px;padding:10px 18px;transition:background .15s,border-color .15s}.coffee-option input:checked+.coffee-option-content{background:var(--yellow);border:2px solid var(--ink);padding:9px 17px}.coffee-option input:focus-visible+.coffee-option-content{outline:3px solid var(--ink);outline-offset:3px}.coffee-option input:disabled+.coffee-option-content{opacity:.4;text-decoration:line-through;cursor:not-allowed}.coffee-grind-picker{border:1px solid #9d9991;border-radius:10px;margin:0;overflow:visible}.coffee-grind-picker summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:13px 16px;cursor:pointer;min-height:70px;gap:10px}.coffee-grind-picker summary::-webkit-details-marker{display:none}.coffee-grind-picker summary>span:last-child{font-size:24px;line-height:1}.coffee-grind-picker[open] summary>span:last-child{transform:rotate(180deg)}.coffee-grind-summary{display:flex;align-items:center;gap:14px}.coffee-grind-picker svg{width:32px;height:36px;flex:none}.coffee-grind-picker strong{font-size:16px;display:block}.coffee-grind-picker small{display:block;font-size:13px;font-weight:400;margin-top:2px;color:#615e58}.coffee-grind-picker .coffee-options{display:block;padding:4px 8px 8px;border-top:1px solid var(--rule)}.coffee-grind-picker .coffee-option{margin:5px 0 0!important}.coffee-grind-picker .coffee-option-content{border:1px solid transparent;border-radius:6px;justify-content:flex-start;gap:14px;padding:10px 12px;min-height:70px}.coffee-grind-picker input:checked+.coffee-option-content{padding:9px 11px}.coffee-form form.cart{margin:0;display:block}.coffee-form .woocommerce-variation-price{display:none}.coffee-form .woocommerce-variation-description p{font-size:14px}.coffee-form .woocommerce-variation-availability .stock{font-size:13px;background:none;padding:0;margin:0 0 10px;color:#33432b}.coffee-form .woocommerce-variation-add-to-cart,.coffee-form form.cart:not(.variations_form){display:flex;flex-wrap:wrap;align-items:center;gap:12px}.coffee-form .quantity{display:flex;flex:none;align-items:center;margin:0!important;border:1px solid #9d9991;border-radius:40px;height:54px;background:white;overflow:hidden}.coffee-form .quantity input.qty{appearance:textfield;-moz-appearance:textfield;width:35px!important;height:50px!important;border:0!important;border-radius:0!important;padding:0!important;background:white!important;color:var(--ink)}.coffee-form input.qty::-webkit-inner-spin-button,.coffee-form input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.coffee-qty-button{border:0;background:white;cursor:pointer;width:35px;height:50px;padding:0}.coffee-form button.single_add_to_cart_button{flex:1!important;min-height:54px;margin:0!important;padding:14px 24px!important;border:0!important;border-radius:40px!important;background:var(--orange)!important;color:#fff!important;font:700 18px/1.4 Maison,sans-serif!important;white-space:normal;cursor:pointer}.coffee-form button.single_add_to_cart_button:hover{background:#e85317!important}.coffee-form button.disabled{opacity:.5;cursor:not-allowed}.coffee-delivery{margin-top:18px;font-size:12px;line-height:1.55}.coffee-delivery p{margin:0 0 4px}.coffee-delivery strong{font-size:13px}.coffee-delivery a{margin-left:8px;text-decoration:underline;text-underline-offset:3px}.coffee-story-link{display:flex;justify-content:space-between;border-top:1px solid var(--rule);margin-top:22px;padding-top:13px;font-size:14px;text-decoration:none}.coffee-section-nav{display:flex;justify-content:center;gap:50px;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);margin-top:65px;padding:19px 0;font-size:14px}.coffee-section-nav a{text-decoration:none}.coffee-section-nav span{font-size:11px;margin-left:4px}.coffee-product section[id]{scroll-margin-top:25px}.coffee-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:8%;padding:70px 0}.coffee-story h2,.coffee-facts h2,.coffee-reviews h2,.coffee-delivery-section h2{font-size:clamp(35px,4.4vw,60px);line-height:.95;margin:0 0 25px}.coffee-story-art{margin-top:35px;background:var(--coffee-colour);width:85%;aspect-ratio:1;border-radius:50%;overflow:hidden}.coffee-story-art img{width:100%;height:100%;object-fit:contain;transform:rotate(-8deg)}.coffee-story-copy>h3{font-size:25px;margin:0 0 22px}.coffee-source-intro{font-size:20px;line-height:1.55;margin-bottom:28px}.coffee-source-description{font-size:16px;line-height:1.7}.coffee-source-description p{margin:0 0 20px}.coffee-source-description h2,.coffee-source-description h3{font:700 22px/1.3 Arvo,serif;text-transform:none;letter-spacing:0;margin:28px 0 12px}.coffee-source-description blockquote{border-left:3px solid var(--orange);padding-left:20px;margin:24px 0;font-family:Arvo,serif}.coffee-facts{display:grid;grid-template-columns:1fr 1.25fr;gap:8%;padding:45px;background:var(--yellow);border-radius:5px}.coffee-facts>div>p:last-child{font-size:16px}.coffee-facts table{width:100%;border-collapse:collapse;font-size:14px;border:0!important}.coffee-facts th,.coffee-facts td{padding:10px 0!important;border:0!important;border-bottom:1px solid #221f1f33!important;background:none!important;text-align:left;vertical-align:top}.coffee-facts th{width:35%;font-weight:700}.coffee-facts td{padding-left:20px!important}.coffee-facts td p{margin:0}.coffee-photo-section{margin:35px 0 65px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.coffee-photo-section summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:22px 0;cursor:pointer;font-size:16px;font-weight:700}.coffee-photo-section summary::-webkit-details-marker{display:none}.coffee-photo-section details>p{font-size:14px}.coffee-photo-library{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding-bottom:25px}.coffee-photo-library button{padding:0;border:1px solid var(--rule);background:#f8f8f8;border-radius:5px;cursor:zoom-in;overflow:hidden}.coffee-photo-library img{width:100%;height:100%;aspect-ratio:1;object-fit:contain}.coffee-reviews{display:grid;grid-template-columns:1fr 1.5fr;gap:9%;padding-bottom:65px}.coffee-review-score{font:700 65px/1 Maison,sans-serif;margin:32px 0 10px}.coffee-review-score span{font-size:20px;margin-left:12px;font-weight:400}.coffee-review-overview>p:not([class]){font-size:14px}.coffee-rating-bars{max-width:300px;margin-top:24px;font-size:13px}.coffee-rating-bars>div{display:flex;align-items:center;gap:13px;margin:8px 0}.coffee-rating-bars>div>span:first-child{min-width:42px}.coffee-rating-bars meter{flex:1;height:10px;appearance:none}.coffee-rating-bars meter::-webkit-meter-bar{background:#ece9e3;border:0}.coffee-rating-bars meter::-webkit-meter-optimum-value{background:var(--ink)}.coffee-review{border-top:1px solid var(--rule);padding:20px 0;font-size:15px;overflow-wrap:anywhere}.coffee-review header{display:flex;gap:20px;justify-content:space-between;font-size:14px}.coffee-review time{font-size:12px;color:#615e58;white-space:nowrap}.coffee-review .coffee-stars{margin:7px 0 10px;font-size:13px}.coffee-review p{margin:0 0 10px}.coffee-review-pagination{display:flex;gap:20px;justify-content:space-between;font-size:14px;border-top:1px solid var(--rule);padding-top:20px}.coffee-delivery-section{display:grid;grid-template-columns:1fr 1.5fr;gap:9%;padding:50px;background:#f8f8f8;border-radius:5px;font-size:16px}.coffee-delivery-section h3{font-size:20px;margin:0 0 16px}.coffee-delivery-section h3:not(:first-child){margin-top:30px}.coffee-delivery-section a{text-decoration:underline;text-underline-offset:4px}.coffee-more{padding-top:65px}.coffee-more>div:first-child{position:relative;margin-bottom:35px}.coffee-more h2{font-size:48px;line-height:.95;margin:0}.coffee-more>div:first-child>a{display:inline-block;margin-top:20px;font-size:14px}.coffee-more .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.coffee-lightbox{padding:60px 20px 20px;border:0;border-radius:8px;max-width:90vw;max-height:90dvh;background:#f8f8f8}.coffee-lightbox::backdrop{background:#221f1fbd}.coffee-lightbox>img{display:block;object-fit:contain;max-height:72dvh;max-width:80vw}.coffee-lightbox-close{position:absolute;right:15px;top:10px;background:var(--yellow);border:0;padding:8px 16px;border-radius:30px;cursor:pointer}
@media(max-width:1050px){.coffee-hero{gap:4%}.coffee-buy h1{font-size:50px}.coffee-intro{font-size:18px}.coffee-stage{aspect-ratio:1/1.25}.coffee-price{font-size:28px}.coffee-form button.single_add_to_cart_button{font-size:16px!important;padding:12px 18px!important}.coffee-section-nav{gap:30px}.coffee-facts,.coffee-delivery-section{padding:30px}.coffee-photo-library{grid-template-columns:repeat(4,minmax(0,1fr))}.single-product .main-navigation{font-size:15px;gap:22px}.single-product .site-header{height:135px}}
@media(max-width:760px){.single-product .site-header{height:108px;padding-top:16px}.single-product .site-header .brand{width:100px;height:73px}.single-product .main-navigation{padding-top:20px}.single-product .basket-link{margin-top:13px}.single-product .commerce-shell{width:88%;padding-bottom:45px}.coffee-product{font-size:16px}.coffee-breadcrumb{font-size:12px;margin:10px 0 18px}.coffee-hero{grid-template-columns:1fr;gap:26px}.coffee-stage{aspect-ratio:1.22}.coffee-main-image{padding:8px 5px 25px}.coffee-stamp{left:15px;top:15px;font-size:11px;padding:5px 10px}.coffee-stage>p{font-size:14px;left:15px;bottom:14px}.coffee-enlarge{width:38px;height:38px;right:12px;bottom:10px}.coffee-photo-row{margin-top:12px}.coffee-thumbnails button{width:48px;height:48px}.coffee-photo-row>a{font-size:12px}.coffee-buy{padding-top:0}.coffee-kicker{font-size:11px;margin-bottom:12px}.coffee-buy h1{font-size:clamp(40px,12.3vw,61px);margin-bottom:14px;line-height:.94}.coffee-intro{font-size:18px}.coffee-taste{margin-top:18px;padding:12px 0}.coffee-price-row{margin:18px 0}.coffee-form .variations tr{margin-bottom:17px}.coffee-option-content{min-height:46px}.coffee-section-nav{gap:0;justify-content:space-between;font-size:12px;margin-top:40px;padding:16px 0}.coffee-section-nav span{display:none}.coffee-story{grid-template-columns:1fr;padding:38px 0;gap:30px}.coffee-story-heading{position:relative;min-height:150px}.coffee-story h2{font-size:38px;line-height:.97;margin:0}.coffee-story-art{position:absolute;width:38%;margin:0;right:0;bottom:0}.coffee-story-copy>h3{font-size:22px}.coffee-source-intro{font-size:18px}.coffee-source-description{font-size:15px}.coffee-facts{grid-template-columns:1fr;gap:10px;padding:25px 20px}.coffee-facts h2,.coffee-reviews h2,.coffee-delivery-section h2{font-size:37px;margin-bottom:20px}.coffee-facts table{font-size:13px}.coffee-facts th{width:34%}.coffee-photo-section{margin:25px 0 40px}.coffee-photo-section summary{font-size:13px;gap:16px}.coffee-photo-section summary>span:last-child{white-space:nowrap}.coffee-photo-library{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.coffee-reviews{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.coffee-review-overview{display:grid;grid-template-columns:1fr 1fr;align-items:start;column-gap:20px}.coffee-review-overview>.coffee-kicker,.coffee-review-overview>h2{grid-column:1/-1}.coffee-review-score{margin:5px 0 0;font-size:60px}.coffee-review-overview>p:not([class]){grid-column:1;grid-row:4;margin:10px 0 0}.coffee-rating-bars{grid-column:2;grid-row:3/span 2;margin:0;font-size:11px}.coffee-rating-bars>div{gap:8px;margin:5px 0}.coffee-rating-bars>div>span:first-child{min-width:32px}.coffee-review header{font-size:13px;gap:12px}.coffee-review time{font-size:10px}.coffee-review-pagination{font-size:13px}.coffee-delivery-section{grid-template-columns:1fr;gap:10px;padding:28px 20px;font-size:15px}.coffee-delivery-section h3{font-size:18px}.coffee-more{padding-top:40px}.coffee-more h2{font-size:35px}.coffee-more .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coffee-more .product-card:last-child{display:none}}

.coffee-product summary::after{content:none!important}.coffee-product .coffee-grind-picker{border-top:1px solid #9d9991}.coffee-product .coffee-grind-picker summary{border:0}.coffee-product .coffee-main-image{height:100%;max-height:100%;position:absolute;inset:0}.coffee-facts .woocommerce-product-attributes-item--weight{display:none}

.coffee-write-review{margin-top:28px;border-top:1px solid var(--rule);padding-top:18px}.coffee-write-review summary{cursor:pointer;list-style:none;font-weight:700}.coffee-write-review form{margin-top:20px}.coffee-write-review form label{display:block;margin-bottom:6px}.coffee-write-review input:not([type=checkbox]),.coffee-write-review textarea,.coffee-write-review select{border:1px solid #9d9991;border-radius:6px;padding:10px;width:100%;font:inherit}.coffee-write-review textarea{min-height:130px}.coffee-write-review input[type=submit]{background:var(--orange);color:var(--ink);border:0;font-weight:700;border-radius:30px;cursor:pointer}.coffee-write-review .comment-form-cookies-consent{display:flex;gap:10px}.coffee-write-review .comment-form-cookies-consent label{font-size:13px}.coffee-write-review #reply-title{font:700 20px Arvo,serif;display:block;margin-top:20px}
.coffee-rating-stars{background:linear-gradient(90deg,var(--ink) var(--rating),#c7c2b9 var(--rating));background-clip:text;-webkit-background-clip:text;color:transparent}

.coffee-product[data-coffee="121229"] .coffee-buy h1{font-size:clamp(38px,4.6vw,65px)}
@media(max-width:760px){.coffee-product[data-coffee="121229"] .coffee-buy h1{font-size:clamp(32px,10vw,50px)}}

.coffee-write-review input[type=submit]{color:#fff}.coffee-product .woocommerce-message .button{background:var(--orange);color:#fff}

.coffee-product summary:after{content:none}

/* All source photographs follow the new bag artwork in the main gallery. */
.coffee-photo-row{min-width:0}.coffee-thumbnails{min-width:0;overflow-x:auto;padding:3px;scrollbar-width:thin}.coffee-thumbnails button{flex:none}.coffee-photo-row>a{flex:none}

/* Native thumbnail scrolling plus swipeable main and enlarged photographs. */
.coffee-photo-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
.coffee-thumbnails{scroll-snap-type:x proximity;scroll-padding-inline:3px;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom}
.coffee-thumbnails button{scroll-snap-align:start}
.coffee-photo-row>a{display:flex;align-items:center;min-height:44px}
.coffee-stage,.coffee-lightbox>img{touch-action:pan-y pinch-zoom}
.coffee-main-image,.coffee-lightbox>img{user-select:none;-webkit-user-drag:none}
.coffee-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font:400 13px/1.4 Maison,Arial,sans-serif}
.coffee-gallery-controls p{margin:0}.coffee-gallery-controls .coffee-gallery-hint{display:block;font-size:12px;margin-top:3px}
.coffee-gallery-actions{display:flex;gap:8px;flex:none}
.coffee-gallery-actions button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #9d9991;border-radius:50%;background:#fff;color:var(--ink);font-size:22px;cursor:pointer}
.coffee-gallery-actions button:disabled{opacity:.35;cursor:default}
.coffee-lightbox .coffee-gallery-controls{margin:12px 0 0}
.coffee-buy{container-type:inline-size}.coffee-buy h1{font-size:min(76px,15cqi)}
.coffee-product[data-coffee="121229"] .coffee-buy h1{font-size:min(65px,13cqi)}

@media(max-width:760px){.coffee-photo-row{grid-template-columns:minmax(0,1fr);gap:4px}.coffee-photo-row>a{justify-self:end}.coffee-stage>p{max-width:calc(100% - 84px);font-size:clamp(11px,3.5vw,14px)}.coffee-enlarge{width:44px;height:44px}.coffee-buy h1{font-size:min(61px,15cqi)}.coffee-product[data-coffee="121229"] .coffee-buy h1{font-size:min(50px,13cqi)}.coffee-story-heading{display:grid;grid-template-columns:minmax(0,1fr) 34%;align-items:end;gap:12px}.coffee-story-heading>.coffee-kicker{grid-column:1/-1}.coffee-story-heading h2{font-size:clamp(23px,6vw,38px)}.coffee-story-art{position:static;width:100%;margin:0}.coffee-qty-button{width:44px}.coffee-section-nav{flex-wrap:wrap;gap:4px 14px}.coffee-section-nav a{display:flex;align-items:center;min-height:44px}.coffee-lightbox{max-width:94vw;padding:60px 12px 12px}.coffee-lightbox>img{max-width:calc(94vw - 24px);max-height:65dvh}}

/* Pointer dragging on desktop, native touch scrolling on the thumbnail rail. */
.coffee-stage,.coffee-lightbox>img,.coffee-thumbnails,.coffee-thumbnails button{cursor:grab}
.coffee-thumbnails,.coffee-thumbnails button,.coffee-thumbnails img{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.coffee-thumbnails.is-dragging{scroll-snap-type:none;scroll-behavior:auto}
.coffee-thumbnails.is-dragging,.coffee-thumbnails.is-dragging button,.coffee-stage.is-dragging,.coffee-lightbox>img.is-dragging{cursor:grabbing}
.coffee-main-image,.coffee-lightbox>img{transition:transform .16s ease}
.coffee-stage.is-dragging .coffee-main-image,.coffee-lightbox>img.is-dragging{transform:translateX(var(--coffee-drag-x,0px));transition:none}
@media(prefers-reduced-motion:reduce){.coffee-main-image,.coffee-lightbox>img{transition:none}}
