/**
 * Archives, search, saved looks, and product discovery.
 */

.ff-archive-header { max-width: 800px; margin-bottom: clamp(2.5rem, 7vw, 5rem); }
.ff-archive-kicker { margin-bottom: .6rem; color: var(--ff-color-accent); font-size: .74rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.ff-archive-description, .ff-archive-header > p:last-child { max-width: 680px; color: var(--ff-color-muted); font-size: 1.05rem; }
.ff-archive-grid, .ff-guide-archive-grid, .ff-search-results { display: grid; gap: 1rem; }
.ff-guide-archive-card h2, .ff-product-card h2 { font-size: clamp(1.4rem, 3vw, 2rem); }
.ff-guide-archive-card h2 a, .ff-product-card h2 a { color: inherit; text-decoration: none; }
.ff-guide-archive-card .ff-card__body > p:not(.ff-card__eyebrow) { color: var(--ff-color-muted); }
.ff-search-form { display: grid; gap: .5rem; margin-top: 2rem; }
.ff-search-form label { font-size: .82rem; font-weight: 700; }
.ff-search-form > div { display: flex; flex-direction: column; gap: .65rem; }
.ff-search-form input { min-width: 0; min-height: 50px; flex: 1; padding: .75rem 1rem; border: 1px solid var(--ff-color-border); border-radius: 999px; background: var(--ff-color-card); color: var(--ff-color-foreground); }
.ff-not-found { max-width: 780px; padding-block: clamp(3rem, 9vw, 8rem); text-align: center; }
.ff-not-found > p:not(.ff-archive-kicker) { max-width: 580px; margin-inline: auto; color: var(--ff-color-muted); }
.ff-not-found > div { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; margin-top: 2rem; }
.ff-saved-grid { display: grid; gap: 1rem; }
.ff-saved-card { display: flex; flex-direction: column; gap: 1.5rem; padding: 1.25rem; border: 1px solid var(--ff-color-border); border-radius: 1rem; background: var(--ff-color-card); }
.ff-saved-card p { margin-bottom: .3rem; color: var(--ff-color-accent); font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ff-saved-card h2 { margin-bottom: .3rem; font-size: 1.45rem; }
.ff-saved-card > div:last-child { display: flex; flex-wrap: wrap; gap: .65rem; }
.ff-product-single { display: grid; gap: clamp(2rem, 5vw, 4rem); align-items: start; }
.ff-product-single__media { min-height: 280px; overflow: hidden; border-radius: var(--ff-radius-large); background: var(--ff-color-neutral); }
.ff-product-single__media img { width: 100%; height: auto; }
.ff-product-single__intro { color: var(--ff-color-muted); font-size: 1.08rem; }
.ff-product-single__details { margin-block: 2rem; }
.ff-product-single__details div { display: grid; grid-template-columns: minmax(100px, .4fr) 1fr; gap: 1rem; padding-block: .7rem; border-bottom: 1px solid var(--ff-color-border); }
.ff-product-single__details dt { color: var(--ff-color-muted); font-size: .75rem; text-transform: uppercase; }
.ff-product-single__details dd { margin: 0; overflow-wrap: anywhere; }
.ff-entry__footer { margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid var(--ff-color-border); }
.ff-entry__tags { color: var(--ff-color-muted); font-size: .85rem; }
@media (min-width: 40rem) {
	.ff-archive-grid, .ff-guide-archive-grid, .ff-search-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ff-search-form > div { flex-direction: row; }
	.ff-saved-card { flex-direction: row; align-items: center; justify-content: space-between; }
}
@media (min-width: 64rem) {
	.ff-archive-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.ff-guide-archive-grid, .ff-search-results { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ff-product-single { grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr); }
}
