/* Shared responsive controls, including the separate governance pages. */
html{scroll-padding-top:calc(var(--ch-nav-height,100px) + 16px)}
body[data-ru-theme] main{padding-top:var(--ch-nav-height,100px)!important}
html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] :is(main>section,main section[id]){scroll-margin-top:16px}
.ch-nav-panel{display:contents}.ch-menu{display:none}
nav .lang a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:44px;color:#294b54;font-weight:650;font-size:12px;border-radius:24px;text-decoration:none}
nav .lang a.active,nav .lang a[aria-current=page]{background:#d3b36f;color:#173747}
nav :is(.lang a,.ch-menu,a):focus-visible{outline:3px solid #286f61;outline-offset:3px}
body[data-ru-theme] nav .motion-toggle{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
body[data-ru-theme] :is(button,.btn,.preset,.navcta){touch-action:manipulation}
body[data-ru-theme] :is(.preset,.sx-next,.sx-tabs button,.cg-stages button,#pc-motion){min-height:44px}
body[data-ru-theme] input[type=range]{min-height:44px}
body[data-ru-theme] #purchasing .pc-number button{min-width:44px;width:44px;height:44px;flex-basis:44px}
body[data-ru-theme] .participation-fields :is(input,textarea){font-size:16px}
.participation-error{color:#922b23;font-size:14px;line-height:1.5;margin:0}
.participation-fields input[aria-invalid=true]{border-color:#a23127;outline-color:#a23127}
body[data-ru-theme] .reveal{opacity:1;transform:none}
.ch-static :is(.ru-panorama canvas,.ru-cloud){display:none}
.ch-static .ru-panorama-art{opacity:1}
.ch-static .ch-static-note{font-size:14px;color:#294c56;padding:12px 20px;background:#f7faf2d9}
@media(max-width:1150px) and (min-width:768px){body[data-ru-theme] nav .navlinks{gap:12px!important}body[data-ru-theme] nav .navlinks a{min-height:44px;display:flex;align-items:center}}
@media(max-width:767px){
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] nav .bar{min-height:78px;height:auto;padding:10px 0;gap:10px;width:calc(100% - 28px);flex-wrap:nowrap;justify-content:space-between}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] .brand-logo{width:44px;height:44px;flex:0 0 44px}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] .brand-copy strong{font-size:14px;letter-spacing:.035em}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] .brand-copy small{font-size:10px;letter-spacing:.04em}
 body[data-ru-theme] .brand{gap:9px;min-width:0}
 .ch-enhanced .ch-menu{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 11px;border:1px solid #7c9c92;background:#edf3eb;color:#203e49;border-radius:12px;font:600 14px system-ui;flex-shrink:0}
 .ch-enhanced .ch-nav-panel{display:none;position:absolute;left:0;right:0;top:100%;padding:16px 20px 22px;border-top:1px solid #c4d1c9;border-bottom:1px solid #90ada2;background:#f6f8f2fa;box-shadow:0 12px 20px #223b4922;max-height:calc(100dvh - 80px);overflow-y:auto}
 .ch-enhanced nav.ch-open .ch-nav-panel{display:flex;flex-direction:column;gap:16px}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] nav .navlinks{display:grid;grid-template-columns:1fr 1fr;order:0;gap:6px;width:100%;font-size:15px;text-align:left}
 body[data-ru-theme] nav .navlinks a{padding:12px 10px;min-height:46px;border-bottom:1px solid #bfcec55e;line-height:1.45}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] nav .navright{display:flex;flex-wrap:wrap;width:100%;gap:12px;justify-content:space-between;align-items:center}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] nav .navcta{width:100%;justify-content:center;min-height:46px}
 nav .lang a{min-width:45px;font-size:13px}
 .ch-static nav .bar{flex-wrap:wrap!important}.ch-static .ch-nav-panel{display:flex;flex-direction:column;width:100%;gap:12px}.ch-static nav{position:relative!important}.ch-static main{padding-top:0!important}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] main>.hero{min-height:0!important;padding-top:40px!important;padding-bottom:40px!important}
 html:is([lang=ru],[lang=en],[lang=ky]) body[data-ru-theme] .hero h1{font-size:clamp(34px,8.7vw,50px)!important;line-height:1.12!important;overflow-wrap:normal}
 .hero .lead{font-size:17px!important;line-height:1.7}.cg-hero h1{font-size:clamp(31px,8.7vw,42px)}
 body[data-ru-theme] .sx-tabs{flex-wrap:wrap}body[data-ru-theme] .sx-tabs button{flex:1 1 40%;min-width:0}
 body[data-ru-theme] .formula-equation{overflow-wrap:anywhere}
 body[data-ru-theme] .decision-card label{min-height:44px;display:flex;align-items:center;gap:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Prevent long headings from establishing a minimum grid width on small phones. */
body[data-ru-theme] .reveal{filter:none!important}
#future .vision-story,#future .vision-content>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:950px){#future .vision-content{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:600px){.gf-heading{flex-wrap:wrap;gap:12px}.gf-heading h3{max-width:100%}.gf-toggle{min-height:44px}.gf-process{gap:16px}.gf-process li{font-size:12px}.gf-process li:not(:last-child):after{right:-13px}.vision-story h3{overflow-wrap:anywhere}}
