/* ============================================================
   PRODUCT GRID / CARD  (shared by shop loop + homepage showcases)
   ============================================================ */
.sky-product-grid{
  display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--sp-4);
  list-style:none;padding:0;margin:0;
}
.sky-product-grid--4{grid-template-columns:repeat(4,1fr);}
ul.products.sky-product-grid{grid-template-columns:repeat(3,1fr);}
@media (max-width:1024px){ .sky-product-grid,.sky-product-grid--4{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .sky-product-grid,.sky-product-grid--4{grid-template-columns:1fr;} }

.sky-product-card{list-style:none;}
.sky-product-card__link{display:block;}
.sky-product-card__media{
  position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--c-paper-2);border-radius:var(--radius-m);
}
.sky-product-card__img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:opacity .5s var(--ease), transform .6s var(--ease);
}
.sky-product-card__img--hover{opacity:0;}
.sky-product-card__link:hover .sky-product-card__img--main{opacity:0;}
.sky-product-card__link:hover .sky-product-card__img--hover{opacity:1;}
.sky-product-card__link:hover .sky-product-card__img{transform:scale(1.04);}
.sky-product-card__fallback{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(150deg,var(--c-navy-900) 0%,var(--c-navy-700) 45%,var(--c-purple-2) 100%);
}
.sky-product-card__fallback-mark{width:34%;max-width:110px;height:auto;opacity:.9;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35));transition:transform var(--dur) var(--ease);}
.sky-product-card__link:hover .sky-product-card__fallback-mark{transform:scale(1.06);}
.sky-product-card__cta{
  position:absolute;left:var(--sp-2);right:var(--sp-2);bottom:var(--sp-2);
  background:rgba(255,255,255,.94);color:var(--c-navy-900);
  text-align:center;padding:.85rem;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  border-radius:var(--radius-s);
  opacity:0;transform:translateY(10px);
  transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.sky-product-card__link:hover .sky-product-card__cta{opacity:1;transform:none;}
.sky-badge{
  position:absolute;top:var(--sp-2);left:var(--sp-2);z-index:2;
  font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:.4em .8em;border-radius:99px;
}
.sky-badge--custom{background:var(--grad-brand);color:#fff;}
.sky-badge--sale{background:var(--c-navy-900);color:#fff;}
.sky-product-card__info{padding-top:var(--sp-2);}
.sky-product-card__cat{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted-2);margin-bottom:.3rem;}
.sky-product-card__title{font-family:var(--font-body);text-transform:none;letter-spacing:0;font-weight:600;font-size:1rem;margin:0 0 .3rem;color:var(--c-ink);}
.sky-product-card__price{font-weight:700;color:var(--c-navy-900);}
.sky-product-card__price del{color:var(--c-muted-2);font-weight:400;margin-right:.4em;}
.sky-product-card__price ins{text-decoration:none;}

/* ============================================================
   ACCORDION (product info tabs)
   ============================================================ */
.sky-accordion__item{border-bottom:1px solid var(--c-border);padding-block:var(--sp-2);}
.sky-accordion__summary{
  display:flex;align-items:center;justify-content:space-between;cursor:pointer;
  font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.9rem;padding:.6rem 0;
  list-style:none;
}
.sky-accordion__summary::-webkit-details-marker{display:none;}
.sky-accordion__icon{position:relative;width:14px;height:14px;flex:none;}
.sky-accordion__icon::before,.sky-accordion__icon::after{content:'';position:absolute;background:var(--c-navy-900);transition:transform .3s var(--ease);}
.sky-accordion__icon::before{left:0;top:6px;width:14px;height:2px;}
.sky-accordion__icon::after{left:6px;top:0;width:2px;height:14px;}
details[open] > .sky-accordion__summary .sky-accordion__icon::after{transform:scaleY(0);}
.sky-accordion__panel{padding-block:var(--sp-2) var(--sp-3);color:var(--c-muted);}
.sky-accordion__panel table{width:100%;border-collapse:collapse;}
.sky-accordion__panel table th,.sky-accordion__panel table td{padding:.5rem 0;border-bottom:1px solid var(--c-border);text-align:left;}

/* ============================================================
   TESTIMONIALS / TRUST
   ============================================================ */
.sky-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3);margin-top:var(--sp-5);}
@media (max-width:900px){ .sky-testimonials{grid-template-columns:1fr;} }
.sky-testimonial{background:var(--c-navy-800);border:1px solid var(--c-border-dark);border-radius:var(--radius-m);padding:var(--sp-3);}
.sky-testimonial__stars{color:var(--c-cyan);letter-spacing:.2em;margin-bottom:var(--sp-1);}
.sky-testimonial p{color:rgba(255,255,255,.85);font-size:1.02rem;}
.sky-testimonial cite{display:block;margin-top:var(--sp-2);font-style:normal;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--c-cyan);}

.sky-trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3);margin-top:var(--sp-5);}
@media (max-width:900px){ .sky-trust-strip{grid-template-columns:1fr;} }
.sky-trust-strip__item{text-align:center;padding:var(--sp-3);border:1px solid var(--c-border-dark);border-radius:var(--radius-m);}
.sky-trust-strip__item h3{color:#fff;font-size:1.1rem;margin-bottom:.5rem;}
.sky-trust-strip__item p{color:rgba(255,255,255,.65);margin:0;}

/* ============================================================
   CUSTOMISABLE FLAG (single product)
   ============================================================ */
.sky-customisable-flag{
  display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;
  background:var(--c-paper);border:1px solid var(--c-border);border-radius:var(--radius-m);
  padding:.85rem 1rem;margin-bottom:var(--sp-3);font-weight:700;font-size:.85rem;letter-spacing:.03em;text-transform:uppercase;
}
.sky-customisable-flag__dot{width:8px;height:8px;border-radius:50%;background:var(--grad-brand);flex:none;}
.sky-customisable-flag__link{margin-left:auto;text-transform:none;letter-spacing:0;font-size:.9rem;}
.sky-shipping-note{
  display:flex;align-items:center;gap:.6rem;color:var(--c-muted);font-size:.85rem;
  border-top:1px solid var(--c-border);padding-top:var(--sp-2);margin-top:var(--sp-3);
}
.sky-shipping-note svg{width:22px;height:22px;flex:none;color:var(--c-navy-900);}
