/* ═══════════════════════════════════════════
   Editorial Bento Box — Homepage Category Section
   ═══════════════════════════════════════════ */

/* ── Section wrapper with subtle color ───── */
#home-features {
  background: #FBF6ED;
  border-top: 1px solid rgba(114, 47, 55, 0.06);
  border-bottom: 1px solid rgba(114, 47, 55, 0.06);
  padding: 56px 40px 64px;
}

/* ── Section header ──────────────────────── */
#home-features .home-features-title {
  font-family: var(--font-subhead);
  font-style: italic;
  font-weight: 400;
  font-size: 2rem;
  color: #2C1810;
  letter-spacing: -0.01em;
}

#home-features .home-features-subtitle {
  font-family: var(--font-body);
  font-size: 0.9rem;
  color: #6B6B6B;
  margin-bottom: 28px;
}

/* ── Bento grid ──────────────────────────── */
.bento-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  max-width: 720px;
  margin: 0 auto;
}

/* ── Individual tiles ────────────────────── */
.bento-tile {
  display: block;
  padding: 24px 22px;
  border: 1.5px solid rgba(107, 39, 55, 0.1);
  cursor: pointer;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
  text-decoration: none;
  color: #2C1810;
  position: relative;
  overflow: hidden;
}

.bento-tile:hover {
  transform: rotate(0deg) translateY(-4px) scale(1.02) !important;
  box-shadow: 0 8px 24px rgba(44, 24, 16, 0.1);
}

.bento-tile h4 {
  font-family: var(--font-subhead);
  font-weight: 500;
  font-size: 1.15rem;
  color: #2C1810;
  margin: 0 0 6px;
  letter-spacing: -0.01em;
  line-height: 1.3;
}

.bento-tile p {
  font-family: var(--font-body);
  font-size: 0.78rem;
  color: #6B5D52;
  line-height: 1.55;
  margin: 0;
}

/* ── Feature tile (larger) ───────────────── */
.bento-feature {
  padding: 32px 26px;
}

.bento-feature h4 {
  font-size: 1.5rem;
  letter-spacing: -0.015em;
  margin-bottom: 10px;
}

.bento-feature p {
  font-size: 0.85rem;
  line-height: 1.6;
}

/* "start here" hint on hover */
.bento-feature::after {
  content: 'start here \2192';
  position: absolute;
  bottom: 16px;
  right: 20px;
  font-family: var(--font-subhead);
  font-style: italic;
  font-size: 0.72rem;
  color: #6B2737;
  opacity: 0;
  transition: opacity 0.25s;
}
.bento-feature:hover::after {
  opacity: 0.7;
}

/* ── Tab styling ─────────────────────────── */
#bento-tabs .home-tab {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 0.85rem;
  letter-spacing: 0.02em;
  text-transform: none;
  padding: 10px 20px;
  border: none;
  background: none;
  color: #9A9A9A;
  cursor: pointer;
  position: relative;
  transition: color 0.2s;
  border-radius: 6px;
}

#bento-tabs .home-tab:hover {
  color: #2C1810;
}

#bento-tabs .home-tab.active {
  color: #6B2737;
  background: rgba(107, 39, 55, 0.06);
}

#bento-tabs .home-tab svg {
  display: none;
}

/* ── Stagger animation on tab switch ────── */
.bento-tile {
  opacity: 0;
  animation: bento-stagger 0.4s ease forwards;
}
.home-tab-panel.active .bento-tile:nth-child(1) { animation-delay: 0ms; }
.home-tab-panel.active .bento-tile:nth-child(2) { animation-delay: 60ms; }
.home-tab-panel.active .bento-tile:nth-child(3) { animation-delay: 60ms; }
.home-tab-panel.active .bento-tile:nth-child(4) { animation-delay: 120ms; }
.home-tab-panel.active .bento-tile:nth-child(5) { animation-delay: 180ms; }
.home-tab-panel.active .bento-tile:nth-child(6) { animation-delay: 240ms; }
.home-tab-panel.active .bento-tile:nth-child(7) { animation-delay: 300ms; }
.home-tab-panel.active .bento-tile:nth-child(8) { animation-delay: 360ms; }
.home-tab-panel.active .bento-tile:nth-child(9) { animation-delay: 420ms; }
.home-tab-panel.active .bento-tile:nth-child(10) { animation-delay: 480ms; }

@keyframes bento-stagger {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; }
}

/* ── Responsive ──────────────────────────── */
@media (max-width: 480px) {
  #home-features { padding: 40px 20px 48px; }
  .bento-grid { grid-template-columns: 1fr; }
  .bento-tile, .bento-wide { grid-column: span 1 !important; }
  .bento-feature { grid-row: span 1 !important; }
  .bento-feature h4 { font-size: 1.3rem; }
  #bento-tabs .home-tab { font-size: 0.8rem; padding: 8px 14px; }
}
