.tfw-collections, .tfw-collections *{ box-sizing:border-box; }
.tfw-collections{ font-family:'Bricolage Grotesque','Inter',sans-serif; --tf-col-img-gap:10px; }
.tfw-collections a{ color:inherit; text-decoration:none; }
.tfw-collections h3{ font-family:'Playfair Display',Georgia,serif; margin:0; }

/* Figma: 1440px frame, 40px side padding -> 1360px of content, two 650px columns, 60px gap. */
.tfw-collections .container{ max-width:1440px; margin:0 auto; padding:0 40px; width:100%; }
.tfw-collections .section{ padding:78px 0; }
.tfw-collections .collections-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; }
.tfw-collections .collection-block{ min-width:0; }

/* Image: 650 x 785, square corners (Figma), always fills its column. */
.tfw-collections .collection-media{ position:relative; width:100%; border-radius:0; overflow:hidden; aspect-ratio:650/785; margin:0; }
.tfw-collections .collection-media img{ display:block; width:100%; height:100%; max-width:none; object-fit:cover; }
.tfw-collections .collection-block > .collection-media:first-child{ margin-bottom:var(--tf-col-img-gap,10px); }
.tfw-collections .collection-block > .collection-media:last-child{ margin-top:var(--tf-col-img-gap,10px); }

/* Text: Playfair 600 40px / 14px light caps / gold button (Figma). */
.tfw-collections .collection-text{ padding-bottom:15px; text-align:left; }
.tfw-collections .collection-block > .collection-media:first-child + .collection-text{ padding-bottom:0; }
.tfw-collections .collection-text h3{ font-size:40px; line-height:53px; font-weight:600; letter-spacing:1px; color:#0F0F0F; }
.tfw-collections .collection-sub{ margin:6px 0 22px; font-size:14px; line-height:21px; font-weight:300; letter-spacing:1px; text-transform:uppercase; color:#000; }

.tfw-collections a.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:15px 32px; font-size:16px; font-weight:600; line-height:24px; letter-spacing:1px; text-transform:none;
  background:#C99E43; color:#FFFEFB; border:.8px solid #C99E43; border-radius:0; white-space:nowrap; cursor:pointer;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.tfw-collections a.btn:hover{ background:#B08A38; border-color:#B08A38; color:#FFFEFB; }

@media (max-width:980px){
  .tfw-collections .container{ padding:0 24px; }
  .tfw-collections .collections-grid{ grid-template-columns:minmax(0,1fr); gap:44px; }
  .tfw-collections .collection-text h3{ font-size:32px; line-height:42px; }
}
@media (max-width:720px){
  .tfw-collections .container{ padding:0 20px; }
  .tfw-collections .section{ padding:32px 0; }
  .tfw-collections .collection-media{ aspect-ratio:350/280; }
  .tfw-collections .collection-text h3{ font-size:28px; line-height:38px; }
  .tfw-collections .collection-sub{ font-size:12px; line-height:18px; }
  /* Both cards read image -> heading -> sub text -> button on phones (Figma mobile),
     whatever the desktop zig-zag order is. */
  .tfw-collections .collection-block{ display:flex; flex-direction:column; }
  .tfw-collections .collection-block .collection-media{ order:-1; margin:0 0 var(--tf-col-img-gap,20px); }
  .tfw-collections .collection-block .collection-text{ padding-bottom:0; }
}
