/* Compact, locally hosted language controls. */
.navbar{grid-template-columns:220px minmax(0,1fr) auto;gap:18px}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}
.header-actions .nav-cta{border-radius:999px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.language-switch{display:flex;align-items:center;gap:4px}
.language-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:5px 7px;border:1px solid rgba(255,255,255,.28);border-radius:6px;background:transparent;color:#fff;font-size:10px;font-weight:700;line-height:1;cursor:pointer}
.language-button img{width:21px;height:14px;border-radius:1px;object-fit:cover}
.language-button[aria-pressed="true"]{border-color:var(--yellow);background:rgba(247,197,20,.12)}
.language-button:hover{background:rgba(255,255,255,.12)}
.language-button:focus-visible,.language-dialog button:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.eng-badge{display:inline-flex;vertical-align:middle;margin-left:7px;padding:4px 7px;border:1px solid var(--navy);border-radius:4px;color:var(--navy);font-size:11px;letter-spacing:.05em;line-height:1.2;font-weight:800;white-space:nowrap}
[data-english-only][hidden],html:not([lang="en"]) [data-english-only]{display:none!important}
.language-modal{position:fixed;inset:0;z-index:700;display:grid;place-items:center;padding:20px;background:rgba(15,18,44,.52)}
.language-dialog{position:relative;width:min(100%,430px);max-height:calc(100dvh - 40px);overflow:auto;padding:32px;border-radius:18px;background:#fff;color:var(--navy);box-shadow:0 20px 70px rgba(0,0,0,.25);font-size:15px;line-height:1.65}
.language-dialog p{margin:0 0 16px}
.language-dialog .language-notice-title{padding-right:24px;font-weight:800;font-size:19px;line-height:1.4}
.language-notice-close{position:absolute;right:12px;top:10px;min-width:40px;min-height:40px;border:0;background:transparent;color:var(--navy);font-size:27px;cursor:pointer}
.language-notice-confirm{min-height:44px;padding:10px 22px;border:0;border-radius:6px;background:var(--navy);color:#fff;font:inherit;font-weight:700;cursor:pointer}
@media(max-width:1200px){
 .navbar{grid-template-columns:minmax(0,1fr) auto auto;gap:12px}
 .brand img.header-logo{width:180px}
 .menu-btn{display:block;min-width:44px;min-height:44px}
 .header-actions{gap:10px}
 .navlinks{display:none;position:absolute;left:20px;right:20px;top:96px;max-height:calc(100dvh - 108px);overflow-y:auto;background:var(--navy2);border:1px solid rgba(255,255,255,.1);padding:16px;flex-direction:column;align-items:flex-start;gap:0;border-radius:0 0 18px 18px;box-shadow:0 14px 30px rgba(0,0,0,.18)}
 .navlinks.open{display:flex}
 .navlinks a,.navlinks .dropbtn{display:flex;align-items:center;width:100%;min-height:44px;font-size:14px;white-space:normal}
 .navlinks .mobile-register{display:none}
 .navlinks .dropdown{width:100%}
 .dropdown-menu{position:static;width:100%;margin-top:8px;box-shadow:none;display:none;opacity:1;visibility:visible;transform:none}
 .dropdown.open .dropdown-menu{display:block}
 .dropdown:hover .dropdown-menu{display:none}
 .dropdown.open:hover .dropdown-menu{display:block}
}
@media(max-width:900px){.navlinks{top:82px;max-height:calc(100dvh - 94px)}}
@media(max-width:600px){
 .navbar{gap:6px}
 .brand img.header-logo{width:min(155px,calc(100vw - 237px));max-width:100%}
 .header-actions{gap:6px}
 .header-actions .nav-cta{min-height:40px;padding:0 10px;font-size:11px}
 .language-switch{gap:3px}
 .language-button{min-width:30px;min-height:40px;padding:4px}
 .language-button span{display:none}
 .navlinks{top:72px;left:16px;right:16px;max-height:calc(100dvh - 84px)}
 .language-dialog{padding:28px 24px 24px}
}

@media(max-height:500px) and (max-width:900px){.navlinks{top:64px;max-height:calc(100dvh - 76px)}}

body.language-notice-open{overflow:hidden}
