/*
 * EMOTIVE Stabilizer v8
 * Purpose: remove dark-theme regressions while preserving the approved v5/v5.1 homepage.
 * Loaded last. Intentionally narrow: no broad descendant colour overrides.
 */

:root {
  --ev8-bg: #F3EDE3;
  --ev8-bg-soft: #E9DDCC;
  --ev8-ink: #090909;
  --ev8-brown: #2A1B14;
  --ev8-muted: #65584F;
  --ev8-line: #D6C9B8;
  --ev8-white: #FFFFFF;
  --ev8-coral: #C95E3D;
  --ev8-font: "Cormorant Garamond", Georgia, "Times New Roman", serif;
}

/* ---------- ONE TYPE FAMILY ---------- */
html, body,
button, input, select, textarea,
.emotive-site-header,
.emotive-site-footer,
.emotive-footer,
main,
.woocommerce,
.woocommerce-page {
  font-family: var(--ev8-font) !important;
}

h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,label,small,strong,em,
.wp-block-heading,
.product_title,
.woocommerce-loop-product__title,
.woocommerce-products-header__title,
.emotive-brand-wordmark,
.emotive-brand-tagline {
  font-family: var(--ev8-font) !important;
}

/* ---------- STAGING NOTICE ---------- */
.emotive-staging-commerce-notice {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 9px 20px !important;
  background: var(--ev8-coral) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-align: center !important;
  font-family: var(--ev8-font) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: .01em !important;
}

/* ---------- LIGHT CANVAS ---------- */
html,
body,
.wp-site-blocks,
main,
.site-main,
body.page,
body.archive,
body.single,
body.blog,
body.search,
body.single-product,
body.woocommerce-page {
  background: var(--ev8-bg) !important;
  background-color: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
}

.entry-content,
.wp-block-post-content,
.wp-block-group,
.woocommerce,
.woocommerce-page main,
.single-product main {
  background-color: transparent !important;
}

/* ---------- HEADER: FORCE THE INTENDED 3-COLUMN GEOMETRY ---------- */
.emotive-site-header,
body.home .emotive-site-header {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  background: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 1000 !important;
}

.emotive-header-main,
body.home .emotive-header-main {
  min-height: 96px !important;
  background: transparent !important;
  border: 0 !important;
}

.emotive-header-inner,
body.home .emotive-header-inner {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important;
  align-items: center !important;
  width: min(1480px, calc(100vw - 96px)) !important;
  min-height: 96px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.emotive-main-nav,
body.home .emotive-main-nav {
  position: static !important;
  grid-column: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: clamp(22px, 2.5vw, 42px) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.emotive-main-nav > a,
.emotive-main-nav > .emotive-nav-item > a,
.emotive-main-nav .emotive-home-nav-link {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  font-family: var(--ev8-font) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.72), 0 -1px 0 rgba(0,0,0,.16) !important;
  white-space: nowrap !important;
}

.emotive-brand-lockup,
body.home .emotive-brand-lockup {
  position: static !important;
  grid-column: 2 !important;
  align-self: center !important;
  justify-self: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  text-decoration: none !important;
}

.emotive-brand-wordmark {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  font-family: var(--ev8-font) !important;
  font-size: 31px !important;
  font-style: italic !important;
  font-weight: 700 !important;
  line-height: .9 !important;
  letter-spacing: -.035em !important;
}

.emotive-brand-tagline {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  font-size: 8px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .38em !important;
  white-space: nowrap !important;
}

.emotive-header-actions,
body.home .emotive-header-actions {
  position: static !important;
  grid-column: 3 !important;
  justify-self: end !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.emotive-header-icon,
body.home .emotive-header-icon {
  position: relative !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  background: transparent !important;
  border: 0 !important;
  transform: none !important;
  opacity: 1 !important;
}

.emotive-header-icon svg {
  width: 22px !important;
  height: 22px !important;
  fill: none !important;
  stroke: #000 !important;
  stroke-width: 1.45 !important;
}

.emotive-desktop-secondary-action { display: none !important; }

.emotive-cart-count {
  position: absolute !important;
  right: -7px !important;
  top: -7px !important;
  min-width: 16px !important;
  height: 16px !important;
  padding: 0 4px !important;
  border-radius: 999px !important;
  background: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: var(--ev8-font) !important;
  font-size: 9px !important;
  line-height: 16px !important;
  text-align: center !important;
}

/* Dropdowns stay light. */
.emotive-dropdown {
  background: #FFFDF9 !important;
  color: var(--ev8-ink) !important;
  border: 1px solid var(--ev8-line) !important;
  box-shadow: 0 18px 50px rgba(42,27,20,.10) !important;
}
.emotive-dropdown a,
.emotive-dropdown-title {
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
}

/* ---------- TEXT COLOUR: EXPLICIT BUT NOT OVER-BROAD ---------- */
main h1,main h2,main h3,main h4,main h5,main h6,
main p,main li,main dt,main dd,main label,
.entry-content p,.entry-content li,
.woocommerce p,.woocommerce li,.woocommerce label {
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
}

main h1,main h2,main h3,
.product_title,
.woocommerce-products-header__title {
  color: var(--ev8-brown) !important;
  -webkit-text-fill-color: var(--ev8-brown) !important;
}

/* ---------- ALL PRIMARY BUTTONS: WHITE TEXT INCLUDING CHILDREN ---------- */
.emotive-clean-button,
.wp-element-button,
a.button,
button.button,
input.button,
input[type="submit"],
.single_add_to_cart_button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: var(--ev8-brown) !important;
  border: 1px solid var(--ev8-brown) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}

.emotive-clean-button *,
.wp-element-button *,
a.button *,
button.button *,
.single_add_to_cart_button *,
.woocommerce a.button *,
.woocommerce button.button * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  fill: #fff !important;
  stroke: #fff !important;
}

