/*
Theme Name: Australia Golf Carts
Theme URI: https://australiagolfcarts.com
Description: Blocksy child theme. Bright/orange palette per client direction.
Author: Digistack
Template: blocksy
Version: 0.3.0
Text Domain: agc
*/

:root {
  /* Brand palette — matched to AG logo (forest + leaf green) + premium gold */
  --agc-ink: #11281B;          /* near-black forest green — text + dark bands */
  --agc-ink-soft: #1B4029;     /* deep forest green — footer / hero scrim */
  --agc-paper: #FFFFFF;
  --agc-paper-warm: #F2F6F0;   /* faint green-cream */
  --agc-line: rgba(17,40,27,0.12);
  --agc-muted: #6E7B72;

  /* Accent — "orange" tokens kept by name but now the brand leaf green,
     so every existing reference re-colours automatically. */
  --agc-orange: #3E8E35;       /* leaf green (CTAs, accents) */
  --agc-orange-hover: #2E6E27; /* darker leaf on hover */

  /* explicit brand aliases */
  --agc-green-deep: #143A28;
  --agc-green-leaf: #3E8E35;
  --agc-gold: #C9A24B;         /* brushed gold — premium micro-accent */
}

body { background: var(--agc-paper); color: var(--agc-ink); -webkit-font-smoothing: antialiased; }

