/* The shop screens and content pages, in the same language as the home page (the label design: paper, deep green ink, one gold
   for what you act on). Hand-written; the home page's own CSS (site.css) is generated from site.html. No borders, dividers or
   hairlines: groups are separated by space and by a slightly darker field, never by a line. */

/* ---------- small utilities ---------- */
.skip{position:absolute;left:-9999px;top:0;z-index:300;background:var(--gold);color:var(--green);padding:10px 16px;font-weight:800}
.skip:focus{left:16px;top:12px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
a.amber{color:var(--leaf);text-decoration:underline;text-underline-offset:3px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.wrap.narrow{max-width:860px}
body.is-inner{background:var(--bg)}
body.is-inner main{padding-top:calc(var(--top,110px) + clamp(12px,3vw,36px));min-height:70vh}
body.is-inner main.pdp{padding-top:var(--top,110px)}

/* ---------- the basket drawer ---------- */
.drawer-shade{position:fixed;inset:0;z-index:140;background:rgba(16,49,17,.5)}
.drawer{position:fixed;top:0;right:0;bottom:0;z-index:150;width:min(420px,92vw);background:var(--bg-2);display:flex;flex-direction:column;
  transform:translateX(100%);visibility:hidden;transition:transform .35s cubic-bezier(.2,.7,.3,1),visibility 0s linear .35s;outline:0}
.drawer.open{transform:none;visibility:visible;transition:transform .35s cubic-bezier(.2,.7,.3,1),visibility 0s}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 10px}
.drawer-head h2{font-size:22px}
.drawer-x{background:transparent;border:0;color:var(--mut);font:inherit;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:10px 0}
.drawer-x:hover{color:var(--txt)}
.drawer-body{flex:1;overflow:auto;padding:6px 24px 28px;display:flex;flex-direction:column}
body.drawer-open{overflow:hidden}
.mini-list{display:flex;flex-direction:column;gap:14px;margin:8px 0 18px}
.mini-list li{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;background:var(--panel);padding:12px 14px;border-radius:4px}
.mini-pic{display:block;width:64px;height:64px}
.mini-pic img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(16,49,17,.22))}
.mini-txt{display:flex;flex-direction:column;gap:3px;font-size:14px}
.mini-name,.mini-txt b{font-weight:700;color:var(--txt)}
.mini-txt .quantity{color:var(--mut);font-variant-numeric:tabular-nums}
.mini-txt .remove{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);align-self:flex-start;padding:4px 0}
.mini-txt .remove:hover{color:var(--txt)}
.drawer .total{display:flex;justify-content:space-between;align-items:baseline;font-size:17px;margin-top:auto;padding-top:10px}
.drawer .total strong{font-weight:600;color:var(--mut);font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.drawer .total .amount{font-weight:800;font-size:20px}
.mini-note{font-size:13px;color:var(--dim);margin:4px 0 16px}
.drawer .buttons{display:flex;flex-direction:column;gap:10px}
.drawer .buttons .btn{width:100%}
.mini-empty{display:flex;flex-direction:column;align-items:flex-start;gap:18px;color:var(--mut);margin-top:10px}

/* ---------- page heads and prose ---------- */
.page-head{margin-bottom:clamp(24px,3.4vw,44px)}
.page-head h1{font-size:clamp(38px,5vw,76px)}
.page-note{margin-top:14px;color:var(--mut);font-size:15px;max-width:60ch}
.page-note a{color:var(--leaf)}
.help-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:22px}
.help-links a{font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);padding:6px 0}
.help-links a:hover,.help-links a[aria-current]{color:var(--leaf)}
.prose{color:var(--mut);font-size:17px;line-height:1.72}
.prose>*+*{margin-top:1em}
.prose h2{font-size:clamp(26px,3vw,38px);margin-top:1.6em;color:var(--txt)}
.prose h3{font-size:clamp(20px,2.2vw,26px);margin-top:1.4em;color:var(--txt)}
.prose h4{font-size:15px;letter-spacing:.14em;text-transform:uppercase;margin-top:1.3em;color:var(--txt)}
.prose a{color:var(--leaf);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.prose ul,.prose ol{padding-left:1.2em}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose li+li{margin-top:.4em}
.prose strong,.prose b{color:var(--txt)}
.prose img,.legacy-img{max-width:100%;height:auto;border-radius:3px}
.legacy-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.legacy-gallery img{width:100%;aspect-ratio:1;object-fit:cover}
.legacy-video{position:relative;aspect-ratio:16/9}
.legacy-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.legacy-note{background:var(--panel);padding:14px 18px;border-radius:4px;color:var(--mut)}
.legacy-link a{font-weight:800;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none}

/* ---------- FAQs ---------- */
.faqs{display:flex;flex-direction:column;gap:10px;margin-top:1.4em}
.faq{background:var(--panel);border-radius:4px}
.faq summary{list-style:none;cursor:pointer;padding:18px 52px 18px 20px;font-weight:700;color:var(--txt);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--leaf);font-size:22px;font-weight:400}
.faq[open] summary::after{content:"\2212"}
.faq-a{padding:0 20px 18px;color:var(--mut)}
.faq-a>*+*{margin-top:.8em}

