@font-face {
    font-family: 'PT Root UI';
    src: url('./fonts/PTRootUI_Light/PTRootUI_Light.eot');
    src: url('./fonts/PTRootUI_Light/PTRootUI_Light.eot?#iefix') format('embedded-opentype'),
        url('./fonts/PTRootUI_Light/PTRootUI_Light.woff2') format('woff2'),
        url('./fonts/PTRootUI_Light/PTRootUI_Light.woff') format('woff'),
        url('./fonts/PTRootUI_Light/PTRootUI_Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'PT Root UI';
    src: url('./fonts/PTRootUI_Regular/PTRootUI_Regular.eot');
    src: url('./fonts/PTRootUI_Regular/PTRootUI_Regular.eot?#iefix') format('embedded-opentype'),
        url('./fonts/PTRootUI_Regular/PTRootUI_Regular.woff2') format('woff2'),
        url('./fonts/PTRootUI_Regular/PTRootUI_Regular.woff') format('woff'),
        url('./fonts/PTRootUI_Regular/PTRootUI_Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'PT Root UI';
    src: url('./fonts/PTRootUI_Medium/PTRootUI_Medium.eot');
    src: url('./fonts/PTRootUI_Medium/PTRootUI_Medium.eot?#iefix') format('embedded-opentype'),
        url('./fonts/PTRootUI_Medium/PTRootUI_Medium.woff2') format('woff2'),
        url('./fonts/PTRootUI_Medium/PTRootUI_Medium.woff') format('woff'),
        url('./fonts/PTRootUI_Medium/PTRootUI_Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'PT Root UI';
    src: url('./fonts/PTRootUI_Bold/PTRootUI_Bold.eot');
    src: url('./fonts/PTRootUI_Bold/PTRootUI_Bold.eot?#iefix') format('embedded-opentype'),
        url('./fonts/PTRootUI_Bold/PTRootUI_Bold.woff2') format('woff2'),
        url('./fonts/PTRootUI_Bold/PTRootUI_Bold.woff') format('woff'),
        url('./fonts/PTRootUI_Bold/PTRootUI_Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 400;
    src: local('Fira Sans Regular'), local('FiraSans-Regular'),
        url('./fonts/fira-sans-v10-cyrillic_latin-regular.woff2') format('woff2'),
        url('./fonts/fira-sans-v10-cyrillic_latin-regular.woff') format('woff');
}

@font-face {
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 500;
    src: local('Fira Sans Medium'), local('FiraSans-Medium'),
        url('./fonts/fira-sans-v10-cyrillic_latin-500.woff2') format('woff2'),
        url('./fonts/fira-sans-v10-cyrillic_latin-500.woff') format('woff');
}

@font-face {
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 600;
    src: local('Fira Sans SemiBold'), local('FiraSans-SemiBold'),
        url('./fonts/fira-sans-v10-cyrillic_latin-600.woff2') format('woff2'),
        url('./fonts/fira-sans-v10-cyrillic_latin-600.woff') format('woff');
}

body {
    background: #27323F;
    margin: 0;
    padding: 0;
    font-family: "Fira Sans", sans-serif;
}

.navbar {
    margin-top: 17px;
}

@media screen and (max-width: 768px) {
    .navbar {
        margin-bottom: 17px;
    }
}

.navbar-brand {
    margin-right: 40px;
}

.navbar .ml-auto {
    margin-left: 0 !important;
}

.navbar .nav-item .nav-link {
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 19px;
    text-align: center;
    color: rgba(255, 255, 255, 0.7);
    flex: none;
    order: 0;
    align-self: center;
}

.navbar .nav-item .nav-link.active,
.navbar .nav-item .nav-link:hover {
    color: #FFFFFF;
}

.navbar .phone {
    font-size: 17px;
    line-height: 40px;
    display: flex;
    align-items: center;
    color: #29B2BC;
    margin: 0;
}


h1 {
    width: 85%;
    font-family: "Fira Sans", Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 60px;
    line-height: 68px;
    /*display: flex;*/
    align-items: center;
    color: #FFFFFF;
    margin-bottom: 33px;
}

h2 {
    font-family: "Fira Sans", Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 40px;
    line-height: 48px;
    /*display: flex;*/
    align-items: center;
    color: #FFFFFF;
    margin-bottom: 10px;
}

h5 {
    font-family: "Fira Sans", Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 36px;
    line-height: 42px;
    color: rgba(255, 255, 255, 0.7);
    flex: none;
    margin-bottom: 10px;
    align-self: flex-start;
}

.container {color: rgba(255, 255, 255, 0.7);}

p, li, td {
    font-style: normal;
    font-weight: normal;
    color: rgba(255, 255, 255, 0.7);
    flex: none;
    font-size: 17px;
    line-height: 1.6em;
    font-family: "Fira Sans", sans-serif;
}
.table td {border:0}

a {color: #29B2BC}

a:hover,
a:active {
    color: #31EEDA;
    text-decoration: none;
}

.btn-lead {
    background: linear-gradient(180deg, #FF7970 0%, #E67647 100%);
    font-family: "PT Root UI", Helvetica, Arial, sans-serif;
    border-radius: 3.36074px;
    font-style: normal;
    font-weight: bold;
    font-size: 24px;
    line-height: 38px;
    text-align: center;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #FFFFFF;
    min-width: 282px;
    min-height: 52px;
    padding: 0.2em 1.4em;
}

.pl-icon {
    opacity: 0.5;
    margin-left: 10px;
    margin-right: 10px;
}

.key-visual {
    position: absolute;
    top: 0;
    width: 100%;
    height: 820px;
    z-index: -1;
    background: url("/i/ent/auth.png") 50% 0 no-repeat;
}

.key-visual__image {
    width: 100%;
    height: auto;
    position: relative;
    z-index: -1;
}

@media screen and (min-width: 768px) {
    .key-visual__image {
        display: none;
    }

    .key-visual {
        background-position: 50% 0;
        background-size: cover;
        height: 46vw;
    }
}

.foot {
    margin-top:5em;
    text-align: center
}

.game-item {
    height:197px;
    margin-bottom:3em;
}

.game-item.game-archive {
    filter: grayscale(90%) opacity(0.5);
}

.game-item .in {
    background-size: cover;
    background-position: center center;
    height:197px;
    box-shadow: 0px 15px 30px rgba(3, 12, 21, 0.4);
    text-align:center;
}

.games__body {
    margin-top:5em;
    margin-bottom:5em;
}

.vacancies__OpenVacancies {
    margin-bottom: 136px;
}

.vacancies__OpenVacancies .media {
    display: block;
}

.vacancies__OpenVacancies-forms {
    display: flex;
    margin-bottom: 20px;
}

.vacancies__OpenVacancies-forms img {
    width: 24px;
    height: 24px;
    margin-right: 20px;
}

.vacancies__OpenVacancies-forminline--categories {
    margin-right: 20px;
}

.vacancies__OpenVacancies-forminline label,
.vacancies__OpenVacancies-forminline .form-control,
.vacancies__OpenVacancies-forminline option {
    font-family: "Fira Sans", sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 17px;
    line-height: 36px;
    display: flex;
    align-items: center;
    color: rgba(255, 255, 255, 0.7);
}

.vacancies__OpenVacancies-forminline label {
    margin-right: 10px;
}

.vacancies__OpenVacancies-forminline .form-control {
    width: 212px;
    height: 37px;
    background: #27323F;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-sizing: border-box;
    box-shadow: 0px 15px 30px rgba(3, 12, 21, 0.4);
}

.vacancies__OpenVacancies-vacanvylink {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.vacancies__OpenVacancies-vacanvylink-text {
    display: flex;
}

.vacancies__OpenVacancies-vacanvylink span {
    font-style: normal;
    font-weight: normal;
    font-size: 24px;
    line-height: 36px;
    color: #29B2BC;
    margin-right: 20px;
}

.vacancies__OpenVacancies-vacanvylink span:hover {
    color: #31EEDA;
}

.vacancies__OpenVacancies-vacanvylink p {
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 30px;
    color: rgba(255, 255, 255, 0.5);
    margin: 20px 0px;
}

.vacancies__OpenVacancies-vacanvylink img {
    width: 12px;
    height: 16px;
}

.vacancy__contacts-email,
.vacancies__contacts-email {
    text-decoration-line: underline;
    color: #29B2BC;
}

.game-view .key-visual:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 10%, rgba(39, 50, 63, 0) 20%, #27323F 80%);
}

.game__lead {
    margin-bottom: 100px;
    margin-top: 10px;
    background: radial-gradient(50% 50% at 50% 50%, rgba(31, 41, 52, 0.85) 0%, rgba(34, 46, 58, 0) 100%);
}

.game__lead .logo {
    margin: 0 auto;
    display: block;
    max-width: 500px;
    min-width: 50%;
}

.game__lead p {
    width: 94%;
    margin: 0 auto;
    color: rgba(255, 255, 255, 1);
    text-align: center;
}

.game__lead .platforms {
    opacity: 0.5;
    display: flex;
    justify-content: center;
}

.game__lead .platforms img {
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 30px;
}

.game__lead h1 {
    width:inherit;
    text-align: center;
    display:block;
}

.game-view h1, .game-view h2, .game-view h3, .game-view h4  {
    color:#fff;
}
.index-texts h3, .index-texts h4  {
    color:#fff;
}

.page-content b {color:#fff}
main p b {color:#fff}

.page-content table {width:100%; margin: 2em 0}
.page-content table td {padding:0.5em; font-size:0.8rem; color: #aaa; vertical-align: top;}
.page-content table td p {margin-bottom: 0.3rem; font-size:0.8rem; color: #aaa;}

img.i-inline {margin-top:0; margin-bottom:1.5em}
.i-caption {font-size: 80%; margin-top:0; margin-bottom: 1em; text-align:center}
.i-stretched {min-width:100%}

.index__ownclients {
    margin-top: 70px;
    margin-bottom: 80px;
}

.client-logo {
    opacity: 0.3; 
    transition: opacity .25s ease-in-out;
    -moz-transition: opacity .25s ease-in-out;
    -webkit-transition: opacity .25s ease-in-out;
    margin-bottom:1em;
}
.client-logo:hover {opacity: 0.8;}

.contact__info .media {
    display: block;
    width: 66%;
    margin: 0 auto;
}

.contact__info .media h1 {
    width: 100%;
    margin-left: 0;
}

.contact__info-contacts {
    margin-bottom: 60px;
    margin-top: 40px;
    display: flex;
}

.contact__info-contacts p {
    margin-bottom: 0;
}

.contact__info__contacts a,
.contact__info .row a,
.contact__info-contacts a {
    text-decoration-line: underline;
    color: #29B2BC;
}

.contact__info .row .adress {
    width: 40%;
    max-width: 40%;
    flex: 0 0 40%;
}

.contact__info .row .phone,
.contact__info .row .email {
    width: 25%;
    max-width: 25%;
    flex: 0 0 25%;
}

.contacts .contact__info .btn {
    width: 175px;
    height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 3px;
    background-color: unset;
    font-family: "Fira Sans", sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 17px;
    line-height: 20px;
    color: rgba(255, 255, 255, 0.7);
}

.modal-dialog {
    width: 920px;
    max-width: 920px;
    height: max-content;
}

.modal-body {
    padding: 0;
}

.contact__form{
    margin-bottom: 98px;
}

.contact__form .media {
    display: block;
    margin: 0 -7em;
    height: max-content;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.06);
    background: rgba(80, 107, 123, 0.07);
    border-top: 1px solid rgba(98, 131, 151, 0.11);
    border-radius: 2px;
}

.contact__form .media form {
    width: 80%;
    height: max-content;
    margin: 0 auto;

}

.contact__form .media form h5 {
    font-size: 24px;
    padding-top: 70px;
    padding-bottom: 20px;
    margin: 0;
}

.contact__form-name,
.contact__form-email,
.contact__form-textfield,
.contact__form-code {
    background: rgba(12, 23, 30, 0.2);
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.5);
    padding-left: 3px;
}

.contact__form-name,
.contact__form-email {
    width: 350px;
    height: 46px;
}

.contact__form-name {
    margin-right: 26px;
}

.contact__form-textfield {
    width: 730px;
    height: 207px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.contact__form .row{
    margin: 0;
    padding-bottom: 96px;
}

.contact__form-code {
    width: 131px;
    height: 46px;
    margin-right: 133px;
}

.contact__form-captcha {
    background-color: black;
    width: 174px;
    height: 46px;
    display: inline-block;
    margin-right: 38px;
}

.contact__form-captcha:after {
    color: black;
    border-left: 23px solid;
    border-top: 23px solid transparent;
    border-bottom: 23px solid transparent;
    display: inline-block;
    content: '';
    margin-left: 174px;
}

.contact__form-submit {
    width: 255px;
    height: 46px;
    background: linear-gradient(270deg, #19BCB7 0%, #29B2BC 100%);
    border-radius: 3px;
    border: 0;
    font-family: "Fira Sans", sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 21px;
    line-height: 25px;
    color: #FFFFFF;
    text-transform: uppercase;
}


/* Ent-specific */

/*.main-content p {color:#fff}*/
.main-content p b, .main-content p strong {color:#fff}

.index-slider {min-height:200px; margin-top:2em}
.index-slider .carousel {box-shadow: 0px 15px 30px rgb(3 12 21 / 40%);}

.index-news .item, .inpage-news .item {margin-top:1em; margin-bottom:2em}
.index-news .item p, .inpage-news .item p {font-size:90%; line-height:1.4em}
.index-news .item .date, .inpage-news .item .date, .wtgrid .grid-item .date {color:#777; white-space: pre; font-size:80%}

.index-press .item, .inpage-press .item {margin-top:1em; margin-bottom:2em;}
.index-press .item .p, .inpage-press .item .p, .list__body .grid-item .p {font-size:90%; display: inline;}
.index-press .item .date, .inpage-press .item .date, .list__body .grid-item .date {color:#777; white-space: pre; font-size:80%}
.press__body .grid-item .source {color:#fff}
.index-blog .item, .inpage-blog .item {margin-top:1em; margin-bottom:2em}
.index-blog .item .badge-info, .inpage-blog .item .badge-info, .list__body .grid-item .badge-info, .inpage-tags .item.badge-info {margin-right:0.5em; background-color: #FF7970; color:#000}
.inpage-tags .item.badge-info {font-size:110%; margin-bottom: 0.5em;}
.inpage-tags .item.badge-info a {color:#000}
.tags .badge {font-size:100%; margin-bottom: 10px;}
.news-text {position: absolute; bottom: 40px; color: rgba(255, 255, 255, 0.5); margin-right: 10px;}
a:hover .news-text {color: rgba(255, 255, 255, 0.7);}
a:hover .news-header {color: #fff;}
.news-p{font-size: 80%;}
.news-header{color: rgba(255, 255, 255, 0.8);}
.cut-text {overflow: hidden; text-overflow: ellipsis; display: -moz-box!important; -moz-box-orient: vertical; display: -webkit-box!important; -webkit-line-clamp: 3; -webkit-box-orient: vertical;}
.foot .logo {margin-bottom:2em}
.navbar {margin-top:0}
#navcol-1 {margin-top:1.2em}
.lang-picker {margin-top:1em}
.lang-picker .form-control {background-color: transparent; color: #fff;}
.lang-picker .form-control option {background-color: #27323F;}

#s1 .carousel-caption {text-align:left; left:10%; right:10%; }
#s1 h5 {color:#fff; margin-bottom:0.1em; font-family: "Fira Sans", sans-serif;}
#s1 p {color:#fff; font-family: "Fira Sans", sans-serif;}

.carousel-grad {height:200px; bottom:0; position: absolute;
    background: rgb(0,50,60);
    background: linear-gradient(0deg, rgba(0,50,60,0.60) 0%, rgba(0,0,0,0.70) 34%, rgba(0,0,0,0) 100%);
}

.hero-head {margin-top:5rem; margin-bottom:3rem}
.hero-head-2 {margin-top:0; margin-bottom:3rem}
.hero-head-section {margin-top:5rem; margin-bottom:1rem}
.msgrid .grid-item { width: 33.333333%; margin-bottom:3em}
.msgrid .grid-item--width2 { width: 66.666667%;  margin-bottom:3em}

.game-item .in {display: flex; align-items: center; justify-content: center;}
.game-item .in img {min-width: 60%; max-width:80%}

.game-item-inline .in {
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
    height:197px;
    box-shadow: none;
    text-align:center;
}

.pagination {text-align:center; justify-content: center;}
.pagination li {padding:0.5em}
.pagination li.active a {color:#ccc}

.wtgrid .grid-item-in {min-height:270px; max-height:270px; overflow:hidden; padding:1em; border:1px solid #31424a; margin-right:0; margin-bottom:2em; transition: border .3s ease;}
.wtgrid .grid-item-in:hover {border:1px solid #506d7a}
.wtgrid .grid-item-in.img {padding-top:120px}
.wtgrid .grid-item-in.img a {color:#fff}
.wtgrid .grid-item-in.img .tags {position:absolute; top:7px}
.wtgrid .grid-item-in.img .tags .badge {background-color:rgba(255, 255, 255, 0.7)}
.wtgrid .grid-item-in .tags {margin-top:0.3em; margin-bottom:0.5em}
.wtgrid.reduced .grid-item-in {margin-right:-1em}

/* adaptive */

@media (max-width:500px) {
    h1 {font-size:2em; line-height:1.4em; color:#fff}
    h2 {font-size:1.8em; line-height:1.4em; color:#fff}
    h5 {font-size:1.6em; line-height:1.4em; color:#fff}
    .index__awards h5, .game__awards h5 {font-size:1.6em; line-height:1.4em; color:#fff; text-align:left}
    .btn-lead {max-width:100%; min-width:inherit}
    .index__awards-text {width:inherit; text-align:left}
    .index__awards .row-list {display:none}
    .index__mainproject .frame {border:0}
    .index__mainproject h5 {display:none}
    .index__mainproject-kv {top:10%; margin-left:-100%; width:200%}
    .msgrid .grid-item { width: 100%; margin-bottom:3em}
    .msgrid .grid-item--width2 { width: 100%;  margin-bottom:3em}
}

.row img {max-width:100%}
.ejs-embed {margin-bottom:1em}

.job-view blockquote {border-left:3px #E67647 solid; padding: 1.5em; color:#fff}

.index-intro h1 {margin-bottom:0.5em}

.cbox-container {position:fixed; bottom:0; left: 0; width:100%; background: rgb(0,0,0); 
    background: linear-gradient(0deg, rgba(39,50,63,0.9) 30%, rgba(39,50,63,0.3) 100%);}
.cbox-in {width:100%; max-width:1000px; margin: 0.4em auto; font-size:80%; color:#999; text-align: center; line-height:1.4em;}
.cbox-in .btn {color:#fff; font-size:85%; border:1px solid rgba(255, 255, 255, 0.5); padding:0.2em 1.5em}
.cbox-in .cbox-text {padding-right:1.2em}