/* 10eleven-store – single stylesheet. Design tokens per spec. */
@font-face{font-family:"Inter";src:url(../fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Fraunces";src:url(../fonts/fraunces-600.woff2) format("woff2");font-weight:600;font-display:swap}

:root{
  --green:#174B32;--green-d:#0f3523;--green-50:#E8F0EA;
  --orange:#B94717;--orange-d:#9a3a12;
  --ivory:#FAF7EF;--sand:#F3EEE1;--white:#fff;
  --ink:#202820;--muted:#5d665d;--line:#DDE2DA;
  --ok:#1f6b3a;--warn:#8a5a00;--err:#a02818;
  --r:10px;--r-sm:6px;--max:1280px;--pad:16px;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --shadow:0 1px 2px rgba(23,40,30,.06),0 4px 14px rgba(23,40,30,.06);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 16px/1.55 var(--sans);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--green)}
a:hover{color:var(--orange)}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.12;margin:0 0 .5em;color:var(--green-d);letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:clamp(1.55rem,3vw,2.2rem)}h3{font-size:1.2rem}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:4px}
.sr-only,.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:0;z-index:99;background:var(--green);color:#fff;padding:12px 16px}
.skip:focus{left:8px;top:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
@media(min-width:768px){:root{--pad:24px}}
.eyebrow{font:700 .74rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin:0 0 .6rem}
.section{padding-block:48px}
@media(min-width:900px){.section{padding-block:64px}}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.section-head h2{margin:0}
.link-more{font-weight:600;font-size:.95rem;white-space:nowrap}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:44px;padding:.7em 1.3em;border-radius:var(--r-sm);
  font:600 .98rem/1.1 var(--sans);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn-primary,.button.alt,.single_add_to_cart_button{background:var(--green);color:#fff;border-color:var(--green)}
.btn-primary:hover,.button.alt:hover,.single_add_to_cart_button:hover{background:var(--green-d);color:#fff}
.btn-outline{background:transparent;color:var(--green);border-color:var(--green)}
.btn-outline:hover{background:var(--green);color:#fff}
.btn-light{background:#fff;color:var(--orange-d);border-color:#fff}
.btn-light:hover{background:var(--ivory);color:var(--orange-d)}
.btn svg{width:18px;height:18px;flex:none}

/* Top strip */
.strip{background:var(--green);color:#fff;font-size:.84rem;text-align:center;padding:7px var(--pad)}
.strip a{color:#fff}

/* Header */
.site-header{background:var(--ivory);border-bottom:1px solid var(--line)}
.hdr{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding-top:12px;padding-bottom:12px}
.logo{display:flex;flex-direction:column;text-decoration:none;line-height:1}
.logo b{font:600 1.65rem/1 var(--serif);color:var(--green-d);letter-spacing:-.02em}
.logo b span{color:var(--orange)}
.logo small{font-size:.66rem;color:var(--muted);margin-top:4px;letter-spacing:.01em}
.search{position:relative;grid-column:1/-1;order:3}
.search form{display:flex;align-items:center;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:0 6px 0 14px;min-height:46px}
.search form:focus-within{border-color:var(--green)}
.search input{flex:1;border:0;background:transparent;font:inherit;font-size:16px;padding:10px 6px;min-width:0;outline:none}
.search button{border:0;background:var(--green);color:#fff;border-radius:999px;width:36px;height:36px;display:grid;place-items:center;cursor:pointer}
.search button svg{width:18px;height:18px}
.ac{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);z-index:50;overflow:hidden}
.ac[hidden]{display:none}
.ac a{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 12px;text-decoration:none;color:var(--ink);border-top:1px solid var(--line)}
.ac a:first-child{border-top:0}
.ac a[aria-selected=true],.ac a:hover{background:var(--green-50)}
.ac img{width:44px;height:44px;object-fit:contain;background:#fff}
.ac .ac-n{font-size:.9rem;line-height:1.25}
.ac .ac-p{font-weight:700;font-size:.9rem;white-space:nowrap}
.ac .ac-all{display:block;text-align:center;font-weight:600;color:var(--green);padding:10px}
.hdr-icons{display:flex;gap:4px;align-items:center}
.icon-link{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:4px 6px;color:var(--ink);text-decoration:none;font-size:.72rem;gap:2px;background:none;border:0;cursor:pointer;font-family:inherit}
.icon-link svg{width:24px;height:24px}
.icon-link .lbl{display:none}
.cart-count{position:absolute;top:0;right:2px;background:var(--orange);color:#fff;font-size:.68rem;font-weight:700;min-width:19px;height:19px;border-radius:99px;display:grid;place-items:center;padding:0 5px}
@media(min-width:900px){
  .hdr{grid-template-columns:auto minmax(280px,560px) auto;gap:32px;padding-top:16px;padding-bottom:16px}
  .search{grid-column:auto;order:0}
  .icon-link .lbl{display:block}
  .menu-toggle{display:none}
}
/* Category nav */
.cat-nav{border-top:1px solid var(--line)}
.cat-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.cat-nav ul::-webkit-scrollbar{display:none}
.cat-nav a{display:flex;align-items:center;min-height:44px;padding:0 12px;white-space:nowrap;text-decoration:none;color:var(--ink);font-weight:600;font-size:.92rem;border-bottom:3px solid transparent}
.cat-nav a:hover,.cat-nav .current-menu-item a,.cat-nav a[aria-current]{color:var(--green);border-bottom-color:var(--orange)}
@media(min-width:1100px){.cat-nav ul{flex-wrap:wrap;justify-content:center;gap:0 4px}.cat-nav a{padding:0 10px;font-size:.9rem}}

/* Hero */
.hero{position:relative;background:var(--sand);overflow:hidden}
.hero-grid{display:grid;gap:24px;align-items:center;padding-top:32px;padding-bottom:32px}
.hero p.lead{font-size:1.08rem;max-width:34ch;color:#38423a}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.hero-media{border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:#e9e1cc}
.hero-media img{width:100%;height:100%;object-fit:cover}
@media(min-width:900px){
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);padding-top:56px;padding-bottom:56px;gap:48px}
}

/* Service strip */
.usp{background:#fff;border-bottom:1px solid var(--line)}
.usp ul{list-style:none;margin:0;padding:16px 0;display:grid;gap:14px}
.usp li{display:flex;gap:12px;align-items:center}
.usp svg{width:30px;height:30px;color:var(--green);flex:none}
.usp b{display:block;font-size:.95rem}
.usp span{font-size:.84rem;color:var(--muted)}
@media(min-width:768px){.usp ul{grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 0}.usp li{justify-content:center}}

/* Category tiles */
.cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0}
@media(min-width:600px){.cats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.cat-tile{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;height:100%;transition:box-shadow .15s,transform .15s}
.cat-tile:hover{box-shadow:var(--shadow);transform:translateY(-2px);color:var(--ink)}
.cat-tile .im{aspect-ratio:4/3;background:#fff;display:block;padding:12px}
.cat-tile .im img{width:100%;height:100%;object-fit:contain}
.cat-tile .t{padding:10px 12px 12px;border-top:1px solid var(--line)}
.cat-tile b{display:flex;justify-content:space-between;gap:6px;font-size:.95rem}
.cat-tile small{color:var(--muted);font-size:.8rem}

/* Product grid + card */
ul.products,.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:768px){ul.products,.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(min-width:1100px){ul.products,.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}
ul.products::before,ul.products::after{display:none!important}
.card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;height:100%;
  width:auto!important;margin:0!important;float:none!important}
.card .im{display:block;aspect-ratio:1/1;padding:14px;background:#fff}
.card .im img{width:100%;height:100%;object-fit:contain}
.card .bd{display:flex;flex-direction:column;gap:4px;padding:10px 12px 12px;flex:1;border-top:1px solid var(--line)}
.card .brand{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
.card h3{font:600 .93rem/1.3 var(--sans);color:var(--ink);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card h3 a{color:inherit;text-decoration:none}
.card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.card .price-row{margin-top:auto;padding-top:6px}
.price{font-weight:700;font-size:1.15rem;color:var(--ink)}
.price del{color:var(--muted);font-weight:400;font-size:.85rem;margin-right:4px}
.price ins{text-decoration:none;color:var(--orange-d)}
.unit-price{display:block;font-size:.76rem;color:var(--muted);font-weight:400}
.stock-badge{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:600}
.stock-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.stock-in{color:var(--ok)}.stock-out{color:var(--err)}.stock-low{color:var(--warn)}
.card .btn,.card .button{position:relative;z-index:2;width:100%;margin-top:8px;min-height:44px;font-size:.9rem;padding:.55em .8em}
.sale-flag{position:absolute;top:10px;left:10px;z-index:2;background:var(--orange);color:#fff;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:99px}
.added_to_cart{display:block;text-align:center;font-size:.85rem;margin-top:6px;position:relative;z-index:2}

/* Recipe band */
.recipe{background:var(--orange);color:#fff}
.recipe h2,.recipe .eyebrow{color:#fff}
.recipe .eyebrow{opacity:.85}
.recipe-grid{display:grid;gap:24px;align-items:center;padding-top:40px;padding-bottom:40px}
.recipe ol{padding-left:1.2em;margin:0 0 1em}
.recipe-items{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:8px}
.recipe-items a{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.12);border-radius:var(--r-sm);padding:6px 10px 6px 6px;color:#fff;text-decoration:none;min-height:44px}
.recipe-items a:hover{background:rgba(255,255,255,.22)}
.recipe-items img{width:38px;height:38px;object-fit:contain;background:#fff;border-radius:4px}
.recipe-items .p{margin-left:auto;font-weight:700;white-space:nowrap}
.recipe .own{font-size:.88rem;opacity:.9}
.recipe-media{border-radius:var(--r);overflow:hidden;aspect-ratio:4/3}
.recipe-media img{width:100%;height:100%;object-fit:cover}
@media(min-width:900px){.recipe-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding-top:56px;padding-bottom:56px}}

/* Local shop */
.local{display:grid;gap:24px;align-items:center}
.local-media{border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;background:var(--sand)}
.local-media img{width:100%;height:100%;object-fit:cover}
.local dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 16px;margin:0 0 20px}
.local dt{font-weight:600}
.local dd{margin:0}
@media(min-width:900px){.local{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px}}

/* SEO intro block */
.prose{max-width:72ch}
.prose h2{font-size:1.35rem;margin-top:1.4em}
.faq details{border-top:1px solid var(--line);padding:12px 0}
.faq summary{cursor:pointer;font-weight:600;min-height:28px}

/* Footer */
.site-footer{background:var(--green-d);color:#dfe8e1;font-size:.92rem;margin-top:0}
.site-footer a{color:#fff}
.ft{display:grid;gap:28px;padding-top:40px;padding-bottom:32px}
.site-footer .logo b{color:#fff}.site-footer .logo small{color:#b9c8bd}
.site-footer h3{font:700 .8rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:12px}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.ft-bottom{border-top:1px solid rgba(255,255,255,.15);padding-block:16px;font-size:.8rem;color:#b9c8bd;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
@media(min-width:768px){.ft{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}

/* Breadcrumb */
.crumbs{font-size:.84rem;color:var(--muted);padding:14px 0}
.crumbs a{color:var(--muted)}

/* Shop / archive layout */
.archive-head{padding:24px 0 8px}
.archive-head p{color:var(--muted);max-width:70ch}
.shop-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:8px 0 18px}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.chips a{white-space:nowrap;border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:8px 14px;text-decoration:none;color:var(--ink);font-size:.88rem;font-weight:600;min-height:40px;display:flex;align-items:center}
.chips a[aria-current],.chips a:hover{border-color:var(--green);color:var(--green)}
.woocommerce-result-count{margin:0;color:var(--muted);font-size:.88rem}
.woocommerce-ordering select,select,input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=password],textarea{
  font:inherit;font-size:16px;border:1.5px solid var(--line);border-radius:var(--r-sm);padding:10px 12px;background:#fff;min-height:44px;max-width:100%}
.woocommerce-pagination ul{list-style:none;display:flex;gap:6px;padding:0;justify-content:center;margin:32px 0}
.woocommerce-pagination a,.woocommerce-pagination span{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;text-decoration:none}
.woocommerce-pagination .current{background:var(--green);color:#fff;border-color:var(--green)}

/* Single product */
.pdp{display:grid;gap:24px;padding-bottom:40px}
@media(min-width:900px){.pdp{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}}
.pdp .woocommerce-product-gallery{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px;width:100%!important;float:none!important;margin:0!important}
.pdp .woocommerce-product-gallery img{width:100%;aspect-ratio:1/1;object-fit:contain}
.pdp .flex-control-thumbs{list-style:none;display:flex;gap:8px;padding:0;margin:12px 0 0}
.pdp .flex-control-thumbs li{width:64px}
.pdp .summary{width:100%!important;float:none!important;margin:0!important}
.pdp .product_title{font-size:clamp(1.6rem,3vw,2.3rem)}
.pdp .price{font-size:1.7rem;margin:0}
.pdp .unit-price{font-size:.88rem;margin-bottom:6px}
.pdp .tax-note{font-size:.8rem;color:var(--muted)}
.pdp form.cart{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.pdp .quantity input{width:84px;text-align:center}
.pdp .single_add_to_cart_button{flex:1;min-width:200px;min-height:50px;font-size:1.02rem;border-radius:var(--r-sm)}
.delivery-box{border:1px solid var(--line);background:#fff;border-radius:var(--r);padding:12px 14px;display:grid;gap:10px;font-size:.9rem}
.delivery-box div{display:flex;gap:10px;align-items:flex-start}
.delivery-box svg{width:22px;height:22px;color:var(--green);flex:none;margin-top:1px}
.product_meta{font-size:.84rem;color:var(--muted);margin-top:14px}
.woocommerce-tabs{grid-column:1/-1}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:4px;padding:0;margin:0;border-bottom:1px solid var(--line);overflow-x:auto}
.woocommerce-tabs ul.tabs li a{display:block;padding:12px 16px;text-decoration:none;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap}
.woocommerce-tabs ul.tabs li.active a{color:var(--green);border-bottom-color:var(--orange)}
.woocommerce-tabs .panel{background:#fff;border:1px solid var(--line);border-top:0;padding:20px;border-radius:0 0 var(--r) var(--r)}
.woocommerce-tabs .panel h2{font-size:1.25rem}
.related,.upsells{grid-column:1/-1}
.related>h2,.upsells>h2{margin:24px 0 16px}
.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--line);padding:8px var(--pad);display:flex;gap:12px;align-items:center;box-shadow:0 -4px 14px rgba(0,0,0,.06);transform:translateY(110%);transition:transform .2s}
.sticky-buy.show{transform:none}
.sticky-buy .btn{flex:1}
@media(min-width:900px){.sticky-buy{display:none}}

/* Notices + WC basics */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{list-style:none;border-radius:var(--r-sm);padding:12px 16px;margin:16px 0;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green)}
.woocommerce-error{border-left-color:var(--err)}
.woocommerce-message .button{float:right;margin-left:12px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.6em 1.2em;border-radius:var(--r-sm);background:var(--green);color:#fff;border:0;font:600 .95rem/1.1 var(--sans);text-decoration:none;cursor:pointer}
.button:hover{background:var(--green-d);color:#fff}
.button.disabled,.button:disabled{opacity:.55;cursor:not-allowed}
.page-content{padding-block:24px 56px}
.onsale{display:none}
.star-rating{display:none}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(max-width:340px){.logo b{font-size:1.35rem}.hero-cta .btn{width:100%}}

/* Homepage additions */
.hero-collage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;max-width:500px;justify-self:center;width:100%}
.hero-collage figure{margin:0;background:#fff;border-radius:var(--r);border:1px solid var(--line);aspect-ratio:1/1;display:grid;place-items:center;padding:8%}
.hero-collage figure:nth-child(2){transform:translateY(16px)}
.hero-collage img{width:100%;height:100%;object-fit:contain}
@media(max-width:899px){.hero-collage{display:none}}
.recipe-steps{background:rgba(255,255,255,.1);border-radius:var(--r);padding:20px 20px 20px 40px;margin:0;display:grid;gap:10px}
.home-seo{background:#fff;border-top:1px solid var(--line)}
.home-seo-grid{display:grid;gap:32px}
.home-seo .prose ul{padding-left:1.2em;display:grid;gap:6px}
.home-seo h3{font-size:1.15rem;margin-top:1.4em}
.faq h2{font-size:1.35rem}
.faq details p{margin:.6em 0 0;color:#38423a}
@media(min-width:900px){.home-seo-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:56px;align-items:start}}

.prose ul.products{padding-left:0;max-width:none;margin:16px 0 24px}

/* =====================================================================
   v1.2 – warm, borderless look: sand background everywhere, rounded
   product photos that blend into the page (white packshot backgrounds
   disappear via multiply), pill controls, accordions.
   ===================================================================== */
:root{--ivory:#F4F1EC;--sand:#EAE3D6;--tile:#ECE6DA;--tile-2:#E4DCCC;--r:22px;--pill:999px;--line:#E1D9C9}
body{background:var(--ivory)}
.site-header{background:var(--ivory);border-bottom:0}
.cat-nav{border-top:0}
.search form{background:var(--sand);border:0;border-radius:var(--pill)}
.search form:focus-within{box-shadow:0 0 0 2px var(--green)}
.strip{display:flex;justify-content:center;gap:12px 40px;flex-wrap:wrap;font-size:.8rem;font-weight:600;letter-spacing:.02em}
.strip span:not(:first-child){display:none}
@media(min-width:768px){.strip span:not(:first-child){display:inline}}

/* Buttons & controls as pills */
.btn,.button,.single_add_to_cart_button,.woocommerce-pagination a,.woocommerce-pagination span,.chips a,.chips button{border-radius:var(--pill)!important}
.btn-primary,.button.alt,.single_add_to_cart_button{box-shadow:none}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=password],select,textarea{background:#FBF9F5;border-color:var(--line)}

/* Images blend into the warm background */
.card .im,.cat-tile .im,.hero-collage figure,.pdp .woocommerce-product-gallery,.gal{background:var(--tile)}
.card .im img,.cat-tile .im img,.hero-collage img,.pdp .woocommerce-product-gallery img,.gal img,.ac img{mix-blend-mode:multiply}

/* Product card: rounded photo, text sits on the page */
.card{background:transparent;border:0;border-radius:0;overflow:visible}
.card .im{border-radius:var(--r);padding:18px;transition:background .2s}
.card:hover .im{background:var(--tile-2)}
.card .bd{border-top:0;padding:12px 4px 4px;gap:5px}
.card h3{font-size:.95rem}
.card .btn,.card .button{min-height:42px;font-size:.88rem}
.sale-flag{top:12px;left:12px;background:#C2410C;font-size:.74rem;padding:4px 10px}

/* Category tiles */
.cat-tile{background:transparent;border:0;border-radius:0;overflow:visible}
.cat-tile:hover{box-shadow:none;transform:none}
.cat-tile .im{border-radius:var(--r);padding:16px;transition:background .2s}
.cat-tile:hover .im{background:var(--tile-2)}
.cat-tile .t{border-top:0;padding:10px 4px 0}

/* Hero & bands without white */
.hero{background:var(--ivory)}
.hero-collage figure{border:0;border-radius:var(--r)}
.usp{background:transparent;border-bottom:0}
.usp ul{background:var(--tile);border-radius:var(--r);padding:16px 20px}
.home-seo{background:var(--tile);border-top:0}
.delivery-box{background:transparent;border:0;padding:0;gap:8px}
.ac{background:#FBF9F5}
.local-media{border-radius:var(--r)}
.recipe{border-radius:0}

/* FAQ / accordions with + icon */
.faq details,.acc details{border-top:1px solid var(--line);padding:0}
.faq details:last-child,.acc details:last-child{border-bottom:1px solid var(--line)}
.faq summary,.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px;cursor:pointer;font-weight:600}
.faq summary::-webkit-details-marker,.acc summary::-webkit-details-marker{display:none}
.faq summary::after,.acc summary::after{content:"+";font:300 1.6rem/1 var(--sans);color:var(--green);transition:transform .2s}
.faq details[open] summary::after,.acc details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 14px}
.acc{grid-column:1/-1;margin-top:8px}
.acc summary{font:700 .82rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.acc .acc-body{padding:4px 0 20px;max-width:75ch}
.acc .acc-body h2{font-size:1.15rem}

/* Product page */
.pdp .woocommerce-product-gallery{border:0;border-radius:28px;padding:28px}
.pdp .summary .price{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.price-badge{display:inline-block;background:#C2410C;color:#fff;font:700 .74rem/1 var(--sans);padding:5px 10px;border-radius:var(--pill)}
.highlights{list-style:none;padding:14px 0;margin:14px 0;border-block:1px solid var(--line);display:grid;gap:8px 20px;font-size:.92rem}
@media(min-width:600px){.highlights{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.highlights li{display:flex;gap:8px;align-items:flex-start}
.highlights li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);margin-top:.5em;flex:none}
.ship-line{display:flex;align-items:center;gap:8px;color:var(--green);font-weight:600;margin:10px 0}
.ship-line svg{width:22px;height:22px}
.pdp form.cart{align-items:center}
.qty-step{display:inline-flex;align-items:center;background:var(--sand);border-radius:var(--pill);padding:3px}
.qty-step button{width:42px;height:42px;border:0;background:transparent;border-radius:50%;font-size:1.3rem;color:var(--ink);cursor:pointer}
.qty-step button:hover{background:var(--tile-2)}
.qty-step input{width:46px!important;border:0!important;background:transparent!important;text-align:center;min-height:42px;padding:0;-moz-appearance:textfield}
.qty-step input::-webkit-outer-spin-button,.qty-step input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
/* quantity tiers (10eleven-core) */
.tiers{margin:16px 0 4px}
.tiers-bar{display:flex;justify-content:space-between;font-size:.78rem;color:var(--muted);padding:0 6px 6px}
.tiers-track{height:6px;border-radius:9px;background:var(--sand);margin-bottom:12px;position:relative}
.tiers-fill{position:absolute;inset:0 auto 0 0;background:var(--green);border-radius:9px;width:0;transition:width .2s}
.tiers-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px}
.tiers-opts button{border:1.5px solid var(--line);background:transparent;border-radius:var(--pill);padding:10px 8px;cursor:pointer;font:inherit;color:var(--ink);line-height:1.25}
.tiers-opts button small{display:block;color:var(--ok);font-weight:600}
.tiers-opts button[aria-pressed=true]{border-color:var(--green);background:var(--green-50)}
/* size pills for variable products */
.var-pills{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 4px}
.var-pills button{border:1.5px solid var(--line);background:transparent;border-radius:var(--pill);padding:10px 18px;font:600 .92rem var(--sans);cursor:pointer;color:var(--ink);min-height:44px}
.var-pills button[aria-pressed=true]{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}
.var-pills button:disabled{text-decoration:line-through;opacity:.5;cursor:not-allowed}
.variations select.te-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sticky-buy{background:var(--ivory)}

/* Google reviews */
.reviews{grid-column:1/-1;margin:8px 0}
.rev-head h2{color:var(--orange);margin-bottom:16px}
.rev-summary{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between;background:var(--tile);border-radius:var(--r);padding:16px 20px;margin-bottom:14px}
.rev-score{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rev-score b{font:600 1.6rem/1 var(--serif);color:var(--ink)}
.rev-score span{color:var(--muted);font-size:.9rem}
.rev-actions{display:flex;gap:10px;flex-wrap:wrap}
.rev-actions .btn{min-height:42px;padding:.55em 1.1em;font-size:.9rem}
.stars{display:inline-flex;gap:2px;vertical-align:middle}
.rev-list{list-style:none;margin:0;padding:0 0 6px;display:grid;grid-auto-flow:column;grid-auto-columns:min(86%,380px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
@media(min-width:900px){.rev-list{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}}
.rev{scroll-snap-align:start;background:var(--tile);border-radius:var(--r);padding:18px 20px;display:flex;flex-direction:column;gap:10px;min-width:0}
.rev p{margin:0;font-size:.95rem;line-height:1.55}
.rev-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}
.rev-top small{display:block;color:var(--muted);font-size:.8rem}
.rev-av{width:40px;height:40px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700}
.rev-cta{background:transparent;border:1.5px dashed var(--line);justify-content:center}
.rev-cta .btn{align-self:flex-start}
.rev-note{font-size:.76rem;color:var(--muted);margin:10px 0 0}
.pdp form.cart .tiers{flex:1 0 100%}
.pdp form.cart .qty-step{flex:none}

/* Quantity tiers – track with markers, savings above, pill options below */
.tiers{margin:18px 0 6px}
.tiers-row{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:12px}
.tiers-top{font-size:.84rem;color:var(--muted);margin-bottom:8px}
.tiers-top>span{text-align:center}
.tiers-top>span:first-child{text-align:left;padding-left:4px;color:var(--ink)}
.tiers-track{position:relative;height:8px;border-radius:9px;background:var(--sand);margin:0 0 16px}
.tiers-fill{position:absolute;inset:0 auto 0 0;width:0;background:var(--green);border-radius:9px;transition:width .25s ease}
.tiers-ticks{position:absolute;inset:0}
.tiers-ticks i{justify-self:center;width:0;height:0;margin-top:8px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:8px solid var(--sand)}
.tiers-ticks i.on{border-top-color:var(--green)}
.tiers-opts button{border:1.5px solid var(--line);background:transparent;border-radius:var(--pill);padding:12px 8px;cursor:pointer;font:500 1rem/1.3 var(--sans);color:var(--ink);min-height:64px;transition:border-color .15s,background .15s}
.tiers-opts button small{display:block;color:var(--ok);font-size:.95rem;font-weight:500}
.tiers-opts button:hover{border-color:var(--green)}
.tiers-opts button[aria-pressed=true]{border-color:var(--green);background:var(--green-50)}
.tiers-opts button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:420px){.tiers-opts button{font-size:.9rem;padding:10px 4px}.tiers-opts button small{font-size:.82rem}}
.ship-line{font-size:1.02rem;margin:14px 0}
/* Size pills with check badge */
.var-pills{gap:12px;margin:8px 0 6px}
.var-pills button{position:relative;padding:12px 26px;min-height:52px;font-weight:500;font-size:1rem}
.var-pills button[aria-pressed=true]{border-color:var(--green);box-shadow:none}
.var-pills button[aria-pressed=true]::after{content:"";position:absolute;top:-7px;right:-5px;width:22px;height:22px;border-radius:50%;background:#F4A261 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/13px no-repeat}
.pdp table.variations{border:0;margin:0}
.pdp table.variations th{display:block;text-align:left;font-size:.84rem;color:var(--muted);font-weight:600;padding:0}
.pdp table.variations td{display:block;padding:0}
.pdp .reset_variations{font-size:.8rem}
.pdp form.variations_form{display:block}
.pdp .single_variation_wrap .woocommerce-variation-price .price{font-size:1.3rem;margin:8px 0}
.pdp .woocommerce-variation-add-to-cart{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.pdp .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:1}
.search input[type=search]{background:transparent;border:0;min-height:0;padding:10px 6px}
.wc-block-components-button:not(.is-link){background:var(--green);color:#fff;border-radius:var(--pill);min-height:50px;font-weight:600;border:0}
.wc-block-components-button:not(.is-link):hover{background:var(--green-d);color:#fff}
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{text-decoration:none;width:100%}

/* Recipe blog */
.rgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(min-width:900px){.rgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.rgrid-lg{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rcard a{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);height:100%}
.rcard-im{display:block;aspect-ratio:4/3;background:var(--tile);border-radius:var(--r);padding:18px;transition:background .2s}
.rcard-im img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.rcard a:hover .rcard-im{background:var(--tile-2)}
.rcard-bd{padding:10px 4px 0;display:flex;flex-direction:column;gap:4px}
.rcard-bd small{color:var(--orange-d);font-weight:600;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}
.rcard-bd b{font:600 1.08rem/1.25 var(--serif);color:var(--green-d)}
.rcard a:hover b{text-decoration:underline}
.recipe-head{display:grid;gap:20px;align-items:center;margin-bottom:24px}
@media(min-width:900px){.recipe-head{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px}}
.recipe-img{background:var(--tile);border-radius:28px;padding:28px;aspect-ratio:4/3;display:grid;place-items:center}
.recipe-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.rmeta{list-style:none;padding:0;margin:16px 0 0;display:flex;gap:10px;flex-wrap:wrap}
.rmeta li{background:var(--tile);border-radius:var(--pill);padding:8px 16px;display:flex;flex-direction:column;line-height:1.2}
.rmeta span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.rmeta b{font-size:.95rem}
.recipe-body{max-width:78ch}
.recipe-body .lead{font-size:1.12rem;color:#38423a}
.recipe-body ul.ingredients{background:var(--tile);border-radius:var(--r);padding:18px 18px 18px 40px;columns:2 220px;column-gap:32px}
.recipe-body ul.ingredients li{break-inside:avoid;margin-bottom:6px}
.recipe-body ol.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:14px}
.recipe-body ol.steps li{counter-increment:s;display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start}
.recipe-body ol.steps li::before{content:counter(s);width:32px;height:32px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem}
.recipe-body ul.products{margin:12px 0 28px}
.prod-recipes{grid-column:1/-1;margin:24px 0}
.prod-recipes .section-head{margin-bottom:16px}

/* Language switcher */
.lang ul{list-style:none;margin:0;padding:3px;display:flex;gap:2px;background:var(--sand);border-radius:var(--pill)}
.lang a{display:grid;place-items:center;min-width:38px;min-height:34px;padding:0 8px;border-radius:var(--pill);font:700 .78rem/1 var(--sans);letter-spacing:.04em;color:var(--ink);text-decoration:none}
.lang a:hover{background:var(--tile-2)}
.lang a[aria-current]{background:var(--green);color:#fff}
.lang-header{margin-right:6px}
.lang-mobile{display:none}
@media(max-width:899px){
  .lang-header{display:none}
  .hdr .logo{grid-column:1;grid-row:1}
  .hdr .hdr-icons{grid-column:2/4;grid-row:1;justify-self:end}
  .hdr .search{grid-column:1/3;grid-row:2}
  .lang-mobile{display:block;grid-column:3;grid-row:2;align-self:center}
  .lang-mobile a{min-width:34px;padding:0 6px}
}
.lang-footer ul{background:rgba(255,255,255,.1)}
.lang-footer a{color:#fff}

/* Pillar guides */
.pillar-page{max-width:none}
.pillar-page>:not(ul.products):not(.rgrid):not(.faq){max-width:75ch}
.pillar-page .faq{max-width:75ch}
.pillar-page .lead{font-size:1.12rem;color:#38423a}
.toc{background:var(--tile);border-radius:var(--r);padding:16px 20px;margin:20px 0 28px}
.toc b{display:block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:6px}
.toc ol{margin:0;padding-left:1.2em;display:grid;gap:4px}
.pillar-page h2{scroll-margin-top:16px;margin-top:1.6em}
.pillar-page ul.products,.pillar-page .rgrid{margin:14px 0 26px}
.cta-line{background:var(--green-50);border-radius:var(--r);padding:12px 16px;font-weight:600}
.pillar-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;background:var(--tile);border-radius:var(--r);padding:14px 18px;margin:16px 0;text-decoration:none;color:var(--ink);max-width:75ch}
.pillar-callout small{grid-column:1;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--orange-d);font-weight:700}
.pillar-callout b{grid-column:1;font:600 1.05rem/1.3 var(--serif);color:var(--green-d)}
.pillar-callout span{grid-column:2;grid-row:1/3;font-size:1.4rem;color:var(--green)}
.pillar-callout:hover{background:var(--tile-2);color:var(--ink)}
.rcard-desc{font-size:.88rem;color:var(--muted);line-height:1.45}

/* ---------- v1.6 Magazin, benefits, FAQ in content, cite box ---------- */
.byline{font-size:.86rem;color:#5b6359;margin:-.2em 0 1em}
.prose table{width:100%;border-collapse:collapse;margin:16px 0 24px;font-size:.94rem;background:var(--tile);border-radius:14px;overflow:hidden;display:block;overflow-x:auto}
.prose th,.prose td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.prose th{background:var(--tile-2);font-weight:600;color:var(--green-d);white-space:nowrap}
.prose tr:last-child td{border-bottom:0}
.mag-article h3{font:600 1.08rem/1.3 var(--serif);color:var(--green-d);margin:1.2em 0 .4em}
.benefits{background:var(--tile);border-radius:var(--r);padding:16px 20px;margin:18px 0 24px;max-width:75ch}
.benefits h2,.benefits h3{margin:0 0 8px;font-size:1.1rem}
.benefits ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.benefits li{position:relative;padding-left:28px}
.benefits li::before{content:"";position:absolute;left:0;top:.3em;width:18px;height:18px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/12px no-repeat}
.prose .faq{max-width:75ch;margin:28px 0}
.readmore{display:grid;gap:6px}
.cite-box{background:var(--tile);border:1px dashed var(--green);border-radius:var(--r);padding:16px 20px;margin:28px 0;max-width:75ch}
.cite-box b{display:block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:6px}
.cite-box p{margin:0 0 8px}
.cite-box textarea{width:100%;font:13px/1.4 ui-monospace,Menlo,monospace;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fbfaf7;color:var(--ink);resize:none}
.desc-faq h3{font-size:1rem;margin:1em 0 .2em;font-family:var(--sans);font-weight:600}
.desc-faq p{margin:0 0 .6em}

/* ---------- v1.8: recipe photos, mobile polish, third-party widgets ---------- */
.rcard-photo .rcard-im{padding:0;overflow:hidden;aspect-ratio:3/2}
.rcard-photo .rcard-im img{object-fit:cover;mix-blend-mode:normal;transition:transform .3s}
.rcard-photo a:hover .rcard-im img{transform:scale(1.03)}
.recipe-img.is-photo{padding:0;overflow:hidden;aspect-ratio:3/2;position:relative;margin:0;display:block}
.recipe-img.is-photo img{width:100%;height:100%;max-height:none;object-fit:cover;mix-blend-mode:normal}
@media (prefers-reduced-motion:reduce){.rcard-photo .rcard-im img{transition:none}}
/* Prices: never break between amount and € */
.amount{white-space:nowrap}
.mini-bd del,.price del{color:var(--muted);font-weight:400;font-size:.88em;margin-right:4px}
.mini-bd ins,.price ins{text-decoration:none}
/* reCAPTCHA badge hidden – the required notice is printed at checkout instead */
.grecaptcha-badge{visibility:hidden!important}
.recaptcha-note{font-size:.75rem;color:var(--muted);margin:10px 0 0}
/* Chat widget: smaller, no label bubble on phones, never on top of the buy bar */
@media (max-width:899px){
  .chaty-widget .on-hover-text{display:none!important}
  .chaty-widget{bottom:16px!important;left:12px!important;transform:scale(.85);transform-origin:bottom left}
  body.single-product .chaty-widget{bottom:88px!important}
}

/* v1.9 recipe actions */
.recipe-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.recipe-actions .btn{display:inline-flex;align-items:center;gap:8px}
.recipe-actions svg{width:18px;height:18px}
#zutaten-shop{scroll-margin-top:20px}
@media(max-width:599px){.recipe-actions .btn{flex:1 1 auto;justify-content:center}}
@media print{.site-header,.site-footer,.recipe-actions,.prod-recipes,.add-all,ul.products,.drawer,.chaty-widget{display:none!important}}

/* v1.9 mobile safety net (iOS Safari): nothing may widen the page */
html{overflow-x:clip}
@supports not (overflow:clip){html{overflow-x:hidden}}
.cats>li,.products>li,.rgrid>li,.minis>li{min-width:0}
.cat-tile .im,.card .im{min-width:0;overflow:hidden}

/* Cart table on small phones: one card per product */
@media(max-width:600px){
  table.shop_table_responsive{display:block;width:100%;border:0}
  table.shop_table_responsive thead{display:none}
  table.shop_table_responsive tbody,table.shop_table_responsive tr,table.shop_table_responsive td{display:block;width:100%;box-sizing:border-box}
  table.shop_table_responsive tr.cart_item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:4px 12px;align-items:center;background:var(--tile);border-radius:14px;padding:10px 12px;margin-bottom:10px;position:relative}
  table.shop_table_responsive tr.cart_item td{padding:0;border:0;text-align:left}
  table.shop_table_responsive tr.cart_item td::before{display:none}
  table.shop_table_responsive td.product-thumbnail{grid-row:1/4;grid-column:1}
  table.shop_table_responsive td.product-thumbnail img{width:72px;height:72px;object-fit:contain;mix-blend-mode:multiply}
  table.shop_table_responsive td.product-name{grid-column:2/4;padding-right:28px}
  table.shop_table_responsive td.product-price{display:none}
  table.shop_table_responsive td.product-quantity{grid-column:2}
  table.shop_table_responsive td.product-subtotal{grid-column:3;font-weight:600;text-align:right}
  table.shop_table_responsive td.product-remove{position:absolute;top:6px;right:8px;width:auto}
  table.shop_table_responsive td.actions{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}
  table.shop_table_responsive td.actions .coupon{display:flex;gap:8px;width:100%}
  table.shop_table_responsive td.actions .coupon input{flex:1;min-width:0}
  .cart_totals table.shop_table_responsive tr{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}
  .cart_totals table.shop_table_responsive th{text-align:left}
  .cart_totals table.shop_table_responsive td{width:auto;text-align:right}
  .cart_totals table.shop_table_responsive td::before{display:none}
}

/* v1.9 Amazon-style product text */
.about-item{list-style:none;margin:14px 0;padding:0;display:grid;gap:8px;font-size:.93rem;line-height:1.5}
.about-item li{position:relative;padding-left:20px}
.about-item li::before{content:"";position:absolute;left:2px;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--orange)}
.about-item strong{color:var(--green-d);font-weight:700;letter-spacing:.02em}
table.specs{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:.92rem;background:var(--tile);border-radius:14px;overflow:hidden}
table.specs th,table.specs td{padding:9px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
table.specs th{width:38%;font-weight:600;color:var(--green-d)}
table.specs tr:last-child th,table.specs tr:last-child td{border-bottom:0}
