@font-face{font-family:LanguageMori;src:url('../fonts/PPMori-Regular.otf');font-weight:400;font-display:swap}
@font-face{font-family:LanguageMori;src:url('../fonts/PPMori-SemiBold.otf');font-weight:600;font-display:swap}
.language-picker{width:min(560px,calc(100% - 32px));max-height:calc(100svh - 40px);padding:42px;border:1px solid #ffffff38;border-radius:28px;color:#fff;background:rgba(28,28,34,.72);box-shadow:0 24px 90px #0005,inset 0 1px 0 #ffffff15;backdrop-filter:blur(36px) saturate(145%);-webkit-backdrop-filter:blur(36px) saturate(145%);font-family:LanguageMori,Arial,sans-serif;overflow:auto}
.language-picker::backdrop{background:rgba(12,12,18,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.language-picker[open]{animation:language-enter .35s ease both}
.language-picker__label{font-size:11px;letter-spacing:.18em;color:#ffffffb0;margin:0 0 18px}
.language-picker h2{font-family:LanguageMori,Arial,sans-serif;font-size:clamp(28px,5vw,38px);font-weight:600;letter-spacing:-.04em;line-height:1.12;color:#fff;margin:0 0 12px}
.language-picker__intro{font-size:15px;line-height:1.5;color:#ffffffb8;margin:0 0 28px}
.language-picker__options{display:grid;gap:10px}
.language-picker__options button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px 20px;font:600 17px LanguageMori,Arial,sans-serif;color:#fff;border:1px solid #ffffff30;background:#ffffff0c;border-radius:14px;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.language-picker__options button:hover{background:#ffffff22;border-color:#ffffff80;transform:translateX(3px)}
.language-picker__options button span{font-size:12px;opacity:.65}
.language-picker button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.language-picker__close{position:absolute;top:14px;right:16px;width:30px;height:30px;border:0;background:transparent;color:#fff;font-size:25px;line-height:1;cursor:pointer}
.language-picker__foot{font-size:12px;color:#ffffff90;margin:22px 0 0}
@keyframes language-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.language-picker{padding:34px 24px;border-radius:24px}.language-picker__options button{padding:17px 18px}}
@media(prefers-reduced-motion:reduce){.language-picker[open]{animation:none}.language-picker__options button{transition:none}}

.glass-language{position:relative;border-left:1px solid #ffffff35;padding-left:20px;font-family:CollegeNav,Arial,sans-serif}
.glass-language__toggle{display:flex;gap:9px;align-items:center;border:0;background:transparent;color:#fff;font:400 14px CollegeNav,Arial,sans-serif;padding:10px 0;cursor:pointer;white-space:nowrap}
.glass-language__options{position:absolute;top:100%;right:-12px;min-width:160px;padding:10px;border:1px solid #ffffff30;border-radius:18px;background:rgba(28,28,34,.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 10px 35px #0003;opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .2s,transform .2s,visibility .2s}
.glass-language.is-open .glass-language__options{opacity:1;visibility:visible;transform:translateY(0)}
.glass-language__options button{width:100%;text-align:left;border:0;border-radius:10px;background:transparent;color:#fff;font:400 14px CollegeNav,Arial,sans-serif;padding:12px;cursor:pointer}
.glass-language__options button:hover,.glass-language__options button:focus-visible{background:#ffffff18}
.glass-language button:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(max-width:1050px){.glass-language{border-left:0;border-top:1px solid #ffffff30;padding:8px 10px 0}.glass-language__toggle{width:100%;justify-content:space-between;font-size:16px;padding:12px 0}.glass-language__options{position:static;display:none;box-shadow:none;min-width:0;margin-top:4px}.glass-language.is-open .glass-language__options{display:block}.glass-menu.is-open{max-height:calc(100svh - 24px);overflow-y:auto}}

.glass-language__toggle{gap:7px;font-size:12px;letter-spacing:.04em}
.glass-language__globe{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.25;opacity:.85}
.glass-language__chevron{font-size:12px;opacity:.65}
@media(max-width:1050px){.glass-language__toggle{justify-content:flex-start;gap:10px;font-size:14px}.glass-language__chevron{margin-left:auto}}

.glass-language__chevron{display:block;width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.8;transition:transform .22s ease}
.glass-language.is-open .glass-language__chevron{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.glass-language__chevron{transition:none}}

.language-picker__foot{min-height:36px;display:flex;align-items:center;transition:opacity .22s ease,transform .22s ease;opacity:1;transform:translateY(0)}
.language-picker__foot.is-changing{opacity:0;transform:translateY(-4px)}
@media(prefers-reduced-motion:reduce){.language-picker__foot{transition:none}}

.language-picker:focus{outline:none}
.language-picker__options button.is-previewed,.language-picker__options button:hover{outline:2px solid #fff;outline-offset:4px}
.language-picker__options button{transition:background .2s,border-color .2s;}
.language-picker__options button:hover{transform:none}

.language-picker__options button{position:relative}
.language-picker__options button.is-previewed,.language-picker__options button:hover{outline:none}
.language-picker__options button:before{content:'';position:absolute;inset:-6px;border:2px solid #fff;border-radius:20px;opacity:0;pointer-events:none;transition:opacity .4s ease}
.language-picker__options button.is-previewed:before,.language-picker__options button:hover:before{opacity:1}
@media(prefers-reduced-motion:reduce){.language-picker__options button:before{transition:none}}