.emotive-clean-button:hover,
.wp-element-button:hover,
a.button:hover,
button.button:hover,
.single_add_to_cart_button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover {
  background: #000 !important;
  border-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ---------- HOME: PRESERVE V5/V5.1 GEOMETRY, JUST LOCK COLOURS/FONT ---------- */
body.home .emotive-clean-home,
body.home .emotive-clean-hero,
body.home .emotive-clean-about,
body.home .emotive-clean-build {
  background: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
}

body.home .emotive-clean-hero h1,
body.home .emotive-clean-about h2,
body.home .emotive-clean-build h2,
body.home .emotive-clean-hero-label strong,
body.home .emotive-clean-label strong {
  font-family: var(--ev8-font) !important;
  color: var(--ev8-brown) !important;
  -webkit-text-fill-color: var(--ev8-brown) !important;
}

body.home .emotive-clean-kicker,
body.home .emotive-clean-lead,
body.home .emotive-clean-about-grid > div > p,
body.home .emotive-clean-build-lead,
body.home .emotive-clean-meta span,
body.home .emotive-clean-build-tabs span,
body.home .emotive-clean-hero-label span,
body.home .emotive-clean-label span {
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
  opacity: 1 !important;
}

body.home .emotive-clean-build h2 em {
  color: #9C684E !important;
  -webkit-text-fill-color: #9C684E !important;
}

/* ---------- STANDARD CONTENT PAGES ---------- */
body.page:not(.woocommerce-page) main,
body.blog main,
body.single-post main,
body.search main {
  background: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
}

body.page:not(.woocommerce-page) .entry-content,
body.blog .entry-content,
body.single-post .entry-content {
  background: transparent !important;
  color: var(--ev8-ink) !important;
}

/* Known pages currently contain a second H1 inside their content. Keep the content H1, hide template duplicate. */
body.page-id-96 .wp-block-post-title,
body.page-id-97 .wp-block-post-title,
body.page-id-98 .wp-block-post-title,
body.page-id-99 .wp-block-post-title,
body.page-id-100 .wp-block-post-title {
  display: none !important;
}

body.page-id-96 .entry-content,
body.page-id-97 .entry-content,
body.page-id-98 .entry-content,
body.page-id-99 .entry-content,
body.page-id-100 .entry-content {
  width: min(1120px, calc(100% - 80px)) !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 72px 0 96px !important;
}

body.page-id-96 .entry-content > h1:first-child,
body.page-id-97 .entry-content > h1:first-child,
body.page-id-98 .entry-content > h1:first-child,
body.page-id-99 .entry-content > h1:first-child,
body.page-id-100 .entry-content > h1:first-child {
  margin: 0 0 40px !important;
  font-size: clamp(56px, 6vw, 88px) !important;
  font-weight: 500 !important;
  line-height: .98 !important;
  letter-spacing: -.035em !important;
  color: var(--ev8-brown) !important;
}

body.page-id-96 .entry-content h2,
body.page-id-97 .entry-content h2,
body.page-id-98 .entry-content h2,
body.page-id-99 .entry-content h2,
body.page-id-100 .entry-content h2 {
  margin-top: 42px !important;
  color: var(--ev8-brown) !important;
  font-size: 30px !important;
  font-weight: 600 !important;
}

body.page-id-96 .entry-content p,
body.page-id-97 .entry-content p,
body.page-id-98 .entry-content p,
body.page-id-99 .entry-content p,
body.page-id-100 .entry-content p,
body.page-id-99 .entry-content li {
  color: var(--ev8-ink) !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

/* ---------- SHOP ---------- */
body.woocommerce-shop main,
body.post-type-archive-product main,
body.tax-product_cat main {
  background: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
  padding-bottom: 96px !important;
}

.woocommerce-products-header,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
  color: var(--ev8-ink) !important;
}

.woocommerce-products-header__title.page-title {
  font-size: clamp(54px, 5vw, 76px) !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  color: var(--ev8-brown) !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background: #F7F1E7 !important;
  color: var(--ev8-ink) !important;
  border: 1px solid var(--ev8-line) !important;
  box-shadow: none !important;
}

.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img {
  background: #F6F6F2 !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  color: var(--ev8-brown) !important;
  -webkit-text-fill-color: var(--ev8-brown) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
}

.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price *,
.woocommerce-page ul.products li.product .price,
.woocommerce-page ul.products li.product .price * {
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
}

.woocommerce ul.products li.product .onsale {
  background: var(--ev8-coral) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 0 !important;
}

/* Wishlist is secondary, not another black block. */
.woocommerce ul.products li.product [class*="wishlist"] button,
.woocommerce ul.products li.product [class*="wishlist"] a,
.woocommerce ul.products li.product .adfy-wl-add-to-wishlist,
.woocommerce ul.products li.product .addonify-add-to-wishlist-btn {
  background: transparent !important;
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
  border: 1px solid var(--ev8-line) !important;
}

/* ---------- PRODUCT PAGE: RETURN ORIGINAL LIGHT PDP ---------- */
body.single-product,
body.single-product .wp-site-blocks,
body.single-product main,
body.single-product .site-main,
body.single-product .woocommerce,
body.single-product .emotive-pdp,
body.single-product .emotive-pdp-shell,
body.single-product .emotive-pdp-top,
body.single-product .emotive-pdp-info,
body.single-product .emotive-pdp-buybox,
body.single-product .emotive-pdp-details,
body.single-product .emotive-pdp-related,
body.single-product .woocommerce-tabs,
body.single-product .woocommerce-Tabs-panel,
body.single-product .related {
  background: var(--ev8-bg) !important;
  background-color: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
}

body.single-product .emotive-pdp-media .woocommerce-product-gallery__wrapper,
body.single-product .emotive-pdp-media .woocommerce-product-gallery__image,
body.single-product .emotive-pdp-media .woocommerce-product-gallery__image img {
  background: #F6F6F2 !important;
}

body.single-product .emotive-pdp-title,
body.single-product .product_title,
body.single-product .emotive-pdp-about-title,
body.single-product .emotive-pdp-details h2,
body.single-product .emotive-pdp-details h3,
body.single-product .emotive-pdp-related h2 {
  color: var(--ev8-brown) !important;
  -webkit-text-fill-color: var(--ev8-brown) !important;
}

body.single-product .emotive-pdp-summary,
body.single-product .emotive-pdp-summary p,
body.single-product .emotive-pdp-meta,
body.single-product .emotive-pdp-price,
body.single-product .emotive-pdp-price *,
body.single-product .emotive-pdp-confidence p,
body.single-product .emotive-pdp-details p,
body.single-product .emotive-pdp-details li,
body.single-product .emotive-pdp-details td,
body.single-product .emotive-pdp-details th,
body.single-product .wc-tabs li a {
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
}

body.single-product .emotive-pdp-buybox {
  border: 1px solid var(--ev8-line) !important;
  box-shadow: none !important;
}

body.single-product .emotive-pdp-buybox select,
body.single-product .emotive-pdp-buybox .quantity input {
  background: #FFF9F1 !important;
  color: var(--ev8-ink) !important;
  border: 1px solid var(--ev8-line) !important;
}

body.single-product .emotive-pdp-buybox .adfy-wl-add-to-wishlist {
  background: transparent !important;
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
  border: 1px solid var(--ev8-line) !important;
}

/* ---------- CART / ACCOUNT / WISHLIST / CHECKOUT ---------- */
body.woocommerce-cart main,
body.woocommerce-checkout main,
body.woocommerce-account main,
.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content,
.woocommerce table.shop_table {
  background: var(--ev8-bg) !important;
  color: var(--ev8-ink) !important;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.woocommerce form .form-row label,
.woocommerce-MyAccount-navigation a {
  color: var(--ev8-ink) !important;
  -webkit-text-fill-color: var(--ev8-ink) !important;
}

input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
textarea,
select {
  background: #FFF9F1 !important;
  color: var(--ev8-ink) !important;
  border: 1px solid var(--ev8-line) !important;
  border-radius: 0 !important;
}

/* ---------- FOOTER: ONLY DARK REGION ---------- */
footer,
.wp-site-blocks > footer,
.emotive-site-footer,
.emotive-footer,
footer.wp-block-template-part {
  background: #000 !important;
  color: #fff !important;
}

footer h1,footer h2,footer h3,footer h4,
footer p,footer li,footer small,footer strong,footer em,
footer a,footer a:link,footer a:visited,
.emotive-footer h1,.emotive-footer h2,.emotive-footer h3,
.emotive-footer p,.emotive-footer a,.emotive-footer span {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

footer input,
footer textarea,
.emotive-footer input,
.emotive-footer textarea {
  background: #2B2B2B !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid rgba(255,255,255,.45) !important;
}

footer button,
footer .wp-element-button,
.emotive-footer button {
  background: var(--ev8-coral) !important;
  border-color: var(--ev8-coral) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
footer button *,footer .wp-element-button *, .emotive-footer button * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ---------- MOBILE ---------- */
@media (max-width: 900px) {
  .emotive-header-inner,
  body.home .emotive-header-inner {
    width: min(100% - 32px, 1480px) !important;
    grid-template-columns: auto 1fr auto !important;
  }
  .emotive-main-nav { display: none !important; }
  .emotive-brand-lockup { grid-column: 1 !important; justify-self: start !important; }
  .emotive-header-actions { grid-column: 3 !important; }
  .emotive-mobile-menu-toggle { display: inline-flex !important; }
  .emotive-brand-wordmark { font-size: 25px !important; }
}

/* ===== FOOTER CLEANUP + ICON SOCIALS ===== */
.emotive-footer-top{
    display:none !important;
}

.emotive-footer-brand{
    display:none !important;
}

.emotive-footer-newsletter .emotive-footer-kicker{
    display:none !important;
}

.emotive-footer-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 72px !important;
}

.emotive-footer-social-links{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
    flex-wrap:wrap !important;
}

.emotive-footer-social-links a[aria-label]{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:18px !important;
    height:18px !important;
    font-size:0 !important;
    line-height:0 !important;
}

.emotive-footer-social-links a[aria-label] svg{
    width:18px !important;
    height:18px !important;
}

.emotive-footer-social-links a[aria-label="Instagram"] svg{
    fill:none;
    stroke:#ffffff;
    stroke-width:1.7;
}

.emotive-footer-social-links a[aria-label="Facebook"] svg,
.emotive-footer-social-links a[aria-label="TikTok"] svg,
.emotive-footer-social-links a[aria-label="Pinterest"] svg{
    fill:#ffffff;
    stroke:none;
}

.emotive-footer-social-links a[aria-label]:hover svg{
    opacity:.75;
}

@media (max-width: 900px){
    .emotive-footer-grid{
        grid-template-columns:1fr !important;
        row-gap:24px !important;
    }

    .emotive-footer-social-links{
        justify-content:flex-start !important;
        gap:12px !important;
    }
}

/* === FINAL FOOTER REMOVALS === */

.emotive-footer-intro{
    display:none !important;
}

.emotive-footer-brand{
    display:none !important;
}

.emotive-footer-newsletter-copy > span:first-child{
    display:none !important;
}


/* === FOOTER NEWSLETTER CONSENT CLEANUP === */

.emotive-footer-form{
    max-width:520px !important;
}

.emotive-footer-signup-line{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
}

.emotive-footer-signup-line input[type="email"]{
    min-height:42px !important;
    padding:10px 12px !important;
}

.emotive-footer-signup-line button{
    min-height:42px !important;
    padding:10px 20px !important;
}

.emotive-footer-consent{
    display:flex !important;
    align-items:flex-start !important;
    gap:8px !important;
    margin-top:10px !important;
    font-size:11px !important;
    line-height:1.35 !important;
    opacity:.78 !important;
}

.emotive-footer-consent input[type="checkbox"]{
    width:14px !important;
    height:14px !important;
    margin:1px 0 0 0 !important;
    flex:0 0 14px !important;
}

.emotive-footer-consent span{
    max-width:420px !important;
}

@media (max-width:600px){
    .emotive-footer-signup-line{
        align-items:stretch !important;
    }

    .emotive-footer-signup-line input[type="email"]{
        flex:1 1 auto !important;
        min-width:0 !important;
    }

    .emotive-footer-consent{
        font-size:10px !important;
    }
}

/* === FINAL NEWSLETTER REFINEMENT === */

.emotive-footer-form{
    max-width:420px !important;
}

.emotive-footer-signup-line{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
}

.emotive-footer-signup-line input[type="email"]{
    height:44px !important;
    min-height:44px !important;
    padding:0 14px !important;
    font-size:13px !important;
    line-height:44px !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
}

.emotive-footer-signup-line button{
    height:44px !important;
    min-height:44px !important;
    padding:0 20px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
}

.emotive-footer-consent{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    margin-top:12px !important;
    font-size:10.5px !important;
    line-height:1.4 !important;
    opacity:.88 !important;
}

.emotive-footer-consent input[type="checkbox"]{
    width:13px !important;
    height:13px !important;
    margin:0 !important;
    flex:0 0 13px !important;
}

.emotive-footer-consent span{
    max-width:360px !important;
}

@media (max-width:600px){
    .emotive-footer-form{
        max-width:100% !important;
    }

    .emotive-footer-signup-line{
        width:100% !important;
    }

    .emotive-footer-signup-line input[type="email"]{
        flex:1 1 auto !important;
        min-width:0 !important;
    }
}

/* =========================================================
   EMOTIVE SHOP — CATEGORY NAV + COMPACT PRODUCT GRID
   ========================================================= */

body.woocommerce-shop .emotive-shop-category-nav,
body.tax-product_cat .emotive-shop-category-nav{
    display:flex !important;
    align-items:center !important;
    gap:26px !important;
    flex-wrap:wrap !important;
    margin:0 0 38px !important;
    padding:0 0 14px !important;
    border-bottom:1px solid rgba(40,31,25,.16) !important;
}

body.woocommerce-shop .emotive-shop-category-link,
body.tax-product_cat .emotive-shop-category-link{
    position:relative !important;
    color:#2c211b !important;
    text-decoration:none !important;
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.15em !important;
    line-height:1.4 !important;
    white-space:nowrap !important;
}

body.woocommerce-shop .emotive-shop-category-link::after,
body.tax-product_cat .emotive-shop-category-link::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:100% !important;
    bottom:-7px !important;
    height:1px !important;
    background:#2c211b !important;
    transition:right .2s ease !important;
}

body.woocommerce-shop .emotive-shop-category-link:hover::after,
body.woocommerce-shop .emotive-shop-category-link.is-active::after,
body.tax-product_cat .emotive-shop-category-link:hover::after,
body.tax-product_cat .emotive-shop-category-link.is-active::after{
    right:0 !important;
}

/* Desktop catalogue */
@media (min-width:1100px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        column-gap:24px !important;
        row-gap:42px !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        width:100% !important;
        height:260px !important;
        object-fit:contain !important;
        object-position:center !important;
        margin:0 auto 16px !important;
        background:#f7f4ee !important;
    }
}

/* Tablet */
@media (min-width:700px) and (max-width:1099px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:26px 18px !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        width:100% !important;
        height:220px !important;
        object-fit:contain !important;
        margin:0 auto 14px !important;
        background:#f7f4ee !important;
    }
}

