/* Furniture page styles (GardenLite) */

/* Hero */
.hero { padding-block: var(--space-16) var(--space-12); }
.hero-grid { display: grid; gap: var(--space-8); grid-template-columns: 1.1fr 1fr; align-items: center; }
.hero-copy .lead { color: var(--color-muted); max-width: 60ch; }
.hero-actions { display: flex; gap: var(--space-4); margin-top: var(--space-4); flex-wrap: wrap; }
.hero-media { overflow: hidden; border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); }
.hero-media img { width: 100%; height: auto; display: block; }
@media (max-width: 960px) { .hero-grid { grid-template-columns: 1fr; } }

/* Breadcrumbs */
.breadcrumbs { background: var(--color-surface-alt); border-bottom: 1px solid var(--gray-200); }
.breadcrumbs .breadcrumbs-list { display: flex; gap: var(--space-3); padding-block: var(--space-3); }
.breadcrumbs .breadcrumbs-list li { color: var(--color-muted); }
.breadcrumbs .breadcrumbs-list a { color: var(--color-link); }

/* Catalog */
.section-catalog { padding-block: var(--space-14); }
.section-head { margin-bottom: var(--space-6); }
.section-head p { color: var(--color-muted); }

.catalog-controls { margin-bottom: var(--space-6); }
.controls-grid { display: grid; gap: var(--space-4); grid-template-columns: 1fr 220px 1fr; align-items: center; }
.filter-flags { display: flex; gap: var(--space-4); align-items: center; }
.flag { display: inline-flex; align-items: center; gap: var(--space-2); color: var(--color-text); }
@media (max-width: 900px) { .controls-grid { grid-template-columns: 1fr; } }

.product-grid { align-items: start; }
.product h3 { margin-top: var(--space-4); }
.product .muted { color: var(--color-muted); }
.product-meta { display: flex; align-items: center; justify-content: space-between; margin: var(--space-4) 0; }
.price { font-weight: 700; }
.rating { color: #f59e0b; display: inline-flex; gap: 2px; align-items: center; }
.product-actions { display: flex; gap: var(--space-3); flex-wrap: wrap; }
.badges { display: flex; gap: var(--space-2); margin-top: var(--space-3); flex-wrap: wrap; }

.catalog-cta { display: flex; justify-content: center; margin-top: var(--space-8); }

/* Text sections */
.section-text { padding-block: var(--space-12); }
.section-text p { max-width: 70ch; }

/* Utility tweaks */
.lead { font-size: var(--fs-400); }

/* Focus state improvements for small buttons inside cards */
.product .btn:focus-visible { box-shadow: 0 0 0 3px var(--color-ring); }
