/* Hallmark: studied Stef's Closet brand. Editorial collection / image-led catalogue.
   Existing masthead and colophon retained; scoped to public editorial pages. */
.collection-page main.wrap { max-width: 80rem; }
.collection-page h1,.collection-page h2,.collection-page h3 { font-family: var(--font-display); font-style: normal; letter-spacing: -.035em; }
.collection-page h1 { font-size: clamp(2.5rem,5.4vw,5rem); line-height: 1.04; font-weight: 600; text-wrap: balance; }
.collection-page h2 { font-size: clamp(1.7rem,3vw,2.65rem); line-height: 1.12; font-weight: 600; }
.collection-page h3 { font-size: 1.25rem; line-height: 1.25; font-weight: 600; }
.collection-page p { line-height: 1.7; }
.collection-page figure { margin: 0; }
.collection-page img { max-width: 100%; }
.collection-page .index-head { max-width: 58rem; padding: 3.5rem 0 2rem; }
.collection-page .index-head h1 { margin: 0 0 1.5rem; }
.collection-page .index-head .lede { max-width: 42rem; font-size: 1.1rem; }
.collection-page .hub-strip { border-block: 1px solid var(--color-rule); padding: .75rem 0; margin-bottom: 2.5rem; gap: 1.75rem; }
.collection-page .hub-strip a { padding: .55rem 0; border: 0; border-radius: 0; background: none; }
.collection-page .post-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 3rem 2rem; padding: 0; margin: 0 0 4rem; list-style: none; }
.collection-page .post-card { display: flex; flex-direction: column; padding: 0 0 1.5rem; border: 0; border-bottom: 1px solid var(--color-rule); gap: 1.25rem; }
.collection-page .post-card__media { width: 100%; }
.collection-page .post-card__media img { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; border-radius: 3px; }
.collection-page .post-card__title { font-size: clamp(1.6rem,2.6vw,2.15rem); margin: .6rem 0; }
.collection-page .post-card__desc { max-width: 52ch; font-size: .95rem; }
.collection-page .post-card__date { font-size: .72rem; color: var(--color-neutral); }
.collection-page .post-card__more { margin: .8rem 0 0; }
.collection-page .post-card__more a { font-size: .85rem; }
.collection-page .post-card:first-child:nth-last-child(6) { grid-column: 1/-1; display: grid; grid-template-columns: 1.5fr 1fr; align-items: center; gap: 2.5rem; }
.collection-links { display: flex; flex-wrap: wrap; gap: .75rem 2rem; padding: 1.5rem 0; border-block: 1px solid var(--color-rule); margin: 2rem 0; }
.collection-links a { min-height: 44px; display: inline-flex; align-items: center; }
.season-directory { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2.5rem 1.5rem; list-style: none; padding: 0; margin: 1rem 0 4rem; }
.season-directory img { width: 100%; aspect-ratio: 16/9; height: auto; object-fit: cover; border-radius: 3px; }
.season-directory h2 { font-size: 1.65rem; margin: 1rem 0 .5rem; }
.season-directory p { font-size: .85rem; margin: .7rem 0; }
.season-directory .guide-chips { margin-top: 1rem; }
.season-directory .guide-chips svg { height: 18px; }
.season-directory .guide-chips span { font-size: .65rem; }
.guide-hero { display: grid; grid-template-columns: 1fr 1.25fr; align-items: center; gap: 3rem; padding: 2rem 0 3rem; border-bottom: 1px solid var(--color-rule); }
.guide-hero h1 { margin: 0 0 1.25rem; }
.guide-headline { font-size: clamp(1.3rem,2.2vw,1.8rem); font-family: var(--font-display); letter-spacing: -.03em; line-height: 1.3 !important; margin: 0 0 1.5rem; }
.guide-deck { max-width: 43ch; font-size: 1.05rem; color: var(--color-muted); }
.guide-updated { font-size: .72rem; color: var(--color-neutral); margin-top: 1.5rem; }
.guide-jump { display: inline-flex; align-items: center; min-height: 44px; font-size: .85rem; }
.guide-hero__photo img { display: block; width: 100%; height: auto; border-radius: 4px; }
.guide-hero__photo figcaption { font-size: .74rem; line-height: 1.6; color: var(--color-neutral); margin-top: .8rem; }
.guide-chips { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .7rem; margin: 1.25rem 0 0; }
.guide-chips > div { min-width: 0; }
.guide-chips svg { display: block; width: 100%; height: 72px; border: 1px solid var(--color-rule-soft); }
.guide-chips span { display: block; font-size: .77rem; margin-top: .5rem; line-height: 1.4; }
.guide-chips small { display: block; font-size: .68rem; color: var(--color-neutral); margin-top: .25rem; }
.guide-reading { max-width: 42rem; margin: 3.5rem auto 2.5rem; }
.guide-reading p,.guide-portrait p,.guide-home p { font-size: 1.05rem; }
.guide-reading h2 { margin: 0 0 1.25rem; }
.guide-portrait { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1fr); align-items: center; gap: clamp(2rem,6vw,6rem); max-width: 65rem; margin: 3.5rem auto !important; }
.guide-portrait > img { width: 100%; height: auto; max-height: 580px; object-fit: cover; object-position: top; border-radius: 4px; }
.guide-portrait h2 { margin-top: 0; }
.guide-note { font-size: .8rem !important; line-height: 1.65; color: var(--color-neutral); max-width: 52rem; margin-top: 1.5rem; }
.guide-palette { background: var(--color-paper-2); padding: clamp(1.25rem,4vw,3.5rem); margin: 3rem 0; border-radius: 4px; scroll-margin-top: 2rem; }
.guide-palette .guide-reading { margin: 0 0 2rem; }
.guide-palette__row { display: grid; grid-template-columns: 1fr 3fr; gap: 2rem; border-top: 1px solid var(--color-rule); padding: 1.5rem 0; }
.guide-palette__row h3 { margin: .25rem 0; font-size: 1.1rem; }
.guide-palette__row .guide-chips { margin: 0; }
.guide-palette__row .guide-chips svg { height: 105px; }
.guide-formulas { margin: 3rem 0 4rem; }
.guide-formulas__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; }
.guide-formulas figure { border-top: 1px solid var(--color-rule); padding-top: .5rem; }
.guide-formulas .guide-chips { grid-template-columns: repeat(4,minmax(0,1fr)); gap: .4rem; }
.guide-formulas .guide-chips svg { height: 130px; }
.guide-formulas .guide-chips span { font-size: .67rem; }
.guide-formulas figcaption { font-size: .9rem; line-height: 1.65; margin-top: 1.25rem; }
.guide-neighbors { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; }
.guide-neighbors a { display: inline-flex; min-height: 44px; align-items: center; font-size: .85rem; }
.guide-home { display: grid; grid-template-columns: 1.3fr 1fr; gap: 2.5rem; align-items: center; margin: 3rem 0 !important; }
.guide-home img { width: 100%; height: auto; border-radius: 4px; }
.guide-home h2 { margin-top: 0; }
.collection-invitation { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1.5rem 3rem; background: var(--color-paper-2); border-block: 1px solid var(--color-rule); padding: 2.5rem; margin: 4rem 0; }
.collection-invitation h2 { margin: 0 0 .75rem; }
.collection-invitation p { max-width: 48ch; margin: 0; }
.collection-invitation .btn { white-space: nowrap; }
.guide-more { margin: 3rem 0; }
.guide-more__links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 2rem; }
.guide-more a { padding: 1.2rem 0; border-bottom: 1px solid var(--color-rule); }
.guide-specific { padding: 1.5rem 0; border-block: 1px solid var(--color-rule); margin-bottom: 3rem; }
.guide-specific summary { cursor: pointer; }
.guide-specific ul { columns: 3; padding-left: 1.25rem; }
.guide-specific li { margin: .7rem 0; font-size: .85rem; break-inside: avoid; }
.guide--deep .guide-hero { grid-template-columns: 1fr; }
.guide--deep .guide-hero__copy { display: grid; grid-template-columns: 1.1fr 1fr; column-gap: 3rem; align-items: start; }
.guide--deep .guide-hero__copy .ed-label,.guide--deep .guide-hero__copy h1,.guide--deep .guide-headline { grid-column: 1; }
.guide--deep .guide-deck { grid-column: 2; grid-row: 2/4; margin: 0; }
.guide--deep .guide-updated { grid-column: 1; }
.guide--deep .guide-jump { grid-column: 2; }
.guide--deep .guide-hero__photo { max-width: 66rem; margin: 0 auto; }
.guide--bright .guide-hero .guide-chips svg { height: 105px; }
.guide--soft .guide-portrait { grid-template-columns: 1fr .85fr; }
.guide--soft .guide-portrait > img { order: 2; }
.collection-page .post.tool,.collection-page .offer-page { max-width: 58rem; margin-inline: auto; }
.collection-page .tool > p,.collection-page .tool__result p,.collection-page .tool .lede { max-width: 42rem; }
.collection-page .tool h1,.collection-page .offer-page h1 { font-size: clamp(2.1rem,4.1vw,3.6rem); max-width: 23ch; }
.tool-editorial-photo { margin: 2rem 0 !important; }
.tool-editorial-photo img { display: block; width: 100%; height: auto; border-radius: 4px; }
.tool-editorial-photo figcaption { max-width: 42rem; font-size: .85rem; color: var(--color-muted); margin-top: .85rem; line-height: 1.6; }
.collection-page .tool__form { padding: clamp(1.25rem,3vw,2.5rem); background: var(--color-paper-2); }
@media (max-width: 900px) {
 .guide-hero,.guide-home { grid-template-columns: 1fr; gap: 1.5rem; }
 .guide-hero__copy { max-width: 44rem; }
 .season-directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .guide-formulas__grid { gap: 1rem; }
 .collection-page .post-card:first-child:nth-last-child(6) { display: flex; }
 .guide-specific ul { columns: 2; }
}
@media (max-width: 600px) {
 .collection-page .mast { flex-wrap: wrap; gap: .25rem; }
 .collection-page .ed-nav { gap: 1.5rem; }
 .collection-page .index-head { padding-top: 2rem; }
 .collection-page .post-list,.season-directory { grid-template-columns: 1fr; gap: 2rem; }
 .guide-hero { padding-top: 1rem; }
 .guide-portrait,.guide--soft .guide-portrait { grid-template-columns: 1fr; gap: 1.5rem; }
 .guide--soft .guide-portrait > img { order: 0; }
 .guide-portrait > img { max-height: 520px; }
 .guide-palette__row { grid-template-columns: 1fr; gap: 1rem; }
 .guide-palette__row .guide-chips svg { height: 82px; }
 .guide-formulas__grid { grid-template-columns: 1fr; gap: 2rem; }
 .guide-formulas .guide-chips svg { height: 110px; }
 .guide-formulas .guide-chips span { font-size: .75rem; }
 .guide-more__links { grid-template-columns: 1fr; }
 .guide-specific ul { columns: 1; }
 .collection-invitation { padding: 1.5rem; }
 .guide--deep .guide-hero__copy { display: block; }
 .guide-reading { margin-block: 2.5rem 2rem; }
}
.collection-page .offer { max-width: none; }
.collection-page .offer > .post__body { max-width: 42rem; }
.collection-page .offer > h1 { max-width: 20ch; font-size: clamp(2.5rem,4.5vw,4.2rem); }
.palette-library { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem; margin-block: 2.5rem; }
.collection-page .offer__season,.collection-page .offer__season:first-of-type { margin: 0; padding: 1.5rem 0; border-top: 1px solid var(--color-rule); min-width: 0; }
.collection-page .offer__season h2 { font-size: 1.8rem; }
.collection-page .offer__downloads { gap: .5rem 1.25rem; }
.collection-page .offer__downloads a { display: inline-flex; align-items: center; min-height: 44px; }
.offer-embed-details { margin-top: 1rem; font-size: .8rem; }
.offer-embed-details summary { cursor: pointer; padding-block: .5rem; }
.resource-intro { display: grid; grid-template-columns: 1.25fr 1fr; align-items: center; gap: 2.5rem; margin: 2.5rem 0 !important; }
.resource-intro img { width: 100%; height: auto; border-radius: 4px; }
.resource-intro h2 { font-size: 2rem; margin: 0 0 1rem; }
.resource-intro p { max-width: 40ch; }
.collection-page .offer__jump a { min-height: 44px; display: inline-flex; align-items: center; border-radius: 3px; }
.collection-page .offer__region { margin-top: 3.5rem; }
.collection-page .offer__region h2 { font-size: 2rem; }
.collection-page .offer__card { border: 0; border-top: 1px solid var(--color-rule); background: none; border-radius: 0; padding: 1.5rem 0; }
.collection-page .offer__card h3 { font-size: 1.3rem; }
.collection-page .offer__card p { font-size: .9rem; }
@media(max-width:700px){.palette-library,.resource-intro{grid-template-columns:1fr}.resource-intro{gap:1.5rem}}
.collection-page main a:not(.btn) { color: var(--color-accent); text-underline-offset: 4px; }
.collection-page main .post-card__title a,.collection-page main .season-directory h2 a { color: var(--color-ink); }

.collection-page .post-list,.collection-page .hub-strip { max-width: none; width: 100%; }
.collection-links a { white-space: nowrap; }
.tool-opening { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start; margin: 2rem 0; }
.collection-page .tool-opening .tool__result { padding: 0; border: 0; border-radius: 0; background: none; margin: 0; }
.collection-page .tool-opening .tool-editorial-photo { margin: 0 !important; }
.collection-page .tool-opening .tool__result p:first-child { margin-top: 0; }
.collection-page .tool-opening + .post__cta { max-width: none; padding: 1.5rem 0; background: none; border: 0; border-block: 1px solid var(--color-rule); border-radius: 0; }
.collection-page .tool-opening + .post__cta h2 { font-size: 1.8rem; }
@media(max-width:700px){.tool-opening{grid-template-columns:1fr;gap:1rem}}

.collection-page .post__crumbs a { text-decoration: underline; text-underline-offset: 4px; }
