.woocommerce .button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button{min-height:var(--farmed-btn-height);padding:0 24px;border-radius:var(--farmed-btn-radius);background:var(--farmed-forest);color:#fff}.woocommerce table.shop_table{border:1px solid var(--farmed-line);border-radius:var(--farmed-card-radius);overflow:hidden;background:#fff}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px 18px}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{min-height:48px;border:1px solid rgba(23,52,33,.18);border-radius:12px;padding:10px 13px;background:#fff}body.woocommerce-order-received .woocommerce-order-details small.shipped_via{display:none!important}



/* =========================================================
   FARMED 2.3 — SHOP / PRODUCTS
   ========================================================= */
.farmed-shop-hero{padding:76px 0 64px;background:var(--farmed-paper)}
.farmed-shop-hero__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr);gap:70px;align-items:center}
.farmed-shop-hero__copy{max-width:900px}.farmed-shop-hero .farmed-kicker{margin-bottom:18px}.farmed-shop-hero .farmed-lead{max-width:760px;margin:24px 0 0}
.farmed-shop-hero__art{width:min(360px,100%);justify-self:end;color:var(--farmed-gold);opacity:.16}

.farmed-shop-family{padding:34px 0;border-top:1px solid var(--farmed-line)}
.farmed-shop-family--herba{background:linear-gradient(180deg,rgba(247,243,234,.58),rgba(252,251,247,.8))}
.farmed-shop-family__row{display:grid;grid-template-columns:280px minmax(0,1fr);gap:44px;align-items:stretch}
.farmed-shop-family__intro{padding:10px 0}.farmed-shop-family__intro .farmed-kicker{margin-bottom:7px}
.farmed-shop-family__title{margin:0;color:var(--farmed-forest);font:400 31px/1.1 var(--farmed-font-display);letter-spacing:.02em}
.farmed-shop-family__intro p{margin:12px 0 0;color:var(--farmed-muted);font-size:14px;line-height:1.65;max-width:28ch}
.farmed-shop-category-grid{display:grid;gap:18px}.farmed-shop-category-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.farmed-shop-category-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.farmed-shop-category-card{min-height:150px;padding:22px;border:1px solid var(--farmed-line);border-radius:20px;background:linear-gradient(135deg,rgba(184,185,154,.18),rgba(247,243,234,.65));display:flex;align-items:center;gap:22px;transition:transform var(--farmed-transition),box-shadow var(--farmed-transition),border-color var(--farmed-transition)}
.farmed-shop-category-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(23,52,33,.08);border-color:rgba(189,132,37,.30)}
.farmed-shop-category-card__icon{width:78px;height:78px;flex:0 0 78px;border-radius:50%;background:rgba(255,255,255,.72);display:grid;place-items:center;color:var(--farmed-forest)}
.farmed-shop-category-card__icon svg{width:45px;height:45px}.farmed-shop-category-card__copy{min-width:0}
.farmed-shop-category-card__copy h3{margin:0 0 10px;color:var(--farmed-forest);font:400 26px/1.12 var(--farmed-font-display)}
.farmed-shop-category-card__copy span{color:var(--farmed-muted);font-size:13px}.farmed-shop-category-card__copy span::first-letter{color:var(--farmed-gold)}
.farmed-shop-family--gifts{padding-bottom:48px}.farmed-shop-category-card--wide{width:100%}.farmed-shop-category-card__gift{width:78px;height:78px;flex:0 0 78px;border-radius:50%;background:rgba(255,255,255,.72);display:grid;place-items:center;color:var(--farmed-forest);font:400 46px/1 var(--farmed-font-display)}

.farmed-shop-all{border-top:1px solid var(--farmed-line);background:var(--farmed-paper)}
.farmed-shop-all__head{display:grid;grid-template-columns:1fr minmax(320px,560px);gap:70px;align-items:end;margin-bottom:36px}.farmed-shop-all__head .farmed-kicker{margin-bottom:10px}.farmed-shop-all__head>p{margin:0;color:var(--farmed-muted);font-size:15px;line-height:1.7}
.farmed-shop-toolbar{min-height:54px;margin-bottom:26px}.farmed-shop-empty{padding:64px;border:1px solid var(--farmed-line);border-radius:var(--farmed-card-radius);background:rgba(255,255,255,.6);text-align:center}.farmed-shop-empty .farmed-kicker{margin-bottom:12px}.farmed-shop-empty p{max-width:720px;margin:16px auto 0;color:var(--farmed-muted)}
.farmed-shop-all ul.products,.farmed-product-archive ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:var(--farmed-card-gap)!important;margin:0!important;padding:0!important}.farmed-shop-all ul.products::before,.farmed-shop-all ul.products::after,.farmed-product-archive ul.products::before,.farmed-product-archive ul.products::after{display:none!important}
.farmed-shop-all ul.products li.product,.farmed-product-archive ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:0 0 24px!important;border:1px solid var(--farmed-line);border-radius:var(--farmed-card-radius);overflow:hidden;background:#fff;display:flex;flex-direction:column;min-width:0;transition:transform var(--farmed-transition),box-shadow var(--farmed-transition)}.farmed-shop-all ul.products li.product:hover,.farmed-product-archive ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(23,52,33,.09)}
.farmed-shop-all ul.products li.product img,.farmed-product-archive ul.products li.product img{width:100%!important;aspect-ratio:1/1;object-fit:cover;margin:0 0 22px!important;background:var(--farmed-cream)}.farmed-shop-all ul.products li.product .woocommerce-loop-product__title,.farmed-product-archive ul.products li.product .woocommerce-loop-product__title{font-family:var(--farmed-font-display);font-size:27px!important;line-height:1.12!important;font-weight:400!important;color:var(--farmed-forest);padding:0 22px!important;margin:0 0 8px!important}.farmed-shop-all ul.products li.product .price,.farmed-product-archive ul.products li.product .price{display:block;padding:0 22px;color:var(--farmed-gold)!important;font-size:15px!important;font-weight:700!important;margin:0 0 18px!important}.farmed-shop-all ul.products li.product .button,.farmed-product-archive ul.products li.product .button{margin:auto 22px 0!important;align-self:flex-start}
.woocommerce .woocommerce-result-count{color:var(--farmed-muted);margin:10px 0 24px}.woocommerce .woocommerce-ordering{margin:0 0 24px}.woocommerce .woocommerce-ordering select{min-height:44px;border:1px solid var(--farmed-line);border-radius:999px;background:#fff;padding:0 40px 0 16px;color:var(--farmed-forest)}
.farmed-product-archive__hero{padding:82px 0 62px;background:var(--farmed-cream);border-bottom:1px solid var(--farmed-line)}.farmed-shop-back{display:inline-block;margin-bottom:34px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--farmed-gold)}.farmed-product-archive__hero .farmed-kicker{margin-bottom:12px}.farmed-product-archive__desc{margin-top:18px}.farmed-product-archive__desc p{margin:0}
@media(max-width:1180px){.farmed-shop-family__row{grid-template-columns:230px minmax(0,1fr)}.farmed-shop-category-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.farmed-shop-all ul.products,.farmed-product-archive ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){.farmed-shop-hero__inner{grid-template-columns:1fr}.farmed-shop-hero__art{display:none}.farmed-shop-family__row{grid-template-columns:1fr}.farmed-shop-family__intro p{max-width:60ch}.farmed-shop-all__head{grid-template-columns:1fr;gap:18px}}
@media(max-width:700px){.farmed-shop-hero{padding:58px 0 48px}.farmed-shop-hero .farmed-h1{font-size:clamp(48px,14vw,64px)}.farmed-shop-family{padding:48px 0}.farmed-shop-family__row{gap:28px}.farmed-shop-family__title{font-size:34px}.farmed-shop-category-grid--3,.farmed-shop-category-grid--2{grid-template-columns:1fr}.farmed-shop-category-card{min-height:132px;padding:18px;gap:17px}.farmed-shop-category-card__icon,.farmed-shop-category-card__gift{width:66px;height:66px;flex-basis:66px}.farmed-shop-category-card__icon svg{width:38px;height:38px}.farmed-shop-category-card__copy h3{font-size:25px}.farmed-shop-all ul.products,.farmed-product-archive ul.products{grid-template-columns:1fr!important}.farmed-shop-empty{padding:42px 22px}.farmed-product-archive__hero{padding:58px 0 46px}}


/* =========================================================
   FARMED 2.3.2 — responsive + WooCommerce polish
   ========================================================= */
.farmed-shop-family,.farmed-shop-all{scroll-margin-top:calc(var(--farmed-header-height) + 18px)}

@media(max-width:700px){
  .farmed-shop-hero{padding:44px 0 38px}
  .farmed-shop-hero .farmed-h1{font-size:clamp(44px,12vw,56px);line-height:.96}
  .farmed-shop-hero .farmed-lead{font-size:17px;line-height:1.58;margin-top:20px}

  .farmed-shop-family{padding:34px 0}
  .farmed-shop-family--gifts{padding-bottom:38px}
  .farmed-shop-family__row{gap:20px}
  .farmed-shop-family__intro{padding:0}
  .farmed-shop-family__intro p{margin-top:10px;line-height:1.55}
  .farmed-shop-category-grid{gap:14px}
  .farmed-shop-category-card{min-height:118px;padding:16px;gap:16px}
  .farmed-shop-category-card__icon,.farmed-shop-category-card__gift{width:64px;height:64px;flex-basis:64px}
  .farmed-shop-category-card__icon svg{width:36px;height:36px}
  .farmed-shop-category-card__copy h3{font-size:24px;margin-bottom:7px}

  .farmed-shop-all{padding-top:48px;padding-bottom:58px}
  .farmed-shop-all__head{gap:14px;margin-bottom:24px}
  .farmed-shop-all__head>p{font-size:16px;line-height:1.6}
  .farmed-shop-toolbar{min-height:0;margin:0 0 20px}
  .woocommerce .woocommerce-result-count{display:none!important}
  .woocommerce .woocommerce-ordering{float:none!important;width:100%!important;margin:0!important}
  .woocommerce .woocommerce-ordering select{width:100%;min-height:48px;padding-inline:18px 42px}

  .farmed-shop-all ul.products li.product,.farmed-product-archive ul.products li.product{padding-bottom:20px!important}
  .farmed-shop-all ul.products li.product img,.farmed-product-archive ul.products li.product img{aspect-ratio:4/3;margin-bottom:18px!important}
  .farmed-shop-all ul.products li.product .woocommerce-loop-product__title,.farmed-product-archive ul.products li.product .woocommerce-loop-product__title{font-size:26px!important;padding:0 20px!important;margin-bottom:7px!important}
  .farmed-shop-all ul.products li.product .price,.farmed-product-archive ul.products li.product .price{padding:0 20px!important;margin-bottom:15px!important;font-size:15px!important}
  .farmed-shop-all ul.products li.product .button,.farmed-product-archive ul.products li.product .button{min-height:48px!important;margin:auto 20px 0!important;padding:0 24px!important;border-radius:999px!important;font-size:14px!important;line-height:1!important}
}


/* =========================================================
   FARMED 2.4 — PRODUCT BUTTON ALIGNMENT
   ========================================================= */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.farmed-shop-all ul.products li.product .button,
.farmed-product-archive ul.products li.product .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.1!important;
}


/* =========================================================
   FARMED 2.4 — SINGLE PRODUCT
   ========================================================= */
body.single-product{
  background:var(--farmed-paper);
}

body.single-product .farmed-single-product-shell{
  padding:72px 0 96px;
}

body.single-product .woocommerce-notices-wrapper{
  margin-bottom:22px;
}

body.single-product div.product{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(380px,.82fr);
  gap:72px;
  align-items:start;
  margin:0!important;
}

body.single-product div.product div.images,
body.single-product div.product div.summary{
  float:none!important;
  width:auto!important;
  margin:0!important;
}

body.single-product div.product div.images{
  position:sticky;
  top:calc(var(--farmed-header-height) + 28px);
}

body.single-product div.product div.images .woocommerce-product-gallery__wrapper{
  overflow:hidden;
  border:1px solid var(--farmed-line);
  border-radius:30px;
  background:var(--farmed-cream);
}

body.single-product div.product div.images .woocommerce-product-gallery__image img{
  width:100%!important;
  aspect-ratio:1/1;
  object-fit:cover;
  margin:0!important;
}

body.single-product div.product div.images .flex-control-thumbs{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin:12px 0 0!important;
}

body.single-product div.product div.images .flex-control-thumbs li{
  float:none!important;
  width:auto!important;
  margin:0!important;
}

body.single-product div.product div.images .flex-control-thumbs img{
  border:1px solid var(--farmed-line);
  border-radius:14px;
  overflow:hidden;
}

body.single-product div.product div.summary{
  padding:22px 0 0;
}

.farmed-product-kicker{
  margin-bottom:14px;
}

body.single-product div.product .product_title{
  margin:0 0 18px!important;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:clamp(44px,4vw,64px);
  line-height:1.02;
  font-weight:400;
  letter-spacing:-.025em;
}

body.single-product div.product p.price,
body.single-product div.product span.price{
  color:var(--farmed-gold)!important;
  font-size:22px!important;
  font-weight:700!important;
  line-height:1.25;
  margin:0 0 26px!important;
}

body.single-product .woocommerce-product-details__short-description{
  max-width:620px;
  color:var(--farmed-muted);
  font-size:17px;
  line-height:1.7;
  margin-bottom:30px;
}

body.single-product .woocommerce-product-details__short-description p{
  margin:0 0 14px;
}

body.single-product form.cart{
  margin:0 0 26px!important;
  padding:26px;
  border:1px solid var(--farmed-line);
  border-radius:22px;
  background:rgba(255,255,255,.66);
}

body.single-product form.cart .variations{
  margin:0 0 18px!important;
  border:0!important;
}

body.single-product form.cart .variations tr{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:16px;
  align-items:center;
  margin-bottom:14px;
}

body.single-product form.cart .variations th,
body.single-product form.cart .variations td{
  display:block!important;
  width:auto!important;
  padding:0!important;
  border:0!important;
}

body.single-product form.cart .variations label{
  color:var(--farmed-forest);
  font-size:13px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.single-product form.cart .variations select{
  width:100%!important;
  min-height:50px;
  border:1px solid rgba(23,52,33,.18);
  border-radius:14px;
  padding:0 44px 0 14px;
  background:#fff;
  color:var(--farmed-forest);
}

body.single-product form.cart .reset_variations{
  display:inline-block;
  margin-top:8px;
  color:var(--farmed-gold);
  font-size:12px;
  font-weight:700;
}

body.single-product .single_variation_wrap{
  margin-top:14px;
}

body.single-product .woocommerce-variation-price{
  margin-bottom:16px;
}

body.single-product .quantity{
  float:none!important;
  display:inline-flex;
  margin:0 12px 0 0!important;
  vertical-align:middle;
}

body.single-product .quantity .qty{
  width:76px;
  min-height:52px;
  border:1px solid rgba(23,52,33,.18);
  border-radius:14px;
  background:#fff;
  text-align:center;
}

body.single-product .single_add_to_cart_button{
  min-height:52px!important;
  padding:0 30px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:var(--farmed-forest)!important;
  color:#fff!important;
  font-weight:700!important;
  box-shadow:none!important;
}

body.single-product .single_add_to_cart_button:hover{
  background:var(--farmed-gold)!important;
}

body.single-product .product_meta{
  padding-top:20px;
  border-top:1px solid var(--farmed-line);
  color:var(--farmed-muted);
  font-size:13px;
  line-height:1.8;
}

body.single-product .product_meta > span{
  display:block;
}

body.single-product .product_meta a{
  color:var(--farmed-forest);
}

body.single-product .woocommerce-tabs{
  grid-column:1 / -1;
  margin:84px 0 0!important;
  padding-top:58px;
  border-top:1px solid var(--farmed-line);
}

body.single-product .woocommerce-tabs ul.tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 30px!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-tabs ul.tabs li::after{
  display:none!important;
}

body.single-product .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:1px solid var(--farmed-line)!important;
  border-radius:999px!important;
  background:transparent!important;
}

body.single-product .woocommerce-tabs ul.tabs li a{
  padding:11px 18px!important;
  color:var(--farmed-forest)!important;
  font-size:13px!important;
  font-weight:700!important;
}

body.single-product .woocommerce-tabs ul.tabs li.active{
  background:var(--farmed-forest)!important;
  border-color:var(--farmed-forest)!important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a{
  color:#fff!important;
}

body.single-product .woocommerce-Tabs-panel{
  max-width:900px;
  color:var(--farmed-text);
  line-height:1.75;
}

body.single-product .woocommerce-Tabs-panel h2{
  margin:0 0 22px;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:38px;
  line-height:1.08;
  font-weight:400;
}

body.single-product section.related,
body.single-product section.upsells{
  grid-column:1 / -1;
  margin:78px 0 0!important;
  padding-top:58px;
  border-top:1px solid var(--farmed-line);
}

body.single-product section.related > h2,
body.single-product section.upsells > h2{
  margin:0 0 30px!important;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:42px;
  line-height:1.08;
  font-weight:400;
}

body.single-product section.related ul.products,
body.single-product section.upsells ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:var(--farmed-card-gap)!important;
  margin:0!important;
}

body.single-product section.related ul.products::before,
body.single-product section.related ul.products::after,
body.single-product section.upsells ul.products::before,
body.single-product section.upsells ul.products::after{
  display:none!important;
}

body.single-product section.related ul.products li.product,
body.single-product section.upsells ul.products li.product{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:0 0 22px!important;
  border:1px solid var(--farmed-line);
  border-radius:var(--farmed-card-radius);
  overflow:hidden;
  background:#fff;
}

body.single-product section.related ul.products li.product img,
body.single-product section.upsells ul.products li.product img{
  aspect-ratio:4/3;
  object-fit:cover;
  margin:0 0 18px!important;
}

body.single-product section.related ul.products .woocommerce-loop-product__title,
body.single-product section.upsells ul.products .woocommerce-loop-product__title{
  padding:0 20px!important;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:25px!important;
  font-weight:400!important;
}

body.single-product section.related ul.products .price,
body.single-product section.upsells ul.products .price{
  padding:0 20px;
  color:var(--farmed-gold)!important;
}

body.single-product section.related ul.products .button,
body.single-product section.upsells ul.products .button{
  margin:8px 20px 0!important;
}