/* ---------- forms ---------- */
.mb-form{display:flex;flex-direction:column;gap:14px;max-width:560px}
.mb-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.mb-form input,.mb-form textarea,
.woocommerce form .input-text,.woocommerce form select,.woocommerce form textarea,
.woocommerce-cart-form .input-text,.coupon .input-text{
  width:100%;background:var(--panel);border:0;border-radius:3px;color:var(--txt);font:inherit;font-size:16px;font-weight:400;
  letter-spacing:0;text-transform:none;padding:13px 14px;outline:0;box-shadow:inset 0 -2px 0 rgba(16,49,17,.5);transition:box-shadow .2s ease}
.mb-form input:focus,.mb-form textarea:focus,.woocommerce form .input-text:focus,.woocommerce form select:focus,.coupon .input-text:focus{box-shadow:inset 0 0 0 2px var(--green)}
.mb-form .btn{align-self:flex-start}
.form-intro{color:var(--mut);margin:-4px 0 18px}
.form-status{padding:12px 16px;border-radius:4px;margin-bottom:16px;font-weight:600}
.form-status.ok{background:rgba(228,171,22,.22);color:var(--leaf)}
.form-status.bad{background:rgba(148,52,33,.12);color:#7A2410}
.contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,6vw,90px);align-items:start}
.contact-info h2,#form-contact h2,#form-wholesale h2{font-size:clamp(20px,2vw,26px);margin:0 0 10px}
.contact-info p{color:var(--mut);margin-bottom:26px}
.contact-info a{color:var(--txt)}
.contact-info a:hover{color:var(--leaf)}
.socials{display:flex;gap:20px}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}
.signup .form-status.ok{background:rgba(16,49,17,.1);color:var(--green)}
.signup .form-status.bad{background:rgba(148,52,33,.12);color:#7A2410}

/* ---------- buttons WooCommerce draws ---------- */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,#place_order,.checkout-button,.single_add_to_cart_button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;cursor:pointer;font-family:var(--f);
  font-weight:800;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;padding:17px 30px;border-radius:2px;
  background:var(--gold);color:var(--green);transition:background .24s ease,transform .24s ease}
.woocommerce .button:hover,#place_order:hover,.checkout-button:hover,.single_add_to_cart_button:hover{background:#F0BA2E;transform:translateY(-2px)}
.woocommerce .button.btn-ghost,.woocommerce button.btn-ghost{background:transparent;color:var(--txt);box-shadow:inset 0 0 0 1px var(--line-2)}
.woocommerce .button.btn-ghost:hover{background:rgba(16,49,17,.06);transform:none}
.woocommerce .button:disabled,.woocommerce .button[disabled]{opacity:.45;cursor:default;transform:none}
.busy{opacity:.6;pointer-events:none}

/* ---------- quantity ---------- */
.quantity{display:inline-flex;align-items:center}
.quantity .qty{width:74px;text-align:center;background:var(--panel);border:0;border-radius:3px;color:var(--txt);font:inherit;font-size:16px;font-weight:700;padding:14px 8px;-moz-appearance:textfield}
.quantity .qty:focus{outline:0;box-shadow:inset 0 0 0 2px var(--green)}

/* ---------- notices ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews{list-style:none;padding:14px 18px;margin:0 0 22px;border-radius:4px;
  background:var(--panel);color:var(--txt);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;font-size:15px}
.woocommerce-message{background:rgba(228,171,22,.2)}
.woocommerce-error{background:rgba(148,52,33,.12)}
.woocommerce-error li+li{margin-top:6px}
.woocommerce-message .button,.woocommerce-info .button{padding:10px 18px;font-size:11px}
.woocommerce-info a:not(.button),.woocommerce-message a:not(.button){color:var(--leaf)}

/* ---------- the shop ---------- */
.shop-archive .band{padding-top:0}
.shop-archive .page-head{margin-bottom:clamp(28px,3.4vw,44px)}
.item h3 a{color:inherit}
.item h3 a:hover{color:var(--leaf)}
.item .price del{color:var(--dim);font-weight:500;margin-right:6px}
.item .price ins{text-decoration:none}
.item .soldout{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.item .add.done{opacity:.6}

/* ---------- a product ---------- */
.pdp-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,6vw,96px);align-items:center;
  padding-block:clamp(30px,6vh,80px) clamp(40px,7vh,96px)}
