.catalog-page { padding:12px 0 32px; color:#e6edf3; }
.catalog-layout { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:32px; }
.catalog-main,.catalog-copy { min-width:0; }
.catalog-header { margin-bottom:24px; }
.catalog-eyebrow { color:#6de0a3; font-size:11px; letter-spacing:1.4px; margin-bottom:8px; }
.catalog-header h1 { color:#e1b54b; font-size:clamp(25px,3vw,36px); line-height:1.25; margin-bottom:12px; overflow-wrap:anywhere; }
.catalog-header > p:last-child { color:#a9bdd0; font-size:14px; line-height:1.7; }
#catalog-feed { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:18px; }
.catalog-card { padding:0; }
.catalog-cover img { border-radius:0; }
.catalog-category-links a { color:#b8cbdc; background:#102c46; padding:4px 9px; border-radius:6px; font-size:12px; }
.catalog-status { text-align:center; color:#a9bdd0; padding:14px 0; }
.catalog-status:empty { padding:0; }
.catalog-status button { border:1px solid #284359; border-radius:8px; padding:8px 14px; background:transparent; color:#e1b54b; }
#catalog-sentinel { height:1px; }
.catalog-sidebar { align-self:start; position:sticky; top:20px; border-left:1px solid #284359; padding-left:24px; min-width:0; }
.catalog-side-section { margin-bottom:30px; }
.catalog-side-section h2 { font-size:17px; margin-bottom:16px; }
.catalog-category-links { display:flex; flex-wrap:wrap; gap:8px; }
.catalog-search { max-width:900px; margin:auto; }
.catalog-search-form { display:flex; gap:10px; margin:20px 0 12px; }
.catalog-search-form input { min-width:0; flex:1; padding:12px 14px; border:1px solid #284359; border-radius:9px; background:#102c46; color:#fff; font-size:15px; }
.catalog-search-form button { padding:12px 16px; border:0; border-radius:9px; background:#e1b54b; color:#081c31; font-weight:600; }
.catalog-empty { grid-column:1/-1; color:#a9bdd0; padding:20px 0; font-size:14px; }
.catalog-page :is(a,button,input):focus-visible { outline:2px solid #e1b54b; outline-offset:3px; }
@media(max-width:991px) { .catalog-layout { grid-template-columns:minmax(0,1fr); } .catalog-sidebar { display:none; } .catalog-page { padding:12px 16px 28px; } }
@media(max-width:575px) { #catalog-feed { gap:12px; } .catalog-search-form { gap:7px; } .catalog-search-form button { padding:10px; } }
