/* Models Page Styles - PLGranTurismo */

.hero { padding-top: var(--space-16); padding-bottom: var(--space-8); }
.hero-inner { display: flex; flex-direction: column; gap: var(--space-3); }

.section-spacing { padding-top: var(--space-8); padding-bottom: var(--space-8); }
.section-header { margin-bottom: var(--space-6); }
.section-header p { max-width: 70ch; }

/* Filters */
.filters { margin-bottom: var(--space-6); }
.filters-row { display: grid; grid-template-columns: repeat(12, 1fr); gap: var(--space-4); align-items: center; }
.filter-item { grid-column: span 3; }
.filter-actions { display: flex; align-items: center; gap: var(--space-4); grid-column: span 12; }

@media (max-width: 1024px) {
  .filter-item { grid-column: span 6; }
}
@media (max-width: 640px) {
  .filter-item { grid-column: span 12; }
  .filter-actions { flex-wrap: wrap; }
}

/* Models grid */
.models-grid .model-card { display: flex; flex-direction: column; }
.model-media { border-radius: var(--radius-lg); overflow: hidden; margin-bottom: var(--space-4); box-shadow: var(--shadow-md); }
.spec-list { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-3); }
.card-details { margin-top: var(--space-4); border-top: 1px solid var(--color-neutral-800); padding-top: var(--space-4); color: var(--color-text-secondary); }

/* Gallery feature */
.gallery-feature img { border-radius: var(--radius-xl); box-shadow: var(--shadow-xl); }

/* Utilities overrides */
.hidden { display: none !important; }

/* Responsive grid adjustments */
@media (max-width: 1200px) {
  .models-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .models-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .models-grid { grid-template-columns: repeat(1, minmax(0, 1fr)); }
}