.pdp-pic{position:relative;display:grid;place-items:center;min-height:min(62vh,640px)}
.pdp-pic::before{content:"";position:absolute;inset:6% 0;background:radial-gradient(closest-side,rgba(228,171,22,.26),rgba(228,171,22,0));pointer-events:none}
.pdp-img{position:relative;max-height:min(62vh,640px);width:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 34px 40px rgba(16,49,17,.26))}
.pdp-info h1{font-size:clamp(44px,5.6vw,92px);line-height:.9}
.pdp-price{margin-top:16px;font-size:26px;font-weight:800;font-variant-numeric:tabular-nums}
.pdp-price del{color:var(--dim);font-weight:500;margin-right:8px}
.pdp-price ins{text-decoration:none}
.pdp-desc{margin-top:18px;color:var(--mut);max-width:52ch;font-size:16.5px;line-height:1.7}
.pdp-desc>*+*{margin-top:.8em}
.pdp-info form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px}
.pdp-info form.cart .single_add_to_cart_button{min-width:220px}
.pdp-info .stock{margin-top:14px;color:var(--mut);font-size:14px}
.pdp-info .stock.out-of-stock{color:#7A2410}
.pdp-facts{margin-top:24px;display:flex;flex-direction:column;gap:6px;color:var(--mut);font-size:14px}
.pdp-facts li{padding-left:18px;position:relative}
.pdp-facts li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:8px;background:var(--gold);clip-path:var(--hex)}
.pdp-details-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.pdp-about p{color:var(--mut);max-width:60ch;font-size:16.5px;line-height:1.7}
.pdp-about p+p{margin-top:.8em}
.pdp-list{margin-top:22px;max-width:520px}
.pdp-list>div{display:flex;justify-content:space-between;gap:24px;padding:9px 0}
.pdp-list dt{color:var(--mut);font-size:15px}
.pdp-list dd{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.pdp-list .sub dt{padding-left:18px;color:var(--dim)}
.pdp-list .sub dd{font-weight:500}
.pdp-nutri .pdp-list{margin-top:0}
.pdp-story-grid{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px 40px;align-items:center}
.pdp-story-grid .eyebrow{margin:0}
.pdp-story-line{font-size:clamp(18px,1.7vw,24px);font-weight:600;color:var(--txt);max-width:56ch}
.pdp-story-links{display:flex;gap:22px}
.pdp-story-links a{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--leaf)}
.more-head{font-size:clamp(28px,3.2vw,46px);margin-bottom:clamp(24px,3vw,40px)}
@media (max-width:900px){
  .pdp-hero{grid-template-columns:1fr}
  .pdp-pic{min-height:0}
  .pdp-img{max-height:46vh}
  .pdp-story-grid{grid-template-columns:1fr}
  .pdp-details-grid{grid-template-columns:1fr}
}

/* ---------- basket ---------- */
.shop-basket .woocommerce{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.shop-basket .woocommerce>.woocommerce-notices-wrapper,.shop-basket .woocommerce>.cart-empty,.shop-basket .woocommerce>.return-to-shop,.shop-basket .woocommerce>.wc-empty-cart-message{grid-column:1/-1}
.basket-list{display:flex;flex-direction:column;gap:12px}
.line{display:grid;grid-template-columns:96px minmax(0,1fr) auto auto;gap:18px;align-items:center;background:var(--panel);padding:16px 20px;border-radius:4px}
.line-pic{width:96px;height:96px}
.line-pic img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(16,49,17,.5))}
.line-main{display:flex;flex-direction:column;gap:4px}
.line-name{font-size:17px}
.line-name a{color:var(--txt)}
.line-name a:hover{color:var(--leaf)}
.line-price{color:var(--mut);font-size:14px}
.line-remove{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);align-self:flex-start;padding:4px 0}
.line-remove:hover{color:var(--txt)}
.line-total{font-weight:800;font-size:18px;min-width:72px;text-align:right;font-variant-numeric:tabular-nums}
.basket-actions{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:10px}
.coupon{display:flex;flex-direction:column;gap:8px}
.coupon label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.coupon-row{display:flex;gap:8px}
.coupon-row .input-text{width:180px}
.cart-collaterals .cart_totals,.co-order{background:var(--bg-2);padding:clamp(20px,2.4vw,32px);border-radius:4px}
.cart_totals h2{font-size:22px;margin-bottom:14px}
.cart_totals table,.woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse}
.cart_totals th,.cart_totals td,.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{
  text-align:left;padding:10px 0;vertical-align:top;font-weight:400;color:var(--mut);font-size:15px}
