/* ==========================================================================
   AgroCares Products - product pages, cards and CTAs
   Uses the brand tokens from redesign/brand-tokens.css (loaded by the child
   theme). A guarded copy of the :root tokens sits below so the stylesheet
   also works standalone. Flat design: no shadows, no gradients.
   ========================================================================== */

/* --- Brand tokens (fallback copy). :where() has zero specificity, so the
   child theme's :root { } in brand-tokens.css always wins when present. --- */
:where(:root) {
  --ac-green:        #37AB49;
  --ac-green-dark:   #2E9440;
  --ac-green-tint:   #EAF6EC;
  --ac-brown:        #3C3734;
  --ac-cyan:         #46BFE0;
  --ac-cream:        #FAF6EB;
  --ac-yellow:       #FBBA00;
  --ac-soil:         #4F351E;
  --ac-leaf:         #1F6C21;
  --ac-orange:       #F59D19;
  --ac-grey-900:     #646363;
  --ac-grey-600:     #9D9D9C;
  --ac-grey-300:     #D0D0D0;
  --ac-grey-200:     #EDEDED;
  --ac-grey-100:     #F6F6F6;
  --ac-white:        #FFFFFF;
  --ac-text:         var(--ac-brown);
  --ac-text-muted:   var(--ac-grey-900);
  --ac-border:       var(--ac-grey-300);
  --ac-bg:           var(--ac-white);
  --ac-bg-alt:       var(--ac-grey-100);
  --ac-link:         var(--ac-green);
  --ac-font:         'Poppins', 'Segoe UI', system-ui, -apple-system, sans-serif;
  --ac-fs-hero:      clamp(2.25rem, 4vw, 3.5rem);
  --ac-fs-h1:        clamp(2rem, 3.2vw, 2.75rem);
  --ac-fs-h2:        clamp(1.6rem, 2.4vw, 2.125rem);
  --ac-fs-h3:        1.375rem;
  --ac-fs-h4:        1.125rem;
  --ac-fs-body:      1rem;
  --ac-fs-small:     0.875rem;
  --ac-lh-tight:     1.15;
  --ac-lh-body:      1.65;
  --ac-s-1: .5rem; --ac-s-2: 1rem; --ac-s-3: 1.5rem; --ac-s-4: 2rem; --ac-s-6: 3rem; --ac-s-8: 4rem; --ac-s-12: 6rem;
  --ac-container:    1200px;
  --ac-radius:       6px;
  --ac-radius-lg:    12px;
  --ac-transition:   .18s ease;
}

/* --- Base ------------------------------------------------------------------ */
.ac-product,
.ac-archive {
  font-family: var(--ac-font);
  color: var(--ac-text);
  background: var(--ac-bg);
  font-size: var(--ac-fs-body);
  line-height: var(--ac-lh-body);
  padding-block: var(--ac-s-4) var(--ac-s-8);
}
.ac-product *,
.ac-archive *,
.ac-grid *,
.ac-btn { box-sizing: border-box; }

.ac-container {
  width: 100%;
  max-width: var(--ac-container);
  margin-inline: auto;
  padding-inline: var(--ac-s-2);
}
@media (min-width: 768px) { .ac-container { padding-inline: var(--ac-s-3); } }

.ac-product h1, .ac-product h2, .ac-product h3,
.ac-archive h1, .ac-archive h2, .ac-archive h3,
.ac-card__title {
  font-family: var(--ac-font);
  color: var(--ac-brown);
  line-height: var(--ac-lh-tight);
  margin: 0;
  font-weight: 600;
}
.ac-product a, .ac-archive a { color: var(--ac-leaf); text-decoration: none; transition: color var(--ac-transition); }
.ac-product a:hover, .ac-archive a:hover { color: var(--ac-green-dark); text-decoration: underline; }
.ac-product a:focus-visible, .ac-archive a:focus-visible, .ac-btn:focus-visible, .ac-faq__question:focus-visible {
  outline: 3px solid var(--ac-green);
  outline-offset: 2px;
}
.ac-link { font-weight: 600; font-size: var(--ac-fs-small); white-space: nowrap; }

/* Hide the theme's default page-title bar on product views (Woodmart uses .page-title). */
.ac-products-page .page-title { display: none; }

