/* V3 / global language gateway: editorial, bilingual-friendly, offline accessible */
.lang-btn{min-width:92px;white-space:nowrap;justify-content:center;gap:8px!important;transition:background .25s ease,border-color .25s ease,transform .25s ease;cursor:pointer}
.lang-btn:hover{transform:translateY(-1px);border-color:rgba(110,241,197,.55)}
.lang-btn .ico{display:inline-block!important;width:16px;height:16px}
.lang-btn .ico:last-child{width:11px;height:11px;transform:rotate(90deg);opacity:.65}
.portal .lang-btn{border:1px solid #d4e7df}
.locale-overlay{position:fixed;inset:0;z-index:10000;background:rgba(2,11,19,.76);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;padding:24px;animation:localeShade .35s ease both}
.locale-modal{width:min(730px,100%);max-height:min(90vh,800px);overflow-y:auto;overscroll-behavior:contain;position:relative;border:1px solid rgba(204,246,228,.19);background:#0a1a27;color:#f5faf8;box-shadow:0 40px 140px rgba(0,0,0,.7);border-radius:4px;animation:localeLift .42s cubic-bezier(.18,.8,.25,1) both}
.locale-modal::before{content:"";pointer-events:none;position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,transparent,#86f4ce 30%,#bceee3 60%,transparent)}
.locale-header{display:flex;align-items:center;justify-content:space-between;padding:22px 36px;border-bottom:1px solid rgba(201,238,233,.1)}
.locale-eyebrow{font:600 10px/1.2 'Arial',sans-serif;letter-spacing:.22em;color:#8fa7ad}
.locale-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);color:#e1f2e9;background:transparent;border-radius:50%;cursor:pointer;transition:background .2s,color .2s}
.locale-close:hover{background:#baf6da;color:#05251d}
.locale-close .ico{width:16px;height:16px}
.locale-content{padding:27px 36px 26px}
.locale-symbol{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(166,235,208,.3);color:#b7efdb;border-radius:50%;margin-bottom:21px}
.locale-symbol .ico{width:20px;height:20px}
.locale-content h2{margin:0;color:#f9fffb;font-family:Georgia,'Times New Roman',serif;font-size:clamp(31px,4vw,49px);font-weight:400;line-height:1.08;letter-spacing:-.045em}
.locale-content>p{color:#acc4c5;font:400 13px/1.8 system-ui,sans-serif;margin:14px 0 21px;max-width:550px}
.locale-search-wrap{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.045);border:1px solid rgba(185,229,214,.17);padding:0 15px;margin-bottom:17px;height:47px;transition:border-color .2s}
.locale-search-wrap:focus-within{border-color:#89e9c6}
.locale-search-wrap .ico{flex:none;width:17px;height:17px;color:#93acae}
.locale-search-wrap input{border:0;outline:0;background:transparent;color:#fff;min-width:0;width:100%;font:400 13px system-ui,sans-serif}
.locale-search-wrap input::placeholder{color:#7e999d}
.locale-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.locale-choice{display:flex;align-items:center;text-align:left;gap:14px;min-height:69px;padding:12px 16px;background:rgba(255,255,255,.025);border:1px solid rgba(169,205,207,.13);color:inherit;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.locale-choice:hover{background:rgba(135,237,196,.09);border-color:rgba(151,234,208,.5);transform:translateY(-1px)}
.locale-choice.is-selected{border-color:#74dec0;background:rgba(116,222,192,.105)}
.locale-choice[hidden]{display:none!important}
.locale-flag{font-family:'Segoe UI Emoji','Apple Color Emoji',sans-serif;font-size:26px;line-height:1;min-width:29px;flex:none}
.locale-choice-text{display:flex;flex-direction:column;gap:4px;min-width:0}
.locale-choice-text strong{font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.locale-choice-text small{font-size:10px;color:#9eb4b8;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.locale-pick{margin-left:auto;display:grid;place-items:center;color:#73918c;flex:none}
.locale-pick .ico{width:16px;height:16px}
.locale-choice.is-selected .locale-pick{color:#a0f4d0}
.locale-footnote{display:flex;gap:8px;align-items:start!important;font-size:10px!important;color:#91a9ae!important;margin:18px 0 0!important}
.locale-footnote .ico{width:14px;height:14px;flex:none;margin-top:2px}
.locale-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(201,238,233,.1);font:600 10px/1.3 system-ui,sans-serif;letter-spacing:.12em;color:#77979a;padding:16px 36px}
@keyframes localeShade{from{opacity:0}to{opacity:1}}
@keyframes localeLift{from{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:700px){.lang-btn{min-width:65px!important;gap:4px!important;padding:7px!important}.lang-btn .ico:first-child{width:15px;height:15px}.lang-btn .ico:last-child{display:none!important}.locale-overlay{padding:12px;align-items:center}.locale-modal{max-height:93dvh}.locale-header{padding:16px 21px}.locale-content{padding:22px 21px}.locale-grid{gap:8px}.locale-choice{min-height:62px;padding:10px;gap:9px}.locale-flag{font-size:20px;min-width:23px}.locale-choice-text strong{font-size:12px}.locale-choice-text small{font-size:9px}.locale-content h2{font-size:34px}.locale-footer{padding:13px 21px;font-size:8px}}
@media(max-width:370px){.locale-grid{grid-template-columns:1fr}.locale-content h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.locale-overlay,.locale-modal{animation:none!important}.locale-choice,.lang-btn{transition:none!important}}

/* Long-language typography: keep content inside its editorial grid. */
.v2-hero .hero-copy{min-width:0}
html[lang=ru] .v2-hero h1{font-size:clamp(49px,4.5vw,66px);letter-spacing:-.055em}
html[lang=de] .v2-hero h1{font-size:clamp(50px,5.1vw,77px);letter-spacing:-.06em}
html[lang=fr] .v2-hero h1{font-size:clamp(49px,5.2vw,79px)}
@media(max-width:900px){html[lang=ru] .v2-hero h1{font-size:clamp(46px,7.8vw,72px)}}
@media(max-width:600px){html[lang=ru] .v2-hero h1{font-size:clamp(38px,9vw,53px)}html[lang=de] .v2-hero h1{font-size:clamp(38px,9vw,53px)}}