.cart_totals td,.woocommerce-checkout-review-order-table td{text-align:right;color:var(--txt)}
.cart_totals th,.woocommerce-checkout-review-order-table tfoot th{font-weight:700;color:var(--txt)}
.cart_totals .order-total th,.cart_totals .order-total td,.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout-review-order-table .order-total td{
  font-size:20px;font-weight:800;padding-top:16px;color:var(--txt)}
.woocommerce-shipping-methods{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.woocommerce-shipping-methods li{display:flex;gap:8px;align-items:center;justify-content:flex-end}
.woocommerce-shipping-destination,.woocommerce-shipping-calculator{font-size:13px;color:var(--dim);margin-top:6px}
.shipping-calculator-button{color:var(--leaf);font-size:13px}
.shipping-calculator-form{margin-top:10px;display:flex;flex-direction:column;gap:8px;text-align:left}
.wc-proceed-to-checkout{margin-top:18px}
.wc-proceed-to-checkout .checkout-button{width:100%}
.cart-empty.woocommerce-info{font-size:18px}
.return-to-shop .button{margin-top:6px}
@media (max-width:900px){.shop-basket .woocommerce{grid-template-columns:1fr}}
@media (max-width:640px){
  .line{grid-template-columns:72px minmax(0,1fr);grid-template-areas:"pic main" "qty total";padding:14px}
  .line-pic{grid-area:pic;width:72px;height:72px}.line-main{grid-area:main}.line-qty{grid-area:qty}.line-total{grid-area:total;text-align:right}
}

/* ---------- checkout ---------- */
.co-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.co-details h3,.co-order h3,#ship-to-different-address{font-size:clamp(20px,2vw,26px);margin:0 0 16px}
.co-details .col2-set{display:flex;flex-direction:column;gap:34px}
.woocommerce form .form-row{display:flex;flex-direction:column;gap:7px;margin:0 0 14px}
.woocommerce form .form-row label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.woocommerce form .form-row label .optional{text-transform:none;letter-spacing:0;font-weight:400;color:var(--dim)}
.woocommerce form .form-row .required{color:var(--leaf);text-decoration:none;border:0}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:calc(50% - 7px);display:inline-flex}
.woocommerce form .form-row-first{margin-right:10px}
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:flex;flex-wrap:wrap}
.woocommerce-billing-fields__field-wrapper>.form-row-wide,.woocommerce-shipping-fields__field-wrapper>.form-row-wide,.woocommerce-additional-fields__field-wrapper>.form-row{width:100%}
.woocommerce form .form-row.woocommerce-invalid .input-text{box-shadow:inset 0 0 0 2px #943421}
#ship-to-different-address label{display:flex;gap:10px;align-items:center;cursor:pointer;font-size:inherit;letter-spacing:inherit;text-transform:inherit;font-weight:inherit;color:var(--txt)}
input[type=checkbox],input[type=radio]{accent-color:var(--green);width:18px;height:18px}
.woocommerce-checkout-review-order-table thead{display:none}
.woocommerce-checkout-review-order-table .cart_item td{padding:8px 0}
.woocommerce-checkout-review-order-table .product-name{text-align:left;color:var(--txt)}
.woocommerce-checkout-review-order-table .product-quantity{color:var(--mut);font-weight:400}
.pay-note{margin:18px 0 10px;color:var(--mut);font-size:14px}
#payment .payment_methods{display:flex;flex-direction:column;gap:10px;margin:0 0 16px}
#payment .payment_methods>li{background:var(--panel);padding:14px 16px;border-radius:4px}
#payment .payment_methods label{font-weight:700;display:inline-flex;gap:10px;align-items:center;cursor:pointer}
#payment .payment_methods img{max-height:24px;width:auto;display:inline-block}
#payment .payment_box{margin-top:10px;color:var(--mut);font-size:14px}
#payment .place-order{display:flex;flex-direction:column;gap:14px}
#place_order{width:100%}
.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--dim)}
.woocommerce-privacy-policy-text a,.woocommerce-terms-and-conditions-wrapper a{color:var(--mut);text-decoration:underline}
.woocommerce-form-coupon-toggle .woocommerce-info,.woocommerce-form-login-toggle .woocommerce-info{background:transparent;padding:0;margin-bottom:14px;color:var(--mut)}
form.checkout_coupon,form.woocommerce-form-login{background:var(--panel);padding:18px;border-radius:4px;margin-bottom:22px}
@media (max-width:900px){.co-grid{grid-template-columns:1fr}}
@media (max-width:540px){.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;margin-right:0}}

