.catalogue-badge[data-astro-cid-zhpjsyeu]{text-transform:uppercase;letter-spacing:.08em;color:var(--teal);background:var(--secondary-soft);border-radius:var(--radius-pill);align-items:center;gap:6px;margin-bottom:12px;padding:5px 12px;font-size:.72rem;font-weight:800;display:inline-flex}.courses-hero-content[data-astro-cid-zhpjsyeu]{max-width:780px}.courses-hero-content[data-astro-cid-zhpjsyeu] h1[data-astro-cid-zhpjsyeu]{color:var(--navy);letter-spacing:-.035em;margin:0 0 16px;font-size:clamp(2.4rem,4.8vw,3.8rem);line-height:1.08}.courses-hero-content[data-astro-cid-zhpjsyeu] h1[data-astro-cid-zhpjsyeu] em[data-astro-cid-zhpjsyeu]{color:var(--teal);font-style:italic;font-family:var(--font-serif);font-weight:400}.courses-toolbar-clean[data-astro-cid-zhpjsyeu]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;gap:16px;margin-bottom:32px;padding:20px;display:flex}.toolbar-top-row[data-astro-cid-zhpjsyeu]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.toolbar-search-wrap[data-astro-cid-zhpjsyeu]{flex:1;align-items:center;min-width:260px;max-width:440px;display:flex;position:relative}.toolbar-search-wrap[data-astro-cid-zhpjsyeu] .icon{color:var(--muted);pointer-events:none;position:absolute;left:14px}.toolbar-search-wrap[data-astro-cid-zhpjsyeu] input[data-astro-cid-zhpjsyeu]{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-muted);width:100%;color:var(--ink);transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);padding:10px 14px 10px 42px;font-size:.88rem}.toolbar-search-wrap[data-astro-cid-zhpjsyeu] input[data-astro-cid-zhpjsyeu]:focus{border-color:var(--teal);background:var(--surface);box-shadow:var(--shadow-focus-ring);outline:none}.toolbar-meta[data-astro-cid-zhpjsyeu]{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.courses-count-badge[data-astro-cid-zhpjsyeu]{color:var(--navy);background:var(--surface-muted);border-radius:var(--radius-pill);border:1px solid var(--border);padding:4px 12px;font-size:.84rem;font-weight:700}.switch-catalogue-link[data-astro-cid-zhpjsyeu]{color:var(--teal);transition:color var(--transition-fast), transform var(--transition-fast);align-items:center;gap:6px;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex}.switch-catalogue-link[data-astro-cid-zhpjsyeu]:hover{color:var(--secondary-hover);transform:translate(2px)}.toolbar-filters-row[data-astro-cid-zhpjsyeu]{border-top:1px solid var(--line);flex-direction:column;gap:12px;padding-top:14px;display:flex}.filter-pills-group[data-astro-cid-zhpjsyeu]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-label[data-astro-cid-zhpjsyeu]{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);min-width:52px;font-size:.72rem;font-weight:800}.course-grid[data-astro-cid-zhpjsyeu]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.course-card-wrapper[data-astro-cid-zhpjsyeu]{transition:opacity var(--transition-fast)}.empty-state-clean[data-astro-cid-zhpjsyeu]{text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-md);max-width:520px;margin:20px auto 0;padding:64px 20px}.empty-icon-wrap[data-astro-cid-zhpjsyeu]{background:var(--surface-muted);width:52px;height:52px;color:var(--muted);border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.empty-state-clean[data-astro-cid-zhpjsyeu] h3[data-astro-cid-zhpjsyeu]{color:var(--navy);margin:0 0 8px;font-size:1.25rem}.empty-state-clean[data-astro-cid-zhpjsyeu] p[data-astro-cid-zhpjsyeu]{color:var(--muted);margin:0 0 20px;font-size:.9rem;line-height:1.55}@media (width<=768px){.toolbar-top-row[data-astro-cid-zhpjsyeu]{flex-direction:column;align-items:stretch}.toolbar-search-wrap[data-astro-cid-zhpjsyeu]{max-width:100%}.toolbar-meta[data-astro-cid-zhpjsyeu]{justify-content:space-between}.filter-pills-group[data-astro-cid-zhpjsyeu]{flex-direction:column;align-items:flex-start;gap:6px}}