@media(max-width:1050px){
  body.single-product div.product{
    grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);
    gap:42px;
  }
  body.single-product section.related ul.products,
  body.single-product section.upsells ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  body.single-product .farmed-single-product-shell{
    padding:38px 0 64px;
  }

  body.single-product div.product{
    display:block;
  }

  body.single-product div.product div.images{
    position:static;
    margin-bottom:34px!important;
  }

  body.single-product div.product div.images .woocommerce-product-gallery__wrapper{
    border-radius:22px;
  }

  body.single-product div.product div.images .woocommerce-product-gallery__image img{
    aspect-ratio:4/3;
  }

  body.single-product div.product div.summary{
    padding:0;
  }

  body.single-product div.product .product_title{
    font-size:clamp(40px,12vw,54px);
    margin-bottom:14px!important;
  }

  body.single-product div.product p.price,
  body.single-product div.product span.price{
    font-size:19px!important;
    margin-bottom:22px!important;
  }

  body.single-product .woocommerce-product-details__short-description{
    font-size:16px;
    line-height:1.65;
    margin-bottom:24px;
  }

  body.single-product form.cart{
    padding:20px;
    border-radius:18px;
  }

  body.single-product form.cart .variations tr{
    grid-template-columns:1fr;
    gap:7px;
  }

  body.single-product .quantity{
    display:flex;
    width:100%;
    margin:0 0 10px!important;
  }

  body.single-product .quantity .qty{
    width:100%;
  }

  body.single-product .single_add_to_cart_button{
    width:100%!important;
  }

  body.single-product .woocommerce-tabs{
    margin-top:58px!important;
    padding-top:42px;
  }

  body.single-product .woocommerce-tabs ul.tabs{
    gap:8px;
    margin-bottom:24px!important;
  }

  body.single-product .woocommerce-tabs ul.tabs li a{
    padding:10px 14px!important;
  }

  body.single-product .woocommerce-Tabs-panel h2{
    font-size:32px;
  }

  body.single-product section.related,
  body.single-product section.upsells{
    margin-top:58px!important;
    padding-top:42px;
  }

  body.single-product section.related > h2,
  body.single-product section.upsells > h2{
    font-size:36px;
  }

  body.single-product section.related ul.products,
  body.single-product section.upsells ul.products{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   FARMED 2.4.1 — SINGLE PRODUCT CONTAINER FIX
   ========================================================= */
body.single-product .farmed-single-product-shell{
  padding:72px 0 96px;
}

body.single-product .farmed-single-product-shell > .farmed-container{
  width:min(100% - 72px, var(--farmed-container));
  margin-inline:auto;
}

body.single-product div.product{
  width:100%;
  max-width:none;
  margin-inline:auto!important;
  align-items:start;
}

body.single-product div.product div.images{
  position:static;
  align-self:start;
}

body.single-product div.product div.images .woocommerce-product-gallery__wrapper{
  width:100%;
}

body.single-product div.product div.summary{
  align-self:start;
}

body.single-product .woocommerce-tabs,
body.single-product section.related,
body.single-product section.upsells{
  width:100%;
  max-width:none;
  margin-left:0!important;
  margin-right:0!important;
}

body.single-product .woocommerce-tabs .panel{
  max-width:900px;
}

@media (min-width:1200px){
  body.single-product div.product{
    grid-template-columns:minmax(0, .98fr) minmax(420px, .82fr);
    gap:64px;
  }
}

@media (max-width:760px){
  body.single-product .farmed-single-product-shell > .farmed-container{
    width:min(100% - 32px, var(--farmed-container));
  }
}

/* Product meta cleanup */
body.single-product .product_meta .posted_in a[href*="product-category/uncategorized"],
body.single-product .product_meta .posted_in:has(a[href*="product-category/uncategorized"]){
  display:none!important;
}


/* =========================================================
   FARMED 2.4.2 — HARD SINGLE PRODUCT CONTAINER FIX
   The custom single-product.php now owns the container directly.
   ========================================================= */
body.single-product .farmed-single-product-container{
  width:min(calc(100% - 72px), 1760px)!important;
  max-width:1760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

body.single-product .farmed-single-product-container > .product{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

body.single-product .farmed-single-product-container .woocommerce-product-gallery,
body.single-product .farmed-single-product-container .summary{
  box-sizing:border-box!important;
}

/* Keep all lower WooCommerce sections aligned to the same container */
body.single-product .farmed-single-product-container .woocommerce-tabs,
body.single-product .farmed-single-product-container .related,
body.single-product .farmed-single-product-container .upsells{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

@media(max-width:760px){
  body.single-product .farmed-single-product-shell{
    padding-top:34px!important;
    padding-bottom:64px!important;
  }

  body.single-product .farmed-single-product-container{
    width:calc(100% - 32px)!important;
    max-width:none!important;
    margin-left:16px!important;
    margin-right:16px!important;
  }

  body.single-product .farmed-single-product-container > .product{
    width:100%!important;
  }

  body.single-product div.product div.images,
  body.single-product div.product div.summary{
    width:100%!important;
    max-width:100%!important;
  }

  body.single-product div.product div.images .woocommerce-product-gallery__wrapper{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  body.single-product div.product div.images .woocommerce-product-gallery__image img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
  }
}


/* =========================================================
   FARMED 2.4.3 — SINGLE PRODUCT FINAL LAYOUT ALIGNMENT
   Desktop: image and product summary start on the same visual row.
   Mobile: product title/price come BEFORE the image.
   ========================================================= */

/* Remove the extra top offset that made the image sit too low */
body.single-product .farmed-single-product-shell{
  padding-top:48px!important;
}

body.single-product .farmed-single-product-container > .product{
  display:grid!important;
  grid-template-columns:minmax(0, 1.05fr) minmax(420px, .82fr)!important;
  grid-template-areas:
    "gallery summary"
    "tabs tabs"
    "related related"!important;
  gap:56px 64px!important;
  align-items:start!important;
}

body.single-product .farmed-single-product-container > .product > .woocommerce-product-gallery{
  grid-area:gallery!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
}

body.single-product .farmed-single-product-container > .product > .summary{
  grid-area:summary!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
}

body.single-product .farmed-single-product-container > .product > .woocommerce-tabs{
  grid-area:tabs!important;
  margin-top:12px!important;
}

body.single-product .farmed-single-product-container > .product > .related,
body.single-product .farmed-single-product-container > .product > .upsells{
  grid-area:related!important;
}

body.single-product div.product div.images .woocommerce-product-gallery__wrapper{
  margin:0!important;
}

body.single-product div.product div.images .woocommerce-product-gallery__image:first-child img{
  margin-top:0!important;
}

/* Give the summary the same clean top edge as the image */
body.single-product .farmed-product-kicker{
  margin-top:0!important;
}

body.single-product div.product .product_title{
  margin-top:0!important;
}

/* Mobile order matching the approved mockup:
   kicker -> name -> price -> photo -> options/cart */
@media(max-width:760px){
  body.single-product .farmed-single-product-shell{
    padding-top:28px!important;
  }

  body.single-product .farmed-single-product-container > .product{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
  }

  body.single-product .farmed-single-product-container > .product > .summary{
    display:contents!important;
  }

  body.single-product .farmed-product-kicker{
    order:1!important;
    display:block!important;
    margin:0 0 12px!important;
  }

  body.single-product div.product .product_title{
    order:2!important;
    display:block!important;
    margin:0 0 12px!important;
    font-size:clamp(38px,11vw,50px)!important;
    line-height:1.02!important;
  }

  body.single-product div.product p.price,
  body.single-product div.product span.price{
    order:3!important;
    display:block!important;
    margin:0 0 24px!important;
  }

  body.single-product .woocommerce-product-details__short-description{
    order:4!important;
  }

  body.single-product .farmed-single-product-container > .product > .woocommerce-product-gallery{
    order:5!important;
    width:100%!important;
    margin:0 0 24px!important;
  }

  body.single-product div.product div.images .woocommerce-product-gallery__wrapper{
    border-radius:22px!important;
    overflow:hidden!important;
  }

  body.single-product div.product div.images .woocommerce-product-gallery__image img{
    width:100%!important;
    aspect-ratio:4/3!important;
    object-fit:cover!important;
  }

  /* WooCommerce purchase controls from the summary follow after the image */
  body.single-product form.cart{
    order:6!important;
    width:100%!important;
    margin:0 0 18px!important;
  }

  body.single-product .product_meta{
    order:7!important;
    width:100%!important;
  }

  body.single-product .woocommerce-tabs{
    order:8!important;
    width:100%!important;
    margin-top:42px!important;
  }

  body.single-product section.related,
  body.single-product section.upsells{
    order:9!important;
    width:100%!important;
  }

  /* Hide empty short description so it cannot create a phantom gap */
  body.single-product .woocommerce-product-details__short-description:empty{
    display:none!important;
  }

  /* More FARMED-like quantity field */
  body.single-product .quantity{
    width:100%!important;
  }

  body.single-product .quantity .qty{
    width:100%!important;
    min-height:54px!important;
  }

  body.single-product .single_add_to_cart_button{
    width:100%!important;
    min-height:56px!important;
  }
}

/* Slightly tighter desktop alignment on very wide screens */
@media(min-width:1400px){
  body.single-product .farmed-single-product-container > .product{
    grid-template-columns:minmax(0, 1.08fr) minmax(430px, .80fr)!important;
    gap:64px!important;
  }
}


/* =========================================================
   FARMED 2.4.4 — ROBUST SINGLE PRODUCT FIX
   WooCommerce clearfix pseudo-elements were becoming grid/flex items.
   ========================================================= */
body.single-product .farmed-single-product-container > .product::before,
body.single-product .farmed-single-product-container > .product::after{
  content:none!important;
  display:none!important;
}

/* Desktop: force gallery + summary onto the same first row */
@media(min-width:761px){
  body.single-product .farmed-single-product-container > .product{
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(420px,.82fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:56px 64px!important;
    align-items:start!important;
  }

  body.single-product .farmed-single-product-container > .product > .woocommerce-product-gallery{
    grid-column:1!important;
    grid-row:1!important;
    align-self:start!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-single-product-container > .product > .summary{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-single-product-container > .product > .woocommerce-tabs{
    grid-column:1 / -1!important;
    grid-row:2!important;
  }

  body.single-product .farmed-single-product-container > .product > .related,
  body.single-product .farmed-single-product-container > .product > .upsells{
    grid-column:1 / -1!important;
    grid-row:3!important;
  }
}

/* Mobile structure is handled by a small DOM re-order script.
   Keep normal WooCommerce elements in document flow; no display:contents. */
@media(max-width:760px){
  body.single-product .farmed-single-product-container > .product{
    display:block!important;
  }

  body.single-product .farmed-single-product-container > .product > .summary{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-single-product-container > .product > .woocommerce-product-gallery{
    width:100%!important;
    margin:0 0 24px!important;
    padding:0!important;
    position:static!important;
  }

  body.single-product .farmed-mobile-product-head{
    margin:0 0 24px!important;
  }

  body.single-product .farmed-mobile-product-head .farmed-product-kicker{
    margin:0 0 12px!important;
  }

  body.single-product .farmed-mobile-product-head .product_title{
    margin:0 0 12px!important;
  }

  body.single-product .farmed-mobile-product-head .price{
    display:block!important;
    margin:0!important;
  }

  body.single-product form.cart{
    position:relative!important;
    z-index:1!important;
    margin-top:0!important;
  }
}


/* =========================================================
   FARMED 2.4.7 — SINGLE PRODUCT STRUCTURE REBUILD
   Desktop top section and lower tabs are separate wrappers.
   This removes all gallery/tab overlap by construction.
   ========================================================= */

body.single-product .farmed-single-product-container > .product{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
}

body.single-product .farmed-product-top{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.82fr)!important;
  gap:64px!important;
  align-items:start!important;
  width:100%!important;
}

body.single-product .farmed-product-gallery-column,
body.single-product .farmed-product-summary-column{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
}

body.single-product .farmed-product-gallery-column .woocommerce-product-gallery{
  float:none!important;
  width:100%!important;
  margin:0!important;
  position:static!important;
}

body.single-product .farmed-product-summary-column{
  float:none!important;
  width:100%!important;
}

body.single-product .farmed-product-summary-column .farmed-product-kicker,
body.single-product .farmed-product-summary-column .product_title{
  margin-top:0!important;
}

body.single-product .farmed-product-lower{
  display:block!important;
  width:100%!important;
  clear:both!important;
  margin-top:54px!important;
}

body.single-product .farmed-product-lower .woocommerce-tabs,
body.single-product .farmed-product-lower section.related,
body.single-product .farmed-product-lower section.upsells{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
}

body.single-product .farmed-product-lower .woocommerce-tabs{
  margin-top:0!important;
}

/* Remove WooCommerce clearfix artifacts from our custom wrappers. */
body.single-product .farmed-product-top::before,
body.single-product .farmed-product-top::after,
body.single-product .farmed-product-lower::before,
body.single-product .farmed-product-lower::after{
  content:none!important;
  display:none!important;
}

@media(max-width:1050px) and (min-width:761px){
  body.single-product .farmed-product-top{
    grid-template-columns:minmax(0,1fr) minmax(350px,.9fr)!important;
    gap:42px!important;
  }
}

@media(max-width:760px){
  body.single-product .farmed-product-top{
    display:block!important;
  }

  body.single-product .farmed-product-gallery-column,
  body.single-product .farmed-product-summary-column{
    width:100%!important;
  }

  body.single-product .farmed-product-lower{
    margin-top:42px!important;
  }
}


/* =========================================================
   FARMED 2.4.8 — ADD TO CART NOTICE
   ========================================================= */
body.single-product .woocommerce-notices-wrapper{
  width:100%;
  margin:0 0 30px!important;
}

body.single-product .woocommerce-message,
body.single-product .woocommerce-info,
body.single-product .woocommerce-error{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:0!important;
  margin:0!important;
  padding:18px 20px!important;
  border:1px solid var(--farmed-line)!important;
  border-top:1px solid var(--farmed-line)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.78)!important;
  color:var(--farmed-text)!important;
  box-shadow:none!important;
  font-size:15px!important;
  line-height:1.45!important;
}

body.single-product .woocommerce-message::before,
body.single-product .woocommerce-info::before,
body.single-product .woocommerce-error::before{
  content:none!important;
  display:none!important;
}

body.single-product .woocommerce-message .button,
body.single-product .woocommerce-info .button,
body.single-product .woocommerce-error .button{
  float:none!important;
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  margin:0!important;
  padding:0 20px!important;
  border-radius:999px!important;
  background:var(--farmed-forest)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
}

body.single-product .woocommerce-message .button:hover,
body.single-product .woocommerce-info .button:hover,
body.single-product .woocommerce-error .button:hover{
  background:var(--farmed-gold)!important;
  color:#fff!important;
}

@media(max-width:760px){
  body.single-product .woocommerce-notices-wrapper{
    margin-bottom:24px!important;
  }

  body.single-product .woocommerce-message,
  body.single-product .woocommerce-info,
  body.single-product .woocommerce-error{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding:16px!important;
    border-radius:16px!important;
    font-size:15px!important;
  }

  body.single-product .woocommerce-message .button,
  body.single-product .woocommerce-info .button,
  body.single-product .woocommerce-error .button{
    width:100%!important;
    min-height:46px!important;
  }
}


/* =========================================================
   FARMED 2.4.11 — CART REBUILD
   ========================================================= */
body.woocommerce-cart .entry-header,
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-cart .page-title{
  display:none!important;
}

body.woocommerce-cart .farmed-cart-shell{
  padding:58px 0 86px;
}

body.woocommerce-cart .farmed-cart-shell > .farmed-container{
  width:min(calc(100% - 72px), var(--farmed-container));
  margin-inline:auto;
}

body.woocommerce-cart .farmed-cart-intro{
  margin-bottom:34px;
}

body.woocommerce-cart .farmed-cart-intro .farmed-kicker{
  margin-bottom:10px;
}

body.woocommerce-cart .farmed-cart-intro h1{
  margin:0;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:clamp(54px,5vw,74px);
  line-height:1;
  font-weight:400;
  letter-spacing:-.03em;
}

.farmed-cart-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(360px,.72fr);
  gap:56px;
  align-items:start;
}

.farmed-cart-items{
  min-width:0;
}

.farmed-cart-item{
  display:grid;
  grid-template-columns:104px minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
  padding:20px 0;
  border-bottom:1px solid var(--farmed-line);
}

.farmed-cart-item:first-child{
  border-top:1px solid var(--farmed-line);
}

.farmed-cart-item-image img{
  display:block;
  width:104px;
  height:104px;
  object-fit:cover;
  border-radius:18px;
}

.farmed-cart-item-title a{
  color:var(--farmed-forest)!important;
  font-size:18px;
  font-weight:700;
  text-decoration:none!important;
}

.farmed-cart-item-variation{
  margin-top:6px;
  color:var(--farmed-muted);
  font-size:13px;
}

.farmed-cart-item-variation dl,
.farmed-cart-item-variation p{
  margin:0!important;
}

.farmed-cart-item-variation dt,
.farmed-cart-item-variation dd{
  display:inline!important;
  float:none!important;
  margin:0!important;
}

.farmed-cart-item-price{
  margin-top:8px;
  color:var(--farmed-gold);
  font-size:15px;
  font-weight:700;
}

.farmed-cart-item-controls{
  display:grid;
  grid-template-columns:96px 110px 36px;
  gap:14px;
  align-items:center;
}

.farmed-cart-item-qty .quantity{
  display:block!important;
  margin:0!important;
}

.farmed-cart-item-qty .qty{
  width:96px!important;
  min-height:46px!important;
  border:1px solid rgba(23,52,33,.18)!important;
  border-radius:12px!important;
  background:#fff!important;
  text-align:center!important;
}

.farmed-cart-item-subtotal{
  color:var(--farmed-forest);
  font-size:16px;
  font-weight:700;
  text-align:right;
  white-space:nowrap;
}

.farmed-cart-item-remove .remove{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:36px!important;
  height:36px!important;
  border-radius:50%!important;
  color:var(--farmed-forest)!important;
  background:transparent!important;
  font-size:24px!important;
  line-height:1!important;
}

.farmed-cart-item-remove .remove:hover{
  background:rgba(23,52,33,.08)!important;
}

.farmed-cart-update{
  padding-top:18px;
  text-align:right;
}

.farmed-cart-update .button{
  min-height:44px!important;
  padding:0 18px!important;
  border:1px solid var(--farmed-line)!important;
  border-radius:999px!important;
  background:transparent!important;
  color:var(--farmed-forest)!important;
  font-weight:700!important;
}

.farmed-cart-summary{
  position:sticky;
  top:calc(var(--farmed-header-height) + 26px);
}

.farmed-cart-totals-box{
  padding:28px;
  border:1px solid var(--farmed-line);
  border-radius:24px;
  background:rgba(255,255,255,.68);
}

.farmed-cart-summary-kicker{
  margin-bottom:8px;
  color:var(--farmed-gold);
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.farmed-cart-totals-box h2{
  margin:0 0 22px;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:38px;
  line-height:1.05;
  font-weight:400;
}

.farmed-cart-total-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:16px 0;
  border-bottom:1px solid var(--farmed-line);
  color:var(--farmed-text);
}

.farmed-cart-total-row strong{
  color:var(--farmed-forest);
  white-space:nowrap;
}

.farmed-cart-grand-total{
  font-size:20px;
  font-weight:700;
}

.farmed-cart-grand-total strong{
  font-size:22px;
}

.farmed-cart-checkout{
  padding-top:22px;
}

.farmed-cart-checkout .checkout-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:58px!important;
  margin:0!important;
  padding:0 24px!important;
  border-radius:999px!important;
  background:var(--farmed-forest)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:700!important;
  text-align:center!important;
}

.farmed-cart-checkout .checkout-button:hover{
  background:var(--farmed-gold)!important;
  color:#fff!important;
}

@media(max-width:980px){
  .farmed-cart-layout{
    grid-template-columns:1fr;
    gap:34px;
  }

  .farmed-cart-summary{
    position:static;
  }
}

@media(max-width:760px){
  body.woocommerce-cart .farmed-cart-shell{
    padding:34px 0 54px;
  }

  body.woocommerce-cart .farmed-cart-shell > .farmed-container{
    width:calc(100% - 32px);
    margin-inline:16px;
  }

  body.woocommerce-cart .farmed-cart-intro{
    margin-bottom:24px;
  }

  body.woocommerce-cart .farmed-cart-intro h1{
    font-size:clamp(48px,14vw,60px);
  }

  .farmed-cart-item{
    grid-template-columns:82px minmax(0,1fr);
    gap:14px;
    padding:18px 0;
  }

  .farmed-cart-item-image img{
    width:82px;
    height:82px;
    border-radius:16px;
  }

  .farmed-cart-item-main{
    min-width:0;
  }

  .farmed-cart-item-title a{
    font-size:17px;
  }

  .farmed-cart-item-controls{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:12px;
    margin-top:4px;
    align-items:center;
  }

  .farmed-cart-item-qty .qty{
    width:100%!important;
    min-height:44px!important;
  }

  .farmed-cart-item-subtotal{
    font-size:15px;
  }

  .farmed-cart-update{
    text-align:left;
  }

  .farmed-cart-update .button{
    width:100%!important;
  }

  .farmed-cart-totals-box{
    padding:22px;
    border-radius:20px;
  }

  .farmed-cart-totals-box h2{
    font-size:34px;
  }

  .farmed-cart-total-row{
    padding:14px 0;
  }

  .farmed-cart-grand-total{
    font-size:18px;
  }

  .farmed-cart-grand-total strong{
    font-size:20px;
  }

  .farmed-cart-checkout .checkout-button{
    min-height:56px!important;
  }
}


/* =========================================================
   FARMED 2.4.12 — DESKTOP CART CONTAINER FIX
   Keep the complete cart inside the same visual side margins
   as the FARMED header/content. Mobile layout is unchanged.
   ========================================================= */
@media(min-width:761px){
  body.woocommerce-cart .farmed-cart-shell{
    width:100%!important;
    overflow-x:hidden!important;
  }

  body.woocommerce-cart .farmed-cart-shell > .farmed-container{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:clamp(48px,4vw,76px)!important;
    padding-right:clamp(48px,4vw,76px)!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-cart .farmed-cart-intro,
  body.woocommerce-cart .farmed-cart-layout{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-cart .farmed-cart-layout{
    min-width:0!important;
  }

  body.woocommerce-cart .farmed-cart-items,
  body.woocommerce-cart .farmed-cart-summary{
    min-width:0!important;
  }

  body.woocommerce-cart .farmed-cart-item{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}


/* =========================================================
   FARMED 2.4.17 — CART QUANTITY UPDATE
   ========================================================= */
body.woocommerce-cart .farmed-cart-update{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}


/* =========================================================
   FARMED 2.4.18 — CHECKOUT
   WooCommerce Checkout Block
   ========================================================= */

body.woocommerce-checkout .farmed-page-main,
body.woocommerce-checkout main,
body.woocommerce-checkout .wp-site-blocks {
  overflow-x: clip;
}

body.woocommerce-checkout .wc-block-checkout {
  max-width: 1680px;
  margin: 0 auto;
  padding: 72px 48px 100px;
}

body.woocommerce-checkout .wc-block-checkout__main {
  padding-right: 64px;
}

body.woocommerce-checkout .wc-block-checkout__sidebar {
  padding-left: 0;
}

body.woocommerce-checkout .wc-block-components-sidebar {
  top: 28px;
}

body.woocommerce-checkout .wc-block-components-title,
body.woocommerce-checkout .wc-block-checkout__main h2,
body.woocommerce-checkout .wc-block-checkout__sidebar h2 {
  color: var(--farmed-forest);
}

body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step {
  margin-bottom: 28px;
}

body.woocommerce-checkout .wc-block-components-checkout-step__heading {
  margin-bottom: 14px;
}

body.woocommerce-checkout .wc-block-components-checkout-step__title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
body.woocommerce-checkout .wc-block-components-address-form__address_2-toggle {
  border-radius: 12px;
}

body.woocommerce-checkout .wc-block-components-order-summary,
body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
  border-color: rgba(16,61,42,.16);
}

body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
  border-radius: 24px;
  overflow: hidden;
  background: rgba(255,255,255,.72);
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
  color: var(--farmed-forest);
  font-weight: 700;
}

body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
  min-height: 64px;
  border: 0;
  border-radius: 999px;
  background: var(--farmed-forest);
  color: #fff;
  font-weight: 700;
  transition: opacity .2s ease, transform .2s ease;
}

body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button:hover {
  opacity: .94;
}

body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button {
  color: var(--farmed-forest);
}

/* FARMED checkout title */
body.woocommerce-checkout .entry-title,
body.woocommerce-checkout .wp-block-post-title {
  color: var(--farmed-forest);
  font-family: var(--farmed-font-display);
}

/* Mobile */
@media (max-width: 781px) {
  body.woocommerce-checkout .wc-block-checkout {
    padding: 54px 20px 72px;
  }

  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    padding: 0;
  }

  body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step {
    margin-bottom: 26px;
  }

  body.woocommerce-checkout .wc-block-components-checkout-step__title {
    font-size: 21px;
  }

  body.woocommerce-checkout .wc-block-checkout__sidebar {
    margin-top: 34px;
  }

  body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
    border-radius: 18px;
  }

  body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
    min-height: 58px;
    border-radius: 999px;
  }
}

/* =========================================================
   FARMED 2.4.19 — CHECKOUT POLISH
   Less empty space above title/content + wider mobile layout
   ========================================================= */
body.woocommerce-checkout .farmed-section {
  padding-top: 64px;
}

body.woocommerce-checkout .wc-block-checkout {
  padding-top: 34px;
}

@media (max-width: 781px) {
  body.woocommerce-checkout .farmed-section {
    padding-top: 42px;
  }

  body.woocommerce-checkout .wc-block-checkout {
    width: 100%;
    max-width: none;
    padding: 26px 0 72px;
  }

  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-checkout .wc-block-components-main,
  body.woocommerce-checkout .wc-block-components-sidebar {
    width: 100%;
    max-width: none;
  }
}

/* =========================================================
   FARMED 2.4.20 — MOBILE CHECKOUT SPACING
   Pull the checkout summary/content closer to the page title.
   Desktop remains unchanged.
   ========================================================= */
@media (max-width: 781px) {
  body.woocommerce-checkout .wc-block-checkout {
    margin-top: -20px;
    padding-top: 0;
  }
}


/* =========================================================
   FARMED 2.4.21 — ORDER RECEIVED / THANK YOU
   ========================================================= */

body.woocommerce-order-received .woocommerce{
  width:min(calc(100% - 72px), var(--farmed-container));
  margin-inline:auto;
  padding:64px 0 92px;
}

body.woocommerce-order-received .woocommerce-order > p.woocommerce-notice,
body.woocommerce-order-received .woocommerce-order > p.woocommerce-thankyou-order-received{
  margin:12px 0 20px;
  color:var(--farmed-text);
  font-size:18px;
}

body.woocommerce-order-received .woocommerce-order-overview{
  display:flex;
  flex-wrap:wrap;
  gap:0;
  margin:24px 0 54px!important;
  padding:0!important;
  list-style:none!important;
}

body.woocommerce-order-received .woocommerce-order-overview li{
  float:none!important;
  margin:0!important;
  padding:0 28px!important;
  border-right:1px solid var(--farmed-line)!important;
  color:var(--farmed-muted);
  font-size:11px!important;
  line-height:1.3!important;
  text-transform:uppercase;
}

body.woocommerce-order-received .woocommerce-order-overview li:first-child{
  padding-left:0!important;
}

body.woocommerce-order-received .woocommerce-order-overview li:last-child{
  border-right:0!important;
}

body.woocommerce-order-received .woocommerce-order-overview li strong{
  display:block;
  margin-top:4px;
  color:var(--farmed-forest);
  font-size:16px!important;
  line-height:1.25!important;
  text-transform:none;
}

body.woocommerce-order-received .woocommerce-order-details{
  margin-bottom:46px!important;
}

body.woocommerce-order-received .woocommerce-order-details__title,
body.woocommerce-order-received .woocommerce-customer-details h2,
body.woocommerce-order-received .wc-bacs-bank-details-heading,
body.woocommerce-order-received .woocommerce-bacs-bank-details h2{
  margin:0 0 18px!important;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:34px!important;
  line-height:1.1;
  font-weight:400!important;
}

body.woocommerce-order-received table.woocommerce-table--order-details{
  border:1px solid var(--farmed-line)!important;
  border-radius:24px!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden;
  background:rgba(255,255,255,.7);
}

body.woocommerce-order-received table.woocommerce-table--order-details th,
body.woocommerce-order-received table.woocommerce-table--order-details td{
  padding:17px 20px!important;
  border:0!important;
  border-bottom:1px solid var(--farmed-line)!important;
}

body.woocommerce-order-received table.woocommerce-table--order-details tr:last-child th,
body.woocommerce-order-received table.woocommerce-table--order-details tr:last-child td{
  border-bottom:0!important;
}

/* Billing / shipping addresses */
body.woocommerce-order-received .woocommerce-customer-details{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:40px!important;
  margin-top:34px!important;
}

body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column{
  float:none!important;
  width:auto!important;
  max-width:none!important;
}

body.woocommerce-order-received .woocommerce-customer-details address{
  min-height:160px;
  padding:20px 22px!important;
  border:1px solid var(--farmed-line)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.55);
  color:var(--farmed-text);
  line-height:1.65;
}