/* Mobile */
@media (max-width:699px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:24px 12px !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        width:100% !important;
        height:165px !important;
        object-fit:contain !important;
        margin:0 auto 12px !important;
        background:#f7f4ee !important;
    }

    body.woocommerce-shop .emotive-shop-category-nav,
    body.tax-product_cat .emotive-shop-category-nav{
        flex-wrap:nowrap !important;
        overflow-x:auto !important;
        gap:20px !important;
        padding-bottom:15px !important;
        margin-bottom:28px !important;
        scrollbar-width:none !important;
    }

    body.woocommerce-shop .emotive-shop-category-nav::-webkit-scrollbar,
    body.tax-product_cat .emotive-shop-category-nav::-webkit-scrollbar{
        display:none !important;
    }
}


/* === SHOP THUMBNAILS SMALLER === */

@media (min-width:1100px){
    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:210px !important;
    }
}

@media (min-width:700px) and (max-width:1099px){
    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:180px !important;
    }
}

@media (max-width:699px){
    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:140px !important;
    }
}

/* === SHOP THUMBNAILS COMPACT === */

@media (min-width:1100px){
    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:170px !important;
    }
}

@media (min-width:700px) and (max-width:1099px){
    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:150px !important;
    }
}

@media (max-width:699px){
    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:120px !important;
    }
}

/* =========================================================
   EMOTIVE SHOP — CATEGORY HUB + COMPACT CATALOGUE
   ========================================================= */

body.woocommerce-shop .emotive-shop-category-hub{
    margin:10px 0 42px !important;
}

body.woocommerce-shop .emotive-shop-category-hub-heading,
body.woocommerce-shop .emotive-shop-all-heading{
    display:flex !important;
    align-items:center !important;
    margin:0 0 18px !important;
}

body.woocommerce-shop .emotive-shop-category-hub-heading span,
body.woocommerce-shop .emotive-shop-all-heading span{
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.18em !important;
    color:#2c211b !important;
}

body.woocommerce-shop .emotive-shop-category-cards{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:12px !important;
}

body.woocommerce-shop .emotive-shop-category-card{
    min-height:118px !important;
    padding:20px !important;

    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;

    background:#f1ece3 !important;
    border:1px solid rgba(44,33,27,.10) !important;

    color:#2c211b !important;
    text-decoration:none !important;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease !important;
}

body.woocommerce-shop .emotive-shop-category-card:hover{
    transform:translateY(-2px) !important;
    background:#ebe4d8 !important;
    border-color:rgba(44,33,27,.20) !important;
}

body.woocommerce-shop .emotive-shop-category-card-name{
    font-family:"Cormorant Garamond",serif !important;
    font-size:25px !important;
    line-height:1 !important;
    font-weight:500 !important;
}

body.woocommerce-shop .emotive-shop-category-card-meta{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;

    margin-top:22px !important;

    font-size:9px !important;
    font-weight:600 !important;
    letter-spacing:.12em !important;
    opacity:.72 !important;
}

/* Separate category hub from catalogue */

body.woocommerce-shop .emotive-shop-all-heading{
    margin-top:8px !important;
    margin-bottom:20px !important;
    padding-top:28px !important;
    border-top:1px solid rgba(44,33,27,.13) !important;
}

/* Compact cards */

body.woocommerce-shop ul.products li.product{
    padding-bottom:12px !important;
}

body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail{
    display:block !important;
    width:100% !important;
    height:160px !important;
    object-fit:contain !important;
    object-position:center !important;
    margin:0 auto 12px !important;
    background:#f7f4ee !important;
}

