.catalog-page [hidden]{display:none!important}
.catalog-page.brand-page .catalog-item{box-shadow:none}
.catalog-page.brand-page .catalog-item::before{display:none}
.catalog-intro{background:var(--hero-bg);border-block:1px solid var(--rule);padding:26px 0 54px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--muted);margin-bottom:40px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.catalog-intro .eyebrow{color:var(--purple-primary);margin-bottom:16px;font-size:13px}
.catalog-intro h1{max-width:780px;font-size:clamp(40px,5vw,68px)}
.catalog-lead{max-width:650px;font-size:19px;line-height:1.65;margin-top:25px}
.catalog-body{padding-block:44px 32px}
.catalog-tools{display:flex;gap:24px;align-items:flex-end;padding-bottom:30px;border-bottom:1px solid var(--rule);margin-bottom:32px}
.search-field{flex:1}.sort-field{width:260px}
.catalog-tools label{display:block;font-size:14px;font-weight:600;margin-bottom:9px}
.catalog-tools input,.catalog-tools select{width:100%;min-height:52px;border:1px solid var(--rule);background:var(--surface);color:var(--color);font:inherit;padding:12px 14px;border-radius:5px}
.catalog-tools input::placeholder{color:var(--muted);opacity:1}
.catalog-tools input:focus-visible,.catalog-tools select:focus-visible{outline:3px solid var(--purple-primary);outline-offset:3px}
.reset-filters{min-height:48px;padding:10px 14px;border:1px solid var(--rule);border-radius:5px;background:var(--surface);color:var(--purple-primary);font-size:14px}
.catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:55px}
.results-column{min-width:0}
.topic-panel[hidden]+.results-column{grid-column:1/-1}
.catalog-page .desktop-nav a[aria-current],.catalog-page .mobile-menu a[aria-current]{color:var(--purple-primary);text-decoration:underline;text-underline-offset:6px}
.filter-title{font-size:16px;letter-spacing:0;margin-bottom:15px}
.topic-options{display:flex;flex-direction:column;align-items:stretch;gap:6px}
.topic-options button{border:1px solid transparent;background:transparent;color:var(--muted);text-align:left;padding:11px 14px;border-radius:5px;min-height:46px;font-size:15px;line-height:1.4}
.topic-options button:hover{border-color:var(--rule);color:var(--color)}
.topic-options button[aria-pressed="true"]{background:var(--purple-primary);color:var(--bg-color);font-weight:600}
.filter-note{font-size:14px;color:var(--muted);margin:24px 14px 0;line-height:1.6}
.results-meta{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:14px;margin-bottom:10px}
.material-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:32px 0;border-bottom:1px solid var(--rule)}
.entry-copy .category{font-size:12px;letter-spacing:.065em}
.entry-copy h2{font-size:27px;line-height:1.25;letter-spacing:-.02em;margin-top:11px;text-wrap:pretty}
.entry-copy h2 a:hover{text-decoration:underline;text-underline-offset:5px}
.entry-description{font-size:16px;line-height:1.65;margin-top:15px;color:var(--muted);max-width:650px}
.entry-link{align-self:end;white-space:nowrap;display:flex;align-items:center;gap:14px;min-height:44px;color:var(--purple-primary);font-size:14px}
.entry-link:hover{text-decoration:underline;text-underline-offset:4px}
.empty-results{padding:48px 0}.empty-results h2{font-size:28px}.empty-results p{margin:16px 0;color:var(--muted)}
.stories-page .catalog-intro{background:var(--feature-bg)}
.stories-page .catalog-intro h1 span,.stories-page .catalog-intro .eyebrow{color:var(--feature-ink)}
.stories-page .catalog-layout{grid-template-columns:1fr;gap:25px}
.stories-page .topic-panel{display:flex;align-items:center;gap:25px}.stories-page .filter-title{margin:0}
.stories-page .topic-options{flex-direction:row;flex-wrap:wrap;gap:10px}
.stories-page .topic-options button{border-color:var(--rule)}
.story-entry{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;position:relative;margin-top:30px;padding-bottom:40px;border-bottom:1px solid var(--rule)}
.entry-image{display:block;align-self:start;border-radius:5px;overflow:hidden;background:var(--bg-color-accent)}
.entry-image img{width:100%;height:360px;object-fit:cover}
.story-entry:nth-child(even) .entry-image img{object-position:center 46%}
.story-entry .entry-copy{padding-block:15px}.story-entry h2{font-size:36px;line-height:1.18}
.story-entry .entry-link{grid-column:2;margin-top:-25px;justify-self:start}
.entry-period{font-size:14px;margin-top:22px;color:var(--muted)}
@media(max-width:1000px){.catalog-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}.material-entry{grid-template-columns:minmax(0,1fr) auto}.entry-number{display:none}.story-entry h2{font-size:30px}.story-entry{gap:25px}.entry-image img{height:330px}}
@media(max-width:800px){.catalog-layout{grid-template-columns:1fr;gap:25px}.topic-options{flex-direction:row;flex-wrap:wrap}.topic-options button{border-color:var(--rule)}.filter-note{display:none}.catalog-tools{flex-wrap:wrap;gap:18px}.search-field{flex-basis:100%}.sort-field{flex:1;width:auto}.entry-image img{height:300px}.story-entry h2{font-size:27px}}
@media(max-width:600px){.catalog-intro{padding:22px 0 34px}.breadcrumbs{font-size:13px;margin-bottom:30px;gap:8px}.catalog-intro h1{font-size:42px}.catalog-lead{font-size:17px;margin-top:20px}.catalog-body{padding-block:28px}.catalog-tools{padding-bottom:24px;margin-bottom:24px;gap:14px}.catalog-tools input,.catalog-tools select{font-size:16px}.sort-field{min-width:0}.reset-filters{padding-inline:10px}.results-meta{flex-direction:column;gap:4px}.results-meta>span{font-size:13px}.topic-options{gap:7px}.topic-options button{font-size:14px;padding:10px 12px}.material-entry{grid-template-columns:1fr;gap:12px;padding:27px 0}.entry-copy h2{font-size:25px}.entry-link{justify-self:start}.entry-description{font-size:16px}.stories-page .topic-panel{display:block}.stories-page .filter-title{margin-bottom:15px}.story-entry{grid-template-columns:1fr;gap:0;padding-bottom:28px;margin-top:25px}.entry-image img{height:260px}.story-entry h2{font-size:29px}.story-entry .entry-copy{padding:24px 0 12px}.story-entry .entry-link{grid-column:1;margin:0}.entry-period{margin-top:18px}}
