/* =========================================================
   TIENDA / CATEGORÍA — Arqe
   ========================================================= */

/* Sin padding superior en tienda/categoría (hero pegado a la cabecera). */
.post-type-archive-product .site-content,
.tax-product_cat .site-content,
.tax-product_tag .site-content{ padding-top:0 !important; }
.post-type-archive-product #primary,
.tax-product_cat #primary,
.tax-product_tag #primary{ padding-top:0; margin-top:0; }

/* -------- HERO (full-bleed, siempre navy) -------- */
.arqe-shop-hero{
  position:relative;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); width:100vw;
  background:var(--c-navy); overflow:hidden; margin-bottom:2.5rem;
}
.arqe-shop-hero__bg{
  position:absolute; inset:0; background-size:cover; background-position:center;
  opacity:.5; transform:scale(1.05); animation:arqeHeroZoom 1.2s ease both;
}
.arqe-shop-hero__overlay{ position:absolute; inset:0; background:linear-gradient(180deg, hsl(var(--navy)/.55), hsl(var(--navy)/.85)); }
.arqe-shop-hero__inner{ position:relative; z-index:1; padding:3.25rem 1.25rem; text-align:center; }
@media(min-width:640px){ .arqe-shop-hero__inner{ padding:4.5rem 2rem; } }

.arqe-shop-hero__crumb{
  font-family:"Archivo",sans-serif; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase;
  color:rgba(255,255,255,.7); animation:arqeHeroUp .6s ease both;
}
.arqe-shop-hero__crumb a{ color:rgba(255,255,255,.7); transition:color .2s; }
.arqe-shop-hero__crumb a:hover{ color:var(--c-orange); }
.arqe-shop-hero__crumb .separator{ margin:0 .4rem; opacity:.5; }
.arqe-shop-hero__crumb p, .arqe-shop-hero__crumb nav{ margin:0; }

.arqe-shop-hero__title{
  font-family:"Archivo",sans-serif; font-weight:800; letter-spacing:-.02em;
  font-size:clamp(2rem,5vw,3.25rem); margin:.6rem 0 0; color:#fff;
  animation:arqeHeroUp .6s .05s ease both;
}
.arqe-shop-hero__desc{
  max-width:40rem; margin:1rem auto 0; font-size:.95rem; line-height:1.65; color:rgba(255,255,255,.85);
  animation:arqeHeroUp .6s .12s ease both;
}
.arqe-shop-hero__desc p{ margin:0; }
@keyframes arqeHeroUp{ from{ opacity:0; transform:translateY(14px); } to{ opacity:1; transform:none; } }
@keyframes arqeHeroZoom{ from{ transform:scale(1.12); } to{ transform:scale(1.05); } }
@media (prefers-reduced-motion: reduce){ .arqe-shop-hero__bg, .arqe-shop-hero__crumb, .arqe-shop-hero__title, .arqe-shop-hero__desc{ animation:none; } }

/* -------- LAYOUT DE DOS COLUMNAS -------- */
.woocommerce-page #primary, .woocommerce #primary{ width:100%; max-width:100%; float:none; }
.post-type-archive-product #secondary,
.tax-product_cat #secondary,
.tax-product_tag #secondary{ display:none; }

.arqe-shop{ display:grid; grid-template-columns:1fr; gap:2rem; align-items:start; }
@media(min-width:1024px){ .arqe-shop{ grid-template-columns:16rem 1fr; gap:2.5rem; } }

@media(min-width:1024px){ .arqe-shop__sidebar{ position:sticky; top:5rem; align-self:start; } }
.arqe-shop__sidebar-head{ display:none; }
.arqe-shop__sidebar ul{ list-style:none; margin:0; padding:0; }
.arqe-shop__sidebar li{ margin:0; font-size:.9rem; }
.arqe-shop__sidebar a{ color:var(--c-fg); transition:color .2s; }
.arqe-shop__sidebar a:hover{ color:var(--c-orange); }

.arqe-shop__filter-toggle{
  display:inline-flex; align-items:center; gap:.5rem; align-self:flex-start;
  border:1px solid var(--c-border); background:var(--c-card); border-radius:999px;
  padding:.6rem 1.1rem; font-family:"Archivo",sans-serif; font-weight:700; font-size:.78rem;
  text-transform:uppercase; letter-spacing:.08em; cursor:pointer; color:var(--c-fg); margin-bottom:1.25rem;
}
.arqe-shop__filter-toggle:hover{ border-color:var(--c-orange); color:var(--c-orange); }
@media(min-width:1024px){ .arqe-shop__filter-toggle{ display:none; } }

.arqe-shop__backdrop{ display:none; }
@media(max-width:1023px){
  .arqe-shop__sidebar{
    position:fixed; top:0; left:0; z-index:9998; height:100%; width:85%; max-width:22rem;
    background:var(--c-bg); padding:1.25rem; overflow-y:auto;
    transform:translateX(-100%); transition:transform .25s ease; box-shadow:0 0 40px rgba(0,0,0,.2);
  }
  .arqe-shop.filters-open .arqe-shop__sidebar{ transform:translateX(0); }
  .arqe-shop__sidebar-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem; font-family:"Archivo",sans-serif; font-weight:800; font-size:1.1rem; }
  .arqe-shop__sidebar-close{ border:0; background:transparent; cursor:pointer; color:var(--c-fg); display:flex; padding:0; }
  .arqe-shop.filters-open .arqe-shop__backdrop{ display:block; position:fixed; inset:0; z-index:9997; background:hsl(var(--foreground)/.45); backdrop-filter:blur(2px); }
}