/* BACS / bank transfer details, when account data is configured in WooCommerce. */
body.woocommerce-order-received .woocommerce-bacs-bank-details,
body.woocommerce-order-received .wc-bacs-bank-details{
  margin:34px 0 46px!important;
  padding:26px!important;
  border:1px solid var(--farmed-line)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.7);
}

body.woocommerce-order-received .wc-bacs-bank-details-account-name{
  margin:0 0 16px!important;
  color:var(--farmed-forest);
  font-family:var(--farmed-font-display);
  font-size:28px!important;
  font-weight:400!important;
}

body.woocommerce-order-received .woocommerce-bacs-bank-details{
  list-style:none!important;
}

body.woocommerce-order-received .woocommerce-bacs-bank-details li{
  margin:8px 0!important;
  color:var(--farmed-text);
}

@media(max-width:760px){
  body.woocommerce-order-received .woocommerce{
    width:calc(100% - 40px)!important;
    margin-inline:20px!important;
    padding:44px 0 66px!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    margin:20px 0 38px!important;
    padding:0!important;
    border:1px solid var(--farmed-line);
    border-radius:18px;
    overflow:hidden;
    background:rgba(255,255,255,.58);
  }

  body.woocommerce-order-received .woocommerce-order-overview li{
    min-width:0!important;
    padding:14px 16px!important;
    border-right:1px solid var(--farmed-line)!important;
    border-bottom:1px solid var(--farmed-line)!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li:nth-child(even){
    border-right:0!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li:nth-last-child(-n+2){
    border-bottom:0!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li strong{
    overflow-wrap:anywhere;
    font-size:15px!important;
  }

  body.woocommerce-order-received .woocommerce-order-details__title,
  body.woocommerce-order-received .woocommerce-customer-details h2,
  body.woocommerce-order-received .wc-bacs-bank-details-heading,
  body.woocommerce-order-received .woocommerce-bacs-bank-details h2{
    font-size:29px!important;
  }

  body.woocommerce-order-received table.woocommerce-table--order-details{
    border-radius:20px!important;
  }

  body.woocommerce-order-received table.woocommerce-table--order-details th,
  body.woocommerce-order-received table.woocommerce-table--order-details td{
    padding:15px 20px!important;
  }

  body.woocommerce-order-received .woocommerce-customer-details{
    grid-template-columns:1fr!important;
    gap:28px!important;
    margin-top:28px!important;
  }

  body.woocommerce-order-received .woocommerce-customer-details address{
    min-height:0;
  }

  body.woocommerce-order-received .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .wc-bacs-bank-details{
    padding:20px!important;
    border-radius:18px!important;
  }
}

@media(max-width:430px){
  body.woocommerce-order-received .woocommerce-order-overview{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li,
  body.woocommerce-order-received .woocommerce-order-overview li:nth-child(even),
  body.woocommerce-order-received .woocommerce-order-overview li:nth-last-child(-n+2){
    border-right:0!important;
    border-bottom:1px solid var(--farmed-line)!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li:last-child{
    border-bottom:0!important;
  }
}


/* =========================================================
   FARMED 2.4.22 — compact bank transfer card
   ========================================================= */

body.woocommerce-order-received .woocommerce-bacs-bank-details,
body.woocommerce-order-received .wc-bacs-bank-details{
  margin:28px 0 18px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

body.woocommerce-order-received .wc-bacs-bank-details-heading,
body.woocommerce-order-received .woocommerce-bacs-bank-details h2{
  margin:0 0 18px!important;
}

body.woocommerce-order-received .wc-bacs-bank-details-account-name{
  display:none!important;
}

/* The WooCommerce account list itself becomes the single compact card. */
body.woocommerce-order-received ul.woocommerce-bacs-bank-details{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  gap:0!important;
  margin:0!important;
  padding:18px 20px!important;
  border:1px solid var(--farmed-line)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.62)!important;
  list-style:none!important;
}

body.woocommerce-order-received ul.woocommerce-bacs-bank-details li{
  position:relative;
  margin:0!important;
  padding:0 22px!important;
  border-right:1px solid var(--farmed-line);
  min-width:0;
}

body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:first-child{
  padding-left:0!important;
}

body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:last-child{
  padding-right:0!important;
  border-right:0;
}

body.woocommerce-order-received ul.woocommerce-bacs-bank-details li strong{
  display:block;
  margin-top:2px;
  color:var(--farmed-forest);
  font-size:17px!important;
  line-height:1.25;
  overflow-wrap:anywhere;
}

body.woocommerce-order-received .farmed-bacs-note{
  margin:14px 0 42px!important;
  padding:0!important;
  color:var(--farmed-text);
  font-size:15px;
  line-height:1.6;
}

@media(max-width:760px){
  body.woocommerce-order-received ul.woocommerce-bacs-bank-details{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    padding:16px 18px!important;
  }

  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li{
    padding:12px 14px!important;
    border-right:1px solid var(--farmed-line);
    border-bottom:1px solid var(--farmed-line);
  }

  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:nth-child(odd){
    padding-left:0!important;
  }

  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:nth-child(even){
    padding-right:0!important;
    border-right:0;
  }

  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:nth-last-child(-n+2){
    border-bottom:0;
  }

  body.woocommerce-order-received .farmed-bacs-note{
    margin-bottom:34px!important;
    font-size:14px;
  }
}

@media(max-width:430px){
  body.woocommerce-order-received ul.woocommerce-bacs-bank-details{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li,
  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:nth-child(odd),
  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:nth-child(even),
  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:nth-last-child(-n+2){
    padding:11px 0!important;
    border-right:0!important;
    border-bottom:1px solid var(--farmed-line)!important;
  }

  body.woocommerce-order-received ul.woocommerce-bacs-bank-details li:last-child{
    border-bottom:0!important;
  }
}


/* =========================================================
   FARMED 2.4.24 — SAFE MOBILE ORDER SUMMARY FIX
   Reverted the 2.4.23 icon redesign.
   Only fixes the mobile order-meta card alignment.
   ========================================================= */
@media(max-width:760px){
  body.woocommerce-order-received .woocommerce-order-overview{
    display:block!important;
    margin:20px 0 38px!important;
    padding:0!important;
    border:1px solid var(--farmed-line)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background:rgba(255,255,255,.58)!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li,
  body.woocommerce-order-received .woocommerce-order-overview li:nth-child(even),
  body.woocommerce-order-received .woocommerce-order-overview li:nth-last-child(-n+2){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:15px 18px!important;
    border:0!important;
    border-bottom:1px solid var(--farmed-line)!important;
    box-sizing:border-box!important;
    float:none!important;
    text-align:left!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li:last-child{
    border-bottom:0!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li::before{
    display:none!important;
    content:none!important;
    background:none!important;
  }

  body.woocommerce-order-received .woocommerce-order-overview li strong{
    display:block!important;
    margin-top:4px!important;
    padding:0!important;
    color:var(--farmed-forest)!important;
    font-size:16px!important;
    line-height:1.3!important;
    text-align:left!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:430px){
  body.woocommerce-order-received .woocommerce-order-overview li,
  body.woocommerce-order-received .woocommerce-order-overview li:nth-child(even),
  body.woocommerce-order-received .woocommerce-order-overview li:nth-last-child(-n+2){
    padding:14px 16px!important;
  }
}


/* =========================================================
   FARMED 2.4.25 — FIRST ORDER ROW MOBILE ALIGNMENT
   The old desktop :first-child rule was overriding mobile padding.
   ========================================================= */
@media(max-width:760px){
  body.woocommerce-order-received .woocommerce-order-overview li:first-child,
  body.woocommerce-order-received .woocommerce-order-overview li:first-child:nth-child(odd){
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

@media(max-width:430px){
  body.woocommerce-order-received .woocommerce-order-overview li:first-child,
  body.woocommerce-order-received .woocommerce-order-overview li:first-child:nth-child(odd){
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* =========================================================
   FARMED 2.4.50 — product variation alignment + qty stepper
   ========================================================= */

/* Exact alignment of the variation label with its dropdown. */
.single-product table.variations,
.single-product table.variations tbody {
    display: block !important;
    width: 100% !important;
}

.single-product table.variations tr {
    display: grid !important;
    grid-template-columns: 150px minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 20px !important;
    width: 100% !important;
}

.single-product table.variations th.label,
.single-product table.variations td.value {
    display: flex !important;
    align-items: center !important;
    min-height: 62px !important;
    padding: 0 !important;
    margin: 0 !important;
    vertical-align: middle !important;
}

.single-product table.variations th.label {
    justify-content: center !important;
    align-self: center !important;
}

.single-product table.variations th.label label {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    transform: none !important;
}

.single-product table.variations td.value select {
    width: 100% !important;
    min-height: 62px !important;
    margin: 0 !important;
}

/* One clean quantity capsule: minus | value | plus. */
.single-product form.cart .quantity {
    display: inline-grid !important;
    grid-template-columns: 46px 62px 46px !important;
    align-items: stretch !important;
    width: 154px !important;
    min-width: 154px !important;
    height: 64px !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

.single-product form.cart .quantity .farmed-qty-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #173d2d !important;
    font-size: 23px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.single-product form.cart .quantity .farmed-qty-btn:hover,
.single-product form.cart .quantity .farmed-qty-btn:focus {
    background: #f4f2eb !important;
    outline: none !important;
}

.single-product form.cart .quantity input.qty {
    display: block !important;
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 6px !important;
    border: 0 !important;
    border-left: 1px solid #e4e1d8 !important;
    border-right: 1px solid #e4e1d8 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #111 !important;
    text-align: center !important;
    box-shadow: none !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

/* Remove browser's built-in number arrows. */
.single-product form.cart .quantity input.qty::-webkit-outer-spin-button,
.single-product form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

@media (max-width: 700px) {
    .single-product table.variations tr {
        grid-template-columns: 1fr !important;
        row-gap: 8px !important;
    }

    .single-product table.variations th.label,
    .single-product table.variations td.value {
        min-height: auto !important;
    }

    .single-product table.variations th.label {
        justify-content: flex-start !important;
    }
}


/* =========================================================
   FARMED 2.4.51 — Product purchase panel, IDEJA A
   Rounded & balanced
   ========================================================= */

.single-product .summary form.variations_form.cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    grid-template-areas:
        "variations variations variations"
        "spacer quantity addtocart" !important;
    align-items: center !important;
    column-gap: 18px !important;
    row-gap: 26px !important;
    width: 100% !important;
    margin-top: 0 !important;
}

.single-product .summary form.variations_form.cart table.variations {
    grid-area: variations !important;
    width: 100% !important;
    margin: 0 !important;
}

.single-product .summary form.variations_form.cart table.variations tbody {
    width: 100% !important;
}

.single-product .summary form.variations_form.cart table.variations tr {
    display: grid !important;
    grid-template-columns: 165px minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 12px !important;
    width: 100% !important;
}

.single-product .summary form.variations_form.cart table.variations th.label,
.single-product .summary form.variations_form.cart table.variations td.value {
    min-height: 64px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.single-product .summary form.variations_form.cart table.variations th.label {
    justify-content: flex-end !important;
}

.single-product .summary form.variations_form.cart table.variations th.label label {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    color: #0f3b2a !important;
}

.single-product .summary form.variations_form.cart table.variations td.value select {
    width: 100% !important;
    min-height: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 52px 0 22px !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 22px !important;
    background-color: #fff !important;
    box-shadow: none !important;
    font-size: 17px !important;
}

.single-product .summary form.variations_form.cart .single_variation_wrap,
.single-product .summary form.variations_form.cart .woocommerce-variation-add-to-cart {
    display: contents !important;
}

.single-product .summary form.variations_form.cart .quantity {
    grid-area: quantity !important;
    display: inline-grid !important;
    grid-template-columns: 54px 64px 54px !important;
    width: 172px !important;
    min-width: 172px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

.single-product .summary form.variations_form.cart .quantity .farmed-qty-btn {
    width: 54px !important;
    min-width: 54px !important;
    height: 64px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #0f3b2a !important;
    font-size: 27px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .summary form.variations_form.cart .quantity .farmed-qty-btn:hover,
.single-product .summary form.variations_form.cart .quantity .farmed-qty-btn:focus {
    background: #f5f3ec !important;
}

.single-product .summary form.variations_form.cart .quantity input.qty {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e4e1d8 !important;
    border-right: 1px solid #e4e1d8 !important;
    border-radius: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 17px !important;
    box-shadow: none !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.single-product .summary form.variations_form.cart .quantity input.qty::-webkit-outer-spin-button,
.single-product .summary form.variations_form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.single-product .summary form.variations_form.cart .single_add_to_cart_button {
    grid-area: addtocart !important;
    width: 220px !important;
    min-width: 220px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 28px !important;
    border-radius: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

.single-product .summary form.variations_form.cart::before {
    content: "" !important;
    grid-area: spacer !important;
}

@media (max-width: 760px) {
    .single-product .summary form.variations_form.cart {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "variations"
            "quantity"
            "addtocart" !important;
        row-gap: 14px !important;
    }

    .single-product .summary form.variations_form.cart::before {
        display: none !important;
    }

    .single-product .summary form.variations_form.cart table.variations tr {
        grid-template-columns: 1fr !important;
        row-gap: 8px !important;
    }

    .single-product .summary form.variations_form.cart table.variations th.label {
        justify-content: flex-start !important;
        min-height: auto !important;
    }

    .single-product .summary form.variations_form.cart table.variations td.value {
        min-height: auto !important;
    }

    .single-product .summary form.variations_form.cart .quantity {
        width: 100% !important;
        grid-template-columns: 1fr 1fr 1fr !important;
    }

    .single-product .summary form.variations_form.cart .quantity .farmed-qty-btn,
    .single-product .summary form.variations_form.cart .quantity input.qty {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    .single-product .summary form.variations_form.cart .single_add_to_cart_button {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* =========================================================
   FARMED 2.4.52 — final right-aligned product purchase panel
   ========================================================= */

/* Hide WooCommerce "Poništi" link completely. */
.single-product .reset_variations {
    display: none !important;
}

/* Main purchase form: controls aligned to the right edge. */
.single-product .summary form.variations_form.cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 180px 240px !important;
    grid-template-areas:
        "variations variations variations"
        "spacer quantity addtocart" !important;
    column-gap: 18px !important;
    row-gap: 28px !important;
    align-items: center !important;
    width: 100% !important;
}

/* Top row: label + dropdown sit as one right-aligned group. */
.single-product .summary form.variations_form.cart table.variations {
    grid-area: variations !important;
    width: 100% !important;
    margin: 0 !important;
}

.single-product .summary form.variations_form.cart table.variations tbody {
    display: block !important;
    width: 100% !important;
}

.single-product .summary form.variations_form.cart table.variations tr {
    display: grid !important;
    grid-template-columns: 96px 410px !important;
    justify-content: end !important;
    align-items: center !important;
    column-gap: 14px !important;
    width: 100% !important;
}

.single-product .summary form.variations_form.cart table.variations th.label,
.single-product .summary form.variations_form.cart table.variations td.value {
    display: flex !important;
    align-items: center !important;
    min-height: 64px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.single-product .summary form.variations_form.cart table.variations th.label {
    justify-content: flex-end !important;
}

.single-product .summary form.variations_form.cart table.variations th.label label {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    color: #0f3b2a !important;
    white-space: nowrap !important;
}

/* Dropdown: same rounded visual language, right edge aligned with cart button. */
.single-product .summary form.variations_form.cart table.variations td.value {
    position: relative !important;
}

.single-product .summary form.variations_form.cart table.variations td.value select {
    width: 410px !important;
    max-width: 410px !important;
    height: 64px !important;
    min-height: 64px !important;
    margin: 0 !important;
    padding: 0 54px 0 22px !important;
    border: 1px solid #163d2c !important;
    border-radius: 22px !important;
    background-color: #fff !important;
    box-shadow: none !important;
    font-size: 17px !important;
}

/* Make variation wrappers transparent to the CSS grid. */
.single-product .summary form.variations_form.cart .single_variation_wrap,
.single-product .summary form.variations_form.cart .woocommerce-variation-add-to-cart {
    display: contents !important;
}

/* Bottom row: right aligned, equal height, clear gap. */
.single-product .summary form.variations_form.cart::before {
    content: "" !important;
    grid-area: spacer !important;
}

.single-product .summary form.variations_form.cart .quantity {
    grid-area: quantity !important;
    display: inline-grid !important;
    grid-template-columns: 58px 64px 58px !important;
    width: 180px !important;
    min-width: 180px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

.single-product .summary form.variations_form.cart .quantity .farmed-qty-btn {
    width: 58px !important;
    min-width: 58px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #0f3b2a !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
}

.single-product .summary form.variations_form.cart .quantity .farmed-qty-btn:hover,
.single-product .summary form.variations_form.cart .quantity .farmed-qty-btn:focus {
    background: #f5f3ec !important;
    outline: none !important;
}

.single-product .summary form.variations_form.cart .quantity input.qty {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e4e1d8 !important;
    border-right: 1px solid #e4e1d8 !important;
    border-radius: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 17px !important;
    box-shadow: none !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.single-product .summary form.variations_form.cart .quantity input.qty::-webkit-outer-spin-button,
.single-product .summary form.variations_form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.single-product .summary form.variations_form.cart .single_add_to_cart_button {
    grid-area: addtocart !important;
    width: 240px !important;
    min-width: 240px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 30px !important;
    border-radius: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

/* Ensure both lower controls share the exact baseline. */
.single-product .summary form.variations_form.cart .quantity,
.single-product .summary form.variations_form.cart .single_add_to_cart_button {
    align-self: center !important;
}

/* Mobile: preserve elegance, stack cleanly. */
@media (max-width: 760px) {
    .single-product .summary form.variations_form.cart {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "variations"
            "quantity"
            "addtocart" !important;
        row-gap: 14px !important;
    }

    .single-product .summary form.variations_form.cart::before {
        display: none !important;
    }

    .single-product .summary form.variations_form.cart table.variations tr {
        grid-template-columns: 1fr !important;
        justify-content: stretch !important;
        row-gap: 8px !important;
    }

    .single-product .summary form.variations_form.cart table.variations th.label {
        justify-content: flex-start !important;
        min-height: auto !important;
    }

    .single-product .summary form.variations_form.cart table.variations td.value {
        min-height: auto !important;
    }

    .single-product .summary form.variations_form.cart table.variations td.value select {
        width: 100% !important;
        max-width: none !important;
    }

    .single-product .summary form.variations_form.cart .quantity,
    .single-product .summary form.variations_form.cart .single_add_to_cart_button {
        width: 100% !important;
        min-width: 0 !important;
    }

    .single-product .summary form.variations_form.cart .quantity {
        grid-template-columns: 1fr 1fr 1fr !important;
    }

    .single-product .summary form.variations_form.cart .quantity .farmed-qty-btn,
    .single-product .summary form.variations_form.cart .quantity input.qty {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }
}


/* =========================================================
   FARMED 2.4.53 — simple product purchase panel
   Match variable-product lower row
   ========================================================= */

/* Simple products only: right-align quantity + add-to-cart as one group. */
.single-product .summary form.cart:not(.variations_form) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 180px 240px !important;
    grid-template-areas: "spacer quantity addtocart" !important;
    column-gap: 18px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
}

/* Empty flexible area on the left pushes controls to the right edge. */
.single-product .summary form.cart:not(.variations_form)::before {
    content: "" !important;
    grid-area: spacer !important;
}

/* Same quantity capsule as variable products. */
.single-product .summary form.cart:not(.variations_form) .quantity {
    grid-area: quantity !important;
    display: inline-grid !important;
    grid-template-columns: 58px 64px 58px !important;
    width: 180px !important;
    min-width: 180px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

.single-product .summary form.cart:not(.variations_form) .quantity .farmed-qty-btn {
    width: 58px !important;
    min-width: 58px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #0f3b2a !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
}

.single-product .summary form.cart:not(.variations_form) .quantity .farmed-qty-btn:hover,
.single-product .summary form.cart:not(.variations_form) .quantity .farmed-qty-btn:focus {
    background: #f5f3ec !important;
    outline: none !important;
}

.single-product .summary form.cart:not(.variations_form) .quantity input.qty {
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e4e1d8 !important;
    border-right: 1px solid #e4e1d8 !important;
    border-radius: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 17px !important;
    box-shadow: none !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.single-product .summary form.cart:not(.variations_form) .quantity input.qty::-webkit-outer-spin-button,
.single-product .summary form.cart:not(.variations_form) .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Same add-to-cart size and alignment as variable products. */
.single-product .summary form.cart:not(.variations_form) .single_add_to_cart_button {
    grid-area: addtocart !important;
    width: 240px !important;
    min-width: 240px !important;
    height: 64px !important;
    margin: 0 !important;
    padding: 0 30px !important;
    border-radius: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

/* Mobile: stack neatly and keep both controls full width. */
@media (max-width: 760px) {
    .single-product .summary form.cart:not(.variations_form) {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "quantity"
            "addtocart" !important;
        row-gap: 14px !important;
    }

    .single-product .summary form.cart:not(.variations_form)::before {
        display: none !important;
    }

    .single-product .summary form.cart:not(.variations_form) .quantity,
    .single-product .summary form.cart:not(.variations_form) .single_add_to_cart_button {
        width: 100% !important;
        min-width: 0 !important;
    }

    .single-product .summary form.cart:not(.variations_form) .quantity {
        grid-template-columns: 1fr 1fr 1fr !important;
    }

    .single-product .summary form.cart:not(.variations_form) .quantity .farmed-qty-btn,
    .single-product .summary form.cart:not(.variations_form) .quantity input.qty {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }
}


/* =========================================================
   FARMED 2.4.54 — cart quantity stepper + mobile compaction
   ========================================================= */

/* One elegant quantity capsule in cart, matching product page. */
.woocommerce-cart-form .quantity {
    display: inline-grid !important;
    grid-template-columns: 44px 58px 44px !important;
    width: 146px !important;
    min-width: 146px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
    vertical-align: middle !important;
}

.woocommerce-cart-form .quantity .farmed-cart-qty-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #0f3b2a !important;
    font-size: 23px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.woocommerce-cart-form .quantity .farmed-cart-qty-btn:hover,
.woocommerce-cart-form .quantity .farmed-cart-qty-btn:focus {
    background: #f5f3ec !important;
    outline: none !important;
}

.woocommerce-cart-form .quantity input.qty {
    display: block !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e4e1d8 !important;
    border-right: 1px solid #e4e1d8 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #111 !important;
    text-align: center !important;
    font-size: 16px !important;
    box-shadow: none !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button,
.woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Keep desktop row compact and balanced. */
.woocommerce-cart-form .cart_item .product-quantity {
    text-align: center !important;
}

.woocommerce-cart-form .cart_item .product-subtotal,
.woocommerce-cart-form .cart_item .product-remove {
    vertical-align: middle !important;
}

/* Hide manual update-cart button if theme/WooCommerce outputs it;
   quantity changes now recalculate automatically. */
.woocommerce-cart-form button[name="update_cart"],
.woocommerce-cart-form input[name="update_cart"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0,0,0,0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Mobile cart: quantity + line total + remove on one compact row. */
@media (max-width: 760px) {
    .woocommerce-cart-form .cart_item {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 92px minmax(0, 1fr) auto !important;
        grid-template-areas:
            "thumb name name"
            "thumb price price"
            "quantity quantity subtotal" !important;
        column-gap: 16px !important;
        row-gap: 8px !important;
        padding: 20px 0 !important;
    }

    .woocommerce-cart-form .cart_item .product-thumbnail {
        grid-area: thumb !important;
        align-self: start !important;
    }

    .woocommerce-cart-form .cart_item .product-name {
        grid-area: name !important;
        padding: 0 !important;
    }

    .woocommerce-cart-form .cart_item .product-price {
        grid-area: price !important;
        padding: 0 !important;
    }

    .woocommerce-cart-form .cart_item .product-quantity {
        grid-area: quantity !important;
        padding: 10px 0 0 0 !important;
        text-align: left !important;
    }

    .woocommerce-cart-form .cart_item .product-subtotal {
        grid-area: subtotal !important;
        align-self: center !important;
        justify-self: end !important;
        padding: 10px 34px 0 12px !important;
        white-space: nowrap !important;
    }

    .woocommerce-cart-form .cart_item .product-remove {
        position: absolute !important;
        right: 0 !important;
        bottom: 28px !important;
        width: 24px !important;
        height: 24px !important;
        padding: 0 !important;
    }

    .woocommerce-cart-form .quantity {
        width: 146px !important;
        min-width: 146px !important;
        height: 52px !important;
        grid-template-columns: 44px 58px 44px !important;
    }

    .woocommerce-cart-form .quantity .farmed-cart-qty-btn,
    .woocommerce-cart-form .quantity input.qty {
        height: 52px !important;
    }
}


/* =========================================================
   FARMED 2.4.55 — cart stepper visual correction
   ========================================================= */
.woocommerce-cart-form .quantity .farmed-cart-qty-btn,
.woocommerce-cart-form .quantity button.farmed-cart-qty-btn,
.woocommerce-cart-form button.farmed-cart-qty-btn {
    background: #ffffff !important;
    background-image: none !important;
    color: #0f3b2a !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    opacity: 1 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.woocommerce-cart-form .quantity .farmed-cart-qty-minus {
    border-right: 1px solid #e4e1d8 !important;
}

.woocommerce-cart-form .quantity .farmed-cart-qty-plus {
    border-left: 1px solid #e4e1d8 !important;
}

.woocommerce-cart-form .quantity input.qty {
    border-left: 0 !important;
    border-right: 0 !important;
}

.woocommerce-cart-form .quantity .farmed-cart-qty-btn:hover,
.woocommerce-cart-form .quantity .farmed-cart-qty-btn:focus,
.woocommerce-cart-form .quantity .farmed-cart-qty-btn:active {
    background: #f8f7f2 !important;
    color: #0f3b2a !important;
}


/* =========================================================
   FARMED 2.4.56 — cart stepper, actual markup
   ========================================================= */

/* The cart receives .farmed-qty-btn from the global Woo quantity hooks. */
body.woocommerce-cart .farmed-cart-item-qty .quantity {
    display: inline-grid !important;
    grid-template-columns: 44px 58px 44px !important;
    width: 146px !important;
    min-width: 146px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: 1px solid #d8d8cf !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    background-image: none !important;
    color: #0f3b2a !important;
    font-size: 23px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    opacity: 1 !important;
    cursor: pointer !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-minus {
    border-right: 1px solid #e4e1d8 !important;
}

body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-plus {
    border-left: 1px solid #e4e1d8 !important;
}

body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-btn:hover,
body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-btn:focus,
body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-btn:active {
    background: #f8f7f2 !important;
    color: #0f3b2a !important;
    outline: none !important;
}

body.woocommerce-cart .farmed-cart-item-qty .quantity input.qty {
    display: block !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #111 !important;
    text-align: center !important;
    font-size: 16px !important;
    box-shadow: none !important;
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

body.woocommerce-cart .farmed-cart-item-qty .quantity input.qty::-webkit-outer-spin-button,
body.woocommerce-cart .farmed-cart-item-qty .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Desktop control column must be wide enough for the new capsule. */
@media (min-width: 761px) {
    body.woocommerce-cart .farmed-cart-item-controls {
        grid-template-columns: 146px 110px 36px !important;
    }
}

/* Mobile: keep quantity, subtotal and remove compact on one row. */
@media (max-width: 760px) {
    body.woocommerce-cart .farmed-cart-item-controls {
        display: grid !important;
        grid-template-columns: 146px minmax(92px, 1fr) 28px !important;
        gap: 10px !important;
        align-items: center !important;
        width: 100% !important;
    }

    body.woocommerce-cart .farmed-cart-item-qty .quantity {
        width: 146px !important;
        min-width: 146px !important;
        height: 52px !important;
    }

    body.woocommerce-cart .farmed-cart-item-qty .quantity .farmed-qty-btn,
    body.woocommerce-cart .farmed-cart-item-qty .quantity input.qty {
        height: 52px !important;
    }

    body.woocommerce-cart .farmed-cart-item-subtotal {
        text-align: right !important;
        white-space: nowrap !important;
    }

    body.woocommerce-cart .farmed-cart-item-remove {
        justify-self: end !important;
    }
}


/* =========================================================
   FARMED 2.4.59 — CHECKOUT SAFE POLISH
   Conservative styling: no nested radio/payment box overrides.
   ========================================================= */

body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input {
    border-radius: 16px !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-address-card,
body.woocommerce-checkout .wc-block-components-address-card-wrapper {
    border-radius: 16px !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
    border-radius: 24px !important;
    overflow: hidden !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
    min-height: 64px !important;
    border-radius: 999px !important;
    background: var(--farmed-forest) !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* Keep native WooCommerce radio/payment structure untouched.
   Only color the actual checked controls. */
body.woocommerce-checkout input[type="radio"],
body.woocommerce-checkout input[type="checkbox"] {
    accent-color: var(--farmed-forest) !important;
}

@media (max-width: 781px) {
    body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
        border-radius: 18px !important;
    }

    body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
        min-height: 60px !important;
    }
}


/* =========================================================
   FARMED 2.4.60 — mobile pickup/shipping selector fix
   ========================================================= */

@media (max-width: 781px) {
    /* Keep the two delivery-mode choices equal and prevent
       "Lično preuzimanje" from breaking into an awkward narrow column. */
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option > div,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option .wc-block-components-radio-control {
        width: 100% !important;
        min-width: 0 !important;
    }

    body.woocommerce-checkout .wc-block-checkout__shipping-method-option {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0 !important;
        align-items: stretch !important;
    }

    body.woocommerce-checkout .wc-block-checkout__shipping-method-option button,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option .wc-block-components-button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 72px !important;
        padding: 10px 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 9px !important;
        text-align: center !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }

    body.woocommerce-checkout .wc-block-checkout__shipping-method-option button span,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option .wc-block-components-button span {
        white-space: nowrap !important;
    }
}

/* Very narrow phones: allow a clean two-line label only if absolutely necessary,
   but keep both cards the same width and height. */
@media (max-width: 390px) {
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option button,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option .wc-block-components-button,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option button span,
    body.woocommerce-checkout .wc-block-checkout__shipping-method-option .wc-block-components-button span {
        white-space: normal !important;
    }
}


/* =========================================================
   FARMED 2.4.61 — product stock UX
   ========================================================= */

body.single-product .farmed-product-stock-message {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 12px 16px !important;
    border: 1px solid rgba(16,61,42,.16) !important;
    border-radius: 14px !important;
    background: #f7f6f1 !important;
    color: var(--farmed-forest) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    box-sizing: border-box !important;
}

body.single-product .farmed-product-stock-message[hidden] {
    display: none !important;
}

body.single-product .farmed-product-stock-message--error {
    border-color: rgba(126,40,34,.22) !important;
    background: #fbf5f3 !important;
    color: #7e2822 !important;
}

body.single-product .farmed-view-cart-link {
    grid-column: 1 / -1 !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    margin-top: 10px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    background: var(--farmed-forest) !important;
    color: #fff !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

body.single-product .farmed-stock-note {
    margin-top: 12px !important;
    color: var(--farmed-muted) !important;
    font-size: 14px !important;
}

@media (max-width: 760px) {
    body.single-product .farmed-product-stock-message {
        margin-top: 10px !important;
        padding: 11px 14px !important;
    }

    body.single-product .farmed-view-cart-link {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}


/* =========================================================
   FARMED 2.4.62 — MY ACCOUNT
   ========================================================= */

body.woocommerce-account .woocommerce {
    width: min(calc(100% - 72px), var(--farmed-container));
    margin-inline: auto;
    padding: 72px 0 96px;
}

body.woocommerce-account .entry-title,
body.woocommerce-account .wp-block-post-title {
    margin: 0 0 34px !important;
    color: var(--farmed-forest) !important;
    font-family: var(--farmed-font-display) !important;
    font-size: clamp(56px, 6vw, 88px) !important;
    font-weight: 500 !important;
    line-height: .98 !important;
}

body.woocommerce-account .woocommerce::after {
    content: "";
    display: table;
    clear: both;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
    float: left;
    width: 270px;
    margin: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content {
    float: right;
    width: calc(100% - 318px);
    min-height: 360px;
    padding: 30px 32px;
    border: 1px solid var(--farmed-line);
    border-radius: 24px;
    background: rgba(255,255,255,.68);
    box-sizing: border-box;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 10px;
    list-style: none;
    border: 1px solid var(--farmed-line);
    border-radius: 22px;
    background: rgba(255,255,255,.64);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li + li {
    margin-top: 4px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 0 16px;
    border-radius: 14px;
    color: var(--farmed-forest);
    font-size: 16px;
    font-weight: 650;
    text-decoration: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: #f4f2ea;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background: var(--farmed-forest);
    color: #fff;
}

body.woocommerce-account .woocommerce-MyAccount-content p {
    color: var(--farmed-text);
    font-size: 17px;
    line-height: 1.65;
}

body.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    margin-top: 0;
    font-size: 18px;
}

body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account table.shop_table {
    width: 100%;
    border: 1px solid var(--farmed-line) !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: 18px !important;
    overflow: hidden;
    background: #fff;
}

body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td,
body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td {
    padding: 14px 16px !important;
    border-color: var(--farmed-line) !important;
}

body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-address-fields,
body.woocommerce-account form.woocommerce-EditAccountForm {
    padding: 22px;
    border: 1px solid var(--farmed-line);
    border-radius: 18px;
    background: #fff;
    box-sizing: border-box;
}

body.woocommerce-account .woocommerce form .form-row input.input-text,
body.woocommerce-account .woocommerce form .form-row textarea,
body.woocommerce-account .woocommerce form select {
    min-height: 52px;
    border: 1px solid rgba(16,61,42,.2);
    border-radius: 14px;
    background: #fff;
    box-shadow: none;
}

body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce input.button {
    min-height: 48px;
    padding: 0 22px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--farmed-forest) !important;
    color: #fff !important;
    font-weight: 700 !important;
}

@media (max-width: 760px) {
    body.woocommerce-account .woocommerce {
        width: calc(100% - 32px);
        padding: 44px 0 72px;
    }

    body.woocommerce-account .entry-title,
    body.woocommerce-account .wp-block-post-title {
        margin-bottom: 24px !important;
        font-size: clamp(48px, 13vw, 64px) !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce-MyAccount-content {
        float: none;
        width: 100%;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation {
        margin-bottom: 20px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding: 8px;
        border-radius: 18px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation li + li {
        margin-top: 0;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation a {
        justify-content: center;
        min-height: 50px;
        padding: 8px 10px;
        text-align: center;
        font-size: 14px;
        line-height: 1.2;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    body.woocommerce-account .woocommerce-MyAccount-content {
        min-height: 0;
        padding: 22px 18px;
        border-radius: 18px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content p {
        font-size: 16px;
        line-height: 1.6;
    }
}


/* =========================================================
   FARMED 2.4.63 — WOOCOMMERCE PAGE TITLE / TOP SPACE NORMALIZATION
   ========================================================= */

/* The outer page section already provides the top spacing. */
body.woocommerce-account .woocommerce {
    padding-top: 0 !important;
}

/* Account title was explicitly oversized in 2.4.62. */
body.woocommerce-account .entry-title,
body.woocommerce-account .wp-block-post-title,
body.woocommerce-account .farmed-h1 {
    font-size: clamp(38px, 3.35vw, 56px) !important;
    line-height: .98 !important;
    margin-bottom: 26px !important;
}

/* Checkout: avoid stacking an additional large top gap below the page title. */
body.woocommerce-checkout .farmed-section {
    padding-top: 62px !important;
}

body.woocommerce-checkout .wc-block-checkout {
    padding-top: 22px !important;
}

/* Cart has its own custom title, so bring it to the same calmer scale. */
body.woocommerce-cart .farmed-cart-shell {
    padding-top: 48px;
}

body.woocommerce-cart .farmed-cart-intro h1 {
    font-size: clamp(38px, 3.35vw, 56px);
}

/* Product archive/store main heading follows the same internal-page scale. */
body.post-type-archive-product .farmed-h1,
body.tax-product_cat .farmed-h1,
body.tax-product_tag .farmed-h1 {
    font-size: clamp(38px, 3.35vw, 56px) !important;
}

@media (max-width: 760px) {
    body.woocommerce-account .woocommerce {
        padding-top: 0 !important;
    }

    body.woocommerce-account .entry-title,
    body.woocommerce-account .wp-block-post-title,
    body.woocommerce-account .farmed-h1 {
        font-size: clamp(34px, 10vw, 44px) !important;
        margin-bottom: 20px !important;
    }

    body.woocommerce-checkout .farmed-section {
        padding-top: 36px !important;
    }

    body.woocommerce-checkout .wc-block-checkout {
        padding-top: 10px !important;
    }

    body.woocommerce-cart .farmed-cart-shell {
        padding-top: 36px;
    }

    body.woocommerce-cart .farmed-cart-intro h1,
    body.post-type-archive-product .farmed-h1,
    body.tax-product_cat .farmed-h1,
    body.tax-product_tag .farmed-h1 {
        font-size: clamp(34px, 10vw, 44px) !important;
    }
}


/* =========================================================
   FARMED 2.4.64 — GLOBAL LARGE TYPE CLEANUP
   Keep the premium serif language, but remove oversized display type.
   ========================================================= */

/* Main single-product name: same calmer scale as internal hero titles. */
body.single-product div.product .product_title{
  font-size:clamp(38px,3.35vw,56px)!important;
}

/* Product page lower-section headings. */
body.single-product .woocommerce-Tabs-panel h2{
  font-size:30px!important;
}

body.single-product section.related > h2,
body.single-product section.upsells > h2{
  font-size:32px!important;
}

/* Product names in cards should feel like product names, not page heroes. */
.farmed-shop-all ul.products li.product .woocommerce-loop-product__title,
.farmed-product-archive ul.products li.product .woocommerce-loop-product__title{
  font-size:23px!important;
}

body.single-product section.related ul.products .woocommerce-loop-product__title,
body.single-product section.upsells ul.products .woocommerce-loop-product__title{
  font-size:22px!important;
}

/* Shop/archive hero explicit legacy sizes are normalized too. */
.farmed-shop-hero .farmed-h1,
.farmed-product-archive__hero .farmed-h1{
  font-size:clamp(38px,3.35vw,56px)!important;
}

/* Category/family section headings stay subordinate to the page title. */
.farmed-shop-family__title{
  font-size:28px!important;
}

@media(max-width:760px){
  body.single-product div.product .product_title{
    font-size:clamp(34px,10vw,44px)!important;
  }

  body.single-product .woocommerce-Tabs-panel h2{
    font-size:27px!important;
  }

  body.single-product section.related > h2,
  body.single-product section.upsells > h2{
    font-size:29px!important;
  }

  .farmed-shop-hero .farmed-h1,
  .farmed-product-archive__hero .farmed-h1{
    font-size:clamp(34px,10vw,44px)!important;
  }

  .farmed-shop-family__title{
    font-size:27px!important;
  }

  .farmed-shop-all ul.products li.product .woocommerce-loop-product__title,
  .farmed-product-archive ul.products li.product .woocommerce-loop-product__title{
    font-size:23px!important;
  }
}


/* =========================================================
   FARMED 2.4.65 — COMPACT MY ACCOUNT SUBPAGES
   Goal: fit ordinary account screens in the first viewport.
   ========================================================= */

/* Pull the whole account area significantly closer to the header. */
body.woocommerce-account .farmed-main > .farmed-container.farmed-section{
    padding-top:28px!important;
    padding-bottom:54px!important;
}

body.woocommerce-account .farmed-prose > .farmed-kicker{
    margin-bottom:5px!important;
}

body.woocommerce-account .farmed-prose > .farmed-h1{
    margin-bottom:18px!important;
}

/* Tighter two-column shell. */
body.woocommerce-account .woocommerce-MyAccount-navigation{
    width:238px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content{
    width:calc(100% - 274px)!important;
    min-height:0!important;
    padding:20px 24px!important;
    border-radius:20px!important;
}

/* Compact navigation card. */
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    padding:7px!important;
    border-radius:18px!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:40px!important;
    padding:0 13px!important;
    border-radius:12px!important;
    font-size:15px!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li + li{
    margin-top:2px!important;
}

/* Content rhythm */
body.woocommerce-account .woocommerce-MyAccount-content p{
    margin-top:0!important;
    margin-bottom:14px!important;
    font-size:15.5px!important;
    line-height:1.5!important;
}

/* Orders — compact and cleaner. */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account table.shop_table{
    border-radius:15px!important;
}

body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td,
body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td{
    padding:10px 12px!important;
    font-size:14px!important;
    line-height:1.35!important;
    vertical-align:middle!important;
}

body.woocommerce-account .woocommerce-orders-table td del,
body.woocommerce-account .woocommerce-orders-table td ins{
    display:inline-block!important;
    margin-right:5px!important;
}

body.woocommerce-account .woocommerce-orders-table td ins{
    text-decoration:none!important;
}

/* Small, elegant action buttons instead of large pills. */
body.woocommerce-account .woocommerce-orders-table a.button,
body.woocommerce-account .woocommerce-orders-table .button{
    min-height:36px!important;
    padding:0 16px!important;
    font-size:13px!important;
}

/* E-mail verification prompt above Orders. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
    margin:0 0 16px!important;
    padding:13px 16px!important;
    min-height:0!important;
    border:1px solid var(--farmed-line)!important;
    border-top:0!important;
    border-radius:14px!important;
    background:#f7f6f1!important;
    color:var(--farmed-text)!important;
    font-size:14px!important;
    line-height:1.45!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before{
    display:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button{
    min-height:36px!important;
    padding:0 16px!important;
    font-size:13px!important;
}

/* Addresses — shrink nested cards and unused whitespace. */
body.woocommerce-account .woocommerce-Addresses{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:18px!important;
    margin-top:12px!important;
}

body.woocommerce-account .woocommerce-Address{
    float:none!important;
    width:auto!important;
    margin:0!important;
    padding:18px!important;
    border-radius:16px!important;
}

body.woocommerce-account .woocommerce-Address-title{
    margin-bottom:10px!important;
}

body.woocommerce-account .woocommerce-Address-title h2{
    margin:0!important;
    font-size:24px!important;
    line-height:1.1!important;
}

body.woocommerce-account .woocommerce-Address-title .edit{
    font-size:14px!important;
}

body.woocommerce-account .woocommerce-Address address{
    margin:0!important;
    font-size:15px!important;
    line-height:1.45!important;
}

/* Account details form — visibly smaller without feeling cramped. */
body.woocommerce-account form.woocommerce-EditAccountForm{
    padding:18px!important;
    border-radius:16px!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm .form-row{
    margin-bottom:10px!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm label,
body.woocommerce-account .woocommerce-address-fields label{
    margin-bottom:4px!important;
    font-size:14px!important;
}

body.woocommerce-account .woocommerce form .form-row input.input-text,
body.woocommerce-account .woocommerce form .form-row textarea,
body.woocommerce-account .woocommerce form select{
    min-height:44px!important;
    padding:8px 12px!important;
    border-radius:12px!important;
    font-size:14px!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm em{
    font-size:13px!important;
    line-height:1.35!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm fieldset{
    margin:13px 0 8px!important;
    padding:12px 14px!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm legend{
    font-size:15px!important;
}

/* Address edit forms follow the same compact rhythm. */
body.woocommerce-account .woocommerce-address-fields{
    padding:18px!important;
}

body.woocommerce-account .woocommerce-address-fields .form-row{
    margin-bottom:10px!important;
}

/* Mobile */
@media(max-width:760px){
    body.woocommerce-account .farmed-main > .farmed-container.farmed-section{
        padding-top:20px!important;
        padding-bottom:44px!important;
    }

    body.woocommerce-account .farmed-prose > .farmed-h1{
        margin-bottom:16px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation{
        margin-bottom:14px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul{
        gap:5px!important;
        padding:6px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation a{
        min-height:42px!important;
        font-size:13.5px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content{
        padding:16px!important;
        border-radius:16px!important;
    }

    body.woocommerce-account .woocommerce-Addresses{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    body.woocommerce-account .woocommerce-Address,
    body.woocommerce-account form.woocommerce-EditAccountForm,
    body.woocommerce-account .woocommerce-address-fields{
        padding:15px!important;
    }

    /* Mobile order table remains readable and compact. */
    body.woocommerce-account .woocommerce-orders-table th,
    body.woocommerce-account .woocommerce-orders-table td,
    body.woocommerce-account table.shop_table th,
    body.woocommerce-account table.shop_table td{
        padding:9px 8px!important;
        font-size:13px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
        padding:11px 12px!important;
        font-size:13px!important;
    }
}


/* =========================================================
   FARMED 2.4.66 — MY ACCOUNT MOBILE LAYOUT REPAIR
   ========================================================= */

/* Orders action buttons: properly centered + clear hover state. */
body.woocommerce-account .woocommerce-orders-table a.button,
body.woocommerce-account .woocommerce-orders-table .button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    line-height:1!important;
    white-space:nowrap!important;
    background:var(--farmed-forest)!important;
    color:#fff!important;
    transition:background .18s ease,color .18s ease,transform .18s ease!important;
}

body.woocommerce-account .woocommerce-orders-table a.button:hover,
body.woocommerce-account .woocommerce-orders-table .button:hover{
    background:var(--farmed-gold)!important;
    color:#fff!important;
    transform:translateY(-1px);
}

/* Critical mobile reset:
   2.4.65 desktop widths were declared later with !important and therefore
   overrode the earlier mobile width:100% rules. */
@media(max-width:760px){

    body.woocommerce-account .farmed-prose,
    body.woocommerce-account .woocommerce{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
    }

    body.woocommerce-account .woocommerce{
        display:block!important;
        margin:0!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce-MyAccount-content{
        float:none!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content{
        overflow:visible!important;
    }

    /* Everything inside content must be allowed to use the full phone width. */
    body.woocommerce-account .woocommerce-MyAccount-content > *,
    body.woocommerce-account .woocommerce-MyAccount-content form,
    body.woocommerce-account .woocommerce-MyAccount-content fieldset,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper,
    body.woocommerce-account .woocommerce-MyAccount-content .form-row{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }

    /* Forms: no desktop two-column widths surviving on phones. */
    body.woocommerce-account form.woocommerce-EditAccountForm .form-row-first,
    body.woocommerce-account form.woocommerce-EditAccountForm .form-row-last,
    body.woocommerce-account .woocommerce-address-fields .form-row-first,
    body.woocommerce-account .woocommerce-address-fields .form-row-last{
        float:none!important;
        width:100%!important;
    }

    body.woocommerce-account .woocommerce form .form-row input.input-text,
    body.woocommerce-account .woocommerce form .form-row textarea,
    body.woocommerce-account .woocommerce form select{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }

    /* Password fieldset was collapsing to a narrow strip. */
    body.woocommerce-account form.woocommerce-EditAccountForm fieldset{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }

    /* Address cards */
    body.woocommerce-account .woocommerce-Addresses{
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    body.woocommerce-account .woocommerce-Address{
        width:100%!important;
    }

    /* Info / verification banners should behave like normal full-width cards. */
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        gap:10px!important;
        width:100%!important;
        max-width:100%!important;
        box-sizing:border-box!important;
        word-break:normal!important;
        overflow-wrap:anywhere!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button{
        float:none!important;
        order:2!important;
        margin:0!important;
    }

    /* Orders table: switch to readable mobile cards instead of squeezing columns. */
    body.woocommerce-account table.woocommerce-orders-table,
    body.woocommerce-account .woocommerce-orders-table tbody,
    body.woocommerce-account .woocommerce-orders-table tr,
    body.woocommerce-account .woocommerce-orders-table td{
        display:block!important;
        width:100%!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-account .woocommerce-orders-table thead{
        display:none!important;
    }

    body.woocommerce-account .woocommerce-orders-table{
        border:0!important;
        background:transparent!important;
        overflow:visible!important;
    }

    body.woocommerce-account .woocommerce-orders-table tr{
        margin:0 0 12px!important;
        padding:10px 12px!important;
        border:1px solid var(--farmed-line)!important;
        border-radius:14px!important;
        background:#fff!important;
    }

    body.woocommerce-account .woocommerce-orders-table td{
        position:relative!important;
        min-height:34px!important;
        padding:7px 0 7px 44%!important;
        border:0!important;
        text-align:right!important;
        font-size:13.5px!important;
        line-height:1.35!important;
    }

    body.woocommerce-account .woocommerce-orders-table td::before{
        content:attr(data-title)!important;
        position:absolute!important;
        left:0!important;
        top:7px!important;
        width:40%!important;
        color:var(--farmed-forest)!important;
        font-weight:700!important;
        text-align:left!important;
    }

    body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{
        padding-left:0!important;
        padding-top:9px!important;
        text-align:right!important;
    }

    body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions::before{
        display:none!important;
    }

    body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button{
        min-width:88px!important;
        min-height:38px!important;
    }
}


/* =========================================================
   FARMED 2.4.67 — ACCOUNT FINAL POLISH
   ========================================================= */

/* ---------------------------------------------------------
   Orders: all account action/pagination buttons behave alike
   --------------------------------------------------------- */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button,
body.woocommerce-account .woocommerce-pagination .button,
body.woocommerce-account .woocommerce-pagination .woocommerce-button,
body.woocommerce-account .woocommerce-orders-table .button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    line-height:1!important;
    white-space:nowrap!important;
    min-height:38px!important;
    padding:0 18px!important;
    border:0!important;
    border-radius:999px!important;
    background:var(--farmed-forest)!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
    text-decoration:none!important;
    transition:background .18s ease,color .18s ease,transform .18s ease!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button:hover,
body.woocommerce-account .woocommerce-pagination .button:hover,
body.woocommerce-account .woocommerce-pagination .woocommerce-button:hover,
body.woocommerce-account .woocommerce-orders-table .button:hover{
    background:var(--farmed-gold)!important;
    color:#fff!important;
    transform:translateY(-1px);
}

/* Pagination spacing */
body.woocommerce-account .woocommerce-pagination{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    margin-top:14px!important;
}

/* ---------------------------------------------------------
   Addresses: force two clean, aligned columns on desktop
   --------------------------------------------------------- */
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .u-columns.woocommerce-Addresses,
body.woocommerce-account .woocommerce-Addresses.col2-set{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
}

body.woocommerce-account .woocommerce-Addresses .woocommerce-Address,
body.woocommerce-account .woocommerce-Addresses .col-1,
body.woocommerce-account .woocommerce-Addresses .col-2,
body.woocommerce-account .woocommerce-Addresses .u-column1,
body.woocommerce-account .woocommerce-Addresses .u-column2{
    float:none!important;
    clear:none!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    grid-column:auto!important;
    grid-row:auto!important;
    align-self:stretch!important;
    box-sizing:border-box!important;
}

body.woocommerce-account .woocommerce-Addresses .woocommerce-Address{
    min-height:210px!important;
}

/* Keep edit action aligned consistently. */
body.woocommerce-account .woocommerce-Address-title{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:18px!important;
}

body.woocommerce-account .woocommerce-Address-title h2{
    flex:1 1 auto!important;
}

body.woocommerce-account .woocommerce-Address-title .edit{
    flex:0 0 auto!important;
    margin-top:2px!important;
    white-space:nowrap!important;
}

/* ---------------------------------------------------------
   Mobile account navigation: subtle individual tab borders
   --------------------------------------------------------- */
@media(max-width:760px){
    body.woocommerce-account .woocommerce-MyAccount-navigation ul{
        background:rgba(255,255,255,.62)!important;
        border:1px solid var(--farmed-line)!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation li{
        min-width:0!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation a{
        border:1px solid rgba(23,52,33,.10)!important;
        background:rgba(255,255,255,.68)!important;
        color:var(--farmed-forest)!important;
        box-shadow:0 1px 0 rgba(23,52,33,.02)!important;
        transition:background .16s ease,border-color .16s ease,color .16s ease!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
        background:#f5f3ec!important;
        border-color:rgba(23,52,33,.18)!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
        background:var(--farmed-forest)!important;
        border-color:var(--farmed-forest)!important;
        color:#fff!important;
    }

    /* Address cards return to one clean column on phones. */
    body.woocommerce-account .woocommerce-Addresses,
    body.woocommerce-account .u-columns.woocommerce-Addresses,
    body.woocommerce-account .woocommerce-Addresses.col2-set{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    body.woocommerce-account .woocommerce-Addresses .woocommerce-Address{
        min-height:0!important;
    }

    body.woocommerce-account .woocommerce-pagination{
        margin-top:12px!important;
    }
}


/* =========================================================
   FARMED 2.4.68 — MY ACCOUNT ADDRESS CARDS
   ========================================================= */

/* Rebuild the address overview as a clean two-card grid.
   This intentionally overrides WooCommerce's legacy col-1/col-2 floats. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:18px!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
    margin:14px 0 0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-1,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .u-column2{
    position:static!important;
    float:none!important;
    clear:none!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:210px!important;
    margin:0!important;
    padding:22px 24px!important;
    border:1px solid var(--farmed-line)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-sizing:border-box!important;
    grid-column:auto!important;
    grid-row:auto!important;
}

/* Title row */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    width:100%!important;
    margin:0 0 16px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2{
    margin:0!important;
    color:var(--farmed-forest)!important;
    font-size:25px!important;
    line-height:1.08!important;
    font-weight:700!important;
}

/* "Uredi" is now a proper FARMED secondary action button. */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    min-height:38px!important;
    margin:0!important;
    padding:0 18px!important;
    border:1px solid rgba(23,52,33,.16)!important;
    border-radius:999px!important;
    background:var(--farmed-forest)!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    transition:background .18s ease,color .18s ease,transform .18s ease!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover{
    background:var(--farmed-gold)!important;
    color:#fff!important;
    transform:translateY(-1px);
}

/* Address text */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
    margin:auto 0 0!important;
    color:var(--farmed-text)!important;
    font-size:15px!important;
    font-style:normal!important;
    line-height:1.5!important;
}

/* Mobile — single-column, compact cards with full-width edit button. */
@media(max-width:760px){
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
    body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set{
        grid-template-columns:1fr!important;
        gap:12px!important;
        margin-top:10px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-1,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-2,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .u-column1,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .u-column2{
        min-height:0!important;
        padding:18px!important;
        border-radius:16px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        margin-bottom:14px!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2{
        font-size:23px!important;
        line-height:1.08!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit{
        width:100%!important;
        min-height:40px!important;
        padding-inline:16px!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
        margin:0!important;
        font-size:14.5px!important;
    }
}


/* =========================================================
   FARMED 2.4.69 — LOGIN + REGISTRATION
   ========================================================= */

body.woocommerce-account:not(.logged-in) .woocommerce{
    width:min(calc(100% - 72px),1120px)!important;
    margin-inline:auto!important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .u-columns.col2-set{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:26px!important;
    width:100%!important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2{
    float:none!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
}

body.woocommerce-account:not(.logged-in) .woocommerce h2{
    margin:0 0 14px!important;
    color:var(--farmed-forest)!important;
    font-family:var(--farmed-font-display)!important;
    font-size:30px!important;
    font-weight:400!important;
}

body.woocommerce-account:not(.logged-in) form.woocommerce-form-login,
body.woocommerce-account:not(.logged-in) form.woocommerce-form-register{
    height:100%!important;
    margin:0!important;
    padding:24px!important;
    border:1px solid var(--farmed-line)!important;
    border-radius:20px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}

body.woocommerce-account:not(.logged-in) form .form-row{
    margin:0 0 14px!important;
}

body.woocommerce-account:not(.logged-in) form label{
    margin-bottom:5px!important;
    color:var(--farmed-text)!important;
    font-size:14px!important;
    font-weight:600!important;
}

body.woocommerce-account:not(.logged-in) form input.input-text{
    width:100%!important;
    min-height:46px!important;
    padding:8px 13px!important;
    border:1px solid rgba(23,52,33,.18)!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:none!important;
    box-sizing:border-box!important;
}

body.woocommerce-account:not(.logged-in) form input.input-text:focus{
    border-color:var(--farmed-forest)!important;
    outline:none!important;
}

body.woocommerce-account:not(.logged-in) form .woocommerce-form-login__submit,
body.woocommerce-account:not(.logged-in) form .woocommerce-form-register__submit{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    padding:0 22px!important;
    border:0!important;
    border-radius:999px!important;
    background:var(--farmed-forest)!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:700!important;
    line-height:1!important;
    transition:background .18s ease,transform .18s ease!important;
}

body.woocommerce-account:not(.logged-in) form .woocommerce-form-login__submit:hover,
body.woocommerce-account:not(.logged-in) form .woocommerce-form-register__submit:hover{
    background:var(--farmed-gold)!important;
    transform:translateY(-1px);
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword{
    margin:12px 0 0!important;
    font-size:14px!important;
}

body.woocommerce-account:not(.logged-in) form.woocommerce-form-register p{
    font-size:14px!important;
    line-height:1.5!important;
}

@media(max-width:760px){
    body.woocommerce-account:not(.logged-in) .woocommerce{
        width:100%!important;
    }

    body.woocommerce-account:not(.logged-in) .woocommerce .u-columns.col2-set{
        grid-template-columns:1fr!important;
        gap:18px!important;
    }

    body.woocommerce-account:not(.logged-in) form.woocommerce-form-login,
    body.woocommerce-account:not(.logged-in) form.woocommerce-form-register{
        padding:18px!important;
        border-radius:16px!important;
    }

    body.woocommerce-account:not(.logged-in) .woocommerce h2{
        font-size:27px!important;
    }
}


/* =========================================================
   FARMED 2.4.70 — DETERMINISTIC AUTH + ADDRESS LAYOUTS
   ========================================================= */

/* Addresses */
body.woocommerce-account .farmed-account-address-intro{
    margin:0 0 16px!important;
}

body.woocommerce-account .farmed-account-address-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
    width:100%!important;
}

body.woocommerce-account .farmed-account-address-card{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    min-height:210px!important;
    padding:22px 24px!important;
    border:1px solid var(--farmed-line)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}

body.woocommerce-account .farmed-account-address-card__head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    margin-bottom:18px!important;
}

body.woocommerce-account .farmed-account-address-card__head h2{
    margin:0!important;
    color:var(--farmed-forest)!important;
    font-size:25px!important;
    line-height:1.08!important;
    font-weight:700!important;
}

body.woocommerce-account .farmed-account-edit-address{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    padding:0 18px!important;
    border-radius:999px!important;
    background:var(--farmed-forest)!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    white-space:nowrap!important;
    text-decoration:none!important;
    transition:background .18s ease,transform .18s ease!important;
}

body.woocommerce-account .farmed-account-edit-address:hover{
    background:var(--farmed-gold)!important;
    color:#fff!important;
    transform:translateY(-1px);
}

body.woocommerce-account .farmed-account-address-card address{
    margin:auto 0 0!important;
    color:var(--farmed-text)!important;
    font-size:15px!important;
    font-style:normal!important;
    line-height:1.5!important;
}

/* Login / Registration */
body.woocommerce-account:not(.logged-in) .farmed-auth-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:26px!important;
    width:100%!important;
    align-items:stretch!important;
}

body.woocommerce-account:not(.logged-in) .farmed-auth-grid--single{
    grid-template-columns:minmax(0,620px)!important;
    justify-content:center!important;
}

body.woocommerce-account:not(.logged-in) .farmed-auth-panel{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
}

body.woocommerce-account:not(.logged-in) .farmed-auth-panel > h2{
    margin:0 0 14px!important;
    color:var(--farmed-forest)!important;
    font-family:var(--farmed-font-display)!important;
    font-size:30px!important;
    font-weight:400!important;
    line-height:1.05!important;
}

body.woocommerce-account:not(.logged-in) .farmed-auth-form{
    flex:1 1 auto!important;
    width:100%!important;
    margin:0!important;
    padding:24px!important;
    border:1px solid var(--farmed-line)!important;
    border-radius:20px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}

body.woocommerce-account:not(.logged-in) .farmed-auth-actions{
    display:flex!important;
    align-items:center!important;
    gap:18px!important;
    flex-wrap:wrap!important;
    margin-top:4px!important;
}

body.woocommerce-account:not(.logged-in) .farmed-registration-hint,
body.woocommerce-account:not(.logged-in) .farmed-registration-privacy{
    margin:0 0 16px!important;
    font-size:14px!important;
    line-height:1.5!important;
}

@media(max-width:760px){
    body.woocommerce-account .farmed-account-address-grid{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    body.woocommerce-account .farmed-account-address-card{
        min-height:0!important;
        padding:18px!important;
        border-radius:16px!important;
    }

    body.woocommerce-account .farmed-account-address-card__head{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        margin-bottom:14px!important;
    }

    body.woocommerce-account .farmed-account-address-card__head h2{
        font-size:23px!important;
    }

    body.woocommerce-account .farmed-account-edit-address{
        width:100%!important;
        min-height:40px!important;
        box-sizing:border-box!important;
    }

    body.woocommerce-account:not(.logged-in) .farmed-auth-grid{
        grid-template-columns:1fr!important;
        gap:18px!important;
    }

    body.woocommerce-account:not(.logged-in) .farmed-auth-panel > h2{
        margin-bottom:10px!important;
        font-size:27px!important;
    }

    body.woocommerce-account:not(.logged-in) .farmed-auth-form{
        padding:18px!important;
        border-radius:16px!important;
    }
}


/* =========================================================
   FARMED 2.4.71 — DIRECT PASSWORD REGISTRATION
   ========================================================= */

body.woocommerce-account:not(.logged-in) .farmed-auth-panel--register .password-input{
    display:block!important;
    position:relative!important;
    width:100%!important;
}

body.woocommerce-account:not(.logged-in) .farmed-auth-panel--register .password-input input{
    width:100%!important;
    padding-right:46px!important;
    box-sizing:border-box!important;
}

body.woocommerce-account:not(.logged-in) .farmed-register-submit-row{
    margin-top:18px!important;
    margin-bottom:0!important;
}

/* Keep Woo password-strength feedback contained inside the registration card. */
body.woocommerce-account:not(.logged-in) .woocommerce-password-strength{
    width:100%!important;
    margin-top:6px!important;
    padding:7px 10px!important;
    border-radius:10px!important;
    box-sizing:border-box!important;
    font-size:13px!important;
    text-align:center!important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-password-hint{
    display:block!important;
    margin-top:6px!important;
    font-size:12.5px!important;
    line-height:1.4!important;
}


/* =========================================================
   FARMED 2.4.72 — REGISTRATION PASSWORD EYES
   ========================================================= */

body.woocommerce-account:not(.logged-in) .farmed-password-field{
    position:relative!important;
    display:block!important;
    width:100%!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-field > input{
    width:100%!important;
    padding-right:50px!important;
    box-sizing:border-box!important;
}

/* WooCommerce must not add/use its own eye inside FARMED custom fields. */
body.woocommerce-account:not(.logged-in) .farmed-password-field .show-password-input{
    display:none!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-toggle{
    position:absolute!important;
    top:50%!important;
    right:12px!important;
    z-index:3!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:50%!important;
    background:transparent!important;
    color:var(--farmed-forest)!important;
    display:grid!important;
    place-items:center!important;
    cursor:pointer!important;
    transform:translateY(-50%)!important;
    box-shadow:none!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-toggle:hover{
    background:rgba(184,185,154,.18)!important;
    color:var(--farmed-forest)!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-toggle svg{
    width:22px!important;
    height:22px!important;
    overflow:visible!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-toggle .farmed-eye-shape,
body.woocommerce-account:not(.logged-in) .farmed-password-toggle .farmed-eye-pupil{
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.7!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-toggle .farmed-eye-slash{
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
}

body.woocommerce-account:not(.logged-in) .farmed-password-toggle.is-visible .farmed-eye-slash{
    display:none!important;
}

/* FARMED 2.4.76 — shop landing follows the same page-start geometry. */
.farmed-shop-hero{
    padding-top:var(--farmed-page-start);
}

/* FARMED 2.4.77 — shop hero starts like every other public page.
   Previously the text column was vertically centered against the botanical
   artwork, which pushed FARMED PROIZVODI far below the shared start line. */
.farmed-shop-hero__inner{
    align-items:start;
}
.farmed-shop-hero__copy{
    align-self:start;
}
.farmed-shop-hero__art{
    align-self:start;
}


/* =========================================================
   FARMED 2.4.78 — SHOP opening matches FARMED BEE exactly
   ========================================================= */
.farmed-shop-hero{
    padding-top:var(--farmed-page-start)!important;
}
.farmed-shop-hero__inner,
.farmed-shop-hero__copy{
    margin-top:0!important;
    padding-top:0!important;
    align-items:start!important;
    align-self:start!important;
}

/* Remove the old shop-only 18 px kicker margin. BEE uses the natural
   kicker line box directly followed by the H1, so the two rows now match. */
.farmed-shop-hero .farmed-kicker{
    margin-top:0!important;
    margin-bottom:0!important;
}
.farmed-shop-hero .farmed-h1{
    margin-top:0!important;
}


/* =========================================================
   FARMED 2.4.84 — SHOP SORT LABEL
   ========================================================= */
.farmed-shop-toolbar{
    display:flex;
    justify-content:flex-end;
    align-items:center;
}
.farmed-shop-toolbar .woocommerce-ordering{
    float:none;
    display:flex;
    align-items:center;
    gap:14px;
    margin:0;
}
.farmed-shop-toolbar .woocommerce-ordering::before{
    content:"Sortiraj po";
    font-weight:700;
    color:var(--farmed-forest);
    white-space:nowrap;
}
@media(max-width:700px){
    .farmed-shop-toolbar{
        justify-content:flex-start;
    }
    .farmed-shop-toolbar .woocommerce-ordering{
        width:100%;
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
    }
    .farmed-shop-toolbar .woocommerce-ordering select{
        width:100%;
    }
}


/* =========================================================
   FARMED 2.4.85 — PRODUCTS HERO COMPACTION
   Zadržava identičan početak stranice, ali kategorije dolaze ranije.
   ========================================================= */
.farmed-shop-hero{
    padding-bottom:34px!important;
}
.farmed-shop-hero__art{
    width:min(280px,100%)!important;
}
.farmed-shop-family:first-of-type{
    padding-top:28px;
}

@media(max-width:900px){
    .farmed-shop-hero{
        padding-bottom:30px!important;
    }
}
@media(max-width:700px){
    .farmed-shop-hero{
        padding-bottom:26px!important;
    }
}


/* =========================================================
   FARMED 2.4.86 — unified WooCommerce CTA interaction
   Prevent WooCommerce/browser hover colors from overriding FARMED.
   ========================================================= */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.farmed-shop-all ul.products li.product .button,
.farmed-product-archive ul.products li.product .button{
    min-height:58px !important;
    padding:0 28px !important;
    border:1px solid var(--farmed-forest) !important;
    border-radius:var(--farmed-btn-radius) !important;
    background:var(--farmed-forest) !important;
    background-color:var(--farmed-forest) !important;
    color:#fff !important;
    box-shadow:none !important;
    text-decoration:none !important;
    font-weight:800 !important;
    transition:background-color var(--farmed-transition), border-color var(--farmed-transition), color var(--farmed-transition), transform var(--farmed-transition) !important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .button:focus-visible,
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product a.button:focus-visible,
.farmed-shop-all ul.products li.product .button:hover,
.farmed-shop-all ul.products li.product .button:focus-visible,
.farmed-product-archive ul.products li.product .button:hover,
.farmed-product-archive ul.products li.product .button:focus-visible{
    background:var(--farmed-gold) !important;
    background-color:var(--farmed-gold) !important;
    border-color:var(--farmed-gold) !important;
    color:#fff !important;
    transform:translateY(-1px);
}

/* =========================================================
   FARMED 2.4.87 — SINGLE PRODUCT FIRST-VIEW COMPACTION
   Keep the complete buying area visible together with the product image.
   ========================================================= */
@media (min-width:761px){
  body.single-product .farmed-single-product-shell{
    padding-top:48px!important;
    padding-bottom:82px!important;
  }

  body.single-product .farmed-product-top{
    grid-template-columns:minmax(0,1.02fr) minmax(420px,.82fr)!important;
    gap:58px!important;
    align-items:start!important;
  }

  /* The previous square gallery became taller than a normal desktop viewport.
     Use a controlled landscape frame so image + purchase panel read as one unit. */
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    height:clamp(500px,58vh,620px)!important;
    min-height:0!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image > a{
    display:block!important;
    width:100%!important;
    height:100%!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  /* Keep the buy panel available while the user scans the hero image. */
  body.single-product .farmed-product-summary-column{
    position:sticky!important;
    top:calc(var(--farmed-header-height) + 22px)!important;
  }

  body.single-product .farmed-product-summary-column .product_title{
    font-size:clamp(42px,3.35vw,58px)!important;
    margin-bottom:14px!important;
  }

  body.single-product .farmed-product-summary-column p.price,
  body.single-product .farmed-product-summary-column span.price{
    margin-bottom:22px!important;
  }

  body.single-product .woocommerce-product-details__short-description{
    margin-bottom:22px!important;
    font-size:16px!important;
    line-height:1.62!important;
  }

  body.single-product form.cart{
    padding:22px!important;
    margin-bottom:20px!important;
  }

  body.single-product .product_meta{
    padding-top:15px!important;
  }

  body.single-product .farmed-product-lower{
    margin-top:42px!important;
  }

  body.single-product .farmed-product-lower section.related,
  body.single-product .farmed-product-lower section.upsells{
    margin-top:54px!important;
    padding-top:44px!important;
  }
}

/* If no useful meta survives (e.g. an empty SKU), don't reserve visual space. */
body.single-product .product_meta:empty{
  display:none!important;
}

/* Product CTA follows the same locked FARMED green → gold interaction. */
body.single-product .single_add_to_cart_button:not(.disabled):not(:disabled){
  border:1px solid var(--farmed-forest)!important;
  background:var(--farmed-forest)!important;
  background-color:var(--farmed-forest)!important;
  color:#fff!important;
  transition:background-color var(--farmed-transition),border-color var(--farmed-transition),transform var(--farmed-transition)!important;
}
body.single-product .single_add_to_cart_button:not(.disabled):not(:disabled):hover,
body.single-product .single_add_to_cart_button:not(.disabled):not(:disabled):focus-visible{
  border-color:var(--farmed-gold)!important;
  background:var(--farmed-gold)!important;
  background-color:var(--farmed-gold)!important;
  color:#fff!important;
  transform:translateY(-1px);
}

@media (max-width:760px){
  body.single-product .farmed-single-product-shell{
    padding-top:30px!important;
  }
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    height:auto!important;
  }
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    object-fit:cover!important;
  }
  body.single-product .farmed-product-summary-column{
    position:static!important;
  }
}

/* =========================================================
   FARMED 2.4.88 — PREMIUM SINGLE PRODUCT HERO GEOMETRY
   Align the product page with the shared FARMED page-start axis.
   The image and buying panel form one compact first-view composition.
   ========================================================= */
@media (min-width:761px){
  body.single-product .farmed-single-product-shell{
    padding-top:var(--farmed-page-start,19px)!important;
    padding-bottom:82px!important;
  }

  body.single-product .farmed-product-top{
    grid-template-columns:minmax(0,1.02fr) minmax(420px,.82fr)!important;
    gap:58px!important;
    align-items:start!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    height:clamp(470px,55vh,590px)!important;
  }

  body.single-product .farmed-product-summary-column{
    position:sticky!important;
    top:calc(var(--farmed-header-height) + var(--farmed-page-start,19px))!important;
  }

  body.single-product .farmed-product-lower{
    margin-top:38px!important;
  }
}

/* =========================================================
   FARMED 2.4.89 — PREMIUM SINGLE PRODUCT LAYOUT
   Approved concept: story + facts + buy card; tabs left / related right.
   ========================================================= */
@media (min-width: 981px){
  body.single-product .farmed-product-top{
    grid-template-columns:minmax(0, .98fr) minmax(500px, .96fr)!important;
    gap:68px!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    height:clamp(455px,52vh,560px)!important;
  }

  body.single-product .farmed-product-summary-column{
    position:static!important;
    padding-top:0!important;
  }

  body.single-product .farmed-product-summary-column .product_title{
    margin:4px 0 12px!important;
    font-size:clamp(42px,3vw,56px)!important;
    line-height:.98!important;
  }

  body.single-product .farmed-product-summary-column p.price,
  body.single-product .farmed-product-summary-column span.price{
    margin:0 0 16px!important;
  }

  body.single-product .woocommerce-product-details__short-description{
    max-width:680px;
    margin:0 0 18px!important;
    color:#59645e;
    font-size:16px!important;
    line-height:1.62!important;
  }

  body.single-product .farmed-product-facts{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin:0 0 20px;
    border-top:1px solid rgba(16,59,39,.12);
    border-bottom:1px solid rgba(16,59,39,.12);
  }

  body.single-product .farmed-product-fact{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
    padding:13px 14px 13px 0;
  }
  body.single-product .farmed-product-fact + .farmed-product-fact{
    padding-left:18px;
    border-left:1px solid rgba(16,59,39,.12);
  }
  body.single-product .farmed-product-fact__icon{
    display:grid;
    place-items:center;
    flex:0 0 30px;
    width:30px;
    height:30px;
    border:1px solid rgba(191,128,25,.55);
    border-radius:50%;
    color:var(--farmed-gold);
    font-size:15px;
    line-height:1;
  }
  body.single-product .farmed-product-fact__text{
    display:grid;
    min-width:0;
    gap:1px;
    font-size:13px;
    line-height:1.35;
  }
  body.single-product .farmed-product-fact__text strong{
    color:var(--farmed-forest);
    font-size:13px;
  }
  body.single-product .farmed-product-fact__text span{
    overflow:hidden;
    color:#59645e;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  body.single-product .summary form.cart,
  body.single-product .summary form.variations_form.cart{
    margin-top:0!important;
    padding:20px!important;
    border:1px solid rgba(16,59,39,.15)!important;
    border-radius:24px!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  body.single-product .farmed-product-lower--split{
    display:grid!important;
    grid-template-columns:minmax(0,.90fr) minmax(0,1.10fr)!important;
    gap:56px!important;
    align-items:start!important;
    margin-top:26px!important;
    padding-top:28px!important;
    border-top:1px solid rgba(16,59,39,.12);
  }

  body.single-product .farmed-product-lower--split .woocommerce-tabs{
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs{
    display:flex!important;
    flex-wrap:wrap;
    gap:12px;
    margin:0 0 22px!important;
    padding:0!important;
    border:0!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs::before,
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs::after,
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li::before,
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li::after{
    display:none!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li{
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(16,59,39,.14)!important;
    border-radius:999px!important;
    background:#fff!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li a{
    display:block;
    padding:13px 22px!important;
    color:var(--farmed-forest)!important;
    font-weight:700!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li.active{
    border-color:var(--farmed-forest)!important;
    background:var(--farmed-forest)!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li.active a{
    color:#fff!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-tabs ul.tabs li:not(.active):hover{
    border-color:var(--farmed-gold)!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-Tabs-panel{
    margin:0!important;
    padding:0!important;
  }
  body.single-product .farmed-product-lower--split .woocommerce-Tabs-panel h2{
    margin:0 0 18px!important;
    font-size:34px!important;
  }

  body.single-product .farmed-product-lower__related section.related{
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  body.single-product .farmed-product-lower__related section.related > h2{
    margin:0 0 18px!important;
    font-size:34px!important;
  }
  body.single-product .farmed-product-lower__related ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
  }
  body.single-product .farmed-product-lower__related ul.products li.product{
    min-width:0!important;
  }
  body.single-product .farmed-product-lower__related ul.products li.product img{
    aspect-ratio:1.2/1!important;
    object-fit:cover!important;
  }
  body.single-product .farmed-product-lower__related ul.products li.product .woocommerce-loop-product__title{
    font-size:16px!important;
  }
  body.single-product .farmed-product-lower__related ul.products li.product .price{
    font-size:14px!important;
  }
  body.single-product .farmed-product-lower__related ul.products li.product .button{
    width:auto!important;
    min-height:38px!important;
    padding:10px 14px!important;
    font-size:13px!important;
  }
}

@media (max-width: 980px){
  body.single-product .farmed-product-facts{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    margin:0 0 18px;
    border-top:1px solid rgba(16,59,39,.12);
    border-bottom:1px solid rgba(16,59,39,.12);
  }
  body.single-product .farmed-product-fact{
    display:flex;
    gap:10px;
    padding:10px 0;
  }
  body.single-product .farmed-product-fact + .farmed-product-fact{
    border-top:1px solid rgba(16,59,39,.08);
  }
  body.single-product .farmed-product-fact__icon{
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border:1px solid rgba(191,128,25,.55);
    border-radius:50%;
    color:var(--farmed-gold);
  }
  body.single-product .farmed-product-fact__text{
    display:grid;
  }
  body.single-product .farmed-product-lower--split{
    display:block!important;
  }
  body.single-product .farmed-product-lower__related{
    margin-top:42px;
  }
}

/* =========================================================
   FARMED 2.4.90 — RELATED PRODUCT CARD ALIGNMENT
   Keep titles/prices balanced and every CTA on one baseline.
   ========================================================= */
@media (min-width: 981px){
  body.single-product .farmed-product-lower__related ul.products{
    align-items:stretch!important;
  }

  body.single-product .farmed-product-lower__related ul.products li.product{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    padding-bottom:18px!important;
    transition:transform var(--farmed-transition), box-shadow var(--farmed-transition), border-color var(--farmed-transition)!important;
  }

  body.single-product .farmed-product-lower__related ul.products li.product:hover{
    transform:translateY(-3px)!important;
    border-color:rgba(191,128,25,.32)!important;
    box-shadow:0 14px 34px rgba(23,52,33,.07)!important;
  }

  body.single-product .farmed-product-lower__related ul.products li.product .woocommerce-loop-product__title{
    display:flex!important;
    align-items:flex-start!important;
    min-height:44px!important;
    margin-bottom:4px!important;
  }

  body.single-product .farmed-product-lower__related ul.products li.product .price{
    display:block!important;
    min-height:42px!important;
    margin-bottom:10px!important;
    line-height:1.12!important;
  }

  body.single-product .farmed-product-lower__related ul.products li.product .button,
  body.single-product .farmed-product-lower__related ul.products li.product a.button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:calc(100% - 40px)!important;
    min-height:48px!important;
    margin:auto 20px 0!important;
    padding:10px 14px!important;
    line-height:1.08!important;
    text-align:center!important;
  }
}

/* Keep the same neat CTA anchoring on tablet/mobile without forcing
   desktop title/price heights where text naturally wraps more. */
@media (max-width: 980px){
  body.single-product .farmed-product-lower__related ul.products li.product{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
  }
  body.single-product .farmed-product-lower__related ul.products li.product .button,
  body.single-product .farmed-product-lower__related ul.products li.product a.button{
    margin-top:auto!important;
  }
}

/* =========================================================
   FARMED 2.4.91 — APPROVED COMPACT PREMIUM PRODUCT COMPOSITION
   Match the approved mockup: image and buying column share one visual frame;
   the compact buy card finishes on the same baseline as the product image.
   ========================================================= */
@media (min-width: 981px){
  body.single-product .farmed-product-top{
    grid-template-columns:minmax(0,.98fr) minmax(500px,.96fr)!important;
    gap:48px!important;
    align-items:stretch!important;
  }

  body.single-product .farmed-product-gallery-column,
  body.single-product .farmed-product-summary-column{
    min-width:0!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    height:100%!important;
    min-height:470px!important;
    max-height:535px!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image > a{
    height:100%!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    width:100%!important;
    height:100%!important;
    min-height:470px!important;
    max-height:535px!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  body.single-product .farmed-product-summary-column{
    display:flex!important;
    flex-direction:column!important;
    min-height:470px!important;
    max-height:535px!important;
    padding:0!important;
  }

  body.single-product .farmed-product-summary-column .farmed-product-line,
  body.single-product .farmed-product-summary-column .farmed-kicker{
    margin-bottom:8px!important;
  }

  body.single-product .farmed-product-summary-column .product_title{
    margin:0 0 10px!important;
    font-size:clamp(40px,2.8vw,54px)!important;
    line-height:1.02!important;
  }

  body.single-product .farmed-product-summary-column p.price,
  body.single-product .farmed-product-summary-column span.price{
    margin:0 0 14px!important;
    font-size:clamp(23px,1.65vw,29px)!important;
  }

  body.single-product .woocommerce-product-details__short-description{
    margin:0 0 14px!important;
    font-size:15px!important;
    line-height:1.52!important;
  }

  body.single-product .farmed-product-facts{
    margin:0 0 14px!important;
  }

  body.single-product .farmed-product-fact{
    padding-top:10px!important;
    padding-bottom:10px!important;
  }

  /* The purchase card is the visual anchor of the right column. */
  body.single-product .summary form.cart,
  body.single-product .summary form.variations_form.cart{
    margin-top:auto!important;
    margin-bottom:0!important;
    padding:16px 18px!important;
    border-radius:22px!important;
  }

  body.single-product .summary form.variations_form.cart table.variations{
    margin:0 0 12px!important;
  }

  body.single-product table.variations tr{
    grid-template-columns:118px minmax(0,1fr)!important;
    column-gap:14px!important;
  }

  body.single-product table.variations th.label,
  body.single-product table.variations td.value{
    min-height:52px!important;
  }

  body.single-product table.variations td.value select{
    min-height:52px!important;
    height:52px!important;
    border-radius:16px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }

  body.single-product form.cart .quantity{
    grid-template-columns:42px 54px 42px!important;
    min-width:138px!important;
    height:52px!important;
    border-radius:15px!important;
  }

  body.single-product form.cart .quantity .farmed-qty-btn{
    width:42px!important;
    min-width:42px!important;
    height:52px!important;
    font-size:22px!important;
  }

  body.single-product form.cart .quantity input.qty{
    width:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    height:52px!important;
    line-height:52px!important;
  }

  body.single-product form.cart .single_add_to_cart_button{
    min-height:52px!important;
    height:52px!important;
    padding:0 30px!important;
    border-radius:15px!important;
    margin:0!important;
  }

  body.single-product .single_variation_wrap,
  body.single-product .woocommerce-variation-add-to-cart{
    margin-bottom:0!important;
  }

  /* Lower content starts as one clean continuation of the hero. */
  body.single-product .farmed-product-lower--split{
    margin-top:22px!important;
    padding-top:24px!important;
    gap:48px!important;
  }
}

@media (min-width: 981px) and (max-height: 820px){
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper,
  body.single-product .farmed-product-summary-column{
    min-height:440px!important;
    max-height:500px!important;
  }
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    min-height:440px!important;
    max-height:500px!important;
  }
  body.single-product .woocommerce-product-details__short-description{
    line-height:1.45!important;
  }
  body.single-product .farmed-product-fact{
    padding-top:8px!important;
    padding-bottom:8px!important;
  }
}

/* =========================================================
   FARMED 2.4.92 — COMPACT PREMIUM PURCHASE CARD
   Approved single-product mockup: reduce the WooCommerce purchase
   panel itself (not only the surrounding hero geometry), while
   keeping all native variation/cart behaviour intact.
   ========================================================= */
@media (min-width: 981px){
  /* Compact card: visually lighter and noticeably shorter. */
  body.single-product .farmed-product-summary-column form.cart,
  body.single-product .farmed-product-summary-column form.variations_form.cart{
    padding:14px 16px!important;
    margin:0!important;
    min-height:0!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.78)!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart{
    grid-template-columns:minmax(0,1fr) 150px 230px!important;
    grid-template-areas:
      "variations variations variations"
      "spacer quantity addtocart"!important;
    column-gap:14px!important;
    row-gap:12px!important;
    align-items:center!important;
  }

  /* Variation line: smaller label + 52 px premium select. */
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations{
    margin:0!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations tr{
    grid-template-columns:88px minmax(300px,1fr)!important;
    column-gap:12px!important;
    justify-content:stretch!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations th.label,
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations td.value{
    min-height:52px!important;
    height:52px!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations th.label{
    justify-content:flex-end!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations th.label label{
    font-size:12px!important;
    letter-spacing:.035em!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations td.value select{
    width:100%!important;
    max-width:none!important;
    min-height:52px!important;
    height:52px!important;
    padding:0 46px 0 18px!important;
    border-radius:17px!important;
    font-size:16px!important;
  }

  /* Quantity and CTA: same 54 px baseline as in the approved mockup. */
  body.single-product .farmed-product-summary-column form.variations_form.cart .quantity{
    grid-template-columns:44px 58px 44px!important;
    width:146px!important;
    min-width:146px!important;
    height:54px!important;
    border-radius:17px!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart .quantity .farmed-qty-btn{
    width:44px!important;
    min-width:44px!important;
    height:54px!important;
    font-size:22px!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart .quantity input.qty{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:54px!important;
    line-height:54px!important;
    font-size:16px!important;
  }
  body.single-product .farmed-product-summary-column form.variations_form.cart .single_add_to_cart_button{
    width:230px!important;
    min-width:230px!important;
    min-height:54px!important;
    height:54px!important;
    padding:0 24px!important;
    border-radius:17px!important;
    font-size:16px!important;
  }

  /* WooCommerce may reserve invisible variation space. Remove it. */
  body.single-product .farmed-product-summary-column form.variations_form.cart .single_variation,
  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-price:empty,
  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-availability:empty,
  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-description:empty{
    margin:0!important;
    padding:0!important;
    min-height:0!important;
  }

  /* Simple products receive the same compact visual system. */
  body.single-product .farmed-product-summary-column form.cart:not(.variations_form){
    grid-template-columns:minmax(0,1fr) 146px 230px!important;
    column-gap:14px!important;
    padding:14px 16px!important;
  }
  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .quantity{
    width:146px!important;
    min-width:146px!important;
    height:54px!important;
    border-radius:17px!important;
  }
  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .single_add_to_cart_button{
    width:230px!important;
    min-width:230px!important;
    height:54px!important;
    min-height:54px!important;
    border-radius:17px!important;
    font-size:16px!important;
  }
}

/* Keep the clean stacking already approved for smaller screens. */
@media (max-width: 980px){
  body.single-product .farmed-product-summary-column form.cart,
  body.single-product .farmed-product-summary-column form.variations_form.cart{
    padding:16px!important;
    border-radius:20px!important;
  }
}

/* =========================================================
   FARMED 2.4.93 — FINAL SINGLE PRODUCT GEOMETRY
   - identical 3:2 product-image frame on desktop
   - compact variation selector whose width equals quantity + CTA
   - selected variation price shown in the purchase card
   - variation description is not duplicated inside the card
   ========================================================= */
@media (min-width: 981px){
  /* One deterministic image geometry for every product. */
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3 / 2!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image > a{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3 / 2!important;
    display:block!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3 / 2!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  /* Let the text column size naturally; do not let old viewport-height rules
     change the image frame from product to product. */
  body.single-product .farmed-product-summary-column{
    min-height:0!important;
    max-height:none!important;
  }

  /* Purchase card grid. 390px = 146px quantity + 14px gap + 230px CTA. */
  body.single-product .farmed-product-summary-column form.variations_form.cart{
    --farmed-buy-controls-width:390px;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 146px 230px!important;
    grid-template-areas:
      "variations variations variations"
      "price quantity addtocart"!important;
    column-gap:14px!important;
    row-gap:12px!important;
    align-items:center!important;
    padding:14px 16px!important;
    min-height:0!important;
  }

  /* Top row: label + selector. The selector itself is exactly as wide as
     quantity and Add to cart together on the row below. */
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations{
    grid-area:variations!important;
    width:100%!important;
    margin:0!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations tbody,
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations tr{
    width:100%!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations tr{
    display:grid!important;
    grid-template-columns:90px var(--farmed-buy-controls-width)!important;
    justify-content:end!important;
    column-gap:12px!important;
    align-items:center!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations th.label,
  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations td.value{
    height:52px!important;
    min-height:52px!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations th.label{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations td.value{
    width:var(--farmed-buy-controls-width)!important;
    max-width:var(--farmed-buy-controls-width)!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart table.variations td.value select{
    display:block!important;
    width:var(--farmed-buy-controls-width)!important;
    max-width:var(--farmed-buy-controls-width)!important;
    min-width:0!important;
    height:52px!important;
    min-height:52px!important;
    margin:0!important;
    padding:0 44px 0 18px!important;
    border-radius:17px!important;
    font-size:16px!important;
  }

  /* Keep native WooCommerce variation behaviour, but expose only the exact
     selected price in the lower-left position. */
  body.single-product .farmed-product-summary-column form.variations_form.cart .single_variation_wrap,
  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-add-to-cart{
    display:contents!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .single_variation{
    grid-area:price!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    min-height:54px!important;
    margin:0!important;
    padding:0 0 0 2px!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-description,
  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-availability{
    display:none!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-price{
    display:block!important;
    margin:0!important;
    padding:0!important;
    color:var(--farmed-gold)!important;
    font-weight:700!important;
    line-height:1.1!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-price .price,
  body.single-product .farmed-product-summary-column form.variations_form.cart .woocommerce-variation-price .amount{
    margin:0!important;
    color:var(--farmed-gold)!important;
    font-size:24px!important;
    font-weight:700!important;
    line-height:1.1!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .quantity{
    grid-area:quantity!important;
    width:146px!important;
    min-width:146px!important;
    height:54px!important;
    margin:0!important;
    grid-template-columns:44px 58px 44px!important;
    border-radius:17px!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .quantity .farmed-qty-btn{
    width:44px!important;
    min-width:44px!important;
    height:54px!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .quantity input.qty{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:54px!important;
    line-height:54px!important;
  }

  body.single-product .farmed-product-summary-column form.variations_form.cart .single_add_to_cart_button{
    grid-area:addtocart!important;
    width:230px!important;
    min-width:230px!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0 24px!important;
    border-radius:17px!important;
  }

  /* Old pseudo spacer is no longer needed because selected price occupies it. */
  body.single-product .farmed-product-summary-column form.variations_form.cart::before{
    content:none!important;
    display:none!important;
  }
}

/* On shorter desktop viewports keep exactly the same 3:2 image geometry. */
@media (min-width: 981px) and (max-height: 820px){
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image > a,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3 / 2!important;
  }
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image > a,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    height:100%!important;
  }
  body.single-product .farmed-product-summary-column{
    min-height:0!important;
    max-height:none!important;
  }
}

/* =========================================================
   FARMED 2.4.94 — stable two-line product facts geometry
   Reserve exactly two value lines in every fact so the buy card
   starts at the same vertical position on every product page.
   ========================================================= */
@media (min-width: 901px) {
  body.single-product .farmed-product-fact__text > span {
    display: -webkit-box !important;
    min-height: 2.70em !important;
    max-height: 2.70em !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: clip !important;
    line-height: 1.35 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  body.single-product .farmed-product-fact {
    align-items: center !important;
  }
}

/* =========================================================
   FARMED 2.4.95 — final product facts + simple purchase card
   - fact strip has one deterministic height on desktop
   - every fact value reserves exactly two text lines
   - simple products use price + quantity + CTA, without empty variation space
   - quantity stepper always keeps all three cells visible
   ========================================================= */
@media (min-width: 981px){
  /* FACT STRIP: the complete strip, not only its text, owns the height. */
  body.single-product .farmed-product-facts{
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-fact{
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    padding:9px 14px!important;
    margin:0!important;
    box-sizing:border-box!important;
    align-items:center!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-fact__text{
    display:grid!important;
    grid-template-rows:20px 38px!important;
    align-content:center!important;
    min-width:0!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-fact__text > strong{
    display:block!important;
    height:20px!important;
    min-height:20px!important;
    max-height:20px!important;
    margin:0!important;
    line-height:20px!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-fact__text > span{
    display:-webkit-box!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:0!important;
    line-height:19px!important;
    white-space:normal!important;
    overflow:hidden!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }

  /* SIMPLE PRODUCT: deliberately different grid from variable products. */
  body.single-product .farmed-product-summary-column form.cart:not(.variations_form){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 146px 230px!important;
    grid-template-areas:"simpleprice quantity addtocart"!important;
    column-gap:14px!important;
    row-gap:0!important;
    align-items:center!important;
    width:100%!important;
    min-height:82px!important;
    padding:14px 16px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .farmed-simple-card-price{
    grid-area:simpleprice!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    min-height:54px!important;
    padding-left:2px!important;
    color:var(--farmed-gold)!important;
    font-size:22px!important;
    font-weight:700!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }

  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .farmed-simple-card-price .price,
  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .farmed-simple-card-price .amount{
    margin:0!important;
    color:var(--farmed-gold)!important;
    font-size:22px!important;
    font-weight:700!important;
    line-height:1.1!important;
  }

  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .quantity{
    grid-area:quantity!important;
    display:grid!important;
    grid-template-columns:44px 58px 44px!important;
    width:146px!important;
    min-width:146px!important;
    max-width:146px!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
    padding:0!important;
    margin:0!important;
    gap:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    border-radius:17px!important;
  }

  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .quantity .farmed-qty-btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .quantity input.qty{
    display:block!important;
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    line-height:54px!important;
  }

  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .single_add_to_cart_button{
    grid-area:addtocart!important;
    width:230px!important;
    min-width:230px!important;
    max-width:230px!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
    margin:0!important;
    padding:0 24px!important;
    box-sizing:border-box!important;
    border-radius:17px!important;
  }
}

@media (max-width: 980px){
  body.single-product .farmed-product-summary-column form.cart:not(.variations_form) .farmed-simple-card-price{
    width:100%!important;
    margin:0 0 10px!important;
    color:var(--farmed-gold)!important;
    font-weight:700!important;
  }
}

/* =========================================================
   FARMED 2.4.96 — UNIVERSAL SINGLE PRODUCT COMPOSITION
   One deterministic desktop composition for all products:
   - image and summary share one visual height
   - variable copy length is absorbed by the story area
   - facts remain pinned above the purchase zone
   - purchase zone stays on one baseline across variable products
   - simple products may grow only when real stock information is present
   ========================================================= */
@media (min-width:981px){
  body.single-product .farmed-product-top{
    display:grid!important;
    grid-template-columns:minmax(0,.98fr) minmax(500px,.96fr)!important;
    gap:48px!important;
    align-items:stretch!important;
  }

  /* One immutable product image frame. */
  body.single-product .farmed-product-gallery-column,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__wrapper{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3/2!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image,
  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image > a{
    display:block!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:3/2!important;
  }

  body.single-product .farmed-product-gallery-column .woocommerce-product-gallery__image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:3/2!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  /* The right column is now a deliberate grid rather than a stack of
     WooCommerce elements whose margins depend on text wrapping. */
  body.single-product .farmed-product-summary-column{
    display:grid!important;
    grid-template-rows:auto auto auto minmax(0,1fr) auto auto!important;
    align-content:stretch!important;
    align-self:stretch!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
  }

  body.single-product .farmed-product-summary-column > .farmed-product-kicker{
    margin:0 0 8px!important;
    align-self:start!important;
  }

  body.single-product .farmed-product-summary-column > .product_title{
    margin:0 0 10px!important;
    font-size:clamp(40px,2.8vw,54px)!important;
    line-height:1.02!important;
    align-self:start!important;
  }

  body.single-product .farmed-product-summary-column > .woocommerce-product-rating{
    display:none!important;
  }

  body.single-product .farmed-product-summary-column > p.price,
  body.single-product .farmed-product-summary-column > span.price{
    margin:0 0 14px!important;
    font-size:clamp(23px,1.65vw,29px)!important;
    line-height:1.1!important;
    align-self:start!important;
  }

  /* Story owns all variable vertical space. Description stays at the top,
     facts stay at the bottom, so one-line vs two-line copy can never move
     the purchase panel. */
  body.single-product .farmed-product-story{
    display:grid!important;
    grid-template-rows:minmax(0,1fr) auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-story__description{
    min-height:0!important;
    align-self:start!important;
  }

  body.single-product .farmed-product-story__description .woocommerce-product-details__short-description{
    max-width:680px!important;
    margin:0!important;
    color:#59645e!important;
    font-size:15px!important;
    line-height:1.52!important;
  }

  body.single-product .farmed-product-story__description .woocommerce-product-details__short-description p{
    margin:0!important;
  }

  body.single-product .farmed-product-story__facts{
    align-self:end!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-facts{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    margin:12px 0 14px!important;
    overflow:hidden!important;
    border-top:1px solid rgba(16,59,39,.12)!important;
    border-bottom:1px solid rgba(16,59,39,.12)!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-fact{
    display:flex!important;
    align-items:center!important;
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    padding:9px 14px!important;
    margin:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-fact:first-child{
    padding-left:0!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-fact__text{
    display:grid!important;
    grid-template-rows:19px 38px!important;
    align-content:center!important;
    height:57px!important;
    min-height:57px!important;
    max-height:57px!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-fact__text > strong{
    height:19px!important;
    min-height:19px!important;
    max-height:19px!important;
    margin:0!important;
    line-height:19px!important;
    overflow:hidden!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-fact__text > span{
    display:-webkit-box!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:0!important;
    line-height:19px!important;
    white-space:normal!important;
    overflow:hidden!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }

  /* Purchase zone is a separate grid row and therefore has one stable
     baseline on all variable products. */
  body.single-product .farmed-product-purchase{
    align-self:end!important;
    min-width:0!important;
  }

  body.single-product .farmed-product-purchase > p.stock{
    margin:0 0 10px!important;
    color:#8a7a19!important;
    font-size:14px!important;
  }

  /* Compact variable product purchase card. */
  body.single-product .farmed-product-purchase form.variations_form.cart{
    --farmed-buy-qty:132px;
    --farmed-buy-gap:14px;
    --farmed-buy-cta:210px;
    --farmed-buy-controls:356px;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--farmed-buy-qty) var(--farmed-buy-cta)!important;
    grid-template-areas:
      "variations variations variations"
      "price quantity addtocart"!important;
    column-gap:var(--farmed-buy-gap)!important;
    row-gap:10px!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:12px 14px!important;
    border:1px solid rgba(16,59,39,.15)!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.82)!important;
    box-sizing:border-box!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations{
    grid-area:variations!important;
    width:100%!important;
    margin:0!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations tbody,
  body.single-product .farmed-product-purchase form.variations_form.cart table.variations tr{
    width:100%!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations tr{
    display:grid!important;
    grid-template-columns:78px var(--farmed-buy-controls)!important;
    justify-content:end!important;
    column-gap:10px!important;
    align-items:center!important;
    margin:0!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations th.label,
  body.single-product .farmed-product-purchase form.variations_form.cart table.variations td.value{
    display:flex!important;
    align-items:center!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations th.label{
    justify-content:flex-end!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations td.value{
    width:var(--farmed-buy-controls)!important;
    max-width:var(--farmed-buy-controls)!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart table.variations td.value select{
    display:block!important;
    width:var(--farmed-buy-controls)!important;
    max-width:var(--farmed-buy-controls)!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
    padding:0 40px 0 16px!important;
    border-radius:15px!important;
    font-size:15px!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .single_variation_wrap,
  body.single-product .farmed-product-purchase form.variations_form.cart .woocommerce-variation-add-to-cart{
    display:contents!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .single_variation{
    grid-area:price!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    min-height:50px!important;
    margin:0!important;
    padding:0 0 0 2px!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .woocommerce-variation-description,
  body.single-product .farmed-product-purchase form.variations_form.cart .woocommerce-variation-availability{
    display:none!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .woocommerce-variation-price{
    display:block!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .woocommerce-variation-price .price,
  body.single-product .farmed-product-purchase form.variations_form.cart .woocommerce-variation-price .amount{
    margin:0!important;
    color:var(--farmed-gold)!important;
    font-size:22px!important;
    font-weight:700!important;
    line-height:1.1!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .quantity{
    grid-area:quantity!important;
    display:grid!important;
    grid-template-columns:40px 52px 40px!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    border-radius:15px!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .quantity .farmed-qty-btn{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:50px!important;
    min-height:50px!important;
    font-size:21px!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .quantity input.qty{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:50px!important;
    min-height:50px!important;
    line-height:50px!important;
  }

  body.single-product .farmed-product-purchase form.variations_form.cart .single_add_to_cart_button{
    grid-area:addtocart!important;
    width:210px!important;
    min-width:210px!important;
    max-width:210px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    padding:0 20px!important;
    border-radius:15px!important;
    font-size:15px!important;
  }

  /* Simple products keep the approved price + quantity + CTA composition. */
  body.single-product .farmed-product-purchase form.cart:not(.variations_form){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 132px 210px!important;
    grid-template-areas:"simpleprice quantity addtocart"!important;
    column-gap:14px!important;
    align-items:center!important;
    width:100%!important;
    min-height:76px!important;
    margin:0!important;
    padding:12px 14px!important;
    border:1px solid rgba(16,59,39,.15)!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.82)!important;
    box-sizing:border-box!important;
  }

  body.single-product .farmed-product-purchase form.cart:not(.variations_form) .farmed-simple-card-price{
    grid-area:simpleprice!important;
    min-height:50px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 0 0 2px!important;
    color:var(--farmed-gold)!important;
    font-size:21px!important;
    font-weight:700!important;
  }

  body.single-product .farmed-product-purchase form.cart:not(.variations_form) .quantity{
    grid-area:quantity!important;
    grid-template-columns:40px 52px 40px!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    border-radius:15px!important;
  }

  body.single-product .farmed-product-purchase form.cart:not(.variations_form) .quantity .farmed-qty-btn{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:50px!important;
    min-height:50px!important;
  }

  body.single-product .farmed-product-purchase form.cart:not(.variations_form) .quantity input.qty{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:50px!important;
    min-height:50px!important;
    line-height:50px!important;
  }

  body.single-product .farmed-product-purchase form.cart:not(.variations_form) .single_add_to_cart_button{
    grid-area:addtocart!important;
    width:210px!important;
    min-width:210px!important;
    max-width:210px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    padding:0 20px!important;
    border-radius:15px!important;
    font-size:15px!important;
  }

  body.single-product .farmed-product-summary-meta{
    margin-top:14px!important;
  }

  body.single-product .farmed-product-summary-meta .product_meta{
    margin:0!important;
  }
}

/* Tablet/mobile: keep WooCommerce's proven stacking, only preserve the new
   semantic wrappers so the page remains stable and easy to maintain. */
@media (max-width:980px){
  body.single-product .farmed-product-story,
  body.single-product .farmed-product-story__description,
  body.single-product .farmed-product-story__facts,
  body.single-product .farmed-product-purchase,
  body.single-product .farmed-product-summary-meta{
    display:block!important;
  }

  body.single-product .farmed-product-story__facts .farmed-product-facts{
    margin-bottom:18px!important;
  }
}

/* =========================================================
   FARMED 2.4.98 — FINAL CART PASS
   Shared page-start axis, immediate shipping presentation,
   no destination/address in cart, FARMED empty-cart state.
   ========================================================= */
body.woocommerce-cart .farmed-cart-shell{
    padding-top:var(--farmed-page-start,19px)!important;
}

body.woocommerce-cart .farmed-cart-intro{
    margin-bottom:34px;
}

/* Shipping lives inside the summary only; address belongs to checkout. */
body.woocommerce-cart .farmed-cart-shipping{
    padding:16px 0;
    border-bottom:1px solid var(--farmed-line);
}

body.woocommerce-cart .farmed-cart-shipping-title{
    margin-bottom:10px;
    color:var(--farmed-text);
    font-size:16px;
    font-weight:600;
}

body.woocommerce-cart .farmed-shipping-methods{
    display:grid;
    gap:8px;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}

body.woocommerce-cart .farmed-shipping-methods li{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
    color:var(--farmed-text);
    font-size:15px;
    line-height:1.45;
}

body.woocommerce-cart .farmed-shipping-methods input[type="radio"]{
    width:16px;
    height:16px;
    margin:3px 0 0!important;
    accent-color:var(--farmed-forest);
    flex:0 0 16px;
}

body.woocommerce-cart .farmed-shipping-methods label{
    margin:0!important;
    cursor:pointer;
}

body.woocommerce-cart .farmed-shipping-note{
    margin:0!important;
    color:var(--farmed-muted);
    font-size:14px;
    line-height:1.5;
}

/* Defensive cleanup in case WooCommerce/plugin injects destination/calculator markup. */
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .woocommerce-shipping-calculator,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .shipping-calculator-form{
    display:none!important;
}

/* FARMED empty cart — no default WooCommerce blue notice/chrome. */
body.woocommerce-cart .farmed-empty-cart{
    max-width:760px;
    padding:4px 0 82px;
}

body.woocommerce-cart .farmed-empty-cart h2{
    margin:0 0 12px;
    color:var(--farmed-forest);
    font-family:var(--farmed-font-display);
    font-size:clamp(28px,2.1vw,36px);
    line-height:1.08;
    font-weight:400;
}

body.woocommerce-cart .farmed-empty-cart p{
    max-width:650px;
    margin:0 0 26px;
    color:var(--farmed-muted);
    font-size:16px;
    line-height:1.65;
}

body.woocommerce-cart .farmed-empty-cart-button{
    min-width:190px;
    transition:background-color var(--farmed-transition),color var(--farmed-transition);
}

body.woocommerce-cart .farmed-empty-cart-button:hover,
body.woocommerce-cart .farmed-empty-cart-button:focus{
    background:var(--farmed-gold)!important;
    color:#fff!important;
}

@media(max-width:760px){
    body.woocommerce-cart .farmed-cart-shell{
        padding-top:var(--farmed-page-start,19px)!important;
    }

    body.woocommerce-cart .farmed-empty-cart{
        padding-bottom:54px;
    }

    body.woocommerce-cart .farmed-empty-cart-button{
        min-width:0;
    }
}

/* =========================================================
   FARMED 2.5.00 — CHECKOUT VISUAL ALIGNMENT
   Preserve native WooCommerce Checkout Block logic.
   ========================================================= */

/* The page.php .farmed-container already defines the global FARMED text axis.
   Remove the Checkout Block's extra desktop side padding so checkout starts
   on exactly the same x-coordinate as the page title and other internal pages. */
body.woocommerce-checkout .farmed-prose,
body.woocommerce-checkout .farmed-prose > .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout {
    width: 100% !important;
    max-width: none !important;
}

body.woocommerce-checkout .wc-block-checkout {
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 82px !important;
}

/* Keep the two-column WooCommerce structure, but use calmer FARMED spacing. */
body.woocommerce-checkout .wc-block-checkout__main {
    padding-right: clamp(36px, 4vw, 72px) !important;
}

body.woocommerce-checkout .wc-block-checkout__sidebar {
    padding-left: 0 !important;
}

/* Checkout section typography. */
body.woocommerce-checkout .wc-block-components-checkout-step__title {
    color: var(--farmed-forest) !important;
    font-size: 24px !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
}

body.woocommerce-checkout .wc-block-components-checkout-step__description,
body.woocommerce-checkout .wc-block-components-formatted-money-amount,
body.woocommerce-checkout .wc-block-components-radio-control__description {
    color: var(--farmed-text);
}

/* Inputs/cards: visually FARMED, behavior remains WooCommerce-native. */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
body.woocommerce-checkout .wc-block-components-address-card,
body.woocommerce-checkout .wc-block-components-address-card-wrapper {
    border-color: rgba(23,52,33,.20) !important;
    background: rgba(255,255,255,.58) !important;
}

/* Order summary as a premium FARMED card. */
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
    border: 1px solid rgba(23,52,33,.16) !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.68) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary-title-text {
    color: var(--farmed-forest) !important;
    font-family: var(--farmed-font-display) !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
    color: var(--farmed-forest) !important;
    font-weight: 700 !important;
}

/* Sticky summary on desktop, without changing checkout data/state. */
@media (min-width: 782px) {
    body.woocommerce-checkout .wc-block-checkout__sidebar {
        align-self: start !important;
    }

    body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-sidebar-layout__sidebar,
    body.woocommerce-checkout .wc-block-checkout__sidebar > div {
        top: calc(var(--farmed-header-height) + 22px);
    }
}

/* FARMED primary action. */
body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
    min-height: 64px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--farmed-forest) !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button:hover {
    opacity: .94 !important;
}

@media (max-width: 781px) {
    body.woocommerce-checkout .wc-block-checkout {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 64px !important;
    }

    body.woocommerce-checkout .wc-block-checkout__main,
    body.woocommerce-checkout .wc-block-checkout__sidebar {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.woocommerce-checkout .wc-block-checkout__sidebar {
        margin-top: 28px !important;
    }

    body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary {
        border-radius: 18px !important;
    }

    body.woocommerce-checkout .wc-block-components-checkout-step__title {
        font-size: 21px !important;
    }
}


/* =========================================================
   FARMED 2.5.01 — CHECKOUT AXIS + CTA HOVER
   Match checkout opening Y-axis to the shared FARMED page-start
   and use the global forest -> gold interaction language.
   ========================================================= */

/* The first gold FARMED kicker now starts on the exact same vertical axis
   as the canonical internal-page hero geometry (19px below header divider). */
body.woocommerce-checkout .farmed-main > .farmed-container.farmed-section,
body.woocommerce-checkout main.farmed-main > .farmed-container.farmed-section {
    padding-top: var(--farmed-page-start, 19px) !important;
}

/* Keep a restrained gap between page title and the native Checkout Block. */
body.woocommerce-checkout .wc-block-checkout {
    padding-top: 22px !important;
}

/* FARMED primary-button interaction: forest at rest, gold on hover/focus. */
body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
    transition: background-color var(--farmed-transition),
                color var(--farmed-transition),
                border-color var(--farmed-transition) !important;
}

body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button:focus-visible {
    background: var(--farmed-gold) !important;
    color: #fff !important;
    opacity: 1 !important;
}

@media (max-width: 781px) {
    body.woocommerce-checkout .farmed-main > .farmed-container.farmed-section,
    body.woocommerce-checkout main.farmed-main > .farmed-container.farmed-section {
        padding-top: var(--farmed-page-start, 19px) !important;
    }
}

/* =========================================================
   FARMED 2.5.08 — MOBILE SINGLE PRODUCT PAGE START
   Match the shared 19 px page-start rhythm used by public pages.
   ========================================================= */
@media (max-width:760px){
  body.single-product .farmed-single-product-shell{
    padding-top:var(--farmed-page-start,19px)!important;
  }
}