.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* --- Buttons --------------------------------------------------------------- */
.ac-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--ac-s-1);
  min-height: 48px;
  padding: .75rem 1.5rem;
  border-radius: var(--ac-radius);
  border: 2px solid transparent;
  font-family: var(--ac-font);
  font-size: var(--ac-fs-body);
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
  transition: background-color var(--ac-transition), border-color var(--ac-transition), color var(--ac-transition);
  -webkit-tap-highlight-color: transparent;
}
.ac-btn--primary { background: var(--ac-green); border-color: var(--ac-green); color: var(--ac-white) !important; }
.ac-btn--primary:hover, .ac-btn--primary:focus-visible { background: var(--ac-green-dark); border-color: var(--ac-green-dark); color: var(--ac-white) !important; }
.ac-btn--secondary { background: transparent; border-color: var(--ac-brown); color: var(--ac-brown) !important; }
.ac-btn--secondary:hover, .ac-btn--secondary:focus-visible { background: var(--ac-brown); color: var(--ac-white) !important; }
.ac-btn--lg { min-height: 56px; padding: 1rem 2rem; }
.ac-btn--sm { min-height: 44px; padding: .5rem 1rem; font-size: var(--ac-fs-small); }
.ac-btn--block { width: 100%; }
.ac-btn__ext { font-size: .85em; line-height: 1; opacity: .85; }

/* --- Chips & badges -------------------------------------------------------- */
.ac-chip,
.ac-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: .125rem .75rem;
  border-radius: 999px;
  font-size: .8125rem;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4;
  white-space: nowrap;
}
.ac-chip { background: var(--ac-grey-200); color: var(--ac-brown); }
.ac-chip--soilcares   { background: var(--ac-soil);     color: var(--ac-white); }
.ac-chip--feedcares   { background: var(--ac-yellow);   color: var(--ac-brown); }
.ac-chip--leafcares   { background: var(--ac-leaf);     color: var(--ac-white); }
.ac-chip--carboncares { background: var(--ac-grey-900); color: var(--ac-white); }
.ac-chip--agrocares   { background: var(--ac-green-tint); color: var(--ac-leaf); }
.ac-badge { background: var(--ac-bg); border: 1px solid var(--ac-border); color: var(--ac-text-muted); font-weight: 500; }

/* --- Breadcrumb ------------------------------------------------------------ */
.ac-breadcrumb { margin-bottom: var(--ac-s-3); font-size: var(--ac-fs-small); }
.ac-breadcrumb__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .25rem .5rem; color: var(--ac-text-muted); }
.ac-breadcrumb__item + .ac-breadcrumb__item::before { content: "/"; margin-right: .5rem; color: var(--ac-grey-600); }
.ac-breadcrumb__item a { color: var(--ac-text-muted); }
.ac-breadcrumb__item[aria-current="page"] { color: var(--ac-brown); font-weight: 500; }

/* --- Price ----------------------------------------------------------------- */
.ac-price { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .5rem; }
.ac-price__from { font-size: var(--ac-fs-small); color: var(--ac-text-muted); }
.ac-price__amount { font-size: 1.75rem; font-weight: 600; color: var(--ac-brown); line-height: 1.1; }
.ac-price__note { font-size: var(--ac-fs-small); color: var(--ac-text-muted); }