/* -------- CUADRÍCULA: 3 columnas -------- */
.arqe-shop__main ul.products{ display:grid; grid-template-columns:repeat(2,1fr); gap:2.25rem 1.5rem; margin:0; padding:0; }
@media(min-width:768px){ .arqe-shop__main ul.products{ grid-template-columns:repeat(3,1fr); } }
.arqe-shop__main ul.products::before, .arqe-shop__main ul.products::after{ display:none; content:none; }
.arqe-shop__main ul.products li.product{ width:auto !important; margin:0 !important; float:none !important; }

/* -------- TARJETAS DE PRODUCTO -------- */
.woocommerce ul.products li.product{ position:relative; text-align:left; background:transparent; }
.arqe-card__media{ position:relative; overflow:hidden; border-radius:var(--radius); }
.arqe-card__imglink{ display:block; }
.woocommerce ul.products li.product .arqe-card__imglink img{
  margin:0; width:100%; aspect-ratio:4/5; object-fit:cover; display:block; border-radius:var(--radius);
  transition:transform .55s ease;
}
.woocommerce ul.products li.product:hover .arqe-card__imglink img{ transform:scale(1.04); }

/* Botón añadir al carrito superpuesto: oculto por defecto, aparece al hover */
.arqe-card__media .button.add_to_cart_button{
  position:absolute; left:.75rem; right:.75rem; bottom:.75rem; z-index:3; width:auto;
  display:flex; align-items:center; justify-content:center; gap:.5rem; margin:0;
  background:var(--c-navy); color:#fff; border-radius:999px; padding:.85rem 1rem;
  font-family:"Archivo",sans-serif; font-weight:700; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em;
  opacity:0; transform:translateY(10px); transition:opacity .25s ease, transform .25s ease, background .2s ease;
}
.arqe-card__media .button.add_to_cart_button::before{
  content:""; width:16px; height:16px; flex:none; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") center/contain no-repeat;
}
.arqe-card__media .button.add_to_cart_button:hover{ background:var(--c-orange); }
.woocommerce ul.products li.product:hover .arqe-card__media .button.add_to_cart_button{ opacity:1; transform:none; }
.arqe-card__media a.added_to_cart{
  position:absolute; left:.75rem; right:.75rem; bottom:.75rem; z-index:4; text-align:center;
  background:var(--c-orange); color:#fff; border-radius:999px; padding:.7rem 1rem;
  font-family:"Archivo",sans-serif; font-weight:700; font-size:.68rem; text-transform:uppercase; letter-spacing:.1em;
}
@media (hover:none), (max-width:1023px){
  .arqe-card__media .button.add_to_cart_button{ opacity:1 !important; transform:none !important; }
}

/* Info bajo la imagen */
.arqe-card__info{ padding-top:.9rem; }
.arqe-card__eyebrow{ font-family:"Archivo",sans-serif; font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; color:var(--c-mutedfg); margin:0 0 .35rem; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:"Archivo",sans-serif; font-weight:700; font-size:1.05rem; color:var(--c-fg); padding:0 0 .2rem; margin:0 0 .2rem;
}
.arqe-card__titlelink{ color:var(--c-fg); }
.arqe-card__titlelink:hover .woocommerce-loop-product__title{ color:var(--c-orange); }
.woocommerce ul.products li.product .star-rating{ font-size:.78em; margin:.3rem 0; color:var(--c-orange); float:none; }

/* Precio en la card: oferta a la izquierda, original tachado a la derecha (alineado a la izquierda) */
.woocommerce ul.products li.product .price{
  display:flex; align-items:baseline; gap:.4rem; flex-wrap:wrap;
  margin:0; padding:0;
  color:var(--c-orange); font-family:"Archivo",sans-serif; font-weight:700; font-size:1rem;
}
.woocommerce ul.products li.product .price ins{ order:0; text-decoration:none; background:transparent; color:var(--c-orange); margin:0; padding:0; }
.woocommerce ul.products li.product .price del{ order:1; font-size:.8em; color:var(--c-mutedfg); opacity:.65; font-weight:500; margin:0; padding:0; }
.woocommerce ul.products li.product .price .woocommerce-Price-amount{ margin:0; }

/* Badge de % de descuento */
.woocommerce span.onsale, .woocommerce ul.products li.product .onsale{
  position:absolute; top:.75rem; left:.75rem; right:auto; margin:0; z-index:2;
  background:var(--c-navy); color:#fff; border-radius:999px;
  font-family:"Archivo",sans-serif; font-weight:700; font-size:.66rem; letter-spacing:.04em;
  padding:.35rem .7rem; min-height:0; min-width:0; line-height:1;
}