/* select2 (the country picker WooCommerce enhances) on the dark field */
.select2-container .select2-selection--single{height:auto;background:var(--panel);border:0;border-radius:3px;padding:10px 12px}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--txt);line-height:1.5;padding:0}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:100%}
.select2-dropdown{background:var(--bg-2);border:0;color:var(--txt)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--gold);color:var(--green)}
.select2-search--dropdown .select2-search__field{background:var(--panel);border:0;color:var(--txt)}

/* ---------- order received ---------- */
.woocommerce-order{max-width:860px}
.woocommerce-thankyou-order-received{font-size:clamp(18px,1.8vw,22px);color:var(--txt);margin-bottom:24px}
ul.order_details{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
ul.order_details li{background:var(--panel);padding:14px 18px;border-radius:4px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
ul.order_details li strong{display:block;margin-top:6px;font-size:16px;letter-spacing:0;text-transform:none;color:var(--txt)}
.woocommerce-order-details,.woocommerce-customer-details{margin-top:30px}
.woocommerce-order-details h2,.woocommerce-customer-details h2,.woocommerce-column__title{font-size:22px;margin-bottom:12px}
table.order_details,table.woocommerce-table{width:100%;border-collapse:collapse}
table.order_details th,table.order_details td,table.woocommerce-table th,table.woocommerce-table td{text-align:left;padding:10px 0;color:var(--mut)}
table.order_details td:last-child,table.woocommerce-table td:last-child{text-align:right;color:var(--txt)}
.woocommerce-customer-details address{font-style:normal;color:var(--mut);background:var(--panel);padding:16px 18px;border-radius:4px}

/* ---------- my account ---------- */
.shop-account .woocommerce{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.shop-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-MyAccount-navigation ul{display:flex;flex-direction:column;gap:4px}
.woocommerce-MyAccount-navigation a{display:block;padding:10px 0;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.woocommerce-MyAccount-navigation .is-active a,.woocommerce-MyAccount-navigation a:hover{color:var(--leaf)}
.woocommerce-MyAccount-content{color:var(--mut)}
.woocommerce-MyAccount-content a{color:var(--leaf)}
.woocommerce-MyAccount-content p+p{margin-top:1em}
.shop-account .u-columns,.shop-account #customer_login{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(24px,4vw,64px)}
.woocommerce-form-login,.woocommerce-form-register,.woocommerce-ResetPassword{display:flex;flex-direction:column;gap:4px}
.shop-account h2{font-size:24px;margin-bottom:14px}
.woocommerce-LostPassword a{color:var(--mut);font-size:14px}
.woocommerce-form-login__rememberme{display:flex;gap:8px;align-items:center;color:var(--mut);margin:6px 0}
@media (max-width:760px){.shop-account .woocommerce{grid-template-columns:1fr}}

/* ---------- story and change pages ---------- */
.story-head{padding-bottom:clamp(20px,3vw,40px)}
.story-head h1{font-size:clamp(38px,5vw,76px);max-width:16ch}
.change-page #change{padding-top:0}

@media (prefers-reduced-motion:reduce){.drawer,.drawer.open{transition:none}}

.change-head h1{font-size:clamp(38px,5.2vw,84px)}
.co-grid>.woocommerce-NoticeGroup,.co-grid>.woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-terms-and-conditions-wrapper .form-row{flex-direction:row;align-items:flex-start;gap:10px}
.woocommerce-terms-and-conditions-wrapper label.checkbox{display:flex;gap:10px;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;color:var(--mut)}

/* fixes from the first walk-through */
.woocommerce form .quantity .qty,.quantity .qty{width:74px;padding:14px 8px;text-align:center;font-weight:700}
.line .quantity .qty{background:rgba(16,49,17,.08)}
.mini-txt .quantity .amount,.line-price .amount{margin-left:.2em}
.woocommerce form .woocommerce-terms-and-conditions-wrapper .form-row label{flex-direction:row;display:flex;gap:10px;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;color:var(--mut)}
.woocommerce-terms-and-conditions-wrapper .form-row{margin-top:6px}

input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
input[type=number]{-moz-appearance:textfield}

.signup-inline{margin-top:32px}

/* WooCommerce's own script adds a "View basket" link after a button that has just added; the drawer
   does that job */
a.added_to_cart{display:none!important}
.drawer-note{background:rgba(228,171,22,.2);color:var(--txt);padding:10px 14px;border-radius:4px;font-size:14px;margin:4px 0 12px}

/* hover cues: the ink is one green, so a link underlines on hover instead of changing colour */
.item h3 a:hover,.line-name a:hover,.help-links a:hover,.help-links a[aria-current],.contact-info a:hover,.woocommerce-MyAccount-navigation a:hover,
.woocommerce-MyAccount-navigation .is-active a,.pdp-story-links a:hover,.mini-name:hover{text-decoration:underline;text-underline-offset:4px}

/* long words and addresses in legal text, and wide tables, never push a phone's page sideways */
.prose,.legacy-note,.page-note{overflow-wrap:anywhere}
.prose table{display:block;max-width:100%;overflow-x:auto}
.prose iframe,.prose video{max-width:100%}

/* a field sitting on a panel (the sign-in form, the coupon box) is paper, so it can be seen */
form.woocommerce-form-login .input-text,form.woocommerce-form-register .input-text,form.checkout_coupon .input-text,.woocommerce-ResetPassword .input-text,
.woocommerce-form-login .password-input input{background:var(--bg)}
.woocommerce-form-login .show-password-input{background:transparent;border:0;color:var(--mut);cursor:pointer}

/* WooCommerce shows a refused coupon right under the coupon box */
.coupon-error-notice{color:#7A2410;font-weight:600;font-size:14px;margin-top:6px}

/* ---------- product page build-out (5 Oct 2026) ---------- */
.crumbs{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:18px}
.crumbs a{color:var(--dim)}.crumbs a:hover{color:var(--txt);text-decoration:underline;text-underline-offset:4px}
.crumbs span:last-child{color:var(--txt)}
.pdp-lead{margin-top:14px;font-size:clamp(17px,1.5vw,20px);font-weight:700;color:var(--txt);max-width:44ch}
.pdp-price.soon{font-size:15px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--leaf)}
.pdp-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:22px}
.pdp-links a{font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);padding:6px 0;border-bottom:1px solid var(--line-2)}
.pdp-links a:hover{color:var(--txt);border-bottom-color:var(--txt)}
.soon-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px;max-width:480px}
.soon-form input[type=email]{flex:1 1 220px;background:var(--panel);border:0;border-radius:3px;color:var(--txt);font:inherit;font-size:16px;padding:15px 16px;outline:0}
.soon-form input[type=email]:focus{box-shadow:inset 0 0 0 2px var(--green)}
.soon-form button{background:var(--gold);color:var(--green);border:0;border-radius:2px;font:inherit;font-weight:800;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;padding:15px 26px;cursor:pointer}
.soon-form button:hover{background:#F0BA2E}
.soon-note{margin-top:12px;font-size:13px;color:var(--dim)}
.pdp-soon .form-status{max-width:480px;margin-top:12px}
/* phones: the Add to basket row stays at the bottom of the screen while the product is on screen, so it is never several screens away */
@media (max-width:760px){
  .pdp-info form.cart:not(.variations_form):not(.grouped_form){position:sticky;bottom:0;z-index:30;background:var(--bg);margin:22px calc(-1 * var(--gutter)) 0;padding:12px var(--gutter);box-shadow:0 -10px 26px rgba(16,49,17,.13)}
  .pdp-info form.cart .single_add_to_cart_button{flex:1 1 auto;min-width:0}
}

/* review fixes, 5 Oct 2026 */
[id^="form-"]{scroll-margin-top:var(--top,110px)}          /* a form's thank-you message lands under the fixed header otherwise */
.soon-form input::placeholder{color:rgba(16,49,17,.8);opacity:1}

/* the live footer links to their three social accounts; so does ours (the approved preview has no social links) */
.foot .follow{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:22px}
.foot .follow a{font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}

/* "What are people saying?": the community's own words, large and plain */
.legacy-quotes{display:grid;gap:clamp(28px,4vw,48px);margin:8px 0 12px}
.legacy-quote blockquote{font-size:clamp(20px,2.1vw,30px);font-weight:700;line-height:1.3;color:var(--txt);max-width:36ch}
.legacy-quote figcaption{margin-top:14px;font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--leaf)}
.legacy-quote figcaption span{display:block;margin-top:6px;font-weight:500;letter-spacing:.06em;text-transform:none;font-size:14px;color:var(--mut)}

/* pictures, lists and blocks carried over from their old page builder */
.legacy-block{margin-block:clamp(28px,4vw,52px)}
.legacy-list{display:flex;flex-direction:column;gap:8px;margin:14px 0}
.legacy-list li{padding-left:22px;position:relative;color:var(--mut)}
.legacy-list li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:9px;background:var(--gold);clip-path:var(--hex)}
.legacy-fig{margin:18px 0}
.legacy-fig figcaption{margin-top:10px;color:var(--mut);font-size:15px;line-height:1.6}
.legacy-fig.is-icon{display:flex;align-items:center;gap:22px;max-width:560px}
.legacy-fig.is-icon img{width:96px;height:auto;flex:none}
.legacy-fig.is-icon figcaption{margin:0}
.legacy-fig.is-icon img[src*="journey"]{filter:brightness(0);opacity:.78}   /* their journey icons are white, drawn for a red band */