/* --- Hero ------------------------------------------------------------------ */
.ac-hero {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ac-s-4);
  align-items: start;
  margin-bottom: var(--ac-s-6);
}
@media (min-width: 900px) {
  .ac-hero { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--ac-s-6); }
}
.ac-hero__media {
  border: 1px solid var(--ac-border);
  border-radius: var(--ac-radius-lg);
  background: var(--ac-bg-alt);
  overflow: hidden;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
.ac-hero__img { width: 100%; height: 100%; object-fit: contain; display: block; padding: var(--ac-s-3); }
.ac-hero__placeholder,
.ac-card__placeholder {
  display: flex; align-items: center; justify-content: center;
  width: 100%; height: 100%;
  background: var(--ac-cream);
  color: var(--ac-brown);
  font-weight: 600;
  font-size: var(--ac-fs-h4);
  text-align: center;
  padding: var(--ac-s-3);
}
.ac-hero__placeholder--soilcares,   .ac-card__placeholder--soilcares   { background: var(--ac-soil);   color: var(--ac-white); }
.ac-hero__placeholder--feedcares,   .ac-card__placeholder--feedcares   { background: var(--ac-yellow); color: var(--ac-brown); }
.ac-hero__placeholder--leafcares,   .ac-card__placeholder--leafcares   { background: var(--ac-leaf);   color: var(--ac-white); }
.ac-hero__placeholder--carboncares, .ac-card__placeholder--carboncares { background: var(--ac-grey-900); color: var(--ac-white); }
.ac-hero__placeholder--agrocares,   .ac-card__placeholder--agrocares   { background: var(--ac-green-tint); color: var(--ac-leaf); }

.ac-hero__content { display: flex; flex-direction: column; gap: var(--ac-s-2); }
.ac-hero__meta { display: flex; flex-wrap: wrap; gap: var(--ac-s-1); }
.ac-hero__title { font-size: var(--ac-fs-h1); }
.ac-hero__lead { margin: 0; font-size: 1.125rem; color: var(--ac-text-muted); }
.ac-hero__price { padding-top: var(--ac-s-1); }
.ac-hero__price .ac-price__amount { font-size: 2.25rem; }
.ac-hero__actions { display: flex; flex-wrap: wrap; gap: var(--ac-s-2); padding-top: var(--ac-s-1); }
.ac-hero__actions .ac-btn { flex: 1 1 220px; }
@media (min-width: 600px) { .ac-hero__actions .ac-btn { flex: 0 1 auto; } }
.ac-hero__fineprint { margin: 0; font-size: .8125rem; color: var(--ac-text-muted); }
.ac-hero__sku { display: inline-block; margin-left: .75rem; }

/* --- Sections -------------------------------------------------------------- */
.ac-section { margin-bottom: var(--ac-s-6); }
.ac-section__title { font-size: var(--ac-fs-h2); margin-bottom: var(--ac-s-3); }
.ac-section__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--ac-s-2); margin-bottom: var(--ac-s-3); }
.ac-section__head .ac-section__title { margin-bottom: 0; }
.ac-section__intro { margin: 0 0 var(--ac-s-3); color: var(--ac-text-muted); max-width: 70ch; }

/* Highlights */
.ac-highlights {
  border-top: 1px solid var(--ac-border);
  border-bottom: 1px solid var(--ac-border);
  padding-block: var(--ac-s-4);
}
.ac-highlights .ac-section__title { font-size: var(--ac-fs-h3); }