/* Desktop */

@media (min-width:1100px){

    body.woocommerce-shop ul.products{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:34px 22px !important;
    }
}

/* Tablet */

@media (min-width:700px) and (max-width:1099px){

    body.woocommerce-shop .emotive-shop-category-cards{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    body.woocommerce-shop ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:28px 16px !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail{
        height:145px !important;
    }
}

/* Mobile */

@media (max-width:699px){

    body.woocommerce-shop .emotive-shop-category-cards{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    body.woocommerce-shop .emotive-shop-category-card{
        min-height:100px !important;
        padding:15px !important;
    }

    body.woocommerce-shop .emotive-shop-category-card-name{
        font-size:20px !important;
    }

    body.woocommerce-shop ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:24px 10px !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail{
        height:115px !important;
    }
}


/* =========================================================
   SHOP — EDITORIAL ALL PRODUCTS
   ========================================================= */

body.woocommerce-shop .emotive-all-products-editorial{
    margin:10px 0 30px !important;
    padding:30px 0 18px !important;
    border-top:1px solid rgba(44,33,27,.14) !important;
}

body.woocommerce-shop .emotive-all-products-title{
    margin-bottom:20px !important;
}

body.woocommerce-shop .emotive-all-products-title h2{
    margin:0 !important;
    font-size:34px !important;
    line-height:1 !important;
    font-weight:500 !important;
    letter-spacing:.02em !important;
    color:#2c211b !important;
}

body.woocommerce-shop .emotive-all-products-title p{
    margin:7px 0 0 !important;
    font-family:"Cormorant Garamond",serif !important;
    font-size:21px !important;
    font-style:italic !important;
    line-height:1.25 !important;
    color:rgba(44,33,27,.68) !important;
}

body.woocommerce-shop .emotive-all-products-filter{
    display:flex !important;
    align-items:center !important;
    gap:24px !important;
    flex-wrap:wrap !important;
}

body.woocommerce-shop .emotive-all-products-filter a{
    position:relative !important;
    color:#2c211b !important;
    text-decoration:none !important;
    font-size:10px !important;
    font-weight:600 !important;
    letter-spacing:.14em !important;
    white-space:nowrap !important;
}

body.woocommerce-shop .emotive-all-products-filter a::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:100% !important;
    bottom:-6px !important;
    height:1px !important;
    background:#2c211b !important;
    transition:right .18s ease !important;
}

body.woocommerce-shop .emotive-all-products-filter a:hover::after,
body.woocommerce-shop .emotive-all-products-filter a.is-active::after{
    right:0 !important;
}

/* Mobile */
@media (max-width:699px){

    body.woocommerce-shop .emotive-all-products-title h2{
        font-size:28px !important;
    }

    body.woocommerce-shop .emotive-all-products-title p{
        font-size:18px !important;
    }

    body.woocommerce-shop .emotive-all-products-filter{
        flex-wrap:nowrap !important;
        overflow-x:auto !important;
        gap:20px !important;
        padding-bottom:8px !important;
        scrollbar-width:none !important;
    }

    body.woocommerce-shop .emotive-all-products-filter::-webkit-scrollbar{
        display:none !important;
    }
}


/* =========================================================
   SHOP FINAL CLEANUP
   ========================================================= */

/* Hide superseded All Products heading */
body.woocommerce-shop .emotive-shop-all-heading{
    display:none !important;
}

/* Hide the older category-nav bar on main Shop only */
body.woocommerce-shop .emotive-shop-category-nav{
    display:none !important;
}

/* Keep category hub spacing controlled */
body.woocommerce-shop .emotive-shop-category-hub{
    margin:8px 0 34px !important;
}

/* Category hub title */
body.woocommerce-shop .emotive-shop-category-hub-heading{
    margin-bottom:14px !important;
}

/* More balanced category card grid */
@media (min-width:1100px){

    body.woocommerce-shop .emotive-shop-category-cards{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:12px !important;
    }

    body.woocommerce-shop .emotive-shop-category-card{
        min-height:96px !important;
        padding:16px 18px !important;
    }

    body.woocommerce-shop .emotive-shop-category-card-name{
        font-size:22px !important;
    }

    body.woocommerce-shop .emotive-shop-category-card-meta{
        margin-top:16px !important;
    }
}

/* Editorial All Products section */
body.woocommerce-shop .emotive-all-products-editorial{
    margin:0 0 24px !important;
    padding:28px 0 16px !important;
    border-top:1px solid rgba(44,33,27,.14) !important;
}

body.woocommerce-shop .emotive-all-products-title h2{
    font-size:30px !important;
}

body.woocommerce-shop .emotive-all-products-title p{
    font-size:18px !important;
    margin-top:5px !important;
}

/* Compact product catalogue */
body.woocommerce-shop ul.products li.product{
    padding-bottom:8px !important;
}

body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail{
    width:100% !important;
    height:145px !important;
    object-fit:contain !important;
    object-position:center !important;
    margin:0 auto 10px !important;
    background:#f7f4ee !important;
}

/* Reduce oversized card text */
body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title{
    font-size:15px !important;
    line-height:1.25 !important;
    margin:8px 0 4px !important;
}

body.woocommerce-shop ul.products li.product .price{
    font-size:13px !important;
    line-height:1.3 !important;
}

/* Tablet */
@media (min-width:700px) and (max-width:1099px){

    body.woocommerce-shop .emotive-shop-category-cards{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    body.woocommerce-shop ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail{
        height:130px !important;
    }
}

/* Mobile */
@media (max-width:699px){

    body.woocommerce-shop .emotive-shop-category-cards{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    body.woocommerce-shop ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail{
        height:105px !important;
    }

    body.woocommerce-shop .emotive-all-products-title h2{
        font-size:26px !important;
    }

    body.woocommerce-shop .emotive-all-products-title p{
        font-size:17px !important;
    }
}


/* === SHOP GRID 5 COLUMNS DESKTOP === */

@media (min-width:1100px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:28px 16px !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:130px !important;
    }
}

@media (min-width:700px) and (max-width:1099px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@media (max-width:699px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}


/* =========================================================
   SHOP — FINAL 5 COLUMN DESKTOP GRID
   ========================================================= */

@media (min-width:900px){

    body.woocommerce-shop ul.products,
    body.post-type-archive-product ul.products,
    body.tax-product_cat ul.products,
    body.woocommerce-page ul.products{
        display:grid !important;
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        grid-auto-flow:row !important;
        column-gap:14px !important;
        row-gap:26px !important;
        width:100% !important;
    }

    body.woocommerce-shop ul.products li.product,
    body.post-type-archive-product ul.products li.product,
    body.tax-product_cat ul.products li.product,
    body.woocommerce-page ul.products li.product{
        width:100% !important;
        max-width:none !important;
        float:none !important;
        clear:none !important;
        margin:0 !important;
    }

    body.woocommerce-shop ul.products li.product img.attachment-woocommerce_thumbnail,
    body.post-type-archive-product ul.products li.product img.attachment-woocommerce_thumbnail,
    body.tax-product_cat ul.products li.product img.attachment-woocommerce_thumbnail{
        height:125px !important;
        width:100% !important;
        object-fit:contain !important;
    }
}

/* Tablet */
@media (min-width:600px) and (max-width:899px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

/* Mobile */
@media (max-width:599px){

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}


/* =========================================================
   EMOTIVE COMPACT AMAZON-STYLE SHOP
   ========================================================= */

/* Remove older experimental Shop elements */
body.woocommerce-shop .emotive-shop-category-hub,
body.woocommerce-shop .emotive-shop-category-nav,
body.woocommerce-shop .emotive-shop-all-heading,
body.woocommerce-shop .emotive-all-products-editorial,
body.tax-product_cat .emotive-shop-category-hub,
body.tax-product_cat .emotive-shop-category-nav,
body.tax-product_cat .emotive-shop-all-heading,
body.tax-product_cat .emotive-all-products-editorial{
    display:none !important;
}


/* ---------------------------------------------------------
   TOP CATEGORY NAV
   --------------------------------------------------------- */

.emotive-catalog-topnav{
    display:flex !important;
    align-items:center !important;
    gap:22px !important;

    margin:0 0 24px !important;
    padding:12px 0 14px !important;

    border-bottom:1px solid rgba(44,33,27,.14) !important;

    overflow-x:auto !important;
    scrollbar-width:none !important;
}

.emotive-catalog-topnav::-webkit-scrollbar{
    display:none !important;
}

.emotive-catalog-topnav a{
    position:relative !important;

    color:#2c211b !important;
    text-decoration:none !important;

    font-size:10px !important;
    font-weight:600 !important;
    letter-spacing:.13em !important;

    white-space:nowrap !important;
}

.emotive-catalog-topnav a::after{
    content:"" !important;
    position:absolute !important;

    left:0 !important;
    right:100% !important;
    bottom:-8px !important;

    height:1px !important;
    background:#2c211b !important;

    transition:right .18s ease !important;
}

.emotive-catalog-topnav a:hover::after,
.emotive-catalog-topnav a.is-active::after{
    right:0 !important;
}


/* ---------------------------------------------------------
   MAIN CATALOGUE LAYOUT
   --------------------------------------------------------- */

.emotive-catalog-layout{
    display:grid !important;
    grid-template-columns:200px minmax(0,1fr) !important;
    gap:28px !important;

    align-items:start !important;
}


/* ---------------------------------------------------------
   LEFT FILTER SIDEBAR
   --------------------------------------------------------- */

.emotive-catalog-sidebar{
    position:sticky !important;
    top:110px !important;

    padding-right:18px !important;

    border-right:1px solid rgba(44,33,27,.12) !important;
}

.emotive-filter-group{
    padding:0 0 22px !important;
    margin:0 0 22px !important;

    border-bottom:1px solid rgba(44,33,27,.10) !important;
}

.emotive-filter-group:last-child{
    border-bottom:0 !important;
}

.emotive-filter-group h3{
    margin:0 0 12px !important;

    color:#2c211b !important;

    font-family:inherit !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
}

.emotive-filter-group a{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    padding:5px 0 !important;

    color:#2c211b !important;
    text-decoration:none !important;

    font-size:12px !important;
    line-height:1.35 !important;
}

.emotive-filter-group a:hover{
    text-decoration:underline !important;
}

.emotive-filter-group small{
    font-size:10px !important;
    opacity:.55 !important;
}

.emotive-clear-filters{
    font-weight:600 !important;
}


/* ---------------------------------------------------------
   RESULT COUNT + SORT
   --------------------------------------------------------- */

.emotive-catalog-main .woocommerce-result-count{
    margin:2px 0 20px !important;

    font-size:12px !important;
    color:#2c211b !important;
}

.emotive-catalog-main .woocommerce-ordering{
    margin:0 0 20px !important;
}

.emotive-catalog-main .woocommerce-ordering select{
    min-height:36px !important;

    padding:0 32px 0 12px !important;

    background:#fff !important;
    color:#2c211b !important;

    border:1px solid rgba(44,33,27,.25) !important;
    border-radius:4px !important;

    font-size:12px !important;
}


/* ---------------------------------------------------------
   PRODUCT GRID — DESKTOP 5 COLUMNS
   --------------------------------------------------------- */

@media (min-width:1100px){

    .emotive-catalog-main ul.products{
        display:grid !important;

        grid-template-columns:repeat(5,minmax(0,1fr)) !important;

        column-gap:12px !important;
        row-gap:26px !important;

        width:100% !important;

        margin:0 !important;
        padding:0 !important;
    }

    .emotive-catalog-main ul.products li.product{
        float:none !important;
        clear:none !important;

        width:100% !important;
        max-width:none !important;

        margin:0 !important;
        padding:0 0 14px !important;

        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
    }
}


/* ---------------------------------------------------------
   PRODUCT IMAGE
   --------------------------------------------------------- */

.emotive-catalog-main ul.products li.product a img,
.emotive-catalog-main ul.products li.product img.attachment-woocommerce_thumbnail{
    display:block !important;

    width:100% !important;
    height:155px !important;

    margin:0 0 10px !important;

    object-fit:contain !important;
    object-position:center !important;

    background:#f7f4ee !important;
}


/* ---------------------------------------------------------
   PRODUCT TEXT
   --------------------------------------------------------- */

.emotive-catalog-main ul.products li.product .woocommerce-loop-product__title{
    margin:0 0 6px !important;
    padding:0 !important;

    color:#2c211b !important;

    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.3 !important;
}

.emotive-catalog-main ul.products li.product .price{
    display:block !important;

    margin:0 0 10px !important;

    color:#2c211b !important;

    font-size:12px !important;
    line-height:1.3 !important;
}


/* ---------------------------------------------------------
   PRODUCT BUTTONS
   --------------------------------------------------------- */

.emotive-catalog-main ul.products li.product .button{
    min-height:32px !important;

    margin:4px 0 0 !important;
    padding:8px 12px !important;

    background:#2b1a13 !important;
    color:#fff !important;

    border:0 !important;
    border-radius:0 !important;

    font-size:10px !important;
    font-weight:600 !important;
    line-height:1.2 !important;

    text-transform:uppercase !important;
    letter-spacing:.06em !important;
}


/* ---------------------------------------------------------
   TABLET
   --------------------------------------------------------- */

@media (min-width:700px) and (max-width:1099px){

    .emotive-catalog-layout{
        grid-template-columns:170px minmax(0,1fr) !important;
        gap:20px !important;
    }

    .emotive-catalog-main ul.products{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:24px 14px !important;
    }

    .emotive-catalog-main ul.products li.product{
        width:100% !important;
        margin:0 !important;
        float:none !important;
    }

    .emotive-catalog-main ul.products li.product img.attachment-woocommerce_thumbnail{
        height:145px !important;
    }
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width:699px){

    .emotive-catalog-layout{
        display:block !important;
    }

    .emotive-catalog-sidebar{
        position:static !important;

        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;

        gap:10px 20px !important;

        margin:0 0 24px !important;
        padding:16px !important;

        border:1px solid rgba(44,33,27,.12) !important;
    }

    .emotive-filter-group{
        margin:0 !important;
        padding:0 !important;

        border:0 !important;
    }

    .emotive-catalog-main ul.products{
        display:grid !important;

        grid-template-columns:repeat(2,minmax(0,1fr)) !important;

        gap:22px 10px !important;
    }

    .emotive-catalog-main ul.products li.product{
        float:none !important;

        width:100% !important;

        margin:0 !important;
    }

    .emotive-catalog-main ul.products li.product img.attachment-woocommerce_thumbnail{
        height:120px !important;
    }

    .emotive-catalog-main ul.products li.product .woocommerce-loop-product__title{
        font-size:12px !important;
    }

    .emotive-catalog-main ul.products li.product .button{
        width:100% !important;
        text-align:center !important;
    }
}


/* =========================================================
   EMOTIVE SHOP — FINAL CATALOG LAYOUT
   ========================================================= */

body.woocommerce-shop .emotive-catalog-main ul.products,
body.tax-product_cat .emotive-catalog-main ul.products{
    list-style:none !important;
    padding:0 !important;
    margin:0 !important;
}

/* DESKTOP — SIX PRODUCTS */
@media (min-width:1100px){

    body.woocommerce-shop .emotive-catalog-main ul.products,
    body.tax-product_cat .emotive-catalog-main ul.products{
        display:grid !important;
        grid-template-columns:repeat(6,minmax(0,1fr)) !important;
        gap:30px 14px !important;
        width:100% !important;
    }

    body.woocommerce-shop .emotive-catalog-main ul.products > li.product,
    body.tax-product_cat .emotive-catalog-main ul.products > li.product{
        float:none !important;
        clear:none !important;
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        padding:0 !important;
    }
}

/* TABLET — THREE */
@media (min-width:700px) and (max-width:1099px){

    body.woocommerce-shop .emotive-catalog-main ul.products,
    body.tax-product_cat .emotive-catalog-main ul.products{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:26px 14px !important;
    }
}

/* MOBILE — TWO */
@media (max-width:699px){

    body.woocommerce-shop .emotive-catalog-main ul.products,
    body.tax-product_cat .emotive-catalog-main ul.products{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:22px 10px !important;
    }
}


/* =========================================================
   PRODUCT CARD IMAGE AREA
   ========================================================= */

body.woocommerce-shop ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link{
    display:block !important;
}

body.woocommerce-shop ul.products li.product img,
body.tax-product_cat ul.products li.product img{
    display:block !important;

    width:100% !important;
    height:175px !important;

    max-width:100% !important;

    object-fit:contain !important;
    object-position:center !important;

    opacity:1 !important;
    visibility:visible !important;

    margin:0 auto 12px !important;
    padding:0 !important;

    background:#f7f3eb !important;

    transform:none !important;
    filter:none !important;
}


/* Titles */

body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title{
    min-height:38px !important;

    margin:8px 0 5px !important;
    padding:0 !important;

    font-size:13px !important;
    line-height:1.35 !important;
}


/* Prices */

body.woocommerce-shop ul.products li.product .price,
body.tax-product_cat ul.products li.product .price{
    display:block !important;

    min-height:22px !important;

    margin:4px 0 8px !important;

    font-size:12px !important;
}


/* Add / Select button */

body.woocommerce-shop ul.products li.product .button,
body.tax-product_cat ul.products li.product .button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-height:34px !important;

    margin:6px 0 0 !important;
    padding:8px 13px !important;

    font-size:10px !important;
    line-height:1 !important;

    text-transform:uppercase !important;
    letter-spacing:.04em !important;
}


/* Wishlist should not create another full row */

body.woocommerce-shop ul.products li.product .adfy-wl-add-to-wishlist,
body.tax-product_cat ul.products li.product .adfy-wl-add-to-wishlist{
    display:inline-block !important;

    width:auto !important;
    max-width:100% !important;

    margin:8px 0 0 !important;

    font-size:9px !important;
    line-height:1.2 !important;
}


/* Smaller media on phones */

@media (max-width:699px){

    body.woocommerce-shop ul.products li.product img,
    body.tax-product_cat ul.products li.product img{
        height:140px !important;
    }
}


/* =========================================================
   EMOTIVE SHOP — WOO BLOCK PRODUCT GRID
   Actual live markup: .wc-block-product-template
   ========================================================= */

/* DESKTOP — 6 columns */
@media (min-width:1100px){

    body.woocommerce-shop .emotive-catalog-main
    .wc-block-product-template,
    body.tax-product_cat .emotive-catalog-main
    .wc-block-product-template{
        display:grid !important;
        grid-template-columns:repeat(6,minmax(0,1fr)) !important;
        gap:28px 14px !important;

        width:100% !important;
        max-width:none !important;

        margin:0 !important;
        padding:0 !important;
    }

    body.woocommerce-shop .emotive-catalog-main
    .wc-block-product-template > li.wc-block-product,
    body.tax-product_cat .emotive-catalog-main
    .wc-block-product-template > li.wc-block-product{
        width:100% !important;
        max-width:none !important;

        margin:0 !important;
        padding:0 !important;

        float:none !important;
        clear:none !important;
    }
}


/* TABLET — 3 columns */
@media (min-width:700px) and (max-width:1099px){

    body.woocommerce-shop .emotive-catalog-main
    .wc-block-product-template,
    body.tax-product_cat .emotive-catalog-main
    .wc-block-product-template{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:24px 14px !important;
    }
}


/* MOBILE — 2 columns */
@media (max-width:699px){

    body.woocommerce-shop .emotive-catalog-main
    .wc-block-product-template,
    body.tax-product_cat .emotive-catalog-main
    .wc-block-product-template{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:20px 10px !important;
    }
}


/* =========================================================
   BLOCK PRODUCT IMAGE
   ========================================================= */

body.woocommerce-shop .emotive-catalog-main
.wc-block-product-template .wc-block-product img,

body.tax-product_cat .emotive-catalog-main
.wc-block-product-template .wc-block-product img{
    display:block !important;

    width:100% !important;
    height:165px !important;

    max-width:100% !important;

    object-fit:contain !important;
    object-position:center !important;

    margin:0 auto 10px !important;
    padding:0 !important;

    opacity:1 !important;
    visibility:visible !important;

    transform:none !important;
    filter:none !important;

    background:#f7f3eb !important;
}


/* Product card spacing */

body.woocommerce-shop .emotive-catalog-main
.wc-block-product,

body.tax-product_cat .emotive-catalog-main
.wc-block-product{
    text-align:center !important;
}


/* Product title */

body.woocommerce-shop .emotive-catalog-main
.wc-block-product .wp-block-post-title,

body.tax-product_cat .emotive-catalog-main
.wc-block-product .wp-block-post-title{
    margin:8px 0 4px !important;

    min-height:36px !important;

    font-size:13px !important;
    line-height:1.3 !important;
}


/* Price */

body.woocommerce-shop .emotive-catalog-main
.wc-block-product .wc-block-components-product-price,

body.tax-product_cat .emotive-catalog-main
.wc-block-product .wc-block-components-product-price{
    margin:4px 0 8px !important;

    font-size:12px !important;
}


/* Add to cart / Select options button */

body.woocommerce-shop .emotive-catalog-main
.wc-block-product a.wp-block-button__link,

body.tax-product_cat .emotive-catalog-main
.wc-block-product a.wp-block-button__link,

body.woocommerce-shop .emotive-catalog-main
.wc-block-product button,

body.tax-product_cat .emotive-catalog-main
.wc-block-product button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-height:34px !important;

    padding:8px 13px !important;
    margin-top:6px !important;

    font-size:10px !important;
    line-height:1 !important;

    text-transform:uppercase !important;
}


/* Wishlist compact */

body.woocommerce-shop .emotive-catalog-main
.wc-block-product .adfy-wl-add-to-wishlist,

body.tax-product_cat .emotive-catalog-main
.wc-block-product .adfy-wl-add-to-wishlist{
    display:inline-block !important;

    width:auto !important;
    max-width:100% !important;

    margin:7px auto 0 !important;

    font-size:9px !important;
}


/* Mobile image height */
@media (max-width:699px){

    body.woocommerce-shop .emotive-catalog-main
    .wc-block-product-template .wc-block-product img,

    body.tax-product_cat .emotive-catalog-main
    .wc-block-product-template .wc-block-product img{
        height:130px !important;
    }
}


/* =========================================================
   EMOTIVE SHOP — BIGGER TYPE + HEART WISHLIST
   ========================================================= */

body.post-type-archive-product .emotive-catalog-layout,
body.tax-product_cat .emotive-catalog-layout{
    --emotive-shop-title-size: 18px;
    --emotive-shop-price-size: 16px;
    --emotive-shop-copy-size: 14px;
    --emotive-shop-button-size: 13px;
}

/* top tabs + sidebar filters */
body.post-type-archive-product .emotive-catalog-layout .emotive-shop-tabs a,
body.tax-product_cat .emotive-catalog-layout .emotive-shop-tabs a,
body.post-type-archive-product .emotive-catalog-layout aside,
body.tax-product_cat .emotive-catalog-layout aside,
body.post-type-archive-product .emotive-catalog-layout aside a,
body.tax-product_cat .emotive-catalog-layout aside a,
body.post-type-archive-product .emotive-catalog-layout aside li,
body.tax-product_cat .emotive-catalog-layout aside li{
    font-size: var(--emotive-shop-copy-size) !important;
    line-height: 1.55 !important;
}

/* product titles */
body.post-type-archive-product .wc-block-product-template .wc-block-product__title,
body.tax-product_cat .wc-block-product-template .wc-block-product__title,
body.post-type-archive-product .wc-block-product-template .wc-block-product-title,
body.tax-product_cat .wc-block-product-template .wc-block-product-title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title{
    font-size: var(--emotive-shop-title-size) !important;
    line-height: 1.35 !important;
}

/* price */
body.post-type-archive-product .wc-block-product-template .price,
body.tax-product_cat .wc-block-product-template .price,
body.post-type-archive-product ul.products li.product .price,
body.tax-product_cat ul.products li.product .price{
    font-size: var(--emotive-shop-price-size) !important;
    line-height: 1.35 !important;
}

/* main cart / select buttons */
body.post-type-archive-product .wc-block-product-template .button,
body.tax-product_cat .wc-block-product-template .button,
body.post-type-archive-product ul.products li.product .button,
body.tax-product_cat ul.products li.product .button{
    font-size: var(--emotive-shop-button-size) !important;
    letter-spacing: .08em !important;
}

/* wishlist wrapper */
body.post-type-archive-product .wc-block-product [class*="wishlist"],
body.tax-product_cat .wc-block-product [class*="wishlist"],
body.post-type-archive-product ul.products li.product [class*="wishlist"],
body.tax-product_cat ul.products li.product [class*="wishlist"]{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin-top:12px !important;
}

/* wishlist button -> icon circle */
body.post-type-archive-product .wc-block-product [class*="wishlist"] a,
body.tax-product_cat .wc-block-product [class*="wishlist"] a,
body.post-type-archive-product .wc-block-product [class*="wishlist"] button,
body.tax-product_cat .wc-block-product [class*="wishlist"] button,
body.post-type-archive-product ul.products li.product [class*="wishlist"] a,
body.tax-product_cat ul.products li.product [class*="wishlist"] a,
body.post-type-archive-product ul.products li.product [class*="wishlist"] button,
body.tax-product_cat ul.products li.product [class*="wishlist"] button{
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 !important;
    border:1px solid rgba(44,33,27,.16) !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#2c211b !important;
    font-size:0 !important;
    line-height:0 !important;
    text-indent:-9999px !important;
    overflow:hidden !important;
    position:relative !important;
    box-shadow:none !important;
}

/* empty heart */
body.post-type-archive-product .wc-block-product [class*="wishlist"] a::before,
body.tax-product_cat .wc-block-product [class*="wishlist"] a::before,
body.post-type-archive-product .wc-block-product [class*="wishlist"] button::before,
body.tax-product_cat .wc-block-product [class*="wishlist"] button::before,
body.post-type-archive-product ul.products li.product [class*="wishlist"] a::before,
body.tax-product_cat ul.products li.product [class*="wishlist"] a::before,
body.post-type-archive-product ul.products li.product [class*="wishlist"] button::before,
body.tax-product_cat ul.products li.product [class*="wishlist"] button::before{
    content:"♡";
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px !important;
    line-height:1 !important;
    text-indent:0 !important;
}

/* filled heart for already-added states */
body.post-type-archive-product .wc-block-product [class*="wishlist"] .added::before,
body.tax-product_cat .wc-block-product [class*="wishlist"] .added::before,
body.post-type-archive-product .wc-block-product [class*="wishlist"] .in-wishlist::before,
body.tax-product_cat .wc-block-product [class*="wishlist"] .in-wishlist::before,
body.post-type-archive-product ul.products li.product [class*="wishlist"] .added::before,
body.tax-product_cat ul.products li.product [class*="wishlist"] .added::before,
body.post-type-archive-product ul.products li.product [class*="wishlist"] .in-wishlist::before,
body.tax-product_cat ul.products li.product [class*="wishlist"] .in-wishlist::before{
    content:"♥";
}

/* hover */
body.post-type-archive-product .wc-block-product [class*="wishlist"] a:hover,
body.tax-product_cat .wc-block-product [class*="wishlist"] a:hover,
body.post-type-archive-product .wc-block-product [class*="wishlist"] button:hover,
body.tax-product_cat .wc-block-product [class*="wishlist"] button:hover,
body.post-type-archive-product ul.products li.product [class*="wishlist"] a:hover,
body.tax-product_cat ul.products li.product [class*="wishlist"] a:hover,
body.post-type-archive-product ul.products li.product [class*="wishlist"] button:hover,
body.tax-product_cat ul.products li.product [class*="wishlist"] button:hover{
    background:#2c211b !important;
    border-color:#2c211b !important;
}

body.post-type-archive-product .wc-block-product [class*="wishlist"] a:hover::before,
body.tax-product_cat .wc-block-product [class*="wishlist"] a:hover::before,
body.post-type-archive-product .wc-block-product [class*="wishlist"] button:hover::before,
body.tax-product_cat .wc-block-product [class*="wishlist"] button:hover::before,
body.post-type-archive-product ul.products li.product [class*="wishlist"] a:hover::before,
body.tax-product_cat ul.products li.product [class*="wishlist"] a:hover::before,
body.post-type-archive-product ul.products li.product [class*="wishlist"] button:hover::before,
body.tax-product_cat ul.products li.product [class*="wishlist"] button:hover::before{
    color:#fff !important;
}


/* =========================================================
   EMOTIVE SHOP — ADDONIFY HEART WISHLIST FINAL
   ========================================================= */

/* turn actual Addonify wishlist button into a compact heart */
body.woocommerce-shop .wc-block-product .adfy-wl-btn,
body.tax-product_cat .wc-block-product .adfy-wl-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;

    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;

    margin:10px auto 0 !important;
    padding:0 !important;

    border:1px solid rgba(44,33,27,.22) !important;
    border-radius:999px !important;

    background:#fff !important;
    color:#2c211b !important;

    box-shadow:none !important;

    font-size:0 !important;
    line-height:0 !important;

    position:relative !important;
    overflow:hidden !important;

    text-indent:-9999px !important;
}

/* hide Addonify text */
body.woocommerce-shop .wc-block-product .adfy-wl-btn .adfy-wl-add-to-wislist-label,
body.tax-product_cat .wc-block-product .adfy-wl-btn .adfy-wl-add-to-wislist-label{
    display:none !important;
}

/* default empty heart */
body.woocommerce-shop .wc-block-product .adfy-wl-btn::before,
body.tax-product_cat .wc-block-product .adfy-wl-btn::before{
    content:"♡" !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    position:absolute !important;
    inset:0 !important;

    font-size:24px !important;
    line-height:1 !important;

    text-indent:0 !important;

    color:#2c211b !important;

    font-family:Arial, sans-serif !important;
    font-weight:400 !important;
}

/* likely Addonify active/added states */
body.woocommerce-shop .wc-block-product .adfy-wl-btn.adfy-wl-added::before,
body.woocommerce-shop .wc-block-product .adfy-wl-btn.added::before,
body.woocommerce-shop .wc-block-product .adfy-wl-btn.in-wishlist::before,
body.tax-product_cat .wc-block-product .adfy-wl-btn.adfy-wl-added::before,
body.tax-product_cat .wc-block-product .adfy-wl-btn.added::before,
body.tax-product_cat .wc-block-product .adfy-wl-btn.in-wishlist::before{
    content:"♥" !important;
}

/* hover */
body.woocommerce-shop .wc-block-product .adfy-wl-btn:hover,
body.tax-product_cat .wc-block-product .adfy-wl-btn:hover{
    background:#2c211b !important;
    border-color:#2c211b !important;
}

body.woocommerce-shop .wc-block-product .adfy-wl-btn:hover::before,
body.tax-product_cat .wc-block-product .adfy-wl-btn:hover::before{
    color:#fff !important;
}

/* slightly larger catalogue text */
body.woocommerce-shop .wc-block-product .wp-block-post-title,
body.tax-product_cat .wc-block-product .wp-block-post-title{
    font-size:15px !important;
}

body.woocommerce-shop .wc-block-product .wc-block-components-product-price,
body.tax-product_cat .wc-block-product .wc-block-components-product-price{
    font-size:14px !important;
}

body.woocommerce-shop .wc-block-product .wp-block-button__link,
body.tax-product_cat .wc-block-product .wp-block-button__link{
    font-size:12px !important;
}


/* =========================================================
   EMOTIVE SHOP — VISIBLE WISHLIST HEART
   ========================================================= */

body.woocommerce-shop .wc-block-product button.adfy-wl-btn,
body.tax-product_cat .wc-block-product button.adfy-wl-btn{
    display:block !important;

    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;

    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;

    margin:10px auto 0 !important;
    padding:0 !important;

    border:1px solid rgba(44,33,27,.25) !important;
    border-radius:50% !important;

    background-color:#fff !important;

    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%232c211b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") !important;

    background-repeat:no-repeat !important;
    background-position:center !important;
    background-size:21px 21px !important;

    color:transparent !important;

    font-size:0 !important;
    line-height:0 !important;

    text-indent:-9999px !important;

    box-shadow:none !important;
    cursor:pointer !important;

    position:relative !important;
}

/* Completely remove our previous pseudo-heart */
body.woocommerce-shop .wc-block-product button.adfy-wl-btn::before,
body.tax-product_cat .wc-block-product button.adfy-wl-btn::before{
    content:none !important;
    display:none !important;
}

/* hide Addonify text inside the circle */
body.woocommerce-shop .wc-block-product button.adfy-wl-btn span,
body.tax-product_cat .wc-block-product button.adfy-wl-btn span{
    display:none !important;
}

/* subtle hover */
body.woocommerce-shop .wc-block-product button.adfy-wl-btn:hover,
body.tax-product_cat .wc-block-product button.adfy-wl-btn:hover{
    background-color:#f4ede4 !important;
    border-color:#2c211b !important;
    transform:scale(1.05) !important;
}

/* keyboard accessibility */
body.woocommerce-shop .wc-block-product button.adfy-wl-btn:focus-visible,
body.tax-product_cat .wc-block-product button.adfy-wl-btn:focus-visible{
    outline:2px solid #2c211b !important;
    outline-offset:2px !important;
}


/* =========================================================
   EMOTIVE CATEGORY ARCHIVES — FINAL CENTERED LAYOUT
   ========================================================= */

body.tax-product_cat .emotive-catalog-layout {
    display:block !important;
    width:100% !important;
    max-width:none !important;
}

/* Remove hidden sidebar/nav completely */
body.tax-product_cat .emotive-catalog-topnav,
body.tax-product_cat .emotive-catalog-sidebar,
body.tax-product_cat [data-block-name="woocommerce/product-results-count"] {
    display:none !important;
}

/* Center the whole product area */
body.tax-product_cat .emotive-catalog-main {
    width:min(calc(100% - 120px), 1400px) !important;
    max-width:1400px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}

/* Four equal centered products */
@media (min-width:1101px) {

    body.tax-product_cat .emotive-catalog-main .wc-block-product-template {
        display:grid !important;
        grid-template-columns:repeat(4, minmax(0, 1fr)) !important;

        width:100% !important;
        max-width:none !important;

        margin-left:auto !important;
        margin-right:auto !important;

        gap:38px !important;
    }

    body.tax-product_cat
    .emotive-catalog-main
    .wc-block-product-template > li.wc-block-product {
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
    }
}

/* Tablet */
@media (min-width:701px) and (max-width:1100px) {

    body.tax-product_cat .emotive-catalog-main {
        width:min(calc(100% - 64px), 1000px) !important;
    }

    body.tax-product_cat .emotive-catalog-main .wc-block-product-template {
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
        gap:28px !important;
    }
}

/* Mobile */
@media (max-width:700px) {

    body.tax-product_cat .emotive-catalog-main {
        width:calc(100% - 32px) !important;
    }

    body.tax-product_cat .emotive-catalog-main .wc-block-product-template {
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:28px !important;
    }
}


/* =========================================================
   EMOTIVE — CLEAN PRODUCT CATEGORY COLLECTIONS
   Bags / Bottles / Yoga Mats / Accessories / Bundles
   ========================================================= */


/* ---------------------------------------------------------
   REMOVE ALL ARCHIVE CONTROLS
   --------------------------------------------------------- */

body.tax-product_cat [data-block-name="woocommerce/product-results-count"],
body.tax-product_cat .wc-block-product-results-count,
body.tax-product_cat .woocommerce-result-count,

body.tax-product_cat [data-block-name="woocommerce/catalog-sorting"],
body.tax-product_cat .wc-block-catalog-sorting,
body.tax-product_cat .woocommerce-ordering,

body.tax-product_cat .emotive-catalog-topnav,
body.tax-product_cat .emotive-catalog-sidebar {
    display:none !important;
}


/* ---------------------------------------------------------
   CATEGORY PAGE WIDTH
   --------------------------------------------------------- */

body.tax-product_cat .emotive-catalog-layout {
    display:block !important;

    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;
}

body.tax-product_cat .emotive-catalog-main {
    width:min(calc(100% - 96px), 1500px) !important;
    max-width:1500px !important;

    margin:0 auto !important;
    padding:0 0 90px !important;
}


/* ---------------------------------------------------------
   CATEGORY TITLE
   --------------------------------------------------------- */

body.tax-product_cat .wp-block-query-title,
body.tax-product_cat .woocommerce-products-header__title,
body.tax-product_cat h1.page-title {
    width:100% !important;
    max-width:none !important;

    margin:48px auto 58px !important;

    text-align:center !important;

    font-family:"Cormorant Garamond", Georgia, serif !important;
    font-size:clamp(54px, 5vw, 78px) !important;
    font-weight:500 !important;
    line-height:.95 !important;

    color:#2f1c14 !important;
    -webkit-text-fill-color:#2f1c14 !important;
}


/* ---------------------------------------------------------
   PRODUCT GRID
   Auto-fit means:
   4 products = centred
   3 products = centred
   2 products = centred
   --------------------------------------------------------- */

body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template {
    display:grid !important;

    grid-template-columns:
        repeat(auto-fit, minmax(240px, 300px)) !important;

    justify-content:center !important;
    align-items:start !important;

    column-gap:42px !important;
    row-gap:64px !important;

    width:100% !important;
    max-width:none !important;

    margin:0 auto !important;
    padding:0 !important;
}


/* Individual product card */
body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template > li.wc-block-product {
    width:100% !important;
    max-width:300px !important;

    margin:0 auto !important;
    padding:0 !important;

    text-align:center !important;
}


/* Product image */
body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wc-block-components-product-image {
    width:100% !important;

    margin:0 0 24px !important;
}

body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wc-block-components-product-image img {
    display:block !important;

    width:100% !important;
    height:auto !important;

    margin:0 !important;

    aspect-ratio:1 / 1 !important;
    object-fit:cover !important;
}


/* Product name */
body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wp-block-post-title {
    margin:0 0 18px !important;

    font-family:"Cormorant Garamond", Georgia, serif !important;
    font-size:27px !important;
    font-weight:500 !important;
    line-height:1.1 !important;

    text-align:center !important;
}

body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wp-block-post-title a {
    color:#2f1c14 !important;
    -webkit-text-fill-color:#2f1c14 !important;
}


/* Price */
body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wp-block-woocommerce-product-price {
    margin:0 0 22px !important;
}

body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wc-block-components-product-price {
    font-size:15px !important;
    text-align:center !important;
}


/* Add to cart / Select options */
body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wc-block-components-product-button {
    margin:0 !important;

    align-items:center !important;
}

body.tax-product_cat
.emotive-catalog-main
.wc-block-product-template
.wc-block-components-product-button__button {
    min-width:155px !important;
    min-height:50px !important;

    padding:0 22px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    background:#332219 !important;

    border:0 !important;
    border-radius:0 !important;

    color:#fff !important;
    -webkit-text-fill-color:#fff !important;

    font-size:12px !important;
    font-weight:600 !important;
    letter-spacing:.02em !important;
}


/* Wishlist */
body.tax-product_cat
.emotive-catalog-main
.adfy-wl-btn {
    margin:28px auto 0 !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width:701px) and (max-width:1100px) {

    body.tax-product_cat .emotive-catalog-main {
        width:calc(100% - 64px) !important;
    }

    body.tax-product_cat
    .emotive-catalog-main
    .wc-block-product-template {
        grid-template-columns:
            repeat(2, minmax(220px, 300px)) !important;

        gap:48px 32px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:700px) {

    body.tax-product_cat .emotive-catalog-main {
        width:calc(100% - 32px) !important;
        padding-bottom:60px !important;
    }

    body.tax-product_cat .wp-block-query-title,
    body.tax-product_cat .woocommerce-products-header__title,
    body.tax-product_cat h1.page-title {
        margin:34px auto 40px !important;

        font-size:48px !important;
    }

    body.tax-product_cat
    .emotive-catalog-main
    .wc-block-product-template {
        grid-template-columns:minmax(0, 340px) !important;

        justify-content:center !important;

        row-gap:48px !important;
    }

    body.tax-product_cat
    .emotive-catalog-main
    .wc-block-product-template > li.wc-block-product {
        max-width:340px !important;
    }

}

