header { gap: 20px; }
header nav { min-width: 0; flex-wrap: wrap; gap: 12px 20px; }
.logo img { display: block; border-radius: 50%; object-fit: contain; }
header .logo { flex: 0 0 auto; }
.language-selector { position: relative; margin-inline-start: auto; flex-shrink: 0; font-size: 13px; }
.language-selector summary { cursor: pointer; padding: 10px 6px; border-radius: 6px; }
.language-selector summary:hover { background: var(--cream); }
.language-panel { position: fixed; inset-inline-end: 3vw; top: 110px; width: min(900px, 94vw); max-height: 75vh; overflow-y: auto; overscroll-behavior: contain; background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 12px; padding: 24px; box-shadow: 0 12px 32px #0003; z-index: 40; }
.language-panel h2 { font: 700 22px/1.3 Montserrat, sans-serif; margin: 0 0 8px; }
.language-panel p { font-size: 13px; line-height: 1.5; }
.language-panel button { font: inherit; cursor: pointer; color: inherit; background: transparent; border: 1px solid transparent; border-radius: 6px; text-align: start; padding: 12px; }
.language-panel button:hover { background: var(--cream); border-color: var(--pink); }
.language-panel button[aria-pressed="true"] { background: #fff0f6; border-color: var(--pink); font-weight: 800; }
.language-auto { width: 100%; margin-block: 8px 16px; }
.language-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; direction: ltr; }
.language-grid button, .language-grid bdi { text-align: left; }
.language-grid bdi, .language-grid span { display: block; overflow-wrap: anywhere; }
.language-grid bdi { font-size: 16px; line-height: 1.5; }
.language-grid span { color: #555; font-size: 12px; line-height: 1.5; margin-top: 3px; }
html[dir="rtl"] body { text-align: start; }
html[dir="rtl"] .logo { direction: ltr; unicode-bidi: isolate; }
html[dir="rtl"] input[type="email"], html[dir="rtl"] input[type="url"], html[dir="rtl"] input[name="PostalCode"] { direction: ltr; text-align: start; }
html[dir="rtl"] .creator-social-circle svg { direction: ltr; }
html[dir="rtl"] .nav-toggle { margin-left: 0; margin-inline-start: auto; }
html[lang]:not([lang^="en"]) .topbar { min-height: 30px; height: auto; padding-block: 7px; gap: 12px; }
html[lang]:not([lang^="en"]) header { min-height: 76px; height: auto; padding-block: 10px; gap: 16px; }
html[lang]:not([lang^="en"]) header nav { flex-wrap: wrap; }
@media (max-width: 1000px) {
    .language-selector { margin-inline-start: auto; }
    .language-panel { position: fixed; inset-inline: 3vw; top: 110px; width: 94vw; }
}
@media (max-width: 620px) {
    .language-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .language-panel { padding: 16px; }
    .language-selector { font-size: 11px; max-width: 38vw; }
    html[lang]:not([lang^="en"]) header { gap: 9px; }
    .language-selector summary { overflow-wrap: anywhere; }
    header { gap: 9px; flex-wrap: wrap; min-height: 76px; height: auto; padding-block: 10px; }
    header .logo { font-size: 30px; }
    .language-selector { max-width: 30vw; }
    .nav-toggle { margin-left: 0; margin-inline-start: auto; }
}