.pdp-hero>*{min-width:0}   /* a wide cut-out (the twin box) must not push the grid past a 320px screen */

.foot h3.fh{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:800;margin:0 0 18px;line-height:1.2}   /* the footer column headings, one level under the page sections (h4 skipped a level) */

/* ---------- fixes from the fresh-eyes review of the staging copy (6 Oct 2026) ---------- */
body.is-inner main.page-content{padding-bottom:clamp(56px,7vw,110px)}   /* buttons and images no longer sit on the footer's edge */
.foot .legal{font-size:12.5px;color:var(--mut)}
.contact-grid{align-items:start}
.contact-grid>.prose>:first-child{margin-top:0}
/* blog, search and archive lists */
.post-item{margin-bottom:clamp(30px,4vw,48px)}
.post-item h2{font-size:clamp(24px,2.6vw,34px);line-height:1.05}
.post-item h2 a{text-decoration:none}
.post-item h2 a:hover{text-decoration:underline;text-underline-offset:5px}
.post-meta{margin-top:8px;font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.post-more{display:inline-block;margin-top:14px;font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--leaf);text-decoration:underline;text-underline-offset:5px}
.navigation.pagination{margin-top:clamp(34px,4vw,56px)}
.navigation.pagination .nav-links{display:flex;flex-wrap:wrap;gap:10px}
.navigation.pagination .page-numbers{min-width:44px;padding:12px 16px;text-align:center;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:var(--panel);border-radius:3px;color:var(--txt)}
.navigation.pagination .page-numbers.current{background:var(--green);color:var(--on-green)}
.navigation.pagination a.page-numbers:hover{background:var(--gold)}
.search-form{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 clamp(26px,3vw,40px);max-width:560px}
.search-form input[type=search]{flex:1 1 220px;background:var(--panel);border:0;border-radius:3px;color:var(--txt);font:inherit;font-size:16px;padding:14px 16px;outline:0;box-shadow:inset 0 -2px 0 rgba(16,49,17,.5)}
.search-form input[type=search]:focus{box-shadow:inset 0 0 0 2px var(--green)}
.nf-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
/* their form pages (sign-up, e-book, thank you, wholesale) carry a logo and a photo drawn on white: sat into the paper, and kept small */
.slug-signup .legacy-img,.slug-e-book .legacy-img,.slug-thank-you-for-signing-up .legacy-img,.slug-wholesale .legacy-img{mix-blend-mode:multiply}
.slug-signup .prose img.legacy-img,.slug-e-book .prose img.legacy-img{max-width:min(100%,280px);height:auto}
.slug-thank-you-for-signing-up .prose img.legacy-img{max-width:min(100%,420px);height:auto}
@media (max-width:480px){.help-links{gap:8px 16px}.help-links a{font-size:11px;letter-spacing:.14em}}

