/* =========================================================
   STOCKISTS PAGE — Luxury editorial redesign (2026-07-10)
   Dedicated stylesheet: survives cms-pages.css rebuilds.
   ========================================================= */
.page-hero--stockists .page-hero__inner{padding-bottom:3.5rem}
.page-hero--stockists .page-hero__divider{
  width:1px;
  height:64px;
  background:linear-gradient(180deg, rgba(201,168,106,0), var(--gold-soft) 35%, rgba(201,168,106,0));
  margin:2.2rem auto 0;
}

.stockist-marquee{
  overflow:hidden;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:var(--ivory-2);
  padding:1.15rem 0;
}

.stockist-marquee__track{
  display:flex;
  gap:4.5rem;
  white-space:nowrap;
  width:max-content;
  animation:stockist-scroll 32s linear infinite;
  font-family:var(--serif);
  font-style:italic;
  font-size:1.2rem;
  color:var(--muted);
  letter-spacing:.02em;
}

.stockist-marquee__track span{
  position:relative;
  padding-right:4.5rem;
}

.stockist-marquee__track span::after{
  content:"•";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  color:var(--gold);
  opacity:.55;
  font-style:normal;
}

@keyframes stockist-scroll{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}

.page-content--stockists{
  padding:5rem 2.4rem;
}

.page-block--stockists{
  max-width:1200px;
  margin:0 auto;
  padding:0;
}

.stockist-section__head{
  text-align:center;
  margin-bottom:3.8rem;
}

.stockist-section__head .eyebrow{
  display:block;
  margin-bottom:1rem;
  color:var(--gold);
  letter-spacing:.18em;
}

.stockist-section__head p{
  max-width:680px;
  margin:1.5rem auto 0;
  color:var(--muted);
  line-height:1.8;
  font-size:.96rem;
}

.stockist-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1.6rem;
  align-items:stretch;
}

.stockist-card{
  position:relative;
  background:var(--ivory);
  border:1px solid var(--line);
  padding:2rem 1.8rem;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);
}

.stockist-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg, var(--gold), var(--gold-soft));
  opacity:0;
  transition:opacity .35s var(--ease);
}

.stockist-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 42px rgba(27,22,17,.09);
  border-color:var(--gold);
}

.stockist-card:hover::before{
  opacity:1;
}

.stockist-card__header{
  display:flex;
  align-items:center;
  gap:1rem;
  margin-bottom:1.4rem;
  padding-bottom:1.2rem;
  border-bottom:1px solid rgba(27,22,17,.08);
}

.stockist-card__icon{
  flex:0 0 44px;
  width:44px;
  height:44px;
  color:var(--gold);
  opacity:.85;
}

.stockist-card__icon svg{
  width:100%;
  height:100%;
  display:block;
}

.stockist-card h3{
  font-family:var(--serif);
  font-size:1.2rem;
  font-weight:500;
  color:var(--espresso);
  letter-spacing:.02em;
  margin:0;
}

.stockist-card__list{
  list-style:none;
  padding:0;
  margin:0;
}

.stockist-card__list li{
  position:relative;
  padding:.55rem 0 .55rem 1rem;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.65;
  border-bottom:1px solid rgba(27,22,17,.05);
}

.stockist-card__list li:last-child{
  border-bottom:none;
}

.stockist-card__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.9rem;
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--gold);
  opacity:.7;
}

.stockist-card__list strong{
  color:var(--espresso);
  font-weight:500;
}

.stockist-card__list a{
  color:var(--gold);
  text-decoration:none;
  border-bottom:1px solid rgba(176,137,79,.35);
  transition:border-color .25s, color .25s;
}

.stockist-card__list a:hover{
  color:var(--espresso);
  border-bottom-color:var(--espresso);
}

.stockist-card__note{
  font-style:italic;
  opacity:.9;
}

.stockist-cta{
  margin-top:4rem;
  background:var(--ivory);
  text-align:center;
}

.stockist-cta__inner{
  max-width:900px;
  margin:0 auto;
  padding:4.5rem 2.4rem;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.stockist-cta__text .eyebrow{
  display:block;
  color:var(--gold);
  font-size:.75rem;
  text-transform:uppercase;
  margin-bottom:1.4rem;
  letter-spacing:.14em;
}

.stockist-cta__text .eyebrow::after{
  content:"";
  display:block;
  width:40px;
  height:1px;
  background:var(--gold);
  margin:.7rem auto 0;
  opacity:.4;
}

.stockist-cta__text .section-title{
  color:var(--espresso);
  margin-bottom:1.6rem;
}

.stockist-cta__text p{
  color:var(--muted);
  max-width:640px;
  font-size:.98rem;
  line-height:1.8;
  margin:0 auto 2.8rem;
}

.stockist-cta__action{
  display:flex;
  justify-content:center;
}

.stockist-cta__action .btn--gold{
  padding:1.15rem 2.8rem;
  letter-spacing:.18em;
  font-size:.8rem;
}

/* Remove footer top border on this page so the CTA sits clean on the ivory background */
.site-footer{
  border-top:none;
}

@media(max-width:1100px){
  .stockist-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:768px){
  .page-content--stockists{padding:3rem 1.6rem}
  .stockist-grid{grid-template-columns:1fr}
  .stockist-section__head{margin-bottom:2.6rem}
  .stockist-card{padding:1.6rem}
  .stockist-cta__inner{padding:3.5rem 1.6rem}
  .stockist-cta{margin-top:4rem}
  .stockist-cta__text p{max-width:100%;font-size:.95rem}
  .stockist-marquee__track{gap:2.6rem;font-size:1.05rem}
  .stockist-marquee__track span{padding-right:2.6rem}
}
