@font-face{font-family:"Montserrat";src:url(../fonts/Montserrat-Regular.ttf);font-display:swap}@font-face{font-family:"Montserrat bold";src:url(../fonts/Montserrat-Bold.ttf);font-display:swap}:root{scroll-behavior:inherit;--bs-gutter-x: 20px;--72-text: 72px;--48-text: 48px;--36-text: 36px;--32-text: 32px;--24-text: 24px;--20-text: 20px;--18-text: 18px;--16-text: 16px;--16-12-text: 16px;--16-11-text: 16px;--16-10-text: 16px;--14-text: 14px;--grid-5-2: 5;--grid-3-1: 3;--grid-2-1: 2;--grid-2fr-1fr: 2fr 1fr;--grid-1fr-2fr: 1fr 2fr;--height-60-40: 60px;--height-60-50: 60px;--card-slider-margin: 20px;--main-color: #0048ba;--main-color-hover: #0059e8;--accent-color: #333;--accent-color-hover: #333;--second-color: #e6e6e6;--second-light-color: #f3f3f3;--text-color: #000}.row{--bs-gutter-x: 40px}.callback-modal__close,.consent-modal__close,.main-other__arrow,.main-slider__arrow,.pagination a,.burger-menu__close,.search-form button,.btn-burger{display:flex;justify-content:center;align-items:center}@keyframes up{from{transform:translateY(0px)}to{transform:translateY(-5px)}}@keyframes right{from{transform:translatex(0px)}to{transform:translatex(5px)}}*,*::before,*::after{box-sizing:border-box}a{cursor:pointer;color:inherit}a,a:hover,a:focus{text-decoration:none;outline:0;-moz-outline:0}button,button:hover,button:focus,.btn:focus,.btn:active:focus{outline:0;-moz-outline:0}button{border:none;background:none;margin:0;padding:0}img{max-width:100%;max-height:100%}textarea{max-width:100%;width:100%;min-width:100%;min-height:40px}ul,ol{list-style:none;margin:0;padding:0}h1,h2,h3,h4,h5,p,dt,dd{padding:0;margin:0}b,dt,h1,h2,h3,h4,h5{font-family:"Montserrat bold";font-weight:normal}body{background:#fff;font-family:"Montserrat",sans-serif;font-size:var(--16-text);min-width:320px;color:var(--text-color)}header{flex:0 0 auto}main{flex:1 0 auto}footer{flex:0 0 auto}.wrapper{display:flex;flex-direction:column;min-height:100%;margin:0 auto}.bestweb{font-size:0}.bestweb .bw-logo{transition:all .2s ease-in-out}.bestweb .bw-logo-text{transition:all .2s ease-in-out}.bestweb .bw-text{transition:all .2s ease-in-out}.bestweb .bw-text-hover{opacity:0;transition:all .2s ease-in-out}.bestweb:hover .bw-logo{fill-opacity:1}.bestweb:hover .bw-logo-text{fill:#000}.bestweb:hover .bw-text{opacity:0}.bestweb:hover .bw-text-hover{opacity:1}.icon{stroke:currentColor}.icon-xs{width:20px;height:20px}.icon-sm{width:30px;height:30px}.icon-md{width:40px;height:40px}.icon-lg{width:60px;height:60px}.icon-xl{width:80px;height:80px}.icon-xxl{width:100px;height:100px}.icon-fill{fill:currentColor}.out-grid{grid-column:1/-1}.bold{font-family:"Montserrat bold"}.hidden{display:none !important}.hide{visibility:hidden}.open-menu{overflow:hidden !important;padding-right:0}.offcanvas{overflow-y:auto}.dropdown-menu{max-width:85vw;padding:20px;color:#fff;font-size:var(--18-text);background:var(--main-color);border-radius:0px;box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.dropdown-menu.show{display:flex;flex-direction:column;gap:15px}.dropdown-menu a:hover{color:#fff;text-decoration:underline}.dropdown-item{padding:.45rem 1rem;font-size:var(--16-text);white-space:normal;border-radius:4px}.dropdown-item:hover{background:var(--main-color-hover);color:#fff}.dropdown-toggle{width:-moz-fit-content;width:fit-content}.dropdown-toggle::after{content:"";border:none;width:8px;height:5px;margin-left:7px;vertical-align:middle;background:url(../images/dropdown.svg);background-repeat:no-repeat}.btn-burger{flex-shrink:0;width:50px;height:50px;background:var(--main-color)}.btn-burger:hover{background:var(--main-color-hover)}.header{position:sticky;top:0;z-index:1020;margin-bottom:30px;background:#fff;border-bottom:2px solid var(--main-color);transition:box-shadow .2s ease-out}.header.is-stuck{box-shadow:0 4px 16px rgba(0,0,0,.08)}.header__row{display:grid;grid-template-columns:480px 1fr;align-items:center;gap:40px;padding:20px 0}.header__wrap{display:grid;grid-template-columns:1fr 260px auto;gap:40px;align-items:center;align-self:self-end}.header__search{flex:1 0 auto}.header__phone{display:flex;align-items:center;gap:12px;font-size:var(--24-text);font-family:"Montserrat bold"}.header__phone:hover{color:#000}.header__lang{display:flex;align-items:center;font-size:var(--18-text);text-transform:uppercase;white-space:nowrap}.header__lang-item:hover{color:var(--main-color-hover);text-decoration:underline}.header__lang-item.is-active{color:var(--main-color-hover);font-family:"Montserrat bold";pointer-events:none}.header__lang-item+.header__lang-item{margin-left:10px;padding-left:10px;border-left:1px solid #ccc}.header__nav{display:flex;align-items:center;justify-content:space-between;gap:120px}.header__callback{font-size:var(--18-text);color:var(--main-color);font-family:"Montserrat bold";flex-shrink:0}.header__mobile{display:flex;align-items:center;gap:10px;padding-bottom:15px}.search-form{position:relative;display:flex;width:100%}.search-form input{width:100%;height:50px;padding:15px 20px;background:var(--second-light-color);border:2px solid rgba(0,0,0,0);outline:none;transition:all .2s ease-out}.search-form input::placeholder{color:#000;font-size:var(--16-text);font-family:"Montserrat bold"}.search-form input:hover,.search-form input:focus{background:#fff;border:2px solid var(--main-color-hover)}.search-form button{flex-shrink:0;width:50px;height:50px;color:#fff;border:none;background:var(--main-color);transition:all .2s ease-out}.search-form button:hover{background:var(--main-color-hover)}.logo{display:grid;grid-template-columns:122px 1fr;gap:25px}.logo__text{display:flex;flex-direction:column;justify-content:space-between}.logo__label{font-size:var(--24-text)}.logo__title{font-size:var(--36-text);font-family:"Montserrat bold";line-height:1}.logo:hover{color:inherit}.main-nav{display:flex;align-items:center;justify-content:space-between;width:100%}@media(hover: hover)and (pointer: fine){.main-nav>li:hover>.dropdown-menu{display:block;margin-top:0}}.main-nav__link{display:block;padding:20px 0;font-size:var(--18-text);font-family:"Montserrat bold"}.main-nav__link:hover{color:var(--main-color-hover)}.main-nav__link.has-dropdown::after{content:"";display:inline-block;width:8px;height:5px;margin-left:6px;vertical-align:middle;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='currentColor'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;transition:transform .2s}.burger-menu{padding:20px}.burger-menu__wrap{display:flex;flex-direction:column;gap:35px}.burger-menu__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.burger-menu__controls{display:flex;align-items:center;gap:12px;flex-shrink:0}.burger-menu__nav{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%}.burger-menu__nav>li{border-bottom:1px solid rgba(0,0,0,.07)}.burger-menu__nav>li:last-child{border-bottom:none}.burger-menu__nav .dropdown-menu{display:none;position:static;float:none;background:none;border:none;box-shadow:none;padding:4px 0 12px 16px;margin:0;min-width:0;border-left:2px solid var(--main-color)}.burger-menu__nav .dropdown-menu.show{display:block}.burger-menu__nav .dropdown-menu li{color:#000;padding:5px 0}.burger-menu__nav .dropdown-menu a{font-size:var(--16-text);color:inherit;padding:0;white-space:normal}.burger-menu__nav .dropdown-menu a:hover{color:var(--main-color-hover)}.burger-menu__footer{display:flex;flex-direction:column;gap:10px}.burger-menu__close{width:40px;height:40px;background:var(--second-light-color)}.burger-nav__row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 0}.burger-nav__row .main-nav__link{flex:1;padding:0}.burger-nav__toggle{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;padding:0;cursor:pointer;color:inherit;transition:color .15s}.burger-nav__toggle .icon{transition:transform .25s ease}.burger-nav__toggle:hover{color:var(--main-color-hover)}.burger-nav__toggle.is-open .icon{transform:rotate(180deg)}@media(hover: hover)and (pointer: fine){.main-nav>li:hover>.main-nav__link.has-dropdown::after{transform:rotate(180deg)}}.main-nav>li>.main-nav__link.has-dropdown.is-open::after{transform:rotate(180deg)}.footer{margin-top:60px;padding:70px 0;color:#fff;font-size:var(--18-text);background:var(--main-color)}.footer__wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:25px}.footer__item{display:flex;flex-direction:column}.footer__item a:hover{color:#fff;text-decoration:underline}.breadcrumb{margin-bottom:2rem}.breadcrumb__list{display:flex;padding-bottom:20px;font-size:18px;white-space:nowrap;overflow-x:auto}.breadcrumb__item>a{color:#ccc;font-size:var(--14-text);width:-moz-fit-content;width:fit-content;transition:all .2s ease-out}.breadcrumb__item>a:hover{opacity:1}.breadcrumb__item:not(:last-child)::after{content:"/";font-size:14px;color:#ccc;padding:0 10px}.breadcrumb__item:last-child:not(:first-child)>a:not(.dropdown-toggle){pointer-events:none;color:#000;opacity:.25}.pagination{display:flex;align-items:center;justify-content:space-between;gap:15px 25px;width:100%;padding:10px 20px;border:2px solid var(--second-light-color);transition:all .2s ease-out}.pagination:hover{border:2px solid var(--main-color-hover)}.pagination ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-family:"Montserrat bold"}.pagination a{width:40px;height:40px;color:#000;font-size:14px;border-radius:12px;transition:all .2s ease-out}.pagination a.active{color:#fff;background:#000;pointer-events:none}.pagination a.disable{pointer-events:none}.pagination a.disable svg *{stroke:var(--second-color)}.pagination a:hover{color:#fff;background:var(--main-color-hover)}.pagination a:hover svg *{stroke:#fff}.aside-menu{display:flex;flex-direction:column;gap:1rem;width:100%}.aside-menu__nav{display:flex;flex-direction:column;gap:20px;padding:30px;color:#000;border:2px solid var(--main-color)}.aside-menu__nav a:hover{color:var(--main-color-hover)}.aside-menu__nav a.is-active{color:var(--main-color-hover);font-family:"Montserrat bold"}.aside-menu__link{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:var(--18-text);font-family:"Montserrat bold"}.aside-menu__link svg{flex-shrink:0}.aside-menu__link[aria-expanded=true] svg{transform:rotate(180deg)}.aside-menu__link[aria-expanded=true] .icon{color:var(--main-color-hover)}.aside-menu__collapse{display:flex;flex-direction:column;gap:10px;padding:15px 0 0 15px;font-size:var(--14-text)}.aside-menu__collapse .aside-menu__link{font-size:var(--14-text)}.aside-menu__geo{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border:2px solid var(--main-color);background:#fff;transition:background .2s}.aside-menu__geo img{display:block;width:70px;height:auto;flex-shrink:0;border-radius:3px}.aside-menu__geo:hover{background:var(--main-color)}.aside-menu__geo:hover .aside-menu__geo-label{color:#fff}.aside-menu__geo-label{font-family:"Montserrat bold";font-size:var(--14-text);color:var(--main-color);text-transform:uppercase;line-height:1.3;letter-spacing:.03em;transition:color .2s}.page__grid{display:grid;grid-template-columns:1fr 340px;gap:80px;align-items:start}.page__title,.page__content h1{color:inherit;font-size:var(--32-text);font-family:"Montserrat bold";text-transform:uppercase}.page__title--hr{border-bottom:1px solid var(--second-color);padding:0 150px 15px 0}.page__subtitle,.page__content h2{color:inherit;font-size:var(--24-text);font-family:"Montserrat bold"}.page__subhead,.page__content h3{color:inherit;font-size:var(--20-text);font-family:"Montserrat bold"}.page__second-text{color:#a7a9ac;font-size:var(--16-12-text)}.page__link{white-space:nowrap;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--main-color);transition:all .2s ease-out}.page__link:hover{color:var(--main-color-hover);text-decoration:none}.page__menu-link:hover,.page__content a:hover{color:var(--main-color-hover)}.page__dotted,.page__content a{text-decoration:underline;text-decoration-style:dotted;text-decoration-color:var(--main-color);text-underline-offset:6px}.page__dotted:hover,.page__content a:hover{text-decoration:none}.page__underline{text-decoration:underline;text-decoration-color:var(--second-color);text-underline-offset:6px}.page__underline:hover{text-decoration:none}.page__content>*{margin-top:0;margin-bottom:20px}.page__content>*:last-child{margin-bottom:0}.page__content h1,.page__content h2,.page__content h3,.page__content h4{margin-bottom:12px}.page__content *+h2,.page__content *+h3,.page__content *+h4{margin-top:28px}.page__content img{display:block;margin:0 auto;max-height:600px;object-fit:cover;margin-bottom:20px}.page__content p{font-size:var(--16-text);line-height:1.65;margin-bottom:16px;margin-top:16px}.page__content b,.page__content strong{font-family:"Montserrat bold"}.page__content span{font-size:12px;margin-bottom:16px;color:var(--accent-color)}.page__content blockquote{font-size:var(--20-text);border-left:3px solid var(--main-color);padding-left:16px;margin-left:0;margin-bottom:20px}.page__content ul{list-style:none;padding-left:15px;margin-bottom:20px}.page__content ul li{padding-left:15px;margin-bottom:10px;line-height:1.55}.page__content ul li:last-child{margin-bottom:0}.page__content ul li::marker{content:"—";color:var(--main-color)}.page__content ol{list-style-type:none;counter-reset:num;padding-left:0;margin-bottom:20px}.page__content ol li{counter-increment:num;padding-left:36px;position:relative;margin-bottom:10px;line-height:1.55}.page__content ol li:last-child{margin-bottom:0}.page__content ol li::before{content:counter(num);position:absolute;left:0;color:var(--main-color);font-family:"Montserrat bold"}.page__content ol li:nth-child(-n+9)::before{content:"0" counter(num)}.page__content table{width:100%;border-collapse:collapse;margin-bottom:20px;overflow-x:auto;display:block}.page__content table thead tr{color:#000;font-family:"Montserrat bold";border-bottom:2px solid var(--main-color)}.page__content table tbody tr:nth-child(even){background:var(--second-light-color)}.page__content table tbody tr:hover{background:var(--accent-color);color:#fff}.page__content table td{border-right:2px solid #fff;padding:20px;font-size:var(--16-12-text);font-weight:normal;vertical-align:top}.page__content .cols-2{display:grid;grid-template-columns:repeat(var(--grid-2-1), 1fr);gap:40px 80px}.page__content .cols-3{display:grid;grid-template-columns:repeat(var(--grid-3-1), 1fr);gap:40px 80px}.page__content .cols-2-1{display:grid;grid-template-columns:var(--grid-2fr-1fr);gap:40px 80px}.page__content .cols-1-2{display:grid;grid-template-columns:var(--grid-1fr-2fr);gap:40px 80px}.page__content .cols-auto{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));grid-auto-flow:row dense;gap:20px}.product-fig{margin:0;display:flex;flex-direction:column;gap:8px}.product-fig__link{display:block;overflow:hidden;border-radius:4px;transition:opacity .2s}.product-fig__link img{aspect-ratio:4/3;display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-fig__link:hover{opacity:.88}.product-fig__link:hover img{transform:scale(1.04)}.product-fig__caption{font-size:var(--14-text);color:#555;line-height:1.4}.hero-slider__wrap{position:relative}.main{display:flex;flex-direction:column;gap:60px}.main-slider__wrap{position:relative;margin-right:calc(var(--card-slider-margin)*-1)}.main-slider__item{display:grid;grid-template-columns:1fr 405px}.main-slider__item__text{padding:25px 25px 100px 25px;color:#fff;background:var(--main-color)}.main-slider__item>img{height:450px;min-height:200px;object-fit:cover}.main-slider__controls{position:absolute;bottom:20px;right:20px;z-index:2;display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:20px;width:350px}.main-slider__arrows{display:flex;align-items:center}.main-slider__arrow{width:50px;height:50px;color:#fff;background:#336dc8}.main-slider__arrow:hover{color:var(--main-color);background:#fff}.main-slider__arrow.slick-disabled{opacity:.2;pointer-events:none}.main-slider__arrow--gray{background:#ccc}.main-slider__arrow--gray:hover{background:var(--main-color-hover)}.main-slider__arrow--gray:hover .icon{color:#fff}.main-slider__dots{display:flex;gap:10px}.main-slider__dots>li{display:block;width:10px;height:10px;background:#336dc8;font-size:0}.main-slider__dots>li.slick-active{background:#fff}.main-news__grid{display:grid;grid-template-columns:repeat(var(--grid-3-1), 1fr);gap:40px}.main-news__more{position:absolute;top:10px;right:0;width:-moz-fit-content;width:fit-content;font-size:var(--18-text);color:var(--main-color)}.main-news__more:hover{text-decoration:underline;color:var(--main-color-hover)}.main-about__grid{display:grid;grid-template-columns:230px 1fr 1fr;gap:40px}.main-about__grid>div{display:flex;flex-direction:column;gap:25px}.main-about__banner{display:flex;align-items:center;gap:35px;padding:15px 20px;border:2px solid #ccc}.main-about__banner:hover{color:#fff;background:var(--main-color-hover);border:2px solid var(--main-color-hover)}.main-project{padding:60px 0;background:var(--second-light-color)}.main-project__items .slick-track{display:flex;align-items:stretch}.main-project__items .slick-slide{height:auto}.main-project__item{display:flex;flex-direction:column;margin-right:20px;height:100%}.main-project__item__text{height:100%;padding:35px 40px;background:#fff}.main-project__controls{position:absolute;top:-100px;right:20px}.main-other__grid{display:grid;grid-template-columns:repeat(var(--grid-2-1), 1fr);gap:30px}.main-other__item{display:flex;align-items:center;justify-content:space-between;padding:60px 40px;background:var(--second-light-color)}.main-other__item .icon{color:#fff}.main-other__item:hover{color:#fff;background:var(--main-color-hover)}.main-other__item:hover .main-other__arrow{background:#fff}.main-other__item:hover .main-other__pic{display:none}.main-other__item:hover .main-other__pic-h{display:block}.main-other__item:hover .icon{color:#000}.main-other__arrow{width:50px;height:50px;background:var(--main-color)}.main-other__pic-h{display:none}.main-partners__items .slick-track{display:flex;align-items:stretch}.main-partners__items .slick-slide{height:auto}.main-partners__item{display:flex;align-items:center;justify-content:center;margin-right:20px;height:100%;padding:30px;background:var(--second-light-color)}.main-partners__controls{position:absolute;top:-100px;right:20px}.main-wrap{position:relative;display:flex;flex-direction:column;gap:30px}.news__grid{display:grid;grid-template-columns:repeat(var(--grid-2-1), 1fr);gap:40px}.news-item{display:flex;flex-direction:column;gap:15px}.news-item__date{color:#ccc;font-size:var(--18-text);font-family:"Montserrat bold"}.news-item__title{color:var(--main-color);font-family:"Montserrat bold";font-size:var(--18-text)}.news-item__title:hover{color:var(--main-color-hover);text-decoration:underline}.person__grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:40px}.person-item{display:flex;align-items:start;gap:15px}.person-item__pic{flex-shrink:0}.person-item h4{font-size:var(--16-text);font-family:"Montserrat bold";line-height:1.5;word-spacing:100vw}.person-item span{display:block;margin-top:20px;font-size:14px}.search-page__meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;margin:28px 0 8px}.search-page__query{font-size:var(--18-text);line-height:1.4}.search-page__count{font-family:"Montserrat bold";font-size:var(--16-text)}.search-page__list{border-top:1px solid var(--second-color)}.search-page__pagination{margin-top:30px}.search-form--page input{padding-right:48px}.search-form--page .search-form__clear{position:absolute;top:0;right:50px;z-index:1;width:40px;height:50px;padding:0;color:#000;background:rgba(0,0,0,0)}.search-form--page .search-form__clear:hover{color:var(--main-color);background:rgba(0,0,0,0)}.search-item{display:block;padding:22px 0;border-bottom:1px solid #ccc;color:inherit}.search-item__title{display:block;margin-bottom:8px;color:var(--main-color);font-family:"Montserrat bold";font-size:var(--18-text);line-height:1.35}.search-item__text{margin:0;font-size:var(--16-text);line-height:1.65}.search-item:hover .search-item__title{color:var(--main-color-hover);text-decoration:underline}.search-word{font-family:"Montserrat bold";color:var(--main-color)}.vacancy__item{padding:20px 0;border-bottom:1px solid #ccc}.vacancy__item__link{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:var(--18-text);font-family:"Montserrat bold"}.vacancy__item__link svg{flex-shrink:0}.vacancy__item__link[aria-expanded=true] svg{transform:rotate(180deg)}.vacancy__item__link[aria-expanded=true] .icon{color:var(--main-color-hover)}.vacancy__item__body{margin-top:40px}.about__photo{display:block;width:100%;height:auto;margin-bottom:30px}.survey__greeting{font-size:var(--18-text);font-family:"Montserrat bold";text-align:center;margin-bottom:16px}.survey__form-title{font-size:var(--20-text);font-family:"Montserrat bold";margin:36px 0 20px;padding-bottom:10px;border-bottom:2px solid var(--main-color)}.survey-form{display:flex;flex-direction:column;gap:24px}.survey-form__org{display:flex;flex-direction:column;gap:6px}.survey-form__label{font-family:"Montserrat bold";font-size:var(--16-text)}.survey-form__input{width:100%;max-width:480px;padding:9px 14px;border:1px solid #ccc;border-radius:4px;font-size:var(--16-text);transition:border-color .2s}.survey-form__input:focus{outline:none;border-color:var(--main-color)}.survey-form__table-wrap{overflow-x:auto}.survey-form__select{width:80px;padding:7px 10px;border:1px solid #ccc;border-radius:4px;font-size:var(--16-text);background:#fff;cursor:pointer;transition:border-color .2s}.survey-form__select:focus{outline:none;border-color:var(--main-color)}.survey-form__textarea{width:100%;padding:9px 14px;border:1px solid #ccc;border-radius:4px;font-size:var(--16-text);resize:vertical;transition:border-color .2s}.survey-form__textarea:focus{outline:none;border-color:var(--main-color)}.survey-form__required{color:#e00;font-family:"Montserrat bold"}.survey-form__required-note{font-size:var(--14-text);color:#888;margin:0}.survey-form__consent{display:flex;align-items:flex-start;gap:10px;font-size:var(--14-text)}.survey-form__checkbox{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:var(--main-color);cursor:pointer}.survey-form__consent-link{color:var(--main-color);text-decoration:underline}.survey-form__consent-link:hover{color:var(--main-color-hover)}.survey-form__actions{display:flex;gap:12px;flex-wrap:wrap}.survey-form__submit{padding:11px 32px;background:var(--main-color);color:#fff;border:none;border-radius:4px;font-size:var(--16-text);font-family:"Montserrat bold";cursor:pointer;transition:background .2s}.survey-form__submit:hover{background:var(--main-color-hover)}.survey-form__reset{padding:11px 32px;background:rgba(0,0,0,0);color:var(--main-color);border:1px solid var(--main-color);border-radius:4px;font-size:var(--16-text);cursor:pointer;transition:background .2s,color .2s}.survey-form__reset:hover{background:var(--main-color);color:#fff}.survey-table{width:100%;border-collapse:collapse;font-size:var(--16-text)}.survey-table__th{background:var(--main-color);color:#fff;padding:12px 16px;text-align:left;font-family:"Montserrat bold";white-space:nowrap}.survey-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background .15s}.survey-table tbody tr:last-child{border-bottom:none}.survey-table tbody tr:hover{background:rgba(0,72,186,.04)}.survey-table td{padding:12px 16px;vertical-align:middle}.survey-table td:first-child{width:60%}.survey-table td:not(:first-child){text-align:center;white-space:nowrap}.geography__title{margin-bottom:20px}.geo-list{list-style:none !important;padding:0;margin:0 0 50px;display:grid !important;grid-template-columns:repeat(3, 1fr);gap:4px 20px}.geo-list__item{padding:5px 0 5px 18px;position:relative;cursor:pointer;border-radius:3px;transition:background .15s}.geo-list__item::marker{content:"" !important}.geo-list__item::before{content:"";position:absolute;left:4px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:var(--main-color);opacity:.5;transition:opacity .2s,transform .2s}.geo-list__item:hover::before,.geo-list__item.is-hover::before{opacity:1;transform:translateY(-50%) scale(1.3)}.geo-list__item:hover,.geo-list__item.is-hover{background:rgba(0,0,0,.04)}.geo-list__name{display:block;font-size:var(--14-text);color:var(--main-color);transition:font-family 0s}.geo-list__item:hover .geo-list__name,.geo-list__item.is-hover .geo-list__name{font-family:"Montserrat bold"}.geo-list__desc{display:none}.geo-map{position:relative;width:100%;-webkit-user-select:none;user-select:none}.geo-map__img{display:block;width:100%;height:auto;border-radius:6px;max-height:631px !important}.geo-map__dots{position:absolute;inset:0;pointer-events:none;overflow:visible}.geo-map__dot{position:absolute;transform:translate(-50%, -50%);width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at center, var(--main-color) 0%, var(--main-color) 33%, #fff 33%);border:2px solid var(--main-color);cursor:pointer;pointer-events:all;transition:box-shadow .18s,transform .18s;z-index:1}.geo-map__dot::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:26px;height:26px;border-radius:50%;background:var(--main-color);opacity:0;transition:opacity .18s;z-index:-1;pointer-events:none}.geo-map__dot::after{content:attr(data-label);position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%);background:rgba(210,216,228,.97);color:#1a1a2e;font-size:13px;font-family:inherit;line-height:1;padding:5px 11px;border-radius:3px;white-space:nowrap;pointer-events:none;box-shadow:0 1px 6px rgba(0,0,0,.18);opacity:0;transition:opacity .15s;z-index:20}.geo-map__dot:hover,.geo-map__dot.is-hover{z-index:3;box-shadow:0 0 0 3px hsla(0,0%,100%,.8);transform:translate(-50%, -50%) scale(1.25)}.geo-map__dot:hover::before,.geo-map__dot.is-hover::before{opacity:.22}.geo-map__dot:hover::after,.geo-map__dot.is-hover::after{opacity:1}.geo-map__dot--flip::after{left:auto;right:calc(100% + 8px)}.photogallery__section{margin-bottom:50px}.photogallery__section:last-child{margin-bottom:0}.photogallery__category{font-size:var(--20-text);font-family:"Montserrat bold";margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid var(--main-color)}.photogallery__grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:20px}.photogallery__item{display:flex;flex-direction:column;gap:10px}.photogallery__img-wrap{display:block;overflow:hidden;aspect-ratio:4/3;transition:opacity .2s}.photogallery__img-wrap img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.photogallery__img-wrap:hover{opacity:.85}.photogallery__img-wrap:hover img{transform:scale(1.04)}.photogallery__caption{margin:0;font-size:var(--14-text);color:inherit;line-height:1.4}.videogallery__preview{position:relative}.videogallery__play{position:absolute;inset:0;background-color:rgba(0,72,186,.25);background-image:url("../images/play.svg");background-repeat:no-repeat;background-position:center;background-size:42px;pointer-events:none}.diplomas__grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:30px}.diplomas__item{display:flex;flex-direction:column;gap:12px}.diplomas__img-wrap{display:block;overflow:hidden;transition:opacity .2s}.diplomas__img-wrap img{display:block;width:100%;height:100%;max-height:350px;object-fit:cover;transition:transform .3s ease}.diplomas__img-wrap:hover{opacity:.85}.diplomas__img-wrap:hover img{transform:scale(1.03)}.diplomas__caption{margin:0;font-size:var(--14-text);color:var(--main-color);line-height:1.4}.feedback__lead{font-size:var(--18-text);margin-bottom:20px}.feedback__contacts{display:flex;flex-direction:column;gap:10px}.feedback__contacts p{margin:0}.callback-modal__dialog,.consent-modal__dialog{max-width:520px}.callback-modal__content,.consent-modal__content{border:none;border-radius:0;overflow:hidden}.callback-modal__header,.consent-modal__header{align-items:center;padding:24px 24px 0;border:none}.callback-modal__title,.consent-modal__title{font-family:"Montserrat bold";font-size:var(--24-text);color:var(--main-color)}.callback-modal__close,.consent-modal__close{flex-shrink:0;width:40px;height:40px;margin:0;padding:0;border:none;background:var(--second-light-color);cursor:pointer;transition:background .2s}.callback-modal__close:hover,.consent-modal__close:hover{background:var(--second-color)}.callback-modal__body,.consent-modal__body{padding:20px 24px 24px}.consent-modal__dialog{max-width:720px}.consent-modal__body{font-size:var(--16-text);line-height:1.6}.consent-modal__body p{margin:0 0 12px}.consent-modal__body p:last-child{margin-bottom:0}.consent-modal__link{color:var(--main-color);text-decoration:underline}.consent-modal__link:hover{color:var(--main-color-hover)}.callback-modal__lead{margin:0 0 20px;font-size:var(--16-text);color:#555}.callback-form{display:flex;flex-direction:column;gap:16px}.callback-form__field{display:flex;flex-direction:column;gap:6px}.callback-form__label{font-family:"Montserrat bold";font-size:var(--16-text)}.callback-form__input,.callback-form__textarea{width:100%;padding:9px 14px;border:1px solid #ccc;border-radius:4px;font-size:var(--16-text);transition:border-color .2s}.callback-form__input:focus,.callback-form__textarea:focus{outline:none;border-color:var(--main-color)}.callback-form__textarea{resize:vertical;min-height:100px}.callback-form__required{color:#e00;font-family:"Montserrat bold"}.callback-form__required-note{font-size:var(--14-text);color:#888;margin:0}.callback-form__consent{display:flex;align-items:flex-start;gap:10px;font-size:var(--14-text)}.callback-form__checkbox{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:var(--main-color);cursor:pointer}.callback-form__consent-link{color:var(--main-color);text-decoration:underline}.callback-form__consent-link:hover{color:var(--main-color-hover)}.callback-form__submit{align-self:flex-start;padding:11px 32px;background:var(--main-color);color:#fff;border:none;border-radius:4px;font-size:var(--16-text);font-family:"Montserrat bold";cursor:pointer;transition:background .2s}.callback-form__submit:hover{background:var(--main-color-hover)}.cookie-banner{position:fixed;width:100%;height:auto;bottom:0;z-index:1040;padding:20px 0;transform:translateY(100%);opacity:0;visibility:hidden;transition:transform .3s ease,opacity .3s ease,visibility .3s}.cookie-banner--visible{transform:translateY(0);opacity:1;visibility:visible}.cookie-banner__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px;margin-left:-60px;margin-right:-60px;background:#fff;box-shadow:0 -4px 24px rgba(0,0,0,.12)}.cookie-banner__text{flex:1;min-width:0;font-size:var(--14-text);line-height:1.55}.cookie-banner__text p{margin:0}.cookie-banner__link{color:var(--main-color);text-decoration:underline}.cookie-banner__link:hover{color:var(--main-color-hover)}.cookie-banner__actions{display:flex;gap:12px;flex-shrink:0}.cookie-banner__btn{padding:11px 28px;font-size:var(--16-text);font-family:"Montserrat bold";cursor:pointer;transition:background .2s,color .2s;white-space:nowrap}.cookie-banner__btn--accept{background:var(--main-color);color:#fff;border:none}.cookie-banner__btn--accept:hover{background:var(--main-color-hover)}.cookie-banner__btn--decline{background:rgba(0,0,0,0);color:var(--main-color);border:1px solid var(--main-color)}.cookie-banner__btn--decline:hover{background:var(--main-color);color:#fff}.contacts__info{display:flex;flex-direction:column;gap:20px}.contacts__address{font-size:var(--18-text);font-family:"Montserrat bold";margin:0}.contacts__phones,.contacts__departments{display:flex;flex-direction:column;gap:8px}.contacts__phones p,.contacts__departments p{margin:0}.contacts__phones{padding-bottom:20px;border-bottom:1px solid #ccc}.contacts__dept{font-family:"Montserrat bold"}.contacts__link{color:var(--main-color);text-decoration:none;transition:color .2s}.contacts__link:hover{color:var(--main-color-hover)}.contacts__email{font-size:var(--18-text);font-family:"Montserrat bold"}.contacts__map{margin-top:40px}.contacts__map h3{margin-bottom:20px;font-size:var(--20-text);font-family:"Montserrat bold"}.contacts__map-frame{width:100%;overflow:hidden}.contacts__map-frame iframe{display:block;width:100%;height:450px;border:none}.main-project__item img{aspect-ratio:4/3}.fancybox-thumbs{top:auto;width:auto;left:0;right:0;height:95px;padding:8px 8px 4px;background:rgba(0,0,0,.45)}.fancybox-show-thumbs .fancybox-inner{right:0;bottom:95px}.fancybox-show-thumbs .fancybox-caption{bottom:95px}.fancybox-thumbs__list{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.fancybox-thumbs__list a{width:80px;height:60px;max-width:none}
@media (min-width: 1200px) {
  .photogallery .page__grid > .photogallery__section { grid-column: 1; }
  .photogallery .page__grid > .aside-menu { grid-column: 2; grid-row: 1; }
}
/* hide auto body-fixed duplicate if banner container already present */
/* Bitrix composite button: logo from official sprite; color from admin (inline bgcolor) */.footer__composite {  margin-top: 24px;  text-align: right;  min-height: 31px;}.footer__composite .bx-composite-btn,#bx-composite-banner .bx-composite-btn {  position: static !important;  top: auto !important;  right: auto !important;  background-image: url(/bitrix/images/main/composite/sprite-1x.png) !important;  background-repeat: no-repeat !important;  background-position: right 0;  border-radius: 15px !important;  color: #fff !important;  display: inline-block !important;  line-height: 30px !important;  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;  font-size: 12px !important;  font-weight: bold !important;  height: 31px !important;  padding: 0 42px 0 17px !important;  vertical-align: middle !important;  text-decoration: none !important;  box-sizing: border-box !important;}.footer__composite .bx-btn-white,#bx-composite-banner .bx-btn-white {  background-position: right 0 !important;  color: #fff !important;}.footer__composite .bx-btn-black,#bx-composite-banner .bx-btn-black {  background-position: right -31px !important;  color: #000 !important;}.footer__composite .bx-btn-red,#bx-composite-banner .bx-btn-red {  background-position: right -62px !important;  color: #555 !important;}.footer__composite .bx-btn-grey,#bx-composite-banner .bx-btn-grey {  background-position: right -93px !important;  color: #555 !important;}.footer__composite .bx-btn-border,#bx-composite-banner .bx-btn-border {  border: 1px solid #e8e8e8 !important;}@media screen and (min-device-width: 1200px) and (max-device-width: 1600px) and (-webkit-min-device-pixel-ratio: 2) and (min-resolution: 192dpi) {  .footer__composite .bx-composite-btn,  #bx-composite-banner .bx-composite-btn {    background-image: url(/bitrix/images/main/composite/sprite-2x.png) !important;    background-size: 42px 124px !important;  }}/* hide JS body-fixed duplicate; also hide 2nd child if JS also injects into banner */body > div > a.bx-composite-btn-fixed {  display: none !important;}#bx-composite-banner > .bx-composite-btn ~ .bx-composite-btn {  display: none !important;}
