.guide-catalog { background:#f8fafc; padding-inline:1rem; padding-bottom:4rem; }
.guide-catalog-inner { max-width:960px; margin:auto; }
.guide-catalog h1 { font-size:clamp(1.6rem,3vw,2.25rem); font-weight:800; color:#0f172a; }
.guide-catalog header p { color:#475569; margin-top:.5rem; }
.guide-search { display:flex; gap:.5rem; flex-wrap:wrap; margin-top:1.5rem; }
.guide-search input { flex:1; min-width:180px; border:1px solid #cbd5e1; border-radius:.75rem; padding:.75rem; font-size:1rem; background:white; }
.guide-search button,.guide-search a { min-height:44px; padding:.65rem 1rem; border-radius:.75rem; font-weight:700; }
.guide-search button { background:#0f172a; color:white; }
.guide-count { margin:.75rem 0; font-size:.875rem; color:#64748b; }
.guide-categories { display:flex; flex-wrap:wrap; gap:.5rem 1rem; margin:1rem 0 1.5rem; }
.guide-categories a { padding:.4rem 0; color:#0369a1; text-decoration:underline; text-underline-offset:3px; }
.guide-group { margin-top:1.5rem; scroll-margin-top:calc(var(--main-nav-height,88px) + 1rem); }
.guide-group h2 { font-size:1.15rem; font-weight:800; margin-bottom:.6rem; color:#0f172a; }
.guide-row { display:flex; align-items:center; gap:1rem; padding:1rem; background:white; border:1px solid #e2e8f0; border-radius:.75rem; margin-top:.5rem; color:#0f172a; }
.guide-row img { width:112px; height:72px; object-fit:cover; object-position:top; border-radius:.4rem; flex-shrink:0; }
.guide-row-copy { display:grid; gap:.25rem; flex:1; min-width:0; overflow-wrap:anywhere; }
.guide-row-copy strong { font-size:1rem; }
.guide-row-copy > span { color:#475569; font-size:.875rem; }
.guide-row-copy .guide-first-action { color:#0f172a; }
.guide-row-action { font-size:.875rem; white-space:nowrap; }
.guide-row:hover { border-color:#38bdf8; }
.guide-catalog a:focus-visible,.guide-catalog button:focus-visible,.guide-catalog input:focus-visible { outline:3px solid #0284c7; outline-offset:3px; }
.guide-empty { padding:2rem 0; color:#475569; }
@media(max-width:480px) { .guide-row { gap:.65rem; padding:.85rem; } .guide-row img { width:64px; height:54px; } .guide-row-action { display:none; } }