/* basket: cross-sells after everything, delivery label spacing */
.cart-more{grid-column:1/-1;margin-top:clamp(40px,6vw,84px)}
.cart_totals th{padding-right:18px;vertical-align:top;white-space:nowrap}
.cart_totals .shipping td,.cart_totals .woocommerce-shipping-totals td{text-align:right}
/* store notices (WooCommerce 11 prints them as banners): one calm band, no outline, icon beside the words */
.wc-block-components-notice-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding:14px 18px;margin:0 0 22px;border:0;border-radius:4px;background:rgba(228,171,22,.2);color:var(--txt);font-size:15px;line-height:1.5}
.wc-block-components-notice-banner.is-error{background:rgba(148,52,33,.12)}
.wc-block-components-notice-banner.is-info{background:var(--panel)}
.wc-block-components-notice-banner>svg{flex:none;width:20px;height:20px;padding:0;border-radius:0;background:none;fill:var(--green)}
.wc-block-components-notice-banner__content{flex:1 1 240px;min-width:0}
.wc-block-components-notice-banner .button,.wc-block-components-notice-banner .wc-forward{order:3;margin-left:auto;padding:10px 18px;font-size:11px}
/* converted pages: lists, buttons, galleries, maps, measure */
.legacy-list{list-style:none;padding-left:0}
p.legacy-link{display:inline-block;margin:6px 12px 8px 0}
.prose p.legacy-link a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;background:var(--gold);color:var(--green);border-radius:3px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:background .2s ease}
.prose p.legacy-link a:hover{background:#F0BA2E}
.prose p.legacy-link+p.legacy-link a{background:transparent;box-shadow:inset 0 0 0 2px var(--green)}
.prose p.legacy-link+p.legacy-link a:hover{background:rgba(16,49,17,.06)}
.legacy-contact p.legacy-link{display:block;margin:0 0 6px}
.prose .legacy-contact p.legacy-link a{display:inline;min-height:0;padding:0;background:none;box-shadow:none;color:var(--leaf);font-size:13px;letter-spacing:.12em;text-decoration:underline;text-underline-offset:4px}
.legacy-contact h3{margin-top:26px;margin-bottom:8px}
.legacy-contact h3:first-child{margin-top:0}
.prose p:empty{display:none}   /* empty paragraphs left by moved pictures (not the live regions, which are empty on purpose) */
.legacy-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.change-page .prose img.legacy-img{max-width:min(100%,360px);mix-blend-mode:multiply}
.page-content .prose>p,.page-content .prose>ul,.page-content .prose>ol{max-width:68ch}
.legal span{text-wrap:balance}
@media (max-width:640px){.pdp-more .grid>*:nth-child(n+3){display:none}}
/* the logos carry width/height attributes now (no layout shift while they load): the CSS width still sets the shown size, so the height must follow */
.hdr .logo,.foot .logo{height:auto}
/* WooCommerce focuses a notice after an add to basket; it is not a control, so no focus ring around it */
.woocommerce-message:focus,.wc-block-components-notice-banner:focus,.woocommerce-error:focus,.woocommerce-info:focus{outline:0}
/* checkout: the two optional tick rows read alike, the order list keeps "× 1" with its name, the terms star sits by its words */
.woocommerce-account-fields label.checkbox,.woocommerce-account-fields label{font-size:16px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--txt)}
.woocommerce-checkout-review-order-table .product-quantity{white-space:nowrap}
.woocommerce-terms-and-conditions-wrapper label.checkbox{justify-content:flex-start;gap:10px}
.woocommerce-terms-and-conditions-wrapper .required{margin-left:2px}
.prose ul.legacy-list,.prose ul.legacy-menu{list-style:none;padding-left:0}   /* the hexagon is the bullet; the browser's disc as well made two */