/* Check list (CSS check mark, no icon font) */
.ac-checklist { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--ac-s-1) var(--ac-s-4); }
.ac-checklist--cols { grid-template-columns: 1fr; }
@media (min-width: 700px) { .ac-checklist--cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .ac-checklist--cols { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ac-checklist__item { position: relative; padding-left: 2rem; }
.ac-checklist__item::before {
  content: "";
  position: absolute; left: 0; top: .35em;
  width: 1.125rem; height: 1.125rem;
  border-radius: 50%;
  background: var(--ac-green-tint);
}
.ac-checklist__item::after {
  content: "";
  position: absolute; left: .4rem; top: calc(.35em + .2rem);
  width: .3rem; height: .55rem;
  border: solid var(--ac-leaf);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/* Two-column layout: content + sticky buy box */
.ac-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--ac-s-6); align-items: start; }
.ac-layout__main { min-width: 0; }
@media (min-width: 1000px) { .ac-layout { grid-template-columns: minmax(0, 1fr) 320px; } }
.ac-layout__aside { display: none; }
@media (min-width: 1000px) { .ac-layout__aside { display: block; position: sticky; top: calc(var(--ac-s-2) + 80px); } }

.ac-buybox {
  border: 1px solid var(--ac-border);
  border-radius: var(--ac-radius-lg);
  padding: var(--ac-s-3);
  display: flex; flex-direction: column; gap: var(--ac-s-2);
  background: var(--ac-bg);
}
.ac-buybox__title { font-size: var(--ac-fs-h4); }
.ac-buybox__facts { list-style: none; margin: var(--ac-s-1) 0 0; padding: var(--ac-s-2) 0 0; border-top: 1px solid var(--ac-border); font-size: var(--ac-fs-small); display: grid; gap: .375rem; }
.ac-buybox__facts li { display: flex; justify-content: space-between; gap: var(--ac-s-2); }
.ac-buybox__facts span { color: var(--ac-text-muted); }

/* Prose (post content) */
.ac-prose { max-width: 72ch; }
.ac-prose > :first-child { margin-top: 0; }
.ac-prose p, .ac-prose ul, .ac-prose ol { margin: 0 0 var(--ac-s-2); }
.ac-prose h3 { font-size: var(--ac-fs-h3); margin: var(--ac-s-4) 0 var(--ac-s-2); }
.ac-prose h4 { font-size: var(--ac-fs-h4); margin: var(--ac-s-3) 0 var(--ac-s-1); }
.ac-prose ul { padding-left: 1.25rem; }
.ac-prose li { margin-bottom: .25rem; }
.ac-prose strong { font-weight: 600; color: var(--ac-brown); }
.ac-prose img { max-width: 100%; height: auto; border-radius: var(--ac-radius); }

/* Variants table */
.ac-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--ac-border); border-radius: var(--ac-radius-lg); }
.ac-table { width: 100%; border-collapse: collapse; min-width: 560px; font-size: var(--ac-fs-body); }
.ac-table th, .ac-table td { padding: .875rem var(--ac-s-2); text-align: left; vertical-align: middle; border-bottom: 1px solid var(--ac-border); }
.ac-table thead th { background: var(--ac-bg-alt); font-size: .8125rem; text-transform: uppercase; letter-spacing: .04em; color: var(--ac-text-muted); font-weight: 600; }
.ac-table tbody th { font-weight: 600; color: var(--ac-brown); }
.ac-table tbody tr:last-child th, .ac-table tbody tr:last-child td { border-bottom: 0; }
.ac-table__num { text-align: right !important; white-space: nowrap; font-weight: 600; }
.ac-table__action { text-align: right !important; white-space: nowrap; }
.ac-table tbody td { color: var(--ac-text-muted); }

/* Add-ons */
.ac-addons__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--ac-s-1); max-width: 640px; }
.ac-addons__item { display: flex; justify-content: space-between; gap: var(--ac-s-2); padding: .75rem var(--ac-s-2); border: 1px solid var(--ac-border); border-radius: var(--ac-radius); }
.ac-addons__price { font-weight: 600; white-space: nowrap; }

/* Report ("What you get in the app") */
.ac-report { background: var(--ac-bg-alt); border-radius: var(--ac-radius-lg); padding: var(--ac-s-4) var(--ac-s-3); }
@media (min-width: 768px) { .ac-report { padding: var(--ac-s-4); } }
.ac-report__params { display: grid; gap: var(--ac-s-3); margin-bottom: var(--ac-s-4); }
.ac-report__heading { font-size: var(--ac-fs-h4); margin-bottom: var(--ac-s-1); }
.ac-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.ac-chips__item {
  display: inline-block;
  padding: .25rem .75rem;
  border: 1px solid var(--ac-border);
  border-radius: 999px;
  background: var(--ac-bg);
  font-size: var(--ac-fs-small);
  color: var(--ac-brown);
}
.ac-report__screens {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: var(--ac-s-2);
}
.ac-report__screen img {
  width: 100%; height: auto; display: block;
  border: 1px solid var(--ac-border);
  border-radius: var(--ac-radius-lg);
  background: var(--ac-bg);
}
.ac-report__note { margin: var(--ac-s-3) 0 0; font-size: var(--ac-fs-small); color: var(--ac-text-muted); }

/* FAQ */
.ac-faq__item { border-top: 1px solid var(--ac-border); }
.ac-faq__item:last-child { border-bottom: 1px solid var(--ac-border); }
.ac-faq__question {
  cursor: pointer;
  list-style: none;
  padding: var(--ac-s-2) 2.5rem var(--ac-s-2) 0;
  font-weight: 600;
  color: var(--ac-brown);
  position: relative;
}
.ac-faq__question::-webkit-details-marker { display: none; }
.ac-faq__question::after {
  content: "+";
  position: absolute; right: .25rem; top: 50%;
  transform: translateY(-50%);
  width: 1.75rem; height: 1.75rem;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: var(--ac-green-tint);
  color: var(--ac-leaf);
  font-weight: 600;
  line-height: 1;
}
.ac-faq__item[open] .ac-faq__question::after { content: "\2013"; }
.ac-faq__answer { padding: 0 0 var(--ac-s-3); color: var(--ac-text-muted); }

