.projects_container__1pips{max-width:1120px;margin:0 auto;padding:1.5rem 1rem 2.25rem;color:var(--color-text);background:var(--color-bg)}.projects_header__Hmit2{display:grid;grid-template-columns:1fr;grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.projects_titleWrap__H2u9J{border:1px solid var(--color-border);background:#fff;border-radius:14px;padding:clamp(.9rem,2vw,1.25rem);box-shadow:0 8px 18px rgba(17,17,17,.04)}.projects_heading__Z6uTQ{text-align:left;font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:700;margin:0 0 .3rem;color:var(--color-text);letter-spacing:-.01em}.projects_sub__8hVcn{margin:0;color:#5a5f66;font-size:clamp(.9rem,1.06vw,1rem);line-height:1.6}.projects_toolbar__JXNgU{display:grid;grid-gap:.75rem;gap:.75rem}.projects_searchWrap__1tMdy{position:relative}.projects_search__ojGsO{width:100%;padding:.78rem .95rem;border-radius:12px;border:1px solid var(--color-border);background:#fff;color:var(--color-text);outline:none;transition:box-shadow .18s ease,border-color .18s ease,background .18s ease}.projects_search__ojGsO::placeholder{color:#9aa1a9}.projects_search__ojGsO:focus{border-color:var(--color-primary);box-shadow:0 0 0 6px rgba(0,112,243,.12)}.projects_filters__gsGT9{display:grid;grid-template-columns:1fr;grid-gap:.7rem;gap:.7rem}@media (min-width:920px){.projects_filters__gsGT9{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:1rem}}.projects_filters__gsGT9 .projects_filterGroup__5Tg9g:first-of-type{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.25rem;border-radius:12px;background:#fff}.projects_chip__GFXrf{padding:.6rem 1rem;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--color-text);cursor:pointer;font-weight:700;font-size:.95rem;transition:transform .06s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.projects_chip__GFXrf:hover{transform:translateY(-1px);background:#f7f8fc;border-color:var(--color-border);box-shadow:0 6px 14px rgba(17,17,17,.06)}.projects_active__jharG{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.projects_filters__gsGT9 .projects_filterGroup__5Tg9g:nth-of-type(2),.projects_filters__gsGT9 .projects_filterGroup__5Tg9g:nth-of-type(3){display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.projects_label__z_T0s{color:#3f444a;font-size:.92rem;font-weight:600}.projects_select__ZF39d{padding:.6rem .8rem;border-radius:12px;border:1px solid var(--color-border);background:#fff;color:var(--color-text);outline:none;transition:box-shadow .18s ease,border-color .18s ease}.projects_select__ZF39d:focus{border-color:var(--color-primary);box-shadow:0 0 0 6px rgba(0,112,243,.12)}.projects_countRow__Tdn9l{display:flex;align-items:center;justify-content:flex-end;margin:.7rem 0 1.1rem}.projects_count__4Fldt{color:#666;font-size:.92rem}.projects_grid__GPIYr{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}@media (min-width:560px){.projects_grid__GPIYr{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:960px){.projects_grid__GPIYr{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}}.projects_card__6ltO5{background:#ffffff;border:1px solid var(--color-border);border-radius:14px;display:flex;flex-direction:column;text-align:left;box-shadow:0 8px 18px rgba(17,17,17,.05);transform:translateY(8px) scale(.985);opacity:0;transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .32s ease,box-shadow .18s ease;overflow:hidden}.projects_in__bw8yh{opacity:1;transform:translateY(0) scale(1)}.projects_card__6ltO5:hover{transform:translateY(-2px) scale(1.005);box-shadow:0 14px 26px rgba(17,17,17,.08)}.projects_thumbLink__NnHw0{display:block}.projects_thumbWrap__EaQl3{position:relative;aspect-ratio:16/10;background:#f2f4f7;overflow:hidden;border-bottom:1px solid var(--color-border)}.projects_thumb__80L1B{object-fit:cover;transform:scale(1.001);transition:transform .4s ease}.projects_card__6ltO5:hover .projects_thumb__80L1B{transform:scale(1.03)}.projects_badges__bO_JP{position:absolute;top:10px;left:10px;display:flex;gap:8px;flex-wrap:wrap}.projects_badge__eSewm{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.01em;background:#ffffffee;color:#333;border:1px solid var(--color-border);box-shadow:0 6px 12px rgba(17,17,17,.06)}.projects_badgeHosted__kja0A{background:#e8f8ef;color:#176b3a;border-color:#c9ebd7}.projects_badgeLocal__V65V_{background:#fff6e6;color:#7a4b00;border-color:#ffe3b3}.projects_badgeMuted__s7DH_{display:none}.projects_cardBody__ri50v{padding:.95rem .95rem 0}.projects_cardTitle__a24Ia{margin:.45rem 0 .4rem;font-size:clamp(1rem,1.6vw,1.12rem);font-weight:700;color:var(--color-text);letter-spacing:-.01em}.projects_cardDesc__mEfTk{margin:0 0 1rem;color:#52565b;font-size:.96rem;line-height:1.55;min-height:3.2em}.projects_cardActions__ZJlwD{display:grid;grid-template-columns:1fr;grid-gap:.55rem;gap:.55rem;padding:0 .95rem .95rem;margin-top:auto}@media (min-width:520px){.projects_cardActions__ZJlwD{grid-template-columns:repeat(2,minmax(0,1fr))}}.projects_button__ryRb5{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1rem;border-radius:10px;border:1px solid var(--color-border);background:#ffffff;color:var(--color-text);font-weight:700;font-size:.95rem;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .08s ease}.projects_button__ryRb5:hover{background:#f7f8fc;border-color:#d9e0ea;transform:translateY(-1px);box-shadow:0 8px 18px rgba(17,17,17,.06)}.projects_primary__N2Oie{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.projects_primary__N2Oie:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}@media (prefers-reduced-motion:reduce){.projects_button__ryRb5,.projects_card__6ltO5,.projects_chip__GFXrf,.projects_search__ojGsO,.projects_select__ZF39d,.projects_thumb__80L1B{transition:none!important}}.projects_buttons__Dwamx a{background:var(--color-primary);color:#fff;padding:.6rem 1.2rem;border-radius:10px;font-weight:700;font-size:.95rem;transition:background .2s ease}.projects_buttons__Dwamx a:hover{background:var(--color-primary-hover)}