.hero.svelte-110vah{background:var(--color-bg-dark);padding-top:140px;padding-bottom:var(--sp-16)}.hero.svelte-110vah .section-label:where(.svelte-110vah){color:#ffffff80}.hero.svelte-110vah .section-label:where(.svelte-110vah):before{background:var(--color-coral)}h1.svelte-110vah{font-size:clamp(32px,5vw,52px);font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--color-text-inv);margin-bottom:var(--sp-4)}.subtitle.svelte-110vah{color:#ffffff8c;font-size:var(--text-lg);line-height:1.65;max-width:600px}.courses.svelte-110vah{padding:var(--sp-12) 0 var(--sp-20)}.filters.svelte-110vah{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-8)}.filter-btn.svelte-110vah{padding:8px 16px;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);background:var(--color-bg-muted);transition:all .15s}.filter-btn.svelte-110vah:hover{color:var(--color-text);background:var(--color-border)}.filter-btn.active.svelte-110vah{background:var(--color-coral);color:#fff}.grid.svelte-110vah{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-4)}.card.svelte-110vah{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.card.svelte-110vah:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card.svelte-110vah img:where(.svelte-110vah){width:100%;height:180px;object-fit:cover}.card-body.svelte-110vah{padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-3);flex:1}h3.svelte-110vah{font-size:var(--text-lg);font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.card-body.svelte-110vah p:where(.svelte-110vah){font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.65;flex:1}.arrow.svelte-110vah{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--color-bg-muted);font-size:var(--text-base);color:var(--color-text);align-self:flex-end;transition:background .15s}.card.svelte-110vah:hover .arrow:where(.svelte-110vah){background:var(--color-border)}@media(max-width:900px){.grid.svelte-110vah{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.grid.svelte-110vah{grid-template-columns:1fr}}