/* --- Cards & grid ---------------------------------------------------------- */
.ac-grid { display: grid; grid-template-columns: 1fr; gap: var(--ac-s-3); margin: 0; }
@media (min-width: 600px) { .ac-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px) {
  .ac-grid--cols-1 { grid-template-columns: 1fr; }
  .ac-grid--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ac-grid--cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ac-grid--cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.ac-card {
  display: flex; flex-direction: column;
  border: 1px solid var(--ac-border);
  border-radius: var(--ac-radius-lg);
  background: var(--ac-bg);
  overflow: hidden;
  font-family: var(--ac-font);
  color: var(--ac-text);
  transition: border-color var(--ac-transition);
}
.ac-card:hover, .ac-card:focus-within { border-color: var(--ac-green); }
.ac-card__media { display: block; aspect-ratio: 4 / 3; background: var(--ac-bg-alt); border-bottom: 1px solid var(--ac-border); }
.ac-card__img { width: 100%; height: 100%; object-fit: contain; display: block; padding: var(--ac-s-2); }
.ac-card__body { display: flex; flex-direction: column; gap: var(--ac-s-1); padding: var(--ac-s-3); flex: 1 1 auto; }
.ac-card__meta { display: flex; flex-wrap: wrap; gap: .375rem; }
.ac-card__title { font-size: var(--ac-fs-h4); }
.ac-card__title a { color: var(--ac-brown); text-decoration: none; }
.ac-card__title a:hover { color: var(--ac-green-dark); text-decoration: none; }
.ac-card__excerpt { margin: 0; font-size: var(--ac-fs-small); color: var(--ac-text-muted); flex: 1 1 auto; }
.ac-card__price { margin: var(--ac-s-1) 0 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .5rem; }
.ac-card__price .ac-price__amount { font-size: 1.375rem; }
.ac-card__actions { display: flex; flex-wrap: wrap; gap: var(--ac-s-1); padding-top: var(--ac-s-1); }
.ac-card__actions .ac-btn { flex: 1 1 auto; }

/* --- Archive --------------------------------------------------------------- */
.ac-archive__head { max-width: 760px; margin-bottom: var(--ac-s-4); display: flex; flex-direction: column; gap: var(--ac-s-2); }
.ac-archive__title { font-size: var(--ac-fs-h1); }
.ac-archive__lead { margin: 0; font-size: 1.125rem; color: var(--ac-text-muted); }
.ac-archive__actions { display: flex; flex-wrap: wrap; gap: var(--ac-s-2); padding-top: var(--ac-s-1); }

.ac-filter { margin-bottom: var(--ac-s-4); overflow-x: auto; -webkit-overflow-scrolling: touch; }
.ac-filter__list { list-style: none; margin: 0; padding: 0 0 var(--ac-s-1); display: flex; gap: var(--ac-s-1); }
.ac-filter__link {
  display: inline-flex; align-items: center;
  min-height: 40px; padding: .375rem 1rem;
  border: 1px solid var(--ac-border); border-radius: 999px;
  color: var(--ac-brown) !important; font-weight: 500; font-size: var(--ac-fs-small);
  white-space: nowrap; text-decoration: none !important;
  transition: border-color var(--ac-transition), background-color var(--ac-transition);
}
.ac-filter__link:hover { border-color: var(--ac-green); }
.ac-filter__link.is-active { background: var(--ac-brown); border-color: var(--ac-brown); color: var(--ac-white) !important; }

.ac-group { padding-top: var(--ac-s-2); }
.ac-empty { color: var(--ac-text-muted); }

.ac-kit { border: 1px solid var(--ac-border); border-radius: var(--ac-radius-lg); background: var(--ac-green-tint); padding: var(--ac-s-4) var(--ac-s-3); }
.ac-kit__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--ac-s-3); }
.ac-kit__inner > div:first-child { flex: 1 1 320px; max-width: 60ch; }
.ac-kit__inner p { margin: 0; color: var(--ac-text-muted); }
.ac-kit .ac-section__title { font-size: var(--ac-fs-h3); margin-bottom: var(--ac-s-1); }
.ac-kit__actions { display: flex; flex-wrap: wrap; gap: var(--ac-s-2); }

