.home-languages { margin: 40px 0 48px; padding: 28px; border: 1px solid var(--border-soft, #dce5ec); border-radius: 18px; background: var(--surface, #fff); scroll-margin-top: 90px; }
.home-languages .section-title { margin: 0 0 20px; }
.home-languages-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px 24px; list-style: none; padding: 0; margin: 0; }
.home-languages-list li { min-width: 0; }
.home-languages-list a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 6px 0; color: var(--link, #075c91); font-size: 16px; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
.home-languages-list .flag { flex: 0 0 24px; }
.home-languages-list a:hover { text-decoration: underline; }
.home-languages-list a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 3px; }
.home-languages-list a[aria-current="page"] { font-weight: 700; }
body[data-theme='dark'] .home-languages { background: var(--panel, #14273a); border-color: var(--border-soft, #35485c); }
body[data-theme='dark'] .home-languages-list a { color: #b8e0fc; }
@media (max-width: 900px) {
    .home-languages-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .home-languages { margin: 28px 0 32px; padding: 20px 16px; border-radius: 14px; }
    .home-languages .section-title { font-size: 21px; margin-bottom: 16px; }
    .home-languages-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 20px; }
}
@media (max-width: 440px) {
    .home-languages-list { grid-template-columns: 1fr; }
}
