/* ================= COLLECTIONS HERO ================= */
.collections-hero{
  position:relative; height:100svh; min-height:640px; overflow:hidden;
  background:var(--charcoal);
}
.collections-hero-media{ position:absolute; inset:0; }
.collections-hero-media img{ width:100%; height:100%; object-fit:cover; object-position:72% 42%; will-change:transform; }
.collections-hero-media::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(20,18,15,.92) 0%, rgba(20,18,15,.55) 42%, rgba(20,18,15,.14) 68%);
}
.collections-hero-content{
  position:relative; z-index:2; height:100%;
  display:flex; flex-direction:column; justify-content:center;
  max-width:760px; padding:0 6vw;
}
.collections-hero-content .eyebrow{ margin-bottom:1.4rem; }
.collections-hero-content h1{
  font-size:clamp(2.4rem, 5.4vw, 4rem);
  color:var(--ivory);
  margin-bottom:1.6rem;
}
.collections-hero-content p{
  max-width:600px; font-size:1.05rem; color:var(--grey-light);
}

/* ================= COLLECTION OVERVIEW ================= */
.overview{ padding:9rem 0 7rem; background:var(--ivory); }
.overview-head{ max-width:640px; margin-bottom:4.5rem; }
.overview-head .eyebrow{ margin-bottom:1.2rem; }
.overview-head h2{ font-size:clamp(2rem,3.6vw,3rem); margin-bottom:1.4rem; }
.overview-head p{ font-size:1.05rem; max-width:34em; }

.overview-row{
  display:grid; grid-template-columns:repeat(5,1fr); gap:1.6vw;
}
.overview-card{ text-align:left; }
.oc-media{ position:relative; aspect-ratio:3/4; overflow:hidden; background:var(--champagne); margin-bottom:1.1rem; }
.oc-media img{ width:100%; height:100%; object-fit:cover; transition:transform .8s var(--ease-soft); }
.overview-card:hover .oc-media img{ transform:scale(1.06); }
.oc-index{ display:block; font-family:var(--serif); font-size:.82rem; color:var(--gold); letter-spacing:.1em; margin-bottom:.35rem; }
.overview-card h3{ font-size:1.2rem; margin-bottom:.4rem; }
.overview-card p{ font-size:.82rem; color:var(--grey); line-height:1.5; }

/* ================= INDIVIDUAL COLLECTION SECTIONS ================= */
.collection-feature{ padding:6.5rem 0; overflow:hidden; }
.collection-feature:nth-child(odd){ background:var(--ivory); }
.collection-feature:nth-child(even){ background:var(--ivory-soft); }
.collection-feature .wrap{
  display:grid; grid-template-columns:1fr 1fr; gap:6vw; align-items:center;
}
.collection-feature.reverse .wrap{ direction:rtl; }
.collection-feature.reverse .wrap > *{ direction:ltr; }

.cf-media{ position:relative; aspect-ratio:4/4.6; overflow:hidden; }
.cf-media img{ width:100%; height:100%; object-fit:cover; transform:scale(1.1); transition:transform 1.2s var(--ease); }
.cf-media.in img{ transform:scale(1); }
.cf-media::before{
  content:''; position:absolute; inset:0; background:var(--champagne); z-index:1;
  transform-origin:top; transition:transform 1s var(--ease);
}
.cf-media.in::before{ transform:scaleY(0); }

.cf-index{ display:block; font-family:var(--serif); font-size:.88rem; color:var(--gold); letter-spacing:.14em; margin-bottom:1.1rem; }
.cf-copy h2{ font-size:clamp(2.1rem,3.8vw,3.2rem); margin-bottom:1rem; }
.cf-lead{ font-size:1.15rem; color:var(--ink); max-width:26em; margin-bottom:1.6rem; }
.cf-copy p{ font-size:1.02rem; max-width:32em; margin-bottom:1.1rem; }
.cf-character{ font-size:.92rem; color:var(--grey); max-width:32em; margin-top:1.4rem; }
.cf-character strong{ color:var(--charcoal-soft); font-weight:600; }

/* ================= COLLECTION SYSTEM SUMMARY ================= */
.summary{ padding:8rem 0; background:var(--ivory); }
.summary-head{ text-align:center; max-width:640px; margin:0 auto 3.6rem; }
.summary-head .eyebrow{ margin-bottom:1.2rem; justify-content:center; display:flex; }
.summary-head h2{ font-size:clamp(2rem,3.6vw,3rem); margin-bottom:1rem; }
.summary-head p{ font-size:1.02rem; }

.summary-table{ max-width:1000px; margin:0 auto; border-top:1px solid rgba(20,18,15,.12); }
.summary-row{
  display:grid; grid-template-columns:1fr 2fr; gap:2vw;
  padding:1.2rem 0; border-bottom:1px solid rgba(20,18,15,.12);
}
.summary-row.head{ padding-top:0; }
.summary-row.head span{
  font-size:.72rem; letter-spacing:.24em; text-transform:uppercase; color:var(--grey); font-weight:600;
}
.summary-row:not(.head) span:first-child{
  font-family:var(--serif); font-size:1.15rem; letter-spacing:.06em; color:var(--ink);
}
.summary-row:not(.head) span:last-child{ font-size:.95rem; color:var(--charcoal-soft); align-self:center; }

.summary-note{ text-align:center; max-width:38em; margin:3.4rem auto 0; font-size:1.02rem; }

/* ================= CLOSING CTA ================= */
.collections-cta{ position:relative; height:88svh; min-height:560px; overflow:hidden; background:var(--charcoal); }
.cc-media{ position:absolute; inset:0; }
.cc-media img{ width:100%; height:100%; object-fit:cover; }
.cc-media::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(20,18,15,.4), rgba(20,18,15,.86)); }
.cc-content{
  position:relative; z-index:2; height:100%;
  display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
  padding:0 6vw;
}
.cc-content h2{ color:var(--ivory); font-size:clamp(2.2rem,5vw,3.8rem); max-width:14em; margin-bottom:1.2rem; }
.cc-content p{ color:var(--grey-light); max-width:32em; margin-bottom:2.2rem; }
.cc-email{
  display:block; margin-top:1.4rem; color:var(--grey-light); font-size:.92rem; letter-spacing:.04em;
  transition:color .3s;
}
.cc-email:hover{ color:var(--champagne); }

@media (max-width:900px){
  .collections-hero-content{ max-width:none; }

  .overview{ padding:5.5rem 0 4.5rem; }
  .overview-row{
    display:flex; overflow-x:auto; gap:5vw; padding-bottom:1rem;
    scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none;
  }
  .overview-row::-webkit-scrollbar{ display:none; }
  .overview-card{ flex:0 0 62vw; scroll-snap-align:center; }

  .collection-feature{ padding:4.5rem 0; }
  .collection-feature .wrap{ grid-template-columns:1fr; gap:2.4rem; }
  .collection-feature.reverse .wrap{ direction:ltr; }
  .cf-media{ aspect-ratio:4/3.6; }

  .summary{ padding:5.5rem 0; }
  .summary-row{ grid-template-columns:1fr; gap:.4rem; padding:1.1rem 0; }
  .summary-row:not(.head) span:last-child{ font-size:.9rem; }
  .summary-row.head{ display:none; }
}