/* Pagination (WordPress default markup) */
.ac-archive .pagination, .ac-archive .navigation.pagination { margin-top: var(--ac-s-4); }
.ac-archive .nav-links { display: flex; flex-wrap: wrap; gap: var(--ac-s-1); }
.ac-archive .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 44px; min-height: 44px; padding: 0 .75rem;
  border: 1px solid var(--ac-border); border-radius: var(--ac-radius);
  color: var(--ac-brown); font-weight: 500; text-decoration: none;
}
.ac-archive .page-numbers.current { background: var(--ac-brown); border-color: var(--ac-brown); color: var(--ac-white); }

/* --- Sticky bottom CTA (mobile only) -------------------------------------- */
.ac-sticky-cta {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 900;
  background: var(--ac-bg);
  border-top: 1px solid var(--ac-border);
  padding: var(--ac-s-1) var(--ac-s-2) calc(var(--ac-s-1) + env(safe-area-inset-bottom, 0px));
}
.ac-sticky-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--ac-s-2); max-width: var(--ac-container); margin-inline: auto; }
.ac-sticky-cta__text { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.ac-sticky-cta__title { font-size: var(--ac-fs-small); color: var(--ac-brown); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ac-sticky-cta__price { font-size: var(--ac-fs-small); color: var(--ac-text-muted); }
.ac-sticky-cta .ac-btn { flex: 0 0 auto; min-height: 44px; padding-inline: 1rem; }
.ac-product { padding-bottom: calc(var(--ac-s-8) + 72px); }
@media (min-width: 1000px) {
  .ac-sticky-cta { display: none; }
  .ac-product { padding-bottom: var(--ac-s-8); }
}

/* --- Small screens (375px) ------------------------------------------------- */
@media (max-width: 480px) {
  .ac-hero__title { font-size: 1.75rem; }
  .ac-hero__price .ac-price__amount { font-size: 1.875rem; }
  .ac-section__title { font-size: 1.5rem; }
  .ac-card__body { padding: var(--ac-s-2); }
  .ac-report__screens { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ac-btn--lg { min-height: 52px; padding: .875rem 1.25rem; }
}

/* --- Reduced motion -------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .ac-btn, .ac-card, .ac-filter__link, .ac-product a, .ac-archive a { transition: none; }
}

/* --- Woodmart integration (child theme wraps the templates) ---------------
   Templates render inside Woodmart's <main id="main-content"> as
   .wd-content-area; the hero/head sits in a full-bleed grey band. */
.ac-product, .ac-archive { padding-top: 0; }
.ac-hero-band {
  background: var(--ac-grey-100);
  border-bottom: 1px solid var(--ac-grey-200);
  padding-block: var(--ac-s-3) var(--ac-s-6);
  margin-bottom: var(--ac-s-6);
}
.ac-hero-band .ac-breadcrumb { margin-bottom: var(--ac-s-3); }
.ac-hero-band .ac-hero { margin-bottom: 0; }
.ac-hero-band .ac-hero__media { background: var(--ac-white); }
.ac-hero-band--archive { padding-block: var(--ac-s-3) var(--ac-s-4); }
.ac-hero-band--archive .ac-archive__head { margin-bottom: var(--ac-s-3); }
.ac-hero-band--archive .ac-filter { margin-bottom: 0; }
.ac-hero-band--archive .ac-filter__link { background: var(--ac-white); }
.ac-hero-band--archive .ac-filter__link.is-active { background: var(--ac-brown); }
@media (min-width: 900px) {
  .ac-hero-band .ac-hero { align-items: center; }
  .ac-hero-band { padding-block: var(--ac-s-4) var(--ac-s-8); }
}
@media (max-width: 480px) {
  .ac-hero-band { padding-block: var(--ac-s-2) var(--ac-s-4); margin-bottom: var(--ac-s-4); }
}
/* blog/search card image fallback (child theme cards) */
.ac-card__media .ac-card__placeholder { display: block; width: 100%; height: 100%; min-height: 160px; background: var(--ac-grey-200); }