/* Buttons */
.agc-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  padding: 0.95rem 1.6rem; font-size: 0.85rem; font-weight: 600;
  letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none;
  border: 2px solid transparent; border-radius: 4px;
  transition: all 180ms ease; cursor: pointer; line-height: 1;
}
.agc-btn--orange { background: var(--agc-orange); color: #fff; border-color: var(--agc-orange); }
.agc-btn--orange:hover { background: var(--agc-orange-hover); border-color: var(--agc-orange-hover); color: #fff; }
.agc-btn--outline { background: transparent; color: var(--agc-ink); border-color: var(--agc-ink); }
.agc-btn--outline:hover { background: var(--agc-ink); color: #fff; }
.agc-btn--outline-light { background: transparent; color: #fff; border-color: rgba(255,255,255,0.6); }
.agc-btn--outline-light:hover { background: #fff; color: var(--agc-ink); border-color: #fff; }

.agc-section { padding: clamp(3rem, 6vw, 5rem) clamp(1rem, 3vw, 2rem); }
.agc-container { max-width: 1280px; margin: 0 auto; }

/* HERO */
.agc-hero {
  position: relative; min-height: 72vh;
  background: linear-gradient(180deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.65) 100%),
              url('https://images.unsplash.com/photo-1535131749006-b7f58c99034b?auto=format&fit=crop&w=2000&q=80') center/cover no-repeat;
  color: #fff; display: flex; align-items: center;
}
.agc-hero__inner { max-width: 720px; padding: 4rem 1.5rem; }
.agc-hero h1 { color: #fff; font-size: clamp(2rem, 4.5vw, 3.6rem); line-height: 1.1; margin: 0 0 1.4rem; font-weight: 700; letter-spacing: -0.01em; text-transform: uppercase; }
.agc-hero p { font-size: 1.05rem; margin-bottom: 2rem; opacity: 0.92; max-width: 48ch; }
.agc-hero__actions { display: flex; gap: 0.8rem; flex-wrap: wrap; align-items: center; }

/* Distributor strip */
.agc-strip { background: #11281B; color: #fff; padding: 1rem 1.5rem; }
.agc-strip__inner { max-width: 1280px; margin: 0 auto; display: flex; align-items: center; gap: 1.5rem; font-size: 0.85rem; letter-spacing: 0.1em; text-transform: uppercase; }
.agc-strip__chip { background: #fff; color: #11281B; padding: 0.4rem 0.9rem; font-weight: 700; }

/* Category tiles */
.agc-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
@media (max-width: 900px) { .agc-tiles { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .agc-tiles { grid-template-columns: 1fr; } }
.agc-tile {
  position: relative; aspect-ratio: 4/3; overflow: hidden; color: #fff; display: block;
  text-decoration: none; background: #1B4029;
}
.agc-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 600ms ease; }
.agc-tile:hover img { transform: scale(1.05); }
.agc-tile::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.7) 100%); }
.agc-tile__body { position: absolute; inset: auto 0 0 0; padding: 1.5rem; z-index: 2; }
.agc-tile h3 { color: #fff; margin: 0 0 0.4rem; font-size: 1.4rem; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase; }
.agc-tile p { color: rgba(255,255,255,0.85); font-size: 0.88rem; margin: 0; }

/* Brand logos row */
.agc-brands { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 2.5rem; align-items: center; justify-items: center; padding: 2.5rem 0; }
.agc-brand { font-family: Georgia, serif; font-size: 1.5rem; font-weight: 700; color: var(--agc-ink); opacity: 0.55; letter-spacing: 0.02em; }

/* Section heading */
.agc-h2 { text-align: center; font-size: 1.6rem; letter-spacing: 0.04em; text-transform: uppercase; margin: 0 0 2.5rem; font-weight: 700; }

/* Dark Quality band */
.agc-quality { background: #1B4029; color: #fff; display: grid; grid-template-columns: 1.2fr 1fr; gap: 0; min-height: 420px; }
@media (max-width: 900px) { .agc-quality { grid-template-columns: 1fr; } }
.agc-quality__img { background-size: cover; background-position: center; min-height: 280px; }
.agc-quality__body { padding: clamp(2rem, 5vw, 4rem); display: flex; flex-direction: column; justify-content: center; }
.agc-quality h2 { color: #fff; font-size: clamp(1.6rem, 2.6vw, 2.2rem); text-transform: uppercase; letter-spacing: 0.02em; margin: 0 0 1.2rem; line-height: 1.15; font-weight: 700; }
.agc-quality p { opacity: 0.85; line-height: 1.7; margin: 0 0 1.6rem; max-width: 48ch; }

/* About split */
.agc-about { display: grid; grid-template-columns: 1fr 1.4fr; gap: 0; align-items: stretch; }
@media (max-width: 900px) { .agc-about { grid-template-columns: 1fr; } }
.agc-about__copy { padding: clamp(2rem, 5vw, 4rem); display: flex; flex-direction: column; justify-content: center; }
.agc-about__copy h2 { font-size: clamp(1.6rem, 2.6vw, 2.2rem); text-transform: uppercase; margin: 0 0 1.4rem; line-height: 1.15; font-weight: 700; letter-spacing: 0.02em; }
.agc-about__img { min-height: 320px; background-size: cover; background-position: center; }

/* Testimonials */
.agc-testimonials { display: grid; grid-template-columns: 1fr 1.4fr; gap: 3rem; }
@media (max-width: 900px) { .agc-testimonials { grid-template-columns: 1fr; } }
.agc-testimonials h2 { font-size: clamp(1.6rem, 2.6vw, 2.2rem); text-transform: uppercase; letter-spacing: 0.02em; margin: 0; line-height: 1.15; font-weight: 700; }
.agc-quote { padding: 1.4rem 0; border-bottom: 1px solid var(--agc-line); }
.agc-quote:last-child { border-bottom: 0; }
.agc-quote__head { font-weight: 700; margin-bottom: 0.4rem; font-size: 0.95rem; }
.agc-quote__role { font-size: 0.8rem; color: var(--agc-muted); margin-bottom: 0.8rem; letter-spacing: 0.05em; text-transform: uppercase; }
.agc-quote__body { font-size: 0.95rem; line-height: 1.7; }

/* Gallery */
.agc-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.8rem; }
@media (max-width: 900px) { .agc-gallery { grid-template-columns: repeat(2, 1fr); } }
.agc-gallery__item { position: relative; aspect-ratio: 1/1; overflow: hidden; }
.agc-gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms; }
.agc-gallery__item:hover img { transform: scale(1.04); }

/* Need assistance banner */
.agc-banner {
  position: relative; color: #fff; padding: clamp(2.5rem, 5vw, 4rem) clamp(1.5rem, 4vw, 3rem);
  background: linear-gradient(90deg, rgba(17,40,27,0.85) 0%, rgba(17,40,27,0.4) 100%),
              url('https://images.unsplash.com/photo-1622398925373-3f91b1e275f5?auto=format&fit=crop&w=2000&q=80') center/cover no-repeat;
  display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 2rem;
}
@media (max-width: 900px) { .agc-banner { grid-template-columns: 1fr; } }
.agc-banner h2 { color: #fff; font-size: clamp(1.6rem, 2.8vw, 2.4rem); margin: 0 0 0.8rem; text-transform: uppercase; font-weight: 700; line-height: 1.1; }
.agc-banner p { opacity: 0.9; margin: 0 0 1.4rem; max-width: 52ch; }

/* WooCommerce orange button */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit {
  background: var(--agc-orange) !important; color: #fff !important; border-radius: 4px !important;
  text-transform: uppercase; letter-spacing: 0.08em; font-weight: 600; font-size: 0.8rem;
  padding: 0.85rem 1.4rem !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover { background: var(--agc-orange-hover) !important; color: #fff !important; }
/* =========================================================
   HEADER — utility bar + Blocksy header tuning
   ========================================================= */

body { font-family: 'Inter', -apple-system, sans-serif; }

.agc-topbar {
  background: #11281B; color: #fff;
  font-size: 0.78rem; letter-spacing: 0.04em;
}
.agc-topbar__inner {
  max-width: 1320px; margin: 0 auto; padding: 0.55rem 1.5rem;
  display: flex; justify-content: space-between; align-items: center;
  gap: 1.5rem; flex-wrap: wrap;
}
.agc-topbar__left, .agc-topbar__right {
  display: flex; align-items: center; gap: 0.9rem;
}
.agc-topbar__chip {
  background: var(--agc-orange, #3E8E35); color: #fff;
  padding: 0.2rem 0.55rem; font-weight: 600; font-size: 0.72rem;
  text-transform: uppercase; letter-spacing: 0.08em;
}
.agc-topbar__sep { opacity: 0.4; }
.agc-topbar__link {
  color: rgba(255,255,255,0.85); text-decoration: none;
  transition: color 180ms ease;
}
.agc-topbar__link:hover { color: var(--agc-orange, #3E8E35); }
.agc-topbar__cta {
  background: var(--agc-orange, #3E8E35); color: #fff !important;
  padding: 0.5rem 0.9rem; text-decoration: none;
  font-weight: 600; font-size: 0.74rem; letter-spacing: 0.06em;
  text-transform: uppercase; transition: background 180ms;
}
.agc-topbar__cta:hover { background: var(--agc-orange-hover, #2E6E27); }
@media (max-width: 720px) {
  .agc-topbar__inner { font-size: 0.72rem; padding: 0.4rem 0.8rem; }
  .agc-topbar__left { display: none; }
  .agc-topbar__right { gap: 0.5rem; width: 100%; justify-content: space-between; }
  .agc-topbar__link:not(:last-child) { display: none; }
}

/* Tighten Blocksy header presentation */
header[data-row] { border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.08)); }
.ct-header [data-column] [data-id="nav"] .menu > .menu-item > a,
.ct-header .menu > .menu-item > a {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
  font-size: 0.82rem;
}

/* =========================================================
   FOOTER — replace Blocksy default
   ========================================================= */

/* Hide Blocksy's footer rows */
footer[data-footer], .ct-footer, #site-footer { display: none !important; }

.agc-footer {
  background: #0C1F14; color: #cdd3cf;
  padding: 4rem 1.5rem 1.5rem;
  font-size: 0.92rem; line-height: 1.7;
}
.agc-footer__inner { max-width: 1320px; margin: 0 auto; }

.agc-footer__cols {
  display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 3rem; padding-bottom: 3rem;
}
@media (max-width: 980px) {
  .agc-footer__cols { grid-template-columns: 1fr 1fr; gap: 2rem; }
}
@media (max-width: 560px) {
  .agc-footer__cols { grid-template-columns: 1fr; }
}

.agc-footer__logo {
  display: inline-block; font-size: 1.4rem; font-weight: 800;
  letter-spacing: 0.02em; color: #fff; text-decoration: none;
  margin-bottom: 1rem; text-transform: uppercase;
}
.agc-footer__brand p { color: #9aa19c; max-width: 36ch; margin: 0 0 1.4rem; font-size: 0.88rem; }

.agc-footer__social { display: flex; gap: 0.6rem; }
.agc-footer__social a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px;
  background: rgba(255,255,255,0.06); color: #fff;
  text-decoration: none; font-size: 0.78rem; font-weight: 700;
  border-radius: 4px; transition: all 180ms;
  text-transform: lowercase; letter-spacing: 0;
}
.agc-footer__social a:hover { background: var(--agc-orange, #3E8E35); }

.agc-footer__col h4 {
  color: #fff; font-size: 0.78rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.12em;
  margin: 0 0 1.2rem;
}
.agc-footer__col ul { list-style: none; padding: 0; margin: 0; }
.agc-footer__col li { padding: 0.25rem 0; }
.agc-footer__col a {
  color: #b8beb9; text-decoration: none;
  transition: color 180ms;
}
.agc-footer__col a:hover { color: var(--agc-orange, #3E8E35); }
.agc-footer__contact li { display: flex; gap: 0.5rem; padding: 0.35rem 0; }

/* Newsletter band */
.agc-newsletter {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 2.5rem; align-items: center;
  padding: 2.5rem 0;
  border-top: 1px solid rgba(255,255,255,0.08);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
@media (max-width: 760px) { .agc-newsletter { grid-template-columns: 1fr; } }
.agc-newsletter h4 {
  color: #fff; font-size: 1.1rem; font-weight: 700;
  margin: 0 0 0.4rem; text-transform: none; letter-spacing: 0;
}
.agc-newsletter p { color: #9aa19c; margin: 0; font-size: 0.88rem; }
.agc-newsletter__form {
  display: flex; gap: 0.5rem; flex-wrap: wrap;
}
.agc-newsletter__form input {
  flex: 1; min-width: 220px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  color: #fff; padding: 0.85rem 1rem;
  font-family: inherit; font-size: 0.92rem;
  border-radius: 4px;
}
.agc-newsletter__form input::placeholder { color: rgba(255,255,255,0.4); }
.agc-newsletter__form input:focus {
  outline: none; border-color: var(--agc-orange, #3E8E35);
}

/* Bottom row */
.agc-footer__bottom {
  display: flex; justify-content: space-between; align-items: center;
  padding-top: 1.5rem; gap: 1rem; flex-wrap: wrap;
  font-size: 0.78rem; color: #7a8079;
}
.agc-footer__pay { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
.agc-pay {
  background: rgba(255,255,255,0.08);
  padding: 0.3rem 0.6rem; font-weight: 600; font-size: 0.7rem;
  letter-spacing: 0.04em; color: #cdd3cf; border-radius: 3px;
}
.agc-footer__legal { color: #6a6f6b; }

/* =========================================================
   NAV — polished primary menu
   ========================================================= */

/* Container tightening */
.ct-header [data-row="middle"],
.ct-header [data-row="top"] { padding: 0.6rem 0; }

/* Menu list */
.header-menu-1 .menu,
.menu-container .menu {
  gap: 0.25rem;
  align-items: center;
}

/* Each link */
.ct-menu-link {
  position: relative;
  padding: 0.85rem 1rem !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--agc-ink, #11281B) !important;
  transition: color 180ms ease;
  white-space: nowrap;
}

/* Hover underline animation */
.ct-menu-link::after {
  content: '';
  position: absolute;
  left: 1rem; right: 1rem; bottom: 0.55rem;
  height: 2px;
  background: var(--agc-orange, #3E8E35);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 220ms cubic-bezier(.2,.7,.2,1);
}
.menu-item:hover > .ct-menu-link::after,
.menu-item.current-menu-item > .ct-menu-link::after,
.menu-item.current-menu-ancestor > .ct-menu-link::after {
  transform: scaleX(1);
}
.menu-item:hover > .ct-menu-link,
.menu-item.current-menu-item > .ct-menu-link {
  color: var(--agc-ink, #11281B) !important;
}

/* Vertical separator between groups (optional subtle) */
.menu-item + .menu-item { position: relative; }

/* CTA menu item — last child becomes orange pill */
.header-menu-1 .menu > .menu-item.agc-nav-cta > .ct-menu-link,
.menu-container .menu > .menu-item.agc-nav-cta > .ct-menu-link {
  background: var(--agc-orange, #3E8E35);
  color: #fff !important;
  border-radius: 4px;
  padding: 0.7rem 1.2rem !important;
  margin-left: 0.6rem;
  transition: background 180ms ease;
}
.header-menu-1 .menu > .menu-item.agc-nav-cta > .ct-menu-link::after,
.menu-container .menu > .menu-item.agc-nav-cta > .ct-menu-link::after {
  display: none;
}
.header-menu-1 .menu > .menu-item.agc-nav-cta:hover > .ct-menu-link,
.menu-container .menu > .menu-item.agc-nav-cta:hover > .ct-menu-link {
  background: var(--agc-orange-hover, #2E6E27);
  color: #fff !important;
}

/* Dropdown submenus */
.ct-menu-link + .sub-menu,
.menu .sub-menu {
  background: #fff;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  box-shadow: 0 12px 32px rgba(17,40,27,0.08);
  padding: 0.5rem 0;
  min-width: 220px;
}
.sub-menu .ct-menu-link {
  padding: 0.7rem 1.1rem !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.06em !important;
}
.sub-menu .ct-menu-link::after { display: none; }
.sub-menu .menu-item:hover > .ct-menu-link {
  background: var(--agc-paper-warm, #F2F6F0);
  color: var(--agc-orange, #3E8E35) !important;
}

/* Cart / search icons in header — match nav weight */
.ct-header-cart .ct-icon,
.ct-header-search .ct-icon {
  color: var(--agc-ink, #11281B);
  transition: color 180ms;
}
.ct-header-cart:hover .ct-icon,
.ct-header-search:hover .ct-icon { color: var(--agc-orange, #3E8E35); }

/* Mobile menu trigger */
.ct-header-trigger { color: var(--agc-ink, #11281B); }

/* Mobile menu panel */
.ct-panel-content .menu-item .ct-menu-link {
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 0.85rem !important;
  padding: 1rem 1.4rem !important;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.06));
}
.ct-panel-content .menu-item.agc-nav-cta .ct-menu-link {
  background: var(--agc-orange, #3E8E35);
  color: #fff !important;
  margin: 0.8rem 1.4rem;
  border-radius: 4px;
}

@media (max-width: 1100px) {
  .ct-menu-link { font-size: 0.74rem !important; padding: 0.85rem 0.7rem !important; }
  .ct-menu-link::after { left: 0.7rem; right: 0.7rem; }
}

/* =========================================================
   SHOP ARCHIVE — product grid
   ========================================================= */

.woocommerce .products,
.wc-block-grid__products {
  gap: 1.5rem !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
}
@media (max-width: 1100px) { .woocommerce .products, .wc-block-grid__products { grid-template-columns: repeat(3, minmax(0,1fr)) !important; } }
@media (max-width: 800px)  { .woocommerce .products, .wc-block-grid__products { grid-template-columns: repeat(2, minmax(0,1fr)) !important; } }
@media (max-width: 500px)  { .woocommerce .products, .wc-block-grid__products { grid-template-columns: 1fr !important; } }

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  position: relative;
  margin: 0 !important;
  width: 100% !important;
  background: #fff;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  border-radius: 8px;
  overflow: hidden;
  padding: 0 !important;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(17,40,27,0.08);
  border-color: rgba(17,40,27,0.16);
}

/* Image wrapper */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
  display: block !important;
  text-decoration: none;
}
.woocommerce ul.products li.product img {
  width: 100% !important;
  aspect-ratio: 4/3;
  object-fit: cover;
  margin: 0 !important;
  transition: transform 600ms ease;
  background: var(--agc-paper-warm, #F2F6F0);
}
.woocommerce ul.products li.product:hover img { transform: scale(1.04); }

/* Onsale badge */
.woocommerce span.onsale {
  position: absolute;
  top: 12px; left: 12px;
  background: var(--agc-orange, #3E8E35) !important;
  color: #fff !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.4rem 0.7rem !important;
  border-radius: 3px !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/* Stock pill (custom — added via filter below) */
.agc-stock-pill {
  position: absolute;
  top: 12px; right: 12px;
  background: rgba(17,40,27,0.85);
  color: #fff;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.35rem 0.6rem;
  border-radius: 3px;
  z-index: 3;
}
.agc-stock-pill--low    { background: #B5651B; }
.agc-stock-pill--out    { background: #6B6B6B; }
.agc-stock-pill--backorder { background: #1F6B4A; }

/* Card body */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .button {
  padding: 0 1.1rem !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  font-size: 0.98rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: var(--agc-ink, #11281B) !important;
  padding: 1rem 1.1rem 0.3rem !important;
  margin: 0 !important;
  min-height: 3em;
}

.woocommerce ul.products li.product .price {
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  color: var(--agc-ink, #11281B) !important;
  margin: 0.3rem 0 0.8rem !important;
}
.woocommerce ul.products li.product .price del {
  color: var(--agc-muted, #7A7570) !important;
  font-weight: 400 !important;
  opacity: 0.6;
  margin-right: 0.5rem;
}
.woocommerce ul.products li.product .price ins {
  color: var(--agc-orange, #3E8E35) !important;
  text-decoration: none;
  font-weight: 700;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.added_to_cart {
  display: block !important;
  text-align: center !important;
  margin: 0.4rem 1.1rem 1.1rem !important;
  width: calc(100% - 2.2rem) !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.1em !important;
}

/* Star rating in card */
.woocommerce ul.products li.product .star-rating {
  margin: 0 1.1rem 0.5rem !important;
  font-size: 0.85rem;
}

/* Shop page banner */
.woocommerce-products-header,
.woocommerce-archive-description,
header.woocommerce-products-header {
  background: var(--agc-paper-warm, #F2F6F0);
  padding: clamp(2.5rem, 6vw, 4.5rem) 1.5rem;
  margin: 0 0 2.5rem !important;
  text-align: center;
}
.woocommerce-products-header__title,
.page-title {
  font-size: clamp(2rem, 4vw, 2.8rem) !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 !important;
  font-weight: 700 !important;
}

.woocommerce-result-count {
  color: var(--agc-muted, #7A7570);
  font-size: 0.85rem;
  letter-spacing: 0.04em;
}

.woocommerce .woocommerce-ordering select {
  padding: 0.7rem 1rem !important;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.12)) !important;
  border-radius: 4px !important;
  font-size: 0.85rem !important;
  background: #fff;
}

/* =========================================================
   SINGLE PRODUCT
   ========================================================= */

.single-product div.product.type-product {
  display: block !important;   /* NOT a grid — the 2-col grid lives on .product-entry-wrapper */
  max-width: 1280px !important;
  width: 100% !important;
  margin: 1.5rem auto !important;
  padding: 0 1.5rem !important;
}

/* Gallery left */
.single-product .product .woocommerce-product-gallery {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}
.single-product .product .woocommerce-product-gallery__image img {
  border-radius: 8px;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  aspect-ratio: 4/3;
  object-fit: cover;
}
.flex-control-thumbs li img {
  border-radius: 4px;
  border: 2px solid transparent;
  transition: border-color 180ms ease;
}
.flex-control-thumbs li img.flex-active,
.flex-control-thumbs li img:hover {
  border-color: var(--agc-orange, #3E8E35) !important;
  opacity: 1 !important;
}

/* Summary right */
.single-product .product .summary {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}
.single-product .product_title {
  font-size: clamp(1.6rem, 2.6vw, 2.2rem) !important;
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin: 0 0 0.8rem !important;
  font-weight: 700;
}
.single-product .woocommerce-product-rating {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1rem !important;
}
.single-product .summary .price {
  font-size: 1.8rem !important;
  font-weight: 700 !important;
  color: var(--agc-ink, #11281B) !important;
  font-family: 'Inter', sans-serif !important;
  margin: 0.6rem 0 1rem !important;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.1));
}
.single-product .summary .price del { color: var(--agc-muted, #7A7570) !important; font-weight: 400; opacity: 0.6; margin-right: 0.6rem; font-size: 1.2rem; vertical-align: middle; }
.single-product .summary .price ins { color: var(--agc-orange, #3E8E35) !important; text-decoration: none; }

.single-product .woocommerce-product-details__short-description {
  font-size: 1rem;
  line-height: 1.75;
  color: var(--agc-ink, #11281B);
  margin: 0 0 1.4rem;
}

/* Add to cart row */
.single-product .summary form.cart {
  display: flex !important;
  align-items: center;
  gap: 0.8rem;
  margin: 1.4rem 0 1.6rem !important;
}
.single-product .summary form.cart .quantity .qty {
  width: 80px !important;
  padding: 0.95rem 0.6rem !important;
  text-align: center;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.16)) !important;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 600;
}
.single-product .summary form.cart button.single_add_to_cart_button {
  flex: 1;
  padding: 1rem 1.5rem !important;
  font-size: 0.85rem !important;
}

/* Meta block */
.single-product .product_meta {
  margin: 1.6rem 0 0 !important;
  padding: 1.2rem 0 0;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.1));
  font-size: 0.85rem;
  color: var(--agc-muted, #7A7570);
}
.single-product .product_meta > span {
  display: block;
  padding: 0.3rem 0;
}
.single-product .product_meta strong { color: var(--agc-ink, #11281B); font-weight: 600; margin-right: 0.4rem; }

/* Trust strip under add-to-cart */
.agc-single-trust {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.8rem;
  margin: 1.4rem 0;
  padding: 1.2rem 0;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  font-size: 0.85rem;
}
.agc-single-trust__item { display: flex; align-items: center; gap: 0.6rem; color: var(--agc-ink, #11281B); }
.agc-single-trust__icon { color: var(--agc-orange, #3E8E35); font-weight: 700; }

/* Tabs */
.woocommerce-tabs {
  grid-column: 1/-1 !important;
  margin-top: 2rem;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.1));
  padding-top: 2rem;
}
.woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 0 2rem !important;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.1));
  list-style: none;
}
.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs::after { display: none !important; }
.woocommerce-tabs ul.tabs li {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 1.5rem 0 0 !important;
  position: relative;
}
.woocommerce-tabs ul.tabs li a {
  padding: 0.9rem 0 !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--agc-muted, #7A7570) !important;
  display: block;
  transition: color 180ms;
}
.woocommerce-tabs ul.tabs li.active a {
  color: var(--agc-ink, #11281B) !important;
}
.woocommerce-tabs ul.tabs li.active::after {
  content: '';
  position: absolute;
  left: 0; right: 1.5rem; bottom: -1px;
  height: 2px;
  background: var(--agc-orange, #3E8E35);
}
.woocommerce-tabs .panel {
  font-size: 0.98rem;
  line-height: 1.8;
  color: var(--agc-ink, #11281B);
  padding: 0 !important;
}
.woocommerce-tabs .panel h2 { font-size: 1.4rem; margin: 0 0 1rem; }

/* Spec table (attributes) */
.woocommerce-product-attributes,
.shop_attributes {
  width: 100%;
  border-collapse: collapse;
  margin: 0;
}
.shop_attributes th,
.woocommerce-product-attributes-item__label {
  padding: 0.85rem 1rem !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--agc-muted, #7A7570);
  background: var(--agc-paper-warm, #F2F6F0);
  width: 35% !important;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.06)) !important;
  text-align: left;
}
.shop_attributes td,
.woocommerce-product-attributes-item__value {
  padding: 0.85rem 1rem !important;
  font-size: 0.95rem !important;
  color: var(--agc-ink, #11281B) !important;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.06)) !important;
  font-style: normal !important;
}
.shop_attributes td p,
.woocommerce-product-attributes-item__value p { margin: 0 !important; padding: 0 !important; }

/* Related / Upsells */
.related.products,
.upsells.products {
  grid-column: 1/-1;
  margin-top: 3.5rem !important;
  padding-top: 2.5rem;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.1));
}
.related.products > h2,
.upsells.products > h2 {
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 0 1.5rem;
  text-align: center;
}

/* Quantity stepper polish */
.woocommerce .quantity input[type=number] {
  -moz-appearance: textfield;
  appearance: textfield;
}

/* Breadcrumb */
.woocommerce-breadcrumb {
  max-width: 1280px;
  margin: 1.4rem auto 0 !important;
  padding: 0 1.5rem;
  font-size: 0.82rem !important;
  color: var(--agc-muted, #7A7570) !important;
  letter-spacing: 0.04em;
}
.woocommerce-breadcrumb a {
  color: var(--agc-muted, #7A7570);
  text-decoration: none;
}
.woocommerce-breadcrumb a:hover { color: var(--agc-orange, #3E8E35); }

/* =========================================================
   FIX SINGLE PRODUCT — full width 2-col, kill is-width-constrained
   ========================================================= */

.single-product .product-entry-wrapper.is-width-constrained,
.single-product .product-entry-wrapper {
  max-width: 1320px !important;
  width: 100% !important;
  margin: 2rem auto !important;
  padding: 0 1.5rem !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
  gap: 3.5rem !important;
  align-items: start;
}
@media (max-width: 980px) {
  .single-product .product-entry-wrapper { grid-template-columns: 1fr !important; gap: 2rem !important; }
}

.single-product .woocommerce-product-gallery {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  grid-column: 1;
}
.single-product .woocommerce-product-gallery .ct-product-gallery-container { width: 100%; }
.single-product .woocommerce-product-gallery img,
.single-product .woocommerce-product-gallery .ct-media-container img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4/3 !important;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  background: var(--agc-paper-warm, #F2F6F0);
}
.single-product .ct-media-container { display: block; width: 100%; }
.single-product .flex-control-thumbs,
.single-product .ct-product-gallery-thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0.5rem !important;
  margin: 0.8rem 0 0 !important;
  padding: 0 !important;
  list-style: none;
}
.single-product .flex-control-thumbs li,
.single-product .ct-product-gallery-thumbs li {
  width: 100% !important; margin: 0 !important;
}
.single-product .flex-control-thumbs img,
.single-product .ct-product-gallery-thumbs img {
  width: 100% !important;
  aspect-ratio: 1/1 !important;
  object-fit: cover;
  border-radius: 4px;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 180ms;
}
.single-product .flex-control-thumbs img:hover,
.single-product .ct-product-gallery-thumbs img:hover,
.single-product .flex-control-thumbs img.flex-active { opacity: 1; }

.single-product .entry-summary,
.single-product .summary {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  padding: 0.5rem 0 0 !important;
  grid-column: 2;
  max-width: none !important;
}
.single-product .product_title,
.single-product .entry-title {
  font-size: clamp(1.6rem, 2.4vw, 2rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  font-weight: 700 !important;
  margin: 0 0 1rem !important;
  --theme-font-size: clamp(1.6rem, 2.4vw, 2rem) !important;
}
.single-product .entry-summary .price,
.single-product .summary .price {
  font-family: 'Inter', sans-serif !important;
  font-size: 1.8rem !important;
  font-weight: 800 !important;
  color: var(--agc-orange, #3E8E35) !important;
  --theme-font-size: 1.8rem !important;
  margin: 0 0 1.2rem !important;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.08));
}
.single-product .entry-summary .price del,
.single-product .summary .price del {
  color: var(--agc-muted, #7A7570) !important;
  font-weight: 400 !important;
  opacity: 0.55;
  font-size: 1.2rem !important;
  margin-left: 0.6rem;
}
.single-product .entry-summary .price ins,
.single-product .summary .price ins {
  text-decoration: none;
  color: var(--agc-orange, #3E8E35) !important;
}

.single-product .woocommerce-product-details__short-description {
  font-size: 1rem;
  line-height: 1.7;
  color: var(--agc-ink, #11281B);
  margin: 0 0 1.4rem;
}

/* TABS + related — full width below the 2-col grid */
.single-product .woocommerce-tabs,
.single-product .related.products,
.single-product .upsells.products,
.single-product .up-sells.products {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 2rem 0 0 !important;
}
.single-product .woocommerce-tabs { padding-top: 2rem; border-top: 1px solid var(--agc-line); }

/* Related products grid */
.single-product .related.products .products,
.single-product .upsells.products .products,
.single-product .up-sells.products .products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
  width: 100% !important;
  --shop-columns: repeat(4, minmax(0, 1fr)) !important;
}
.single-product .related.products .product,
.single-product .upsells.products .product,
.single-product .up-sells.products .product { width: 100% !important; max-width: none !important; margin: 0 !important; }

@media (max-width: 1100px) {
  .single-product .related.products .products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 800px) {
  .single-product .related.products .products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* product_meta block — tidier */
.single-product .product_meta {
  margin: 1.2rem 0 0 !important;
  padding-top: 1rem;
  border-top: 1px solid var(--agc-line);
  font-size: 0.82rem;
  color: var(--agc-muted, #7A7570);
}
.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as { display: block; padding: 0.25rem 0; }

/* =========================================================
   SHOP CARDS — hide noisy category list, polish layout
   ========================================================= */

/* Hide the long category links Blocksy outputs on each card */
.woocommerce ul.products li.product .entry-meta,
.woocommerce ul.products li.product .ct-meta-categories,
.woocommerce ul.products li.product .posted_in,
.woocommerce ul.products li.product .ct-woo-card-actions [data-button*="quick-view"] {
  display: none !important;
}

/* =========================================================
   SHOP FILTER SIDEBAR
   ========================================================= */

body.post-type-archive-product .ct-container-full,
body.tax-product_cat .ct-container-full {
  max-width: 1380px;
  padding: 0 1.5rem;
}

body.post-type-archive-product .site-main > .ct-container,
body.tax-product_cat .site-main > .ct-container {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 2rem;
  max-width: 1380px;
  margin: 0 auto;
  padding: 1.5rem;
}
@media (max-width: 900px) {
  body.post-type-archive-product .site-main > .ct-container,
  body.tax-product_cat .site-main > .ct-container { grid-template-columns: 1fr; }
}

.agc-filter {
  background: #fff;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  border-radius: 8px;
  padding: 1.5rem;
  font-size: 0.92rem;
  position: sticky;
  top: 1.5rem;
  align-self: start;
  max-height: calc(100vh - 3rem);
  overflow-y: auto;
}
.agc-filter__group + .agc-filter__group {
  margin-top: 1.4rem;
  padding-top: 1.4rem;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.08));
}
.agc-filter h4 {
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
  margin: 0 0 0.8rem;
  color: var(--agc-ink);
}
.agc-filter input[type=search],
.agc-filter input[type=number] {
  width: 100%;
  padding: 0.6rem 0.8rem;
  border: 1px solid var(--agc-line);
  border-radius: 4px;
  font-size: 0.88rem;
  font-family: inherit;
  background: #fff;
}
.agc-filter input:focus { outline: none; border-color: var(--agc-orange); }
.agc-filter__price {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 0.5rem;
  align-items: center;
}
.agc-filter__price span { color: var(--agc-muted); font-size: 0.8rem; }
.agc-filter__cats {
  list-style: none;
  padding: 0;
  margin: 0;
  max-height: 240px;
  overflow-y: auto;
}
.agc-filter__cats li {
  padding: 0.25rem 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.agc-filter__cats label {
  cursor: pointer;
  font-size: 0.88rem;
  color: var(--agc-ink);
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.agc-filter__cats label:hover { color: var(--agc-orange); }
.agc-filter__cats .agc-count {
  color: var(--agc-muted);
  font-size: 0.75rem;
}
.agc-filter input[type=checkbox],
.agc-filter input[type=radio] {
  accent-color: var(--agc-orange);
  width: 14px; height: 14px;
}
.agc-filter__radio {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.agc-filter__radio label {
  display: flex; align-items: center; gap: 0.5rem;
  font-size: 0.9rem; cursor: pointer;
}
.agc-filter__actions {
  display: flex;
  gap: 0.5rem;
  margin-top: 1.4rem;
}
.agc-filter__submit,
.agc-filter__reset {
  flex: 1;
  padding: 0.7rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 4px;
  cursor: pointer;
  border: 1px solid var(--agc-orange);
}
.agc-filter__submit { background: var(--agc-orange); color: #fff; }
.agc-filter__submit:hover { background: var(--agc-orange-hover); }
.agc-filter__reset {
  background: #fff;
  color: var(--agc-ink);
  border-color: var(--agc-line);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.agc-filter__reset:hover { border-color: var(--agc-ink); }
.agc-filter__active {
  display: flex; flex-wrap: wrap; gap: 0.4rem;
  margin: 0 0 1rem;
}
.agc-filter__chip {
  background: rgba(62,142,53,0.08);
  color: var(--agc-orange);
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.3rem 0.6rem;
  border-radius: 3px;
  text-decoration: none;
  letter-spacing: 0.04em;
}
.agc-filter__chip:hover { background: rgba(62,142,53,0.16); }

@media (max-width: 900px) {
  .agc-filter {
    position: static;
    max-height: none;
  }
  .agc-filter__toggle {
    display: block; width: 100%;
    padding: 0.8rem; background: var(--agc-ink); color: #fff;
    border: 0; font-weight: 600; letter-spacing: 0.1em;
    text-transform: uppercase; font-size: 0.78rem; border-radius: 4px;
    margin-bottom: 1rem; cursor: pointer;
  }
  .agc-filter[hidden] { display: none; }
}
.agc-filter__toggle { display: none; }

/* =========================================================
   SHOP GRID with sidebar — final layout
   ========================================================= */

.agc-shop-grid {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 2rem;
  max-width: 1380px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
@media (max-width: 900px) {
  .agc-shop-grid { grid-template-columns: 1fr; gap: 1rem; }
  .agc-filter__toggle { display: block !important; }
  .agc-filter-wrap .agc-filter { display: none; }
  .agc-filter-wrap .agc-filter:not([hidden]) { display: block; }
}

.agc-shop-results { min-width: 0; }
.agc-shop-results .products { width: 100%; }

/* Tighten the page header inside shop now that we have a sidebar */
.woocommerce-products-header {
  background: transparent !important;
  padding: 0 0 1.5rem !important;
  text-align: left !important;
}

/* Sort + count row */
.woocommerce-result-count,
.woocommerce-ordering { margin-bottom: 1.5rem !important; }

/* =========================================================
   PRODUCT — KEY SPECS CARD (right summary)
   ========================================================= */

.agc-spec-card {
  margin: 0.4rem 0 1.2rem;
  padding: 1rem 1.2rem;
  background: var(--agc-paper-warm, #F2F6F0);
  border-radius: 6px;
  border-left: 3px solid var(--agc-orange, #3E8E35);
}
.agc-spec-card h4 {
  font-size: 0.7rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
  margin: 0 0 0.6rem;
  color: var(--agc-muted, #7A7570);
  --theme-font-size: 0.7rem;
}
.agc-spec-card dl {
  display: grid;
  grid-template-columns: minmax(110px, 38%) 1fr;
  gap: 0.3rem 1rem;
  margin: 0;
}
.agc-spec-card dt {
  font-size: 0.82rem;
  font-weight: 500;
  color: var(--agc-muted, #7A7570);
  margin: 0;
}
.agc-spec-card dd {
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--agc-ink, #11281B);
  margin: 0;
}

/* =========================================================
   ENQUIRE NOW button
   ========================================================= */

.single-product .summary form.cart { flex-wrap: wrap !important; }
.single-product .summary .agc-btn--enquire {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0.8rem 0 0;
  padding: 1.1rem 1.5rem;
  background: var(--agc-ink, #11281B);
  color: #fff !important;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.88rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-radius: 4px;
  transition: background 180ms;
}
.single-product .summary .agc-btn--enquire:hover {
  background: var(--agc-orange, #3E8E35);
}

/* =========================================================
   PRODUCT PARAMETERS — big spec table below
   ========================================================= */

.agc-params {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1320px !important;
  margin: 3rem auto 0 !important;
  padding: 0 1.5rem;
}
.agc-params h2 {
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0 0 1.6rem;
  font-weight: 700;
  --theme-font-size: 1.4rem;
}
.agc-params__table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  border-radius: 6px;
  overflow: hidden;
}
.agc-params__table th,
.agc-params__table td {
  padding: 0.9rem 1.2rem;
  text-align: left;
  border-bottom: 1px solid var(--agc-line, rgba(0,0,0,0.06));
  font-size: 0.92rem;
  line-height: 1.5;
}
.agc-params__table tr:last-child th,
.agc-params__table tr:last-child td { border-bottom: 0; }
.agc-params__table th {
  width: 32%;
  background: var(--agc-paper-warm, #F2F6F0);
  font-weight: 600;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--agc-muted, #7A7570);
}
.agc-params__table td { color: var(--agc-ink, #11281B); font-weight: 500; }
.agc-params__table tr:nth-child(even) th { background: #E7EFE4; }
.agc-params__note {
  margin: 0.8rem 0 0;
  font-size: 0.78rem;
  color: var(--agc-muted, #7A7570);
  text-align: center;
  font-style: italic;
}

/* =========================================================
   RELATED PRODUCTS — fix broken vertical strip
   ========================================================= */

.single-product .related,
.single-product .up-sells {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1320px !important;
  margin: 3.5rem auto 0 !important;
  padding: 2.5rem 1.5rem 0 !important;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.08));
}
.single-product .related > h2,
.single-product .related .ct-module-title,
.single-product .up-sells > h2 {
  text-align: center;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 0 2rem !important;
  font-weight: 700;
  --theme-font-size: 1.4rem;
}

/* Force the related products into a proper 4-col grid */
.single-product .related .products,
.single-product .up-sells .products,
.single-product [data-products].products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
  --shop-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 100% !important;
  padding: 0 !important;
  list-style: none !important;
}
.single-product .related .products li.product,
.single-product .up-sells .products li.product {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  display: block !important;
  min-width: 0 !important;
  background: #fff;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  border-radius: 8px;
  overflow: hidden;
}
.single-product .related .products li.product figure,
.single-product .up-sells .products li.product figure {
  margin: 0 !important;
  width: 100% !important;
}
.single-product .related .products li.product img,
.single-product .up-sells .products li.product img {
  width: 100% !important;
  aspect-ratio: 4/3 !important;
  object-fit: cover !important;
  display: block !important;
}

@media (max-width: 1100px) {
  .single-product .related .products,
  .single-product .up-sells .products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 800px) {
  .single-product .related .products,
  .single-product .up-sells .products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* Hide the auto Blocksy related-products module if Woo also outputs one */
.single-product .related + .related { display: none !important; }

/* =========================================================
   Contact form prefill banner
   ========================================================= */
.agc-prefill-banner {
  display: flex; align-items: center; gap: 0.8rem;
  background: rgba(62,142,53,0.08);
  border-left: 3px solid var(--agc-orange, #3E8E35);
  padding: 1rem 1.2rem;
  margin: 0 0 1.4rem;
  font-size: 0.9rem;
}
.agc-prefill-banner strong { color: var(--agc-orange, #3E8E35); }

/* =========================================================
   FORCE FULL-WIDTH SINGLE PRODUCT — defeat Blocksy CSS vars
   ========================================================= */

.single-product {
  --theme-block-max-width: 1320px;
  --theme-container-width: 100%;
  --theme-narrow-container-max-width: 1320px;
}

.single-product .ct-container-full {
  width: 100% !important;
  max-width: 100% !important;
  padding-inline: 1.5rem !important;
}

.single-product .product-entry-wrapper.is-width-constrained,
.single-product .product-entry-wrapper {
  max-width: 1320px !important;
  width: 100% !important;
  margin: 1.5rem auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
  gap: 3rem !important;
  align-items: start;
}

.single-product .hero-section.is-width-constrained,
.single-product .hero-section {
  max-width: 1320px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 1rem 1.5rem 0 !important;
}

@media (max-width: 980px) {
  .single-product .product-entry-wrapper { grid-template-columns: 1fr !important; gap: 2rem !important; }
}

/* Push price into the FAIRWAY-style "incl. GST" treatment */
.single-product .summary .price::after {
  content: ' incl. GST';
  font-size: 0.7em;
  font-weight: 500;
  color: var(--agc-muted, #7A7570);
  margin-left: 0.4rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/* Slightly bigger gallery image */
.single-product .woocommerce-product-gallery .ct-media-container img {
  min-height: 380px;
}

/* RELATED PRODUCTS — extra-aggressive width override */
.single-product .related,
.single-product .related.products,
.single-product .up-sells {
  width: 100% !important;
  max-width: none !important;
}
.single-product .related .products,
.single-product .related ul.products,
.single-product .up-sells .products {
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
}
.single-product .related .products > *,
.single-product .up-sells .products > * {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  margin: 0 !important;
}

/* Kill any leftover Blocksy product collection inside single product */
.single-product .wp-block-woocommerce-product-collection,
.single-product .wp-block-woocommerce-product-template {
  display: block !important;
  width: 100% !important;
}
.single-product .wp-block-woocommerce-product-template {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
}
.single-product .wp-block-woocommerce-product-template > li,
.single-product .wp-block-woocommerce-product-template > * {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* =========================================================
   FINAL: gallery ratio normalisation + related grid
   (sources are mixed portrait/landscape — force uniform)
   ========================================================= */

/* Main gallery image: uniform landscape, cover-cropped */
.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure.ct-media-container,
.single-product .woocommerce-product-gallery figure.ct-media-container:first-of-type {
  margin: 0 !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  border-radius: 8px;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  background: var(--agc-paper-warm, #F2F6F0);
}
.single-product .woocommerce-product-gallery .ct-media-container img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  min-height: 0 !important;
}

/* Blocksy flexy thumbnail nav → tidy horizontal row of squares */
.single-product .flexy-pills,
.single-product .flexy-controls,
.single-product .ct-product-view-type { gap: 0.5rem !important; }

.single-product .flexy-items { gap: 0 !important; }

.single-product [data-flexy] .flexy-pills ol,
.single-product .woocommerce-product-gallery .flex-control-thumbs,
.single-product .woocommerce-product-gallery [data-thumbs] {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0.5rem !important;
  margin: 0.6rem 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.single-product .flexy-pills li,
.single-product .flex-control-thumbs li {
  width: 100% !important;
  margin: 0 !important;
  aspect-ratio: 1 / 1 !important;
}
.single-product .flexy-pills img,
.single-product .flex-control-thumbs img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 4px;
  cursor: pointer;
}

/* RELATED — widen the is-width-constrained wrapper + force real grid */
.single-product .related.is-width-constrained,
.single-product .up-sells.is-width-constrained {
  max-width: 1320px !important;
  width: 100% !important;
  margin: 3rem auto 0 !important;
}
.single-product .related ul.products[data-products],
.single-product .up-sells ul.products[data-products] {
  --shop-columns: repeat(4, minmax(0, 1fr)) !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
  width: 100% !important;
}
.single-product .related ul.products[data-products] > li.product,
.single-product .up-sells ul.products[data-products] > li.product {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.single-product .related .product figure.ct-media-container,
.single-product .up-sells .product figure.ct-media-container {
  aspect-ratio: 4 / 3 !important;
  overflow: hidden;
}
.single-product .related .product figure.ct-media-container img,
.single-product .up-sells .product figure.ct-media-container img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
@media (max-width: 1000px) {
  .single-product .related ul.products[data-products],
  .single-product .up-sells ul.products[data-products] { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 680px) {
  .single-product .related ul.products[data-products],
  .single-product .up-sells ul.products[data-products] { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}

/* =========================================================
   DEFINITIVE WIDTH OVERRIDE (end of file — wins on order)
   ========================================================= */
.single-product div.product.type-product,
.single-product .product-entry-wrapper,
.single-product .product-entry-wrapper.is-width-constrained {
  max-width: 1280px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  --theme-block-max-width: 1280px !important;
  --theme-container-width: 100% !important;
}
.single-product .product-entry-wrapper,
.single-product .product-entry-wrapper.is-width-constrained {
  display: grid !important;
  grid-template-columns: minmax(0, 52%) minmax(0, 48%) !important;
  gap: 3rem !important;
  align-items: start !important;
}
@media (max-width: 980px) {
  .single-product .product-entry-wrapper { grid-template-columns: 1fr !important; }
}

/* =========================================================
   RELATED PRODUCTS — final decisive fix (vertical-strip bug)
   ========================================================= */
.single-product .related.products,
.single-product .related.products.is-width-constrained,
.single-product .up-sells.products {
  display: block !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 3rem auto 0 !important;
  padding: 2.5rem 1.5rem 0 !important;
  --theme-block-max-width: 1280px !important;
  --theme-container-width: 100% !important;
}
.single-product .related.products > ul.products,
.single-product .related.products ul.products[data-products],
.single-product .up-sells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
  width: 100% !important;
  max-width: 100% !important;
  --shop-columns: repeat(4, minmax(0, 1fr)) !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.single-product .related.products ul.products > li.product,
.single-product .up-sells.products ul.products > li.product {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
}
@media (max-width: 1000px){.single-product .related.products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (max-width: 680px){.single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* =========================================================
   CUSTOM RELATED PRODUCTS (own markup — no Blocksy fight)
   ========================================================= */
.agc-related {
  max-width: 1280px !important;
  width: 100%;
  margin: 3rem auto 0 !important;
  padding: 2.5rem 1.5rem 0 !important;
  border-top: 1px solid var(--agc-line, rgba(0,0,0,0.08));
}
.agc-related > h2 {
  text-align: center;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-weight: 700;
  margin: 0 0 2rem !important;
}
.agc-related__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.5rem;
}
@media (max-width: 1000px){ .agc-related__grid{ grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 680px){ .agc-related__grid{ grid-template-columns: repeat(2,minmax(0,1fr)); } }

.agc-rcard {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--agc-line, rgba(0,0,0,0.08));
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.agc-rcard:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(17,40,27,0.10); }
.agc-rcard__img {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--agc-paper-warm, #F2F6F0);
}
.agc-rcard__img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}
.agc-rcard__badge {
  position: absolute; top: 10px; left: 10px; z-index: 2;
  background: var(--agc-orange, #3E8E35); color: #fff;
  font-size: 0.65rem; font-weight: 700; letter-spacing: 0.1em;
  text-transform: uppercase; padding: 0.3rem 0.55rem; border-radius: 3px;
}
.agc-rcard__body { padding: 1rem 1.1rem 1.2rem; display: flex; flex-direction: column; gap: 0.5rem; flex: 1; }
.agc-rcard__title {
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  color: var(--agc-ink, #11281B) !important;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.agc-rcard__price { font-weight: 800; font-size: 1.05rem; color: var(--agc-ink); margin-top: auto; }
.agc-rcard__price del { color: var(--agc-muted,#7A7570); font-weight: 400; opacity: 0.6; font-size: 0.85rem; margin-right: 0.4rem; }
.agc-rcard__price ins { text-decoration: none; color: var(--agc-orange,#3E8E35); }
.agc-rcard__cta { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--agc-orange,#3E8E35); }

/* =========================================================
   HOME v3 — Fairway-style layout
   ========================================================= */
.agc-wrap { max-width: 1280px; margin: 0 auto; padding: 0 1.5rem; }
.agc-sec { padding: clamp(3rem,6vw,5rem) 0; }
.agc-h2c { text-align:center; font-size:clamp(1.6rem,3vw,2.3rem); font-weight:700; letter-spacing:0.01em; margin:0 0 2.2rem; --theme-font-size:clamp(1.6rem,3vw,2.3rem); }
.agc-lede { font-size:1.05rem; line-height:1.8; color:var(--agc-ink); opacity:.85; }

/* HERO */
.agc-hero2 { background:#11281B; color:#fff; padding:clamp(2.5rem,5vw,4.5rem) 1.5rem; }
.agc-hero2__inner { max-width:1280px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
@media (max-width:900px){ .agc-hero2__inner{ grid-template-columns:1fr; gap:2rem } }
.agc-hero2__copy h1 { color:#fff; font-size:clamp(2.2rem,4.5vw,3.6rem); line-height:1.08; margin:.8rem 0 1.2rem; font-weight:800; letter-spacing:-.01em; }
.agc-hero2__sub { font-size:1.1rem; line-height:1.7; opacity:.85; max-width:46ch; margin:0 0 1.8rem; }
.agc-hero2__actions { display:flex; gap:.8rem; flex-wrap:wrap; }
.agc-hero2__collage { display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:.8rem; height:420px; }
@media (max-width:900px){ .agc-hero2__collage{ height:300px } }
.agc-hero2__tile { background-size:cover; background-position:center; border-radius:10px; }
.agc-hero2__tile--lg { grid-row:1 / span 2; }

/* PRODUCT RANGE */
.agc-range { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
@media (max-width:860px){ .agc-range{ grid-template-columns:1fr } }
.agc-range__card { display:block; text-decoration:none; border-radius:10px; overflow:hidden; border:1px solid var(--agc-line); background:#fff; transition:transform .18s, box-shadow .18s; }
.agc-range__card:hover { transform:translateY(-4px); box-shadow:0 16px 36px rgba(17,40,27,.1); }
.agc-range__img { aspect-ratio:4/3; background-size:cover; background-position:center; }
.agc-range__label { padding:1.1rem 1.2rem; font-weight:700; font-size:1.05rem; color:var(--agc-ink); text-align:center; text-transform:uppercase; letter-spacing:.04em; }

/* COLORS */
.agc-colors { background:var(--agc-paper-warm); padding:1.6rem 1.5rem; }
.agc-colors__inner { display:flex; align-items:center; justify-content:center; gap:1.5rem; flex-wrap:wrap; }
.agc-colors__title { font-weight:700; text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; color:var(--agc-muted); }
.agc-colors__swatches { display:flex; gap:.7rem; }
.agc-sw { width:30px; height:30px; border-radius:50%; background:var(--c); box-shadow:0 1px 4px rgba(0,0,0,.18); display:inline-block; }
.agc-colors__note { font-size:.82rem; color:var(--agc-muted); }

/* SPLIT sections */
.agc-split { padding:clamp(3rem,6vw,5rem) 0; }
.agc-split--dark { background:#11281B; }
.agc-split__inner { display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center; }
.agc-split__inner--rev { grid-template-columns:.95fr 1.05fr; }
@media (max-width:880px){ .agc-split__inner,.agc-split__inner--rev{ grid-template-columns:1fr; gap:2rem } .agc-split__inner--rev .agc-split__img{ order:-1 } }
.agc-split__copy h2 { font-size:clamp(1.5rem,2.6vw,2.1rem); font-weight:700; margin:.6rem 0 1.2rem; line-height:1.2; }
.agc-split--dark .agc-split__copy h2 { color:#fff; }
.agc-split__img { aspect-ratio:4/3; background-size:cover; background-position:center; border-radius:10px; min-height:300px; }
.agc-checks { list-style:none; padding:0; margin:0 0 1.6rem; }
.agc-checks li { position:relative; padding:.5rem 0 .5rem 1.8rem; line-height:1.6; border-bottom:1px solid var(--agc-line); }
.agc-checks li::before { content:'✓'; position:absolute; left:0; top:.5rem; color:var(--agc-orange); font-weight:800; }
.agc-checks--light li { color:rgba(255,255,255,.88); border-bottom-color:rgba(255,255,255,.12); }

/* COMPARE TABLE */
.agc-compare { width:100%; border-collapse:collapse; border:1px solid var(--agc-line); border-radius:8px; overflow:hidden; }
.agc-compare th,.agc-compare td { padding:.9rem 1.1rem; text-align:left; border-bottom:1px solid var(--agc-line); font-size:.95rem; }
.agc-compare thead th { background:#11281B; color:#fff; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.agc-compare tbody tr:nth-child(even){ background:var(--agc-paper-warm); }
.agc-compare td.y { color:#1F6B4A; font-weight:600; }
.agc-compare td.y::before{ content:'✓ '; }
.agc-compare td.n { color:var(--agc-muted); }
.agc-compare td.n::before{ content:'✕ '; }

/* GET A QUOTE */
.agc-quote { background-size:cover; background-position:center; color:#fff; padding:clamp(3rem,6vw,5rem) 1.5rem; }
.agc-quote__inner { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
@media (max-width:880px){ .agc-quote__inner{ grid-template-columns:1fr; gap:2rem } }
.agc-quote__copy h2 { color:#fff; font-size:clamp(1.6rem,2.8vw,2.3rem); font-weight:700; margin:.6rem 0 1rem; }
.agc-quote__copy p { opacity:.85; line-height:1.7; max-width:46ch; }
.agc-quote__form { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); padding:1.6rem; border-radius:10px; display:flex; flex-direction:column; gap:.8rem; }
.agc-quote__row { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.agc-quote__form input,.agc-quote__form textarea { background:rgba(255,255,255,.95); border:0; border-radius:5px; padding:.85rem 1rem; font:inherit; font-size:.92rem; color:#11281B; }
.agc-quote__form button { margin-top:.4rem; }

/* FAQ */
.agc-faq__item { border:1px solid var(--agc-line); border-radius:8px; margin-bottom:.7rem; background:#fff; overflow:hidden; }
.agc-faq__item summary { cursor:pointer; padding:1.1rem 1.3rem; font-weight:600; list-style:none; display:flex; justify-content:space-between; align-items:center; }
.agc-faq__item summary::-webkit-details-marker{ display:none; }
.agc-faq__item summary::after{ content:'+'; color:var(--agc-orange); font-size:1.4rem; font-weight:400; }
.agc-faq__item[open] summary::after{ content:'–'; }
.agc-faq__item p { padding:0 1.3rem 1.2rem; margin:0; color:var(--agc-ink); opacity:.82; line-height:1.7; }

/* =========================================================
   HOME v4 — PREMIUM PASS (Apple-tier polish)
   ========================================================= */

/* Display font for big headings */
.agc-hero3__title,
.agc-h2c,
.agc-split__copy h2,
.agc-quote__copy h2 {
  font-family: 'Fraunces', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
}

.agc-eyebrow--light { color: var(--agc-orange); }

/* ---- HERO SLIDER (full-bleed, flush) ---- */
.agc-hero3 {
  position: relative;
  min-height: min(92vh, 820px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #11281B;
  margin: 0;
}
.agc-hero3__slides { position: absolute; inset: 0; }
.agc-hero3__slide {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  opacity: 0;
  transform: scale(1.06);
  transition: opacity 1200ms ease, transform 7000ms ease;
}
.agc-hero3__slide.is-active {
  opacity: 1;
  transform: scale(1);
}
.agc-hero3__scrim {
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, rgba(17,40,27,0.15) 0%, rgba(17,40,27,0.55) 60%, rgba(17,40,27,0.92) 100%),
    linear-gradient(90deg, rgba(17,40,27,0.55) 0%, rgba(17,40,27,0) 55%);
}
.agc-hero3__content {
  position: relative; z-index: 3;
  max-width: 1280px; width: 100%;
  margin: 0 auto;
  padding: 0 2rem clamp(3.5rem, 7vw, 6rem);
}
.agc-hero3__title {
  color: #fff;
  font-size: clamp(2.6rem, 6vw, 5rem) !important;
  line-height: 1.02;
  margin: 1rem 0 1.3rem;
  max-width: 18ch;
  text-shadow: 0 2px 30px rgba(0,0,0,0.25);
}
.agc-hero3__sub {
  color: rgba(255,255,255,0.9);
  font-size: clamp(1.05rem, 1.5vw, 1.3rem);
  line-height: 1.6;
  max-width: 52ch;
  margin: 0 0 2.2rem;
  font-weight: 400;
}
.agc-hero3__actions { display: flex; gap: 0.9rem; flex-wrap: wrap; }
.agc-btn--glass {
  background: rgba(255,255,255,0.10);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.45);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.agc-btn--glass:hover { background: #fff; color: var(--agc-ink); border-color: #fff; }

.agc-hero3__arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  z-index: 4;
  width: 52px; height: 52px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.35);
  background: rgba(17,40,27,0.25);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  color: #fff; font-size: 1.6rem; line-height: 1;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background 180ms, border-color 180ms;
}
.agc-hero3__arrow:hover { background: var(--agc-orange); border-color: var(--agc-orange); }
.agc-hero3__arrow--prev { left: 1.5rem; }
.agc-hero3__arrow--next { right: 1.5rem; }
@media (max-width: 720px){ .agc-hero3__arrow { display: none; } }

.agc-hero3__dots {
  position: absolute; z-index: 4;
  bottom: 1.6rem; left: 50%; transform: translateX(-50%);
  display: flex; gap: 0.6rem;
}
.agc-hero3__dot {
  width: 36px; height: 4px; border-radius: 2px;
  border: 0; padding: 0; cursor: pointer;
  background: rgba(255,255,255,0.35);
  transition: background 220ms, width 220ms;
}
.agc-hero3__dot.is-active { background: var(--agc-orange); width: 52px; }

/* ---- REFINED CHECKLISTS (no ✓ glyph) ---- */
.agc-checks li::before { content: none !important; }
.agc-checks {
  display: grid;
  gap: 0;
}
.agc-checks li {
  position: relative;
  padding: 0.85rem 0 0.85rem 1.5rem;
  line-height: 1.55;
  border-bottom: 1px solid var(--agc-line);
}
.agc-checks li::after {
  content: '';
  position: absolute; left: 0; top: 1.25rem;
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--agc-orange);
}
.agc-checks--light li::after { background: var(--agc-orange); }

/* ---- COMPARISON TABLE (color pills, no ✓/✕) ---- */
.agc-compare { border: 1px solid var(--agc-line); border-radius: 14px; overflow: hidden; box-shadow: 0 1px 0 rgba(0,0,0,0.02); }
.agc-compare thead th { background: var(--agc-ink); }
.agc-compare th:first-child, .agc-compare td:first-child { font-weight: 600; color: var(--agc-ink); }
.agc-compare td.y, .agc-compare td.n { font-weight: 500; }
.agc-compare td.y::before, .agc-compare td.n::before { content: none !important; }
.agc-compare td.y {
  color: #15724c;
}
.agc-compare td.y { position: relative; padding-left: 2.4rem; }
.agc-compare td.y::after {
  content: ''; position: absolute; left: 1.1rem; top: 50%; transform: translateY(-50%);
  width: 8px; height: 8px; border-radius: 50%; background: #1F8A5B;
  box-shadow: 0 0 0 4px rgba(31,138,91,0.14);
}
.agc-compare td.n { color: var(--agc-muted); position: relative; padding-left: 2.4rem; }
.agc-compare td.n::after {
  content: ''; position: absolute; left: 1.1rem; top: 50%; transform: translateY(-50%);
  width: 10px; height: 2px; border-radius: 2px; background: #C2453A;
}

/* ---- PREMIUM POLISH: spacing, cards, shadows ---- */
.agc-sec { padding: clamp(4rem, 8vw, 7rem) 0; }
.agc-h2c { margin-bottom: 2.8rem; }

.agc-range__card { border-radius: 14px; border-color: rgba(17,40,27,0.07); }
.agc-range__card:hover { box-shadow: 0 22px 48px -18px rgba(17,40,27,0.28); }
.agc-range__label { font-family: 'Inter',sans-serif; font-weight: 600; letter-spacing: 0.02em; text-transform: none; font-size: 1.1rem; padding: 1.2rem; }

.agc-split__img { border-radius: 16px; box-shadow: 0 30px 60px -30px rgba(17,40,27,0.35); }
.agc-split__copy h2 { font-size: clamp(1.7rem, 3vw, 2.4rem) !important; }

.agc-colors { background: var(--agc-paper-warm); border-top: 1px solid var(--agc-line); border-bottom: 1px solid var(--agc-line); }
.agc-sw { width: 26px; height: 26px; transition: transform 160ms; }
.agc-sw:hover { transform: scale(1.18); }

.agc-quote__form { border-radius: 16px; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.agc-faq__item { border-radius: 12px; border-color: rgba(17,40,27,0.08); transition: box-shadow 180ms; }
.agc-faq__item[open] { box-shadow: 0 14px 30px -16px rgba(17,40,27,0.18); }

/* Reveal-on-scroll */
[data-agc-reveal] { opacity: 0; transform: translateY(22px); transition: opacity 700ms ease, transform 700ms ease; }
[data-agc-reveal].is-in { opacity: 1; transform: none; }

/* Buttons: refine radius + weight site-wide */
.agc-btn { border-radius: 6px; font-weight: 600; letter-spacing: 0.06em; }

/* =========================================================
   FRONT PAGE — make hero flush (hide Blocksy page title + top gap)
   ========================================================= */
.home .entry-header,
.home .page-title,
.page-id-12 .entry-header,
.page-id-12 .hero-section[data-type] { display: none !important; }

.home #main > .ct-container-full,
.home .entry-content { padding-top: 0 !important; margin-top: 0 !important; }
.home .entry-content > .agc-hero3:first-child { margin-top: 0 !important; }

/* let hero + sections break out of Blocksy's content max-width */
.home .entry-content { max-width: 100% !important; }
.home .agc-hero3,
.home .agc-colors,
.home .agc-split--dark,
.home .agc-quote { width: 100%; }

/* =========================================================
   HERO v5 — per-slide content (image + text crossfade together)
   ========================================================= */
.agc-hero3__slide {
  position: absolute; inset: 0;
  display: flex; align-items: flex-end;
  opacity: 0; pointer-events: none;
  transition: opacity 1100ms ease;
}
.agc-hero3__slide.is-active { opacity: 1; pointer-events: auto; }
.agc-hero3__bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.08);
  transition: transform 7000ms ease;
}
.agc-hero3__slide.is-active .agc-hero3__bg { transform: scale(1); }
.agc-hero3__slide .agc-hero3__scrim { position: absolute; inset: 0; }
.agc-hero3__slide .agc-hero3__content {
  transform: translateY(18px);
  transition: transform 900ms ease 120ms, opacity 900ms ease 120ms;
  opacity: 0;
}
.agc-hero3__slide.is-active .agc-hero3__content { transform: none; opacity: 1; }

/* =========================================================
   PREMIUM PASS — Shop archive + Single product
   (matches home: Fraunces headings, hairlines, soft shadows)
   ========================================================= */

/* ---- Serif display on key headings ---- */
.woocommerce-products-header__title,
.tax-product_cat .page-title,
.single-product .product_title,
.single-product .agc-params h2,
.single-product .agc-related > h2,
.woocommerce-Tabs-panel h2,
.single-product .woocommerce-tabs .panel h2 {
  font-family: 'Fraunces', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
}

/* ---- SHOP header ---- */
.woocommerce-products-header,
.tax-product_cat .woocommerce-products-header {
  text-align: center;
  padding: clamp(2.5rem, 5vw, 4rem) 1.5rem clamp(1.5rem,3vw,2.5rem) !important;
}
.woocommerce-products-header__title,
.tax-product_cat .page-title {
  font-size: clamp(2.2rem, 4vw, 3.2rem) !important;
  --theme-font-size: clamp(2.2rem,4vw,3.2rem) !important;
}
.term-description, .woocommerce-archive-description p {
  max-width: 60ch; margin: 0.8rem auto 0; color: var(--agc-muted); line-height: 1.7;
}

/* result count + ordering bar — refined */
.woo-listing-top, .agc-shop-results .woocommerce-result-count + .woocommerce-ordering,
.woocommerce-result-count, .woocommerce-ordering {
  font-size: 0.82rem !important;
}
.woocommerce-result-count { color: var(--agc-muted) !important; text-transform: none !important; letter-spacing: 0.02em !important; }
.woocommerce .woocommerce-ordering select {
  border-radius: 8px !important; border-color: rgba(17,40,27,0.12) !important;
  padding: 0.7rem 2rem 0.7rem 1rem !important; font-weight: 500;
}

/* ---- PRODUCT CARDS — refined ---- */
.woocommerce ul.products li.product {
  border-radius: 16px !important;
  border-color: rgba(17,40,27,0.07) !important;
  box-shadow: 0 1px 2px rgba(17,40,27,0.03);
  transition: transform 260ms cubic-bezier(.2,.7,.2,1), box-shadow 260ms ease, border-color 260ms ease !important;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 28px 50px -24px rgba(17,40,27,0.30) !important;
  border-color: rgba(17,40,27,0.10) !important;
}
.woocommerce ul.products li.product img { aspect-ratio: 4/3; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  font-size: 0.96rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: -0.005em !important;
  padding: 1.1rem 1.2rem 0.2rem !important;
  min-height: 3.3em;
  color: var(--agc-ink) !important;
}
.woocommerce ul.products li.product .price {
  padding: 0 1.2rem !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em;
}
.woocommerce ul.products li.product .price ins { color: var(--agc-orange) !important; }
.woocommerce ul.products li.product .price del { font-size: 0.85rem; }

/* Card button: refined — ghost that fills orange on hover */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.added_to_cart {
  margin: 0.9rem 1.2rem 1.2rem !important;
  width: calc(100% - 2.4rem) !important;
  background: var(--agc-ink) !important;
  border-radius: 8px !important;
  font-size: 0.74rem !important;
  letter-spacing: 0.12em !important;
  padding: 0.85rem 1rem !important;
  transition: background 180ms ease !important;
}
.woocommerce ul.products li.product .button:hover { background: var(--agc-orange) !important; }

.woocommerce span.onsale {
  border-radius: 6px !important;
  padding: 0.4rem 0.65rem !important;
  font-size: 0.65rem !important;
  box-shadow: 0 4px 12px rgba(62,142,53,0.35);
}

/* ---- FILTER SIDEBAR — refined ---- */
.agc-filter {
  border-radius: 16px !important;
  border-color: rgba(17,40,27,0.07) !important;
  box-shadow: 0 1px 2px rgba(17,40,27,0.03);
  padding: 1.6rem !important;
}
.agc-filter h4 { color: var(--agc-ink); }
.agc-filter input[type=search], .agc-filter input[type=number] { border-radius: 8px !important; }
.agc-filter__submit, .agc-filter__reset { border-radius: 8px !important; }

/* ---- SINGLE PRODUCT — premium spacing + spec card ---- */
.single-product .product_title { font-size: clamp(1.8rem, 2.8vw, 2.5rem) !important; line-height: 1.12 !important; }
.single-product .agc-spec-card { border-radius: 12px !important; padding: 1.25rem 1.4rem !important; background: linear-gradient(180deg,#F7FAF5,#EDF3EA) !important; }
.single-product .summary .price { font-size: 2rem !important; }
.single-product .summary form.cart button.single_add_to_cart_button { border-radius: 8px !important; }
.single-product .agc-btn--enquire { border-radius: 8px !important; }

/* Tabs — refined underline */
.single-product .woocommerce-tabs ul.tabs li a { font-size: 0.78rem !important; letter-spacing: 0.1em; }
.single-product .agc-params__table { border-radius: 14px !important; }
.single-product .agc-params h2, .single-product .agc-related > h2 { font-size: clamp(1.5rem,2.4vw,1.9rem) !important; }

/* Gallery — softer frame */
.single-product .woocommerce-product-gallery .ct-media-container img { border-radius: 14px !important; }

/* =========================================================
   MOBILE OFF-CANVAS MENU — fix dark-on-dark links
   ========================================================= */
#offcanvas .ct-menu-link,
.ct-panel .mobile-menu .ct-menu-link,
[data-id="mobile-menu"] .ct-menu-link,
#offcanvas .menu-item > a {
  color: #fff !important;
  letter-spacing: 0.06em !important;
}
#offcanvas .menu-item:hover > .ct-menu-link,
#offcanvas .current-menu-item > .ct-menu-link,
#offcanvas .current-menu-ancestor > .ct-menu-link {
  color: var(--agc-orange) !important;
}
/* kill the desktop underline animation inside the panel */
#offcanvas .ct-menu-link::after { display: none !important; }

/* tidy item rows + dividers on the dark panel */
#offcanvas .menu-item {
  border-bottom: 1px solid rgba(255,255,255,0.10) !important;
}
#offcanvas .menu-item .ct-menu-link {
  padding: 1.05rem 0.2rem !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
}

/* Enquire Now CTA in the panel — full orange pill */
#offcanvas .menu-item.agc-nav-cta { border-bottom: 0 !important; }
#offcanvas .menu-item.agc-nav-cta > .ct-menu-link {
  background: var(--agc-orange) !important;
  color: #fff !important;
  border-radius: 8px !important;
  text-align: center;
  justify-content: center;
  margin: 1rem 0 0 !important;
  padding: 1rem !important;
}
#offcanvas .menu-item.agc-nav-cta:hover > .ct-menu-link { background: var(--agc-orange-hover) !important; }

/* submenu links lighter */
#offcanvas .sub-menu .ct-menu-link { color: rgba(255,255,255,0.7) !important; }

/* close button + triggers visible */
#offcanvas .ct-toggle-close, .ct-header-trigger[aria-expanded="true"] { color: #fff !important; }

/* search icon / cart in mobile header stay dark on white bar */
@media (max-width: 999px){
  .ct-header [data-id="trigger"] { color: var(--agc-ink) !important; }
}

/* =========================================================
   MOBILE FIX — product wrapper must stack (specificity-matched)
   ========================================================= */
@media (max-width: 980px) {
  .single-product .product-entry-wrapper,
  .single-product .product-entry-wrapper.is-width-constrained {
    display: block !important;
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
    padding: 0 1.1rem !important;
  }
  .single-product .woocommerce-product-gallery,
  .single-product .entry-summary,
  .single-product .summary {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 1.5rem !important;
  }
  .single-product div.product.type-product { padding: 0 !important; }
  .single-product .product_title { font-size: 1.5rem !important; }
  .single-product .summary .price { font-size: 1.6rem !important; }
  /* gallery thumbs stay in a tidy row */
  .single-product .flexy-pills ol,
  .single-product .flex-control-thumbs { grid-template-columns: repeat(5,1fr) !important; }
}

@media (max-width: 600px) {
  .single-product .agc-related__grid,
  .single-product .agc-related .agc-related__grid { grid-template-columns: 1fr 1fr !important; }
  .agc-params__table th { width: 42% !important; font-size: 0.72rem !important; }
  .agc-params__table th, .agc-params__table td { padding: 0.7rem 0.8rem !important; font-size: 0.88rem !important; }
  .single-product .woocommerce-tabs ul.tabs { flex-wrap: wrap; gap: 0.4rem; }
}

/* prevent any horizontal overflow site-wide on mobile */
@media (max-width: 980px){
  html, body { overflow-x: hidden; }
  .agc-params, .agc-related, .single-product .woocommerce-tabs { max-width: 100% !important; padding-left: 1.1rem !important; padding-right: 1.1rem !important; }
}

/* =========================================================
   Hide Blocksy's default related block — we render our own
   (.agc-related). Kills the duplicate + the 4-col mobile strip.
   ========================================================= */
.single-product .related.products,
.single-product .up-sells.products { display: none !important; }

/* =========================================================
   SHOP FILTER — collapsed by default on mobile, always open desktop
   ========================================================= */
/* Desktop: always show the filter (ignore the hidden attr), hide the toggle */
@media (min-width: 901px){
  .agc-filter-wrap .agc-filter[hidden] { display: block !important; }
  .agc-filter__toggle { display: none !important; }
}
/* Mobile: toggle visible; filter uses [hidden] attr to collapse */
@media (max-width: 900px){
  .agc-filter__toggle {
    display: block !important;
    width: 100%;
    background: var(--agc-ink);
    color: #fff;
    border: 0;
    border-radius: 10px;
    padding: 0.9rem 1rem;
    font-weight: 600;
    font-size: 0.8rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    cursor: pointer;
    margin-bottom: 1rem;
  }
  .agc-filter-wrap .agc-filter { position: static !important; max-height: none !important; }
  .agc-shop-grid { grid-template-columns: 1fr !important; }
}

/* =========================================================
   LOGO — header sizing + white footer knockout
   ========================================================= */
/* Header logo: cap height, crisp */
.ct-header [data-id="logo"] img,
.ct-logo-container img,
.site-logo-container img { max-height: 56px !important; width: auto !important; }
@media (max-width: 999px){
  .ct-header [data-id="logo"] img, .site-logo-container img { max-height: 44px !important; }
}

/* Footer logo: knock the dark-green logo out to white on the dark footer */
.agc-footer__logo img {
  max-width: 190px;
  height: auto;
  display: block;
  margin-bottom: 1.1rem;
  filter: brightness(0) invert(1);   /* logo -> white */
  opacity: 0.95;
}
.agc-footer__logo--text { /* fallback only */ }

/* Logo is a full lockup (includes the wordmark) — hide Blocksy's separate site title */
.ct-header [data-id="logo"] .site-title,
.ct-header .site-logo-container + .site-title,
.ct-header [data-id="logo"] .site-description { display: none !important; }
/* a touch larger header logo */
.ct-header [data-id="logo"] img, .site-logo-container img { max-height: 62px !important; }
@media (max-width:999px){ .ct-header [data-id="logo"] img, .site-logo-container img { max-height: 46px !important; } }

/* =========================================================
   WPForms — match brand
   ========================================================= */
.wpforms-container .wpforms-field-label { font-weight:600 !important; font-size:0.9rem !important; color:var(--agc-ink) !important; }
.wpforms-container input[type=text],
.wpforms-container input[type=email],
.wpforms-container input[type=tel],
.wpforms-container textarea {
  border:1px solid var(--agc-line) !important;
  border-radius:8px !important;
  padding:0.85rem 1rem !important;
  font-family:inherit !important; font-size:0.95rem !important;
  background:#fff !important;
}
.wpforms-container input:focus, .wpforms-container textarea:focus { border-color:var(--agc-green-leaf,#3E8E35) !important; outline:none !important; box-shadow:0 0 0 3px rgba(62,142,53,0.12) !important; }
.wpforms-container button[type=submit],
.wpforms-submit {
  background:var(--agc-green-leaf,#3E8E35) !important;
  color:#fff !important; border:0 !important; border-radius:8px !important;
  padding:0.95rem 1.8rem !important; font-weight:600 !important;
  letter-spacing:0.06em !important; text-transform:uppercase !important;
  font-size:0.82rem !important; cursor:pointer !important;
  transition:background 180ms !important;
}
.wpforms-container button[type=submit]:hover, .wpforms-submit:hover { background:var(--agc-orange-hover,#2E6E27) !important; }
.wpforms-confirmation-container-full { background:rgba(62,142,53,0.08) !important; border-left:3px solid var(--agc-green-leaf,#3E8E35) !important; border-radius:8px; padding:1.2rem 1.4rem; }

/* =========================================================
   HOME v4 — InGolf-style sections (green brand)
   ========================================================= */
.agc-sec__head { text-align:center; margin:0 0 2.4rem; }
.agc-sec__sub { color:var(--agc-muted); margin:0.4rem 0 0; font-size:1rem; }

/* Product cards (specs + swatches + dual CTA) */
.agc-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem; }
@media (max-width:980px){ .agc-cards{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .agc-cards{ grid-template-columns:1fr; } }
.agc-card { background:#fff; border:1px solid var(--agc-line); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; transition:transform .22s, box-shadow .22s; }
.agc-card:hover { transform:translateY(-5px); box-shadow:0 26px 50px -24px rgba(17,40,27,.28); }
.agc-card__media { position:relative; display:block; aspect-ratio:4/3; overflow:hidden; background:var(--agc-paper-warm); }
.agc-card__media img { width:100%; height:100%; object-fit:cover; }
.agc-card__flag { position:absolute; top:12px; left:12px; background:var(--agc-orange); color:#fff; font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:.32rem .6rem; border-radius:5px; }
.agc-card__body { padding:1.1rem 1.2rem 1.3rem; display:flex; flex-direction:column; gap:.6rem; flex:1; }
.agc-card__title { font-size:1rem; font-weight:600; line-height:1.35; margin:0; }
.agc-card__title a { color:var(--agc-ink); text-decoration:none; }
.agc-card__specs { display:flex; gap:1rem; font-size:.82rem; color:var(--agc-muted); }
.agc-card__swatches { display:flex; gap:.35rem; }
.agc-card__swatches span { width:16px; height:16px; border-radius:50%; background:var(--c); box-shadow:0 0 0 1px rgba(0,0,0,.12) inset; }
.agc-card__price { font-size:1.2rem; font-weight:800; color:var(--agc-ink); margin-top:auto; }
.agc-card__price del { color:var(--agc-muted); font-weight:400; opacity:.6; font-size:.85rem; margin-right:.4rem; }
.agc-card__price ins { text-decoration:none; color:var(--agc-orange); }
.agc-card__actions { display:grid; grid-template-columns:1fr 1fr; gap:.5rem; margin-top:.3rem; }
.agc-card__cta, .agc-card__view { padding:.7rem .4rem !important; font-size:.72rem !important; text-align:center; }

/* Australia coverage map */
.agc-map { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
@media (max-width:900px){ .agc-map{ grid-template-columns:1fr; } }
.agc-map__copy h2 { font-size:clamp(1.6rem,2.8vw,2.3rem); line-height:1.2; margin:.5rem 0 1rem; font-family:'Fraunces',Georgia,serif; font-weight:600; }
.agc-map__copy h2 em { color:var(--agc-orange); font-style:normal; }
.agc-map__copy p { color:var(--agc-muted); line-height:1.7; margin:0 0 1.5rem; max-width:46ch; }
.agc-map__viz svg { width:100%; height:auto; filter:drop-shadow(0 18px 30px rgba(17,40,27,.15)); }
.agc-map__viz circle { animation:agcpulse 2.6s ease-in-out infinite; }
@keyframes agcpulse { 0%,100%{ opacity:.55 } 50%{ opacity:1 } }

/* Built for adventure — numbered steps */
.agc-steps__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem; }
@media (max-width:860px){ .agc-steps__grid{ grid-template-columns:1fr; } }
.agc-step { position:relative; background:#fff; border:1px solid var(--agc-line); border-radius:16px; padding:2.2rem 1.6rem 1.6rem; overflow:hidden; }
.agc-step__n { position:absolute; top:-.4rem; right:.6rem; font-family:'Fraunces',serif; font-size:4.5rem; font-weight:600; color:var(--agc-paper-warm); line-height:1; z-index:0; }
.agc-step h3 { position:relative; z-index:1; font-size:1.15rem; margin:0 0 .5rem; }
.agc-step p { position:relative; z-index:1; color:var(--agc-muted); line-height:1.6; margin:0; font-size:.92rem; }

/* Why band */
.agc-whyband { background-size:cover; background-position:center; color:#fff; padding:clamp(3rem,6vw,5rem) 1.5rem; }
.agc-whyband__inner { display:grid; grid-template-columns:1.3fr .7fr; gap:3rem; align-items:center; }
@media (max-width:900px){ .agc-whyband__inner{ grid-template-columns:1fr; } }
.agc-whyband__copy h2 { color:#fff; font-family:'Fraunces',serif; font-weight:600; font-size:clamp(1.6rem,2.8vw,2.3rem); margin:.5rem 0 1.2rem; }
.agc-whyband__badge { display:flex; align-items:center; justify-content:center; text-align:center; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.35); backdrop-filter:blur(8px); color:#fff; text-decoration:none; padding:1.4rem; border-radius:14px; font-weight:600; line-height:1.5; transition:background .18s; }
.agc-whyband__badge:hover { background:var(--agc-orange); border-color:var(--agc-orange); }

/* Testimonials */
.agc-quotes { display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; }
@media (max-width:860px){ .agc-quotes{ grid-template-columns:1fr; } }
.agc-q { margin:0; background:#fff; border:1px solid var(--agc-line); border-radius:14px; padding:1.6rem; }
.agc-q blockquote { margin:0 0 1rem; font-size:.98rem; line-height:1.65; color:var(--agc-ink); }
.agc-q figcaption { font-size:.82rem; font-weight:600; color:var(--agc-muted); }

/* Not sure band */
.agc-notsure { background:var(--agc-ink-soft); color:#fff; padding:clamp(2.5rem,5vw,4rem) 1.5rem; }
.agc-notsure__inner { display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap; }
.agc-notsure h2 { color:#fff; font-family:'Fraunces',serif; font-weight:600; font-size:clamp(1.5rem,2.6vw,2.1rem); margin:0 0 .4rem; }
.agc-notsure p { color:rgba(255,255,255,.8); margin:0; }

/* =========================================================
   Australia map — refined pin markers
   ========================================================= */
.agc-map__viz svg { width:100%; height:auto; max-width:560px; margin:0 auto; display:block; overflow:visible; }
.agc-map__pins text { fill:var(--agc-orange,#3E8E35); font-size:15px; font-weight:700; }
.agc-pin__dot { fill:var(--agc-orange,#3E8E35); }
.agc-pin__ring { fill:var(--agc-orange,#3E8E35); opacity:.22; transform-box:fill-box; transform-origin:center; animation:agcPing 2.4s ease-out infinite; }
.agc-pin:nth-child(2) .agc-pin__ring{ animation-delay:.3s }
.agc-pin:nth-child(3) .agc-pin__ring{ animation-delay:.6s }
.agc-pin:nth-child(4) .agc-pin__ring{ animation-delay:.9s }
.agc-pin:nth-child(5) .agc-pin__ring{ animation-delay:1.2s }
.agc-pin:nth-child(6) .agc-pin__ring{ animation-delay:1.5s }
.agc-pin:nth-child(7) .agc-pin__ring{ animation-delay:1.8s }
@keyframes agcPing { 0%{ transform:scale(.5); opacity:.5 } 70%,100%{ transform:scale(1.5); opacity:0 } }
@media (prefers-reduced-motion: reduce){ .agc-pin__ring{ animation:none; opacity:.3 } }

/* =========================================================
   BLOG POST — readable, rich article styling
   ========================================================= */
.single-post .entry-content { font-size:1.06rem; line-height:1.75; color:var(--agc-ink,#11281B); }
.single-post .entry-content h2 { font-family:'Fraunces',Georgia,serif; font-weight:600; font-size:clamp(1.5rem,2.4vw,1.9rem); margin:2.4rem 0 1rem; letter-spacing:-0.01em; }
.single-post .entry-content h3 { font-weight:700; font-size:1.2rem; margin:1.8rem 0 .6rem; }
.single-post .entry-content p { margin:0 0 1.1rem; }
.single-post .entry-content ul, .single-post .entry-content ol { margin:0 0 1.3rem 1.2rem; line-height:1.7; }
.single-post .entry-content li { margin:.4rem 0; }
.single-post .entry-content a { color:var(--agc-orange,#3E8E35); text-decoration:underline; text-underline-offset:2px; }
.single-post .entry-content a:hover { color:var(--agc-orange-hover,#2E6E27); }
.single-post .entry-content table { width:100%; border-collapse:collapse; margin:1.4rem 0; border:1px solid var(--agc-line); border-radius:10px; overflow:hidden; font-size:.96rem; }
.single-post .entry-content th, .single-post .entry-content td { padding:.75rem .9rem; text-align:left; border-bottom:1px solid var(--agc-line); }
.single-post .entry-content thead th { background:var(--agc-ink,#11281B); color:#fff; font-size:.82rem; text-transform:uppercase; letter-spacing:.04em; }
.single-post .entry-content tbody tr:nth-child(even){ background:var(--agc-paper-warm,#F2F6F0); }
.single-post .entry-content blockquote { border-left:4px solid var(--agc-orange,#3E8E35); background:var(--agc-paper-warm,#F2F6F0); margin:1.6rem 0; padding:1rem 1.3rem; border-radius:0 8px 8px 0; font-size:.95rem; color:var(--agc-muted,#6E7B72); }
.agc-post__fig { margin:1.8rem 0 .5rem; }
.agc-post__fig img { width:100%; height:auto; border-radius:14px; border:1px solid var(--agc-line); }
.agc-post__cap { text-align:center; color:var(--agc-muted); font-size:.85rem; margin:0 0 1.6rem; }

/* Author box */
.agc-authorbox { display:flex; gap:1rem; align-items:flex-start; margin:2.5rem 0 1rem; padding:1.4rem 1.5rem; background:var(--agc-paper-warm,#F2F6F0); border:1px solid var(--agc-line); border-radius:14px; }
.agc-authorbox__body strong { display:block; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--agc-muted); margin-bottom:.4rem; }
.agc-authorbox__body p { margin:0; font-size:.95rem; line-height:1.6; }
.agc-authorbox a { color:var(--agc-orange,#3E8E35); font-weight:600; }

/* FAQ items inside posts reuse .agc-faq__item (already styled) */
.single-post .agc-faq__item { margin-bottom:.7rem; }

/* ---- Guide cards (home "Latest guides" section + reusable) ---- */
.agc-guides { display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; }
@media (max-width:900px){ .agc-guides { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .agc-guides { grid-template-columns:1fr; } }
.agc-guidecard { border:1px solid var(--agc-line,#e5e7e0); border-radius:14px; overflow:hidden; background:#fff; display:flex; flex-direction:column; transition:box-shadow .2s ease, transform .2s ease; }
.agc-guidecard:hover { box-shadow:0 12px 30px rgba(17,40,27,.10); transform:translateY(-3px); }
.agc-guidecard__media { display:block; aspect-ratio:16/10; overflow:hidden; background:#f2f3ef; }
.agc-guidecard__media img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.agc-guidecard:hover .agc-guidecard__media img { transform:scale(1.05); }
.agc-guidecard__body { padding:1.05rem 1.2rem 1.3rem; display:flex; flex-direction:column; gap:.5rem; flex:1; }
.agc-guidecard__cat { font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:var(--agc-orange,#3E8E35); font-weight:700; }
.agc-guidecard h3 { font-size:1.06rem; margin:0; line-height:1.32; }
.agc-guidecard h3 a { color:#11281B; text-decoration:none; }
.agc-guidecard h3 a:hover { color:var(--agc-orange,#3E8E35); }
.agc-guidecard p { margin:0; color:var(--agc-muted,#5b6b60); font-size:.9rem; line-height:1.5; }
.agc-guidecard__more { margin-top:auto; font-weight:600; color:var(--agc-orange,#3E8E35); font-size:.9rem; text-decoration:none; }

/* ===================================================================
   HOME v5 — premium eye-catching layout
   =================================================================== */
.agc-eyebrow--gold { color:var(--agc-gold,#C9A24B); letter-spacing:.18em; text-transform:uppercase; font-size:.78rem; font-weight:700; display:inline-block; }
.agc-sec__eyebrow { color:var(--agc-orange,#3E8E35); letter-spacing:.16em; text-transform:uppercase; font-size:.78rem; font-weight:700; display:block; margin-bottom:.5rem; }

/* --- Hero --- */
.agc-hero5 { position:relative; min-height:min(88vh,760px); display:flex; align-items:center; overflow:hidden; background:#0b1c12; }
.agc-hero5__bg { position:absolute; inset:0; background-size:cover; background-position:center; will-change:transform; animation:agcHeroZoom 22s ease-out infinite alternate; }
@keyframes agcHeroZoom { from{ transform:scale(1.04); } to{ transform:scale(1.14); } }
@media (prefers-reduced-motion: reduce){ .agc-hero5__bg{ animation:none; } }
.agc-hero5__scrim { position:absolute; inset:0; background:linear-gradient(90deg, rgba(9,25,16,.94) 0%, rgba(9,25,16,.72) 44%, rgba(9,25,16,.30) 100%); }
.agc-hero5__inner { position:relative; z-index:2; width:100%; max-width:1200px; margin:0 auto; padding:clamp(3rem,7vw,5.5rem) clamp(1.2rem,4vw,2.5rem); }
.agc-hero5__content { max-width:660px; }
.agc-hero5 h1 { color:#fff; font-size:clamp(2.4rem,5.6vw,4.3rem); line-height:1.03; font-weight:800; letter-spacing:-.015em; margin:.7rem 0 1.1rem; }
.agc-hero5 h1 em { color:var(--agc-gold,#C9A24B); font-style:normal; }
.agc-hero5__sub { color:rgba(255,255,255,.88); font-size:clamp(1.05rem,1.6vw,1.28rem); line-height:1.6; max-width:560px; margin:0 0 1.9rem; }
.agc-hero5__cta { display:flex; gap:.8rem; flex-wrap:wrap; }
.agc-hero5__trust { margin-top:2.6rem; display:flex; gap:1.4rem 2.4rem; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.18); padding-top:1.5rem; }
.agc-hero5__trust span { color:#fff; font-size:.92rem; font-weight:500; display:flex; align-items:center; gap:.5rem; }
.agc-hero5__trust b { color:var(--agc-gold,#C9A24B); font-weight:800; }
.agc-hero5__trust svg { width:20px; height:20px; color:var(--agc-green-leaf,#3E8E35); flex:none; }

/* --- USP strip --- */
.agc-usps { background:var(--agc-paper-warm,#F2F6F0); border-bottom:1px solid var(--agc-line); }
.agc-usps__grid { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem; padding:1.8rem clamp(1.2rem,4vw,2.5rem); }
.agc-usp { display:flex; align-items:center; gap:.85rem; }
.agc-usp svg { width:32px; height:32px; flex:none; color:var(--agc-orange,#3E8E35); }
.agc-usp b { display:block; color:var(--agc-ink,#11281B); font-size:.98rem; line-height:1.2; }
.agc-usp small { color:var(--agc-muted); font-size:.82rem; }
@media (max-width:820px){ .agc-usps__grid{ grid-template-columns:repeat(2,1fr); gap:1.2rem; } }
@media (max-width:470px){ .agc-usps__grid{ grid-template-columns:1fr; } }

/* --- Use-case cards --- */
.agc-usecases { display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem; }
@media (max-width:900px){ .agc-usecases{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .agc-usecases{ grid-template-columns:1fr; } }
.agc-usecase { display:flex; flex-direction:column; border-radius:16px; overflow:hidden; background:#fff; border:1px solid var(--agc-line); text-decoration:none; transition:transform .2s ease, box-shadow .2s ease; }
.agc-usecase:hover { transform:translateY(-4px); box-shadow:0 16px 40px rgba(17,40,27,.13); }
.agc-usecase__media { aspect-ratio:4/3; overflow:hidden; background:#eef1ec; }
.agc-usecase__media img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.agc-usecase:hover .agc-usecase__media img { transform:scale(1.06); }
.agc-usecase__body { padding:1.15rem 1.3rem 1.4rem; display:flex; flex-direction:column; gap:.5rem; flex:1; }
.agc-usecase__body h3 { margin:0; color:var(--agc-ink,#11281B); font-size:1.15rem; }
.agc-usecase__body p { margin:0; color:var(--agc-muted); font-size:.9rem; line-height:1.5; flex:1; }
.agc-usecase__more { color:var(--agc-orange,#3E8E35); font-weight:700; font-size:.9rem; }

/* --- rounded shop tiles on home (premium) --- */
.agc-tiles--round .agc-tile { border-radius:16px; }

/* --- alt section background rhythm --- */
.agc-sec--warm { background:var(--agc-paper-warm,#F2F6F0); }
.agc-finalcta { position:relative; overflow:hidden; background:linear-gradient(120deg,#11281B,#1B4029); color:#fff; text-align:center; border-radius:20px; padding:clamp(2.4rem,6vw,4rem) 1.4rem; }
.agc-finalcta h2 { color:#fff; margin:0 0 .7rem; font-size:clamp(1.6rem,3.4vw,2.4rem); }
.agc-finalcta p { color:rgba(255,255,255,.82); max-width:560px; margin:0 auto 1.6rem; }

/* --- Home v5 mobile hardening --- */
@media (max-width:560px){
  .agc-hero5 { min-height:auto; }
  .agc-hero5__inner { padding:2.6rem 1.25rem 2.9rem; }
  .agc-hero5__content { max-width:100%; }
  .agc-hero5 h1 { font-size:2.15rem; line-height:1.1; margin:.6rem 0 .9rem; overflow-wrap:break-word; }
  .agc-hero5__sub { font-size:1rem; max-width:100%; }
  .agc-hero5__cta { flex-direction:column; align-items:stretch; }
  .agc-hero5__cta .agc-btn { width:100%; text-align:center; }
  .agc-hero5__trust { gap:.65rem 1.4rem; margin-top:2rem; padding-top:1.2rem; }
  .agc-hero5__trust span { font-size:.86rem; }
}
