/**
 * Amaley Core Card Library CSS.
 *
 * v1.0.81 final shared card structure:
 * media → label → title → excerpt → meta boxes → tags → button.
 * Applies only to centralized cards using .amaley-card classes.
 */
.amaley-card{
  --amaley-card-dark:#2f1405;
  --amaley-card-warm:#4b240a;
  --amaley-card-paper:#fff9ee;
  --amaley-card-cream:#f9f0e1;
  --amaley-card-soft:#f4e6cf;
  --amaley-card-gold:#c2870b;
  --amaley-card-rust:#b95531;
  --amaley-card-muted:#725b49;
  --amaley-card-border:rgba(194,136,10,.26);
  --amaley-card-shadow:0 16px 38px rgba(46,18,3,.08);
  box-sizing:border-box;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
  min-width:0;
  border:1px solid var(--amaley-card-border);
  border-radius:18px;
  background:var(--amaley-card-paper);
  box-shadow:var(--amaley-card-shadow);
  color:var(--amaley-card-warm);
}
.amaley-card *{box-sizing:border-box}
.amaley-card__media{
  position:relative;
  height:166px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:linear-gradient(135deg,#f2e1c4 0%,#ecdbbe 100%);
  color:var(--amaley-card-gold);
  font-family:"Playfair Display",Georgia,serif;
  font-size:24px;
  font-weight:700;
  line-height:1;
}
.amaley-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.amaley-card__badge{
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:calc(100% - 24px);
  min-height:24px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--amaley-card-rust);
  color:#fffaf2;
  font-family:Lato,Arial,sans-serif;
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 8px 18px rgba(47,20,5,.16);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.amaley-card__initials{
  width:58px;
  height:58px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(194,136,10,.10);
  color:var(--amaley-card-gold);
  font-family:"Playfair Display",Georgia,serif;
  font-size:19px;
  font-weight:800;
  letter-spacing:.04em;
}
.amaley-card__body{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:18px;
}
.amaley-card__label{
  margin:0;
  color:var(--amaley-card-gold);
  font-size:10.5px;
  line-height:1.15;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:900;
}
.amaley-card__title{
  margin:0;
  color:var(--amaley-card-dark);
  font-family:"Playfair Display",Georgia,serif;
  font-size:22px;
  line-height:1.08;
  font-weight:650;
  letter-spacing:-.02em;
}
.amaley-card__excerpt{
  margin:0;
  color:var(--amaley-card-muted);
  font-size:13.2px;
  line-height:1.46;
  min-height:38px;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.amaley-card__meta{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:2px;
}
.amaley-card__meta-item{
  min-width:0;
  min-height:54px;
  padding:9px 10px;
  border-radius:10px;
  background:rgba(194,136,10,.055);
  border:1px solid rgba(194,136,10,.22);
  overflow:hidden;
}
.amaley-card__meta-item--wide{
  grid-column:1 / -1;
}
.amaley-card__meta span{
  display:block;
  margin:0 0 5px;
  color:var(--amaley-card-gold);
  font-size:9px;
  line-height:1.1;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.amaley-card__meta strong{
  display:block;
  color:var(--amaley-card-dark);
  font-size:12.2px;
  line-height:1.24;
  font-weight:900;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.amaley-card__price,
.amaley-card__price .amount,
.amaley-card__price .woocommerce-Price-amount,
.amaley-card__price .woocommerce-Price-currencySymbol,
.amaley-card__price bdi{
  display:inline;
  white-space:nowrap;
  line-height:1.25;
}
.amaley-card__tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:0;
  max-height:58px;
  overflow:hidden;
}
.amaley-card__tags span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid rgba(194,136,10,.24);
  background:rgba(194,136,10,.075);
  color:#684119;
  font-size:10px;
  font-weight:850;
  line-height:1.1;
  white-space:nowrap;
}
.amaley-card__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:42px;
  margin-top:auto;
  padding:12px 18px;
  border-radius:999px;
  background:var(--amaley-card-rust);
  color:#fffaf2;
  text-decoration:none;
  font-size:11px;
  font-weight:950;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.amaley-card__button:hover,
.amaley-card__button:focus{
  background:var(--amaley-card-dark);
  color:#fffaf2;
}

/* Family-specific minor rhythm while keeping the same card structure. */
.amaley-card--product .amaley-card__media{height:168px}
.amaley-card--product .amaley-card__title{min-height:46px}
.amaley-card--product .amaley-card__excerpt{min-height:40px}

.amaley-card--shg .amaley-card__media,
.amaley-card--cluster .amaley-card__media{
  height:166px;
  background:linear-gradient(135deg,#f1e1c2 0%,#ead6b5 100%);
}
.amaley-card--member .amaley-card__media{height:166px}

/* Recovery flow: only the one approved old-core standard card is exposed per family. */

@media(max-width:900px){
  .amaley-card__media{height:154px}
  .amaley-card__title{font-size:21px}
}
@media(max-width:640px){
  .amaley-card{
    border-radius:16px;
  }
  .amaley-card__media,
  .amaley-card--product .amaley-card__media,
  .amaley-card--shg .amaley-card__media,
  .amaley-card--cluster .amaley-card__media,
  .amaley-card--member .amaley-card__media{
    height:148px;
  }
  .amaley-card__body{
    padding:16px;
  }
  .amaley-card__title,
  .amaley-card--product .amaley-card__title{
    min-height:0;
    font-size:20px;
  }
  .amaley-card__excerpt,
  .amaley-card--product .amaley-card__excerpt{
    min-height:0;
  }
  .amaley-card__meta{
    grid-template-columns:1fr;
  }
}

/* v1.0.82.1 — defensive cluster preview support */
.amcss-related-shg .amaley-card,
.amcss-related-producer .amaley-card{
  display:flex;
  flex-direction:column;
  background:var(--amaley-card-paper,#fff9ee);
  border:1px solid var(--amaley-card-border,rgba(194,136,10,.26));
  border-radius:18px;
  overflow:hidden;
}

/* v1.0.86 — OG Card Template Design Lock
   These aliases intentionally do not change the accepted visual design.
   They exist so Elementor section selectors can later switch to OG Card 1 safely:
   - .amaley-card--og_cluster_card_1
   - .amaley-card--og_shg_card_1
   - .amaley-card--og_member_card_1
   - .amaley-card--og_product_card_1
   Future approved templates should be added as OG Card 2, not by altering OG Card 1 unexpectedly. */
.amaley-card--og_cluster_card_1,
.amaley-card--og_shg_card_1,
.amaley-card--og_member_card_1,
.amaley-card--og_product_card_1{
  /* Design intentionally inherited from the locked .amaley-card base and family rules. */
}

/* v1.0.89 — OG Card transform controls.
   Default values keep the accepted design unchanged. Elementor controls set these variables per widget. */
.amaley-card{
  --amaley-og-card-translate-y: 0px;
  --amaley-og-card-scale: 1;
  --amaley-og-card-rotate: 0deg;
  --amaley-og-card-hover-translate-y: 0px;
  --amaley-og-card-hover-scale: 1;
  --amaley-og-card-hover-rotate: 0deg;
  --amaley-og-card-transition-duration: 220ms;
  transform:
    translateY(var(--amaley-og-card-translate-y))
    scale(var(--amaley-og-card-scale))
    rotate(var(--amaley-og-card-rotate));
  transition:
    transform var(--amaley-og-card-transition-duration) ease,
    box-shadow var(--amaley-og-card-transition-duration) ease,
    border-color var(--amaley-og-card-transition-duration) ease,
    background-color var(--amaley-og-card-transition-duration) ease;
}
.amaley-card:hover{
  transform:
    translateY(calc(var(--amaley-og-card-translate-y) + var(--amaley-og-card-hover-translate-y)))
    scale(calc(var(--amaley-og-card-scale) * var(--amaley-og-card-hover-scale)))
    rotate(calc(var(--amaley-og-card-rotate) + var(--amaley-og-card-hover-rotate)));
}

/* v1.0.97.6 — Universal Product Card price/meta label-value readability fix */
.amaley-card--product .amaley-card__meta,
.amaley-card--cluster-single-product .amaley-card__meta,
.amaley-card--member-single-product .amaley-card__meta,
.amaley-card--product-archive .amaley-card__meta{
  align-items:stretch;
}

.amaley-card--product .amaley-card__meta-item,
.amaley-card--cluster-single-product .amaley-card__meta-item,
.amaley-card--member-single-product .amaley-card__meta-item,
.amaley-card--product-archive .amaley-card__meta-item{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  min-height:58px;
}

.amaley-card--product .amaley-card__meta-item span,
.amaley-card--cluster-single-product .amaley-card__meta-item span,
.amaley-card--member-single-product .amaley-card__meta-item span,
.amaley-card--product-archive .amaley-card__meta-item span{
  display:block;
  margin:0;
  color:#c48300;
  font-size:9px;
  font-weight:900;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.amaley-card--product .amaley-card__meta-item strong,
.amaley-card--cluster-single-product .amaley-card__meta-item strong,
.amaley-card--member-single-product .amaley-card__meta-item strong,
.amaley-card--product-archive .amaley-card__meta-item strong{
  display:block;
  margin:0;
  color:#2f1507;
  font-size:13px;
  font-weight:900;
  line-height:1.18;
  letter-spacing:.01em;
  word-break:break-word;
}

.amaley-card--product .amaley-card__meta-item strong .amount,
.amaley-card--cluster-single-product .amaley-card__meta-item strong .amount,
.amaley-card--member-single-product .amaley-card__meta-item strong .amount,
.amaley-card--product-archive .amaley-card__meta-item strong .amount,
.amaley-card--product .amaley-card__meta-item strong bdi,
.amaley-card--cluster-single-product .amaley-card__meta-item strong bdi,
.amaley-card--member-single-product .amaley-card__meta-item strong bdi,
.amaley-card--product-archive .amaley-card__meta-item strong bdi{
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
}

@media (max-width:640px){
  .amaley-card--product .amaley-card__meta-item strong,
  .amaley-card--cluster-single-product .amaley-card__meta-item strong,
  .amaley-card--member-single-product .amaley-card__meta-item strong,
  .amaley-card--product-archive .amaley-card__meta-item strong{
    font-size:12px;
  }
}

/* v1.0.99.5 — OG Product Card price stack fix
   Source: tested helper plugin, now merged into Amaley Core.
   Scope: product-card price only. Discovery Engine, filters, product data, mappings and WooCommerce templates remain untouched. */
.amaley-card--product .amaley-card__meta-item strong.amaley-card__price,
.amaley-card--og_product_card_1 .amaley-card__meta-item strong.amaley-card__price,
.amaley-card--cluster-single-product .amaley-card__meta-item strong.amaley-card__price,
.amaley-card--member-single-product .amaley-card__meta-item strong.amaley-card__price,
.amaley-card--product-archive .amaley-card__meta-item strong.amaley-card__price{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:3px;
  min-width:0;
  width:100%;
  max-width:100%;
  overflow:visible;
  white-space:normal;
  -webkit-line-clamp:unset;
  -webkit-box-orient:initial;
  line-clamp:unset;
}

.amaley-card--product .amaley-card__price del,
.amaley-card--og_product_card_1 .amaley-card__price del,
.amaley-card--cluster-single-product .amaley-card__price del,
.amaley-card--member-single-product .amaley-card__price del,
.amaley-card--product-archive .amaley-card__price del{
  display:block;
  margin:0;
  padding:0;
  color:#7b5c46;
  opacity:.72;
  font-size:11px;
  line-height:1.08;
  font-weight:750;
  text-decoration:line-through;
  text-decoration-thickness:1.25px;
  text-decoration-color:rgba(123,92,70,.86);
  white-space:nowrap;
}

.amaley-card--product .amaley-card__price ins,
.amaley-card--og_product_card_1 .amaley-card__price ins,
.amaley-card--cluster-single-product .amaley-card__price ins,
.amaley-card--member-single-product .amaley-card__price ins,
.amaley-card--product-archive .amaley-card__price ins{
  display:block;
  margin:0;
  padding:0;
  color:#2f1507;
  font-size:14px;
  line-height:1.08;
  font-weight:950;
  text-decoration:none;
  white-space:nowrap;
}

.amaley-card--product .amaley-card__price .amount,
.amaley-card--og_product_card_1 .amaley-card__price .amount,
.amaley-card--cluster-single-product .amaley-card__price .amount,
.amaley-card--member-single-product .amaley-card__price .amount,
.amaley-card--product-archive .amaley-card__price .amount,
.amaley-card--product .amaley-card__price .woocommerce-Price-amount,
.amaley-card--og_product_card_1 .amaley-card__price .woocommerce-Price-amount,
.amaley-card--cluster-single-product .amaley-card__price .woocommerce-Price-amount,
.amaley-card--member-single-product .amaley-card__price .woocommerce-Price-amount,
.amaley-card--product-archive .amaley-card__price .woocommerce-Price-amount,
.amaley-card--product .amaley-card__price bdi,
.amaley-card--og_product_card_1 .amaley-card__price bdi,
.amaley-card--cluster-single-product .amaley-card__price bdi,
.amaley-card--member-single-product .amaley-card__price bdi,
.amaley-card--product-archive .amaley-card__price bdi{
  display:inline;
  white-space:nowrap;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
}

.amaley-card--product .amaley-card__price > .amount,
.amaley-card--og_product_card_1 .amaley-card__price > .amount,
.amaley-card--cluster-single-product .amaley-card__price > .amount,
.amaley-card--member-single-product .amaley-card__price > .amount,
.amaley-card--product-archive .amaley-card__price > .amount{
  color:#2f1507;
  font-size:14px;
  line-height:1.08;
  font-weight:950;
}

@media(max-width:640px){
  .amaley-card--product .amaley-card__meta-item strong.amaley-card__price,
  .amaley-card--og_product_card_1 .amaley-card__meta-item strong.amaley-card__price,
  .amaley-card--cluster-single-product .amaley-card__meta-item strong.amaley-card__price,
  .amaley-card--member-single-product .amaley-card__meta-item strong.amaley-card__price,
  .amaley-card--product-archive .amaley-card__meta-item strong.amaley-card__price{
    gap:2px;
  }
  .amaley-card--product .amaley-card__price del,
  .amaley-card--og_product_card_1 .amaley-card__price del,
  .amaley-card--cluster-single-product .amaley-card__price del,
  .amaley-card--member-single-product .amaley-card__price del,
  .amaley-card--product-archive .amaley-card__price del{
    font-size:10.5px;
  }
  .amaley-card--product .amaley-card__price ins,
  .amaley-card--og_product_card_1 .amaley-card__price ins,
  .amaley-card--cluster-single-product .amaley-card__price ins,
  .amaley-card--member-single-product .amaley-card__price ins,
  .amaley-card--product-archive .amaley-card__price ins,
  .amaley-card--product .amaley-card__price > .amount,
  .amaley-card--og_product_card_1 .amaley-card__price > .amount,
  .amaley-card--cluster-single-product .amaley-card__price > .amount,
  .amaley-card--member-single-product .amaley-card__price > .amount,
  .amaley-card--product-archive .amaley-card__price > .amount{
    font-size:13px;
  }
}


/* Amaley old-core card rail: grid / carousel. Scoped and no forced CSS. */
.amaley-card-rail{position:relative;width:100%;--amaley-card-rail-gap:24px;--amaley-rail-per-view:3}
.amaley-card-rail__viewport{width:100%;overflow:visible}
.amaley-card-rail__track{min-width:0;will-change:transform}
.amaley-card-rail__slide{min-width:0;height:auto}
.amaley-card-rail.is-grid .amaley-card-rail__track{display:grid;grid-template-columns:repeat(var(--amaley-rail-cols-desktop,3),minmax(0,1fr));gap:var(--amaley-card-rail-gap,24px);transform:none;transition:none}
.amaley-card-rail.is-grid .amaley-card-rail__slide{width:auto;max-width:none;min-width:0;flex:initial}
.amaley-card-rail.is-grid .amaley-card-rail__arrow,.amaley-card-rail.is-grid .amaley-card-rail__dots{display:none}
.amaley-card-rail.is-carousel .amaley-card-rail__viewport{overflow:hidden}
.amaley-card-rail.is-carousel .amaley-card-rail__track{display:flex;gap:var(--amaley-card-rail-gap,24px);transition:transform .32s ease;transform:translate3d(0,0,0)}
.amaley-card-rail.is-carousel .amaley-card-rail__slide{flex:0 0 calc((100% - (var(--amaley-card-rail-gap,24px) * (var(--amaley-rail-per-view,3) - 1))) / var(--amaley-rail-per-view,3));max-width:calc((100% - (var(--amaley-card-rail-gap,24px) * (var(--amaley-rail-per-view,3) - 1))) / var(--amaley-rail-per-view,3))}
.amaley-card-rail.is-carousel .amaley-card{height:100%}
.amaley-card-rail__arrow{position:absolute;top:50%;z-index:4;display:flex;transform:translateY(-50%);width:42px;height:42px;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(194,136,10,.32);background:#fffaf2;color:#2f1405;box-shadow:0 12px 30px rgba(46,18,3,.12);cursor:pointer;font-size:24px;line-height:1;text-decoration:none;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.amaley-card-rail__arrow--prev{left:-18px}
.amaley-card-rail__arrow--next{right:-18px}
.amaley-card-rail__arrow:hover{background:#b5502a;color:#fffaf2;border-color:#b5502a}
.amaley-card-rail__arrow[disabled]{opacity:.35;cursor:not-allowed;transform:translateY(-50%)}
.amaley-card-rail__dots{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px}
.amaley-card-rail__dot{width:8px;height:8px;border-radius:999px;border:1px solid rgba(194,136,10,.42);background:transparent;padding:0;cursor:pointer;transition:width .2s ease,background-color .2s ease,border-color .2s ease}
.amaley-card-rail__dot.is-active{width:22px;background:#b5502a;border-color:#b5502a}
@media(max-width:1024px){.amaley-card-rail.is-grid .amaley-card-rail__track{grid-template-columns:repeat(var(--amaley-rail-cols-tablet,2),minmax(0,1fr))}}
@media(max-width:700px){.amaley-card-rail__arrow{width:36px;height:36px;font-size:20px}.amaley-card-rail__arrow--prev{left:4px}.amaley-card-rail__arrow--next{right:4px}}
@media(max-width:640px){.amaley-card-rail.is-grid .amaley-card-rail__track{grid-template-columns:repeat(var(--amaley-rail-cols-mobile,1),minmax(0,1fr))}}

/* Amaley pagination: numbers + arrows. */
.amaley-pagination,.amcss-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:26px 0 0}
.amcss-page-link,.amcss-page-ellipsis{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(194,136,10,.28);background:#fffaf2;color:#2f1405;text-decoration:none;font-size:12px;font-weight:800;line-height:1;box-shadow:0 8px 22px rgba(46,18,3,.06);transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.amcss-page-link:hover{background:#b5502a;color:#fffaf2;border-color:#b5502a;transform:translateY(-1px)}
.amcss-page-current{background:#2f1405;color:#fffaf2;border-color:#2f1405}
.amcss-page-prev,.amcss-page-next{font-size:20px;font-weight:500}
.amcss-page-link.is-disabled{opacity:.38;pointer-events:none;box-shadow:none}
.amcss-page-ellipsis{border-color:transparent;background:transparent;box-shadow:none;color:#7a4520;min-width:22px}