/* account: the register field needs its own fill (it has no tinted box around it, unlike the login form) */
form.woocommerce-form-register .input-text{background:var(--panel)}
/* the search form (404, results) */
.search-form label{flex:1 1 220px;display:block}
.search-form .search-field{width:100%}
.search-form .search-submit{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:0;border-radius:3px;background:var(--gold);color:var(--green);font:inherit;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.search-form .search-submit:hover{background:#F0BA2E}
.page-content .prose+.search-form{margin-top:22px}
.nf-actions .btn-ghost{background:transparent;box-shadow:inset 0 0 0 2px var(--green);color:var(--green)}
.nf-actions .btn-ghost:hover{background:rgba(16,49,17,.06);transform:none}

.pdp-img{height:auto}   /* it carries width/height attributes (to hold its place while loading); the CSS keeps it proportional and within max-height */

.nowrap{white-space:nowrap}   /* a helper class their old theme defined; their page text still uses it */

/* the beekeepers' stories (Meet the Beekeepers): a photograph, a name and a story each, two across */
.legacy-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(28px,4vw,56px);margin:10px 0 0}
.legacy-person .legacy-img{width:100%;aspect-ratio:4/5;object-fit:cover;margin-bottom:18px}
.legacy-person h3{font-size:clamp(24px,2.4vw,34px);line-height:1.05;margin-bottom:10px}
.legacy-person p{color:var(--mut);line-height:1.7}
.legacy-person p+p{margin-top:.8em}

.media-buzz{margin-top:clamp(44px,6vw,84px)}
.media-buzz .legacy-list{gap:18px}
.media-buzz .legacy-list li a{font-weight:700;font-size:clamp(17px,1.5vw,21px);color:var(--txt)}
.media-buzz .post-meta{display:block;margin-top:5px}
