.tajini-home { margin: 0 0 2rem; }
.th-title {
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font: 600 1.35rem/1.2 Poppins, sans-serif;
  color: #24355b;
  margin: 2.25rem 0 1.25rem;
}
.th-brands { background: #fafafa; border-bottom: 1px solid #e5e5e5; padding: 1.5rem 0; }
.th-brands__row { display: flex; justify-content: center; flex-wrap: wrap; gap: 1rem; }
.th-brands__item {
  flex: 1 1 180px; max-width: 240px; text-align: center; text-decoration: none;
  background: #fff; border: 1px solid #e5e5e5; padding: 1.75rem 1rem; color: #111;
}
.th-brands__name { display: block; font: 700 1.1rem/1 Poppins, sans-serif; letter-spacing: 0.08em; text-transform: uppercase; }
.th-brands__sub { display: block; margin-top: 0.35rem; font-size: 0.7rem; letter-spacing: 0.2em; color: #999; }
.th-brands__item:hover { border-color: #b7081d; color: #b7081d; }

.th-banner { margin: 1.5rem 0; }
.th-banner__link {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  min-height: 120px; background: #24355b; color: #fff; text-decoration: none;
}
.th-banner__title { font: 700 1.75rem/1 Poppins, sans-serif; letter-spacing: 0.15em; }
.th-banner__sub { margin-top: 0.4rem; font-size: 0.95rem; letter-spacing: 0.08em; color: #fbbc05; }

.th-tiles__grid {
  display: grid; grid-template-columns: repeat(6, 1fr); gap: 0.75rem; margin-bottom: 2rem;
}
.th-tiles__item {
  display: flex; align-items: center; justify-content: center; min-height: 88px;
  background: #111; color: #fff; text-decoration: none; font: 600 0.8rem/1 Poppins, sans-serif;
  letter-spacing: 0.1em; text-transform: uppercase;
}
.th-tiles__item:hover { background: #b7081d; }

.th-products__head { display: flex; align-items: baseline; justify-content: center; position: relative; }
.th-products__all {
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.06em; color: #222; text-decoration: none;
  display: inline-flex; align-items: center;
}
.th-products__all .material-icons { font-size: 18px; }

.th-products--carousel .th-products__track {
  display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory;
  padding-bottom: 0.5rem; -webkit-overflow-scrolling: touch; scrollbar-width: thin;
}
.th-products--carousel .product-miniature,
.th-products--carousel .tutto-card {
  flex: 0 0 calc(16.666% - 0.85rem); scroll-snap-align: start; max-width: 220px;
}
.th-products__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem;
}
.th-products__nav { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 0.5rem; }
.th-nav {
  width: 36px; height: 36px; border: 1px solid #ddd; background: #fff; cursor: pointer; font-size: 1.25rem;
}
.th-nav:hover { border-color: #111; }

@media (max-width: 991px) {
  .th-tiles__grid { grid-template-columns: repeat(3, 1fr); }
  .th-products__grid { grid-template-columns: repeat(2, 1fr); }
  .th-products--carousel .product-miniature,
  .th-products--carousel .tutto-card { flex-basis: 42%; max-width: none; }
  .th-products__all { position: static; transform: none; margin-left: 1rem; }
}
@media (max-width: 575px) {
  .th-tiles__grid { grid-template-columns: repeat(2, 1fr); }
}
