/* =========================================================
   HERO
========================================================= */
.pa-hero{
  background:radial-gradient(120% 140% at 100% 0%, #3a0d13 0%, var(--pa-accent) 45%, #0a0e17 100%);
  color:#fff;
  overflow:hidden;
  position:relative;
}
.pa-hero__inner{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:40px;
  align-items:center;
  padding:64px var(--pa-gutter) 56px;
}
.pa-eyebrow--on-dark{background:rgba(255,255,255,.12);color:#fff;}
.pa-hero__heading{
  font-size:clamp(32px,5vw,54px);
  color:#fff;
  margin-bottom:16px;
  letter-spacing:-.02em;
}
.pa-hero__subheading{
  font-size:17px;
  color:rgba(255,255,255,.82);
  max-width:520px;
  margin-bottom:28px;
}
.pa-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-bottom:36px;
}
.pa-hero__stats{
  display:flex;
  gap:32px;
  flex-wrap:wrap;
}
.pa-hero__stat{display:flex;flex-direction:column;}
.pa-hero__stat strong{font-family:var(--pa-font-display);font-size:24px;color:var(--pa-accent-2);}
.pa-hero__stat span{font-size:13px;color:rgba(255,255,255,.7);}

.pa-hero__media{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pa-hero__media img{
  border-radius:var(--pa-radius-lg);
  box-shadow:0 30px 60px rgba(0,0,0,.35);
  max-height:460px;
  width:auto;
  object-fit:cover;
}
.pa-hero__media-default{
  width:100%;
  max-width:420px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
}
.pa-hero__media-default img{
  width:100%;
  aspect-ratio:1;
  border-radius:var(--pa-radius-lg);
  box-shadow:0 30px 60px rgba(0,0,0,.35);
  object-fit:cover;
}
.pa-hero__media-hint{color:rgba(255,255,255,.55);font-size:12.5px;text-align:center;max-width:260px;margin:0;}

@media(max-width:900px){
  .pa-hero__inner{grid-template-columns:1fr;padding:44px var(--pa-gutter) 40px;text-align:left;}
  .pa-hero__media{order:-1;}
  .pa-hero__media img,.pa-hero__media-default{max-height:280px;max-width:280px;}
}
@media(max-width:480px){
  .pa-hero__actions .pa-btn{width:100%;}
  .pa-hero__stats{gap:20px;}
  .pa-hero__inner{padding:32px var(--pa-gutter) 28px;}
  .pa-hero__media img,.pa-hero__media-default{max-height:200px;max-width:200px;}
  .pa-hero__media-hint{font-size:11.5px;max-width:200px;}
}
@media(max-width:360px){
  .pa-hero__media img,.pa-hero__media-default{max-height:160px;max-width:160px;}
}

/* =========================================================
   SECTION HEAD
========================================================= */
.pa-section-head--center{justify-content:center;text-align:center;flex-direction:column;align-items:center;}

/* =========================================================
   CATEGORY GRID
========================================================= */
.pa-category-tile{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background:var(--pa-paper);
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius);
  padding:18px 14px 16px;
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.pa-category-tile:hover{
  box-shadow:var(--pa-shadow-lg);
  transform:translateY(-4px);
  border-color:transparent;
}
.pa-category-tile__image{
  width:100%;
  aspect-ratio:1;
  border-radius:50%;
  overflow:hidden;
  margin-bottom:14px;
  background:var(--pa-bg-alt);
}
.pa-category-tile__image img,
.pa-category-tile__image svg{width:100%;height:100%;object-fit:cover;display:block;}
.pa-category-tile__name{font-weight:700;font-size:15px;color:var(--pa-ink);}
.pa-category-tile__count{font-size:12px;color:var(--pa-ink-soft);margin-top:2px;}

/* =========================================================
   PRODUCT CARD (also used by WooCommerce loops)
========================================================= */
.pa-product-card{
  background:var(--pa-paper);
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:box-shadow .2s ease, transform .2s ease;
  position:relative;
  list-style:none;
}
.pa-product-card:hover{box-shadow:var(--pa-shadow-lg);transform:translateY(-4px);}

.pa-product-card__media{
  position:relative;
  aspect-ratio:1;
  background:var(--pa-bg-alt);
  overflow:hidden;
}
.pa-product-card__media img,
.pa-product-card__media svg{
  width:100%;height:100%;object-fit:cover;
  transition:transform .35s ease;
  display:block;
}
.pa-product-card:hover .pa-product-card__media img,
.pa-product-card:hover .pa-product-card__media svg{transform:scale(1.06);}

.pa-product-card__badges{
  position:absolute;top:10px;left:10px;
  display:flex;flex-direction:column;gap:6px;
}
.pa-badge{
  display:inline-block;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
  padding:5px 10px;
  border-radius:999px;
  color:#fff;
}
.pa-badge--sale{background:var(--pa-primary);}
.pa-badge--out{background:#6b7280;}

.pa-product-card__quickview{
  position:absolute;
  left:10px;right:10px;bottom:-46px;
  background:var(--pa-accent);
  color:#fff;
  border:none;
  padding:10px;
  font-size:13px;
  font-weight:600;
  border-radius:8px;
  cursor:pointer;
  transition:bottom .2s ease;
}
.pa-product-card:hover .pa-product-card__quickview{bottom:10px;}

.pa-product-card__body{
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:6px;
  flex:1;
}
.pa-product-card__cat{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--pa-primary);
  font-weight:700;
  margin:0;
}
.pa-product-card__title{font-size:15px;margin:0;line-height:1.4;}
.pa-product-card__title a{color:var(--pa-ink);}
.pa-product-card__title a:hover{color:var(--pa-primary);}

.pa-product-card__rating{display:flex;align-items:center;gap:6px;}
.pa-stars{display:inline-flex;gap:2px;}
.pa-star{width:14px;height:14px;}
.pa-star--full{color:var(--pa-accent-2);}
.pa-star--half{color:var(--pa-accent-2);opacity:.5;}
.pa-star--empty{color:#d1d5db;}
.pa-stars-count{font-size:12px;color:var(--pa-ink-soft);}

.pa-product-card__price{font-size:17px;font-weight:700;color:var(--pa-ink);margin-top:2px;}
.pa-product-card__price del{color:var(--pa-ink-soft);font-weight:400;font-size:14px;margin-right:6px;}
.pa-product-card__price ins{text-decoration:none;color:var(--pa-primary);}

.pa-product-card__actions{margin-top:auto;padding-top:10px;}
.pa-product-card__add-to-cart{width:100%;}

@media(max-width:480px){
  .pa-product-card__body{padding:12px;gap:4px;}
  .pa-product-card__title{font-size:13.5px;}
  .pa-product-card__price{font-size:15px;}
}

/* =========================================================
   FEATURES STRIP
========================================================= */
.pa-feature-card{
  text-align:center;
  padding:26px 18px;
  background:var(--pa-paper);
  border-radius:var(--pa-radius);
  border:1px solid var(--pa-border);
}
.pa-feature-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:56px;height:56px;
  border-radius:50%;
  background:var(--pa-primary-light);
  color:var(--pa-primary);
  margin-bottom:14px;
}
.pa-feature-card h3{font-size:16px;margin-bottom:6px;}
.pa-feature-card p{font-size:13.5px;color:var(--pa-ink-soft);margin:0;}

/* =========================================================
   TESTIMONIALS
========================================================= */
.pa-testimonial-card{
  background:var(--pa-paper);
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius);
  padding:26px;
}
.pa-testimonial-card__text{
  font-size:15px;
  color:var(--pa-ink);
  margin:12px 0 18px;
  line-height:1.6;
}
.pa-testimonial-card__author{display:flex;align-items:center;gap:12px;}
.pa-testimonial-card__avatar{
  display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:50%;
  background:var(--pa-accent);color:#fff;font-weight:700;
}
.pa-testimonial-card__author strong{display:block;font-size:14px;}
.pa-testimonial-card__author span{font-size:12.5px;color:var(--pa-ink-soft);}

/* =========================================================
   NEWSLETTER / CTA BAND
========================================================= */
.pa-newsletter{
  background:linear-gradient(120deg, var(--pa-primary), var(--pa-primary-dark));
}
.pa-newsletter__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
  color:#fff;
}
.pa-newsletter h2{color:#fff;margin-bottom:6px;font-size:26px;}
.pa-newsletter p{color:rgba(255,255,255,.9);margin:0;max-width:520px;}
.pa-newsletter .pa-btn--primary{background:#fff;color:var(--pa-primary);}
.pa-newsletter .pa-btn--primary:hover{background:var(--pa-accent);color:#fff;}

@media(max-width:600px){
  .pa-newsletter__inner{text-align:center;justify-content:center;}
}
