/* Shared-scale language selector. */
.mh-language-dialog { width:62.5rem; max-width:calc(100vw - 2rem); height:34.5rem; max-height:calc(100dvh - 2rem); padding:0; border:0; border-radius:1rem; margin:auto; background:#fff; color:#191919; box-shadow:0 1rem 3rem #0005; font:400 1rem/1.5 'Google Sans Flex',Arial,sans-serif; }
.mh-language-dialog[open] { display:flex; flex-direction:column; }
.mh-language-dialog::backdrop { background:#0008; }
.mh-language-dialog * { box-sizing:border-box; }
.mh-language-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.25rem 1.5rem; border-bottom:1px solid #ddd; }
.mh-language-heading h2 { margin:0; font:600 2rem/1.2 Lora,Georgia,serif; }
.mh-language-heading button { border:0; background:none; color:#191919; font:400 2.5rem/1 Arial; cursor:pointer; }
.mh-language-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1rem; padding:2.5rem 2rem; overflow:auto; }
.mh-language-grid button { display:flex; flex-direction:column; align-items:center; gap:.35rem; min-width:0; padding:1rem .25rem; border:1px solid transparent; border-radius:.5rem; background:transparent; color:#191919; font:inherit; cursor:pointer; }
.mh-language-grid button:hover,.mh-language-grid button[aria-pressed=true] { border-color:#c48337; background:#fcf4e8; color:#a66a28; }
.mh-language-dialog button:focus-visible { outline:2px solid #c48337; outline-offset:2px; }
.mh-language-flag { background-image:url('../images/languages_icon.png'); background-size:28.125em auto; background-repeat:no-repeat; flex-shrink:0; width:3.125em; height:1.875em; font-size:1rem; }
.mh-language-status { margin:auto 0 0; padding:.65rem 1rem; text-align:center; border-top:1px solid #eee; }
@media(max-width:767px) { .mh-language-dialog {height:auto; min-height:26rem;} .mh-language-heading h2 {font-size:1.25rem;} .mh-language-grid {grid-template-columns:repeat(3,minmax(0,1fr));padding:1rem;gap:.5rem;} .mh-language-grid button {font-size:.875rem;} }

.mh-language-flag.icon-en {
    background-position: -9.375em -1.875em;
}

.mh-language-flag.icon-fr {
    background-position: -9.375em -9.375em;
}

.mh-language-flag.icon-ru {
    background-position: -15.625em -18.75em;
}

.mh-language-flag.icon-es {
    background-position: -9.375em -5.625em;
}

.mh-language-flag.icon-ar {
    background-position: 0 -1.875em;
}

.mh-language-flag.icon-pt {
    background-position: -9.375em -18.75em;
}

.mh-language-flag.icon-zh-CN {
    background-position: -18.75em -22.5em;
}

.mh-language-flag.icon-ja {
    background-position: -15.625em -3.75em;
}

.mh-language-flag.icon-ko {
    background-position: -3.125em -15em;
}

.mh-language-flag.icon-jv {
    background-position: -15.625em -5.625em;
}


