body {
    color:#202837;
    letter-spacing: -0.02em;

}
body.theme-light {
    background: #F8F8F8;
}
.footer .footer__logo-light {
    display: none;
}
.footer .footer__logo:not(.mobile) {
    display: block;
}
.language_select a, .theme-light .language_select .current-lang a{
    color: #fff;
}
.theme-light header:not(._scroll) .header__btn {
    background-color: rgba(255, 255, 255, 0.2);
    color: #FFFFFF;
}
.theme-light .header__burger-icon span {
    background-color: #FFFFFF;
}
.theme-light .header {
    border-bottom: 0;
}
.inner-hero {
    background-image:url('public/images/partners/hero.jpg');
    min-height:unset;
    height:557px;
}
.inner-hero h1 {
    color:#fff;
    margin-top:10rem;
}
.inner-hero::after {
    content:none;
}
.inner-hero__desc {
    color:#fff;
    max-width: 85rem;
    display: block;
    margin: 28px auto 36px;
}

.inner-hero .button {
    background: rgba(2, 162, 238, 1);
    font-size:1.8rem;
    line-height: 2.4rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    padding:24px;
    height:48px;
    color:#fff;
    letter-spacing: 0.02em;
    transition: all 0.3s;
}
.inner-hero .button:hover {
    background: #0090D4;
}

.partners {
    margin:6rem 0;
}
.partners img {
  width:120px;
  height:35px;  
  margin:23px 40px;
  display: block;
}
.partners img.custom_img {
    width:auto;
    height:auto;
    max-width: 120px;
    max-height: 35px;
}
.logos {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.partners h4 {
    color: #BBBEC2;
    font-weight: 500;
    font-size:14px;
    line-height: 20px;
    letter-spacing: -0.02em;
    text-align: center;
    margin:16px 0;
}


h2 {
    font-weight: 700;
    font-size: 3.4rem;
    line-height: 4.6rem;
    letter-spacing: -0.02em;
    text-align: center;
    margin-bottom: 4.8rem;
    max-width: 825px;
    margin-left:auto;
    margin-right: auto;
}
.program {
    margin-bottom: 10rem;
    margin-top:10rem;
}

.program .row {
    background-color: #fff;
    border-radius: 8px;
    display: flex;
    padding-top:34px;
    padding-right:32px;
    padding-bottom: 32px;
    padding-left: 80px;
    position: relative;
    margin-bottom: 32px;
}
.program .row::before {
    content:"";
    width: 32px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 8px 0 0 8px;
}
.program .row:nth-child(2):before {
    background-color: rgba(207, 225, 247, 1);
}
.program .row:nth-child(3):before {
    background-color: rgba(207, 247, 237, 1);
}
.program .row:nth-child(4):before {
    background-color: rgba(247, 241, 207, 1);
}

.program .col {
    width:23%;
    padding:14px;
}
.program .col:first-child {
    width:31%;
}
.program .col:first-child p {
    font-size: 1.6rem;
    line-height: 2.4rem;
    letter-spacing: -0.02em;
    max-width: 324px;
}
.program h3 {
    font-weight: 700;
    font-size: 2rem;
    line-height: 2.4rem;
    letter-spacing: -0.02em;
    margin-bottom: 2.4rem;
}
.program img {
    display: block;
    margin-bottom: 2rem;
}
.program strong {
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 2rem;
    letter-spacing: -0.02em;
    margin-bottom: 1.2rem;
    display: block;
}


.become {
    background-color: rgba(255, 255, 255, 1);
  background: linear-gradient(180deg, rgb(46.55, 67.28, 140.79) 0%, rgb(55.05, 15.35, 119.82) 100%);
  color: #fff;
  padding:10rem 0;

}
.footer {
    background-color: rgb(55.05, 15.35, 119.82);
    margin-top:-2px;
}
.theme-light .footer__top-nav .title {
    color: rgba(243, 243, 255, 1);
}
.footer__top-nav a, .footer__info-links a{
    color: rgba(129, 129, 163, 1) !important
}
.become h2 {
    color: #fff;
}
.become p {
    color: rgba(243, 243, 255, 1);
}

.description p {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: -0.03em;
    margin-bottom: 4.8rem;
    max-width: 600px;
}

.become .row {
    display: flex;
    justify-content: space-between;
}

.form {
    background: rgba(243, 243, 255, .05);
    padding:36px;
    padding-top:32px;
    padding-bottom: 54px;
    width:534px;
    min-width: 534px;
    border-radius: 4px;
    margin-left:12px;
}
.form form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.form-title {
    font-weight: 700;
    font-size: 2rem;
    line-height: 2.8rem;
    letter-spacing: -0.02em;
    color: #fff;
    margin-bottom: 3.6rem;
}

.form-item{
  position: relative;
  margin-bottom: 28px;
  width:calc(50% - 12px);
}
.form-item.w-100 {
    width:100%;
}

.form-item input{
  display: block;
  width: 100%;
  height: 50px;
  background: transparent;
  border-bottom: solid 1px rgba(255,255,255,.5);
  transition: all .3s ease;
  padding:12px 0px
}
.form-item input:focus{
  border-color: #8380FF;
}
.form-item label{
  position: absolute;
  cursor: text;
  z-index: 2;
  top: 8px;
  left: 0px;
  font-size: 16px;
  font-weight: 400;
  color: #fff;
  transition: all .3s ease
}
.form-item input:focus + label,
.form-item input:not(:placeholder-shown) + label,
.form-item input:valid:not(:placeholder-shown) + label{
  font-size: 12px;
  top: -10px
}
.form-item input:focus + label, 
.form-item input:not(:placeholder-shown):not(:focus) + label{
  color: #777da6;
}



.form-item label.checkbox {
    display: block;
    position: relative;
    padding-left: 27px;
    padding-top: 0px;
    cursor: pointer;
    font-size: 14px;
    line-height: 20px;
    text-align: left;
    color: #fff;
    margin-top: 0px;
}

.form label a {
    font-size: 14px;
    color: #02A2EE;
    text-decoration: underline;
}
.form input[type="checkbox"] {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.form .contact__control__indicator {
    position: absolute;
    top: 4px;
    left: 0;
    height: 17px;
    width: 17px;
    background: transparent;
    border: 1px solid #fff;
    border-radius: 4px;
}
.form input:checked ~ .contact__control__indicator:after {
    display: block;
}
.form input[type="checkbox"].error:not(:checked) + .contact__control__indicator {
    border: 1px solid #fff;
}
.form .contact__control__indicator:after {
    left: 5px;
    top: 1px;
    width: 3px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.submit {
    background: rgba(2, 162, 238, 1);
    font-size:1.6rem;
    line-height: 2.4rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 4px;
    padding:20px;
    height:70px;
    color:#fff;
    margin-top:2rem;
    transition: all 0.3s;
    width: 100%;
}
.submit:hover {
    background: #0090D4;
}
.submit span {
    color:#fff;
}

.become h4 {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -0.02em;
    color: #fff;
    text-align: left;
    margin-bottom: 12px;
}
.logo-container {
    max-width: 650px;
}
.logo-container img {
    margin:15px 24px;
    opacity:0.6;
    transition: all .3s;
    width:78px;
    height:23px;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}
.logo-container img.custom_img {
    max-width: 78px;
    max-height: 23px;
    width: auto;
    height: auto;
}
.logo-container img:hover {
    opacity: 1;
}
.logo-container + .logo-container {
    margin-top:4rem;
    padding-top:4rem;
    border-top:1px solid rgba(255, 255, 255, 0.1);
}
header, .theme-light header:not(._scroll) .header__dropdown-btn span,
.theme-light header:not(._scroll) .header__dropdown-btn span::before,
.theme-light header:not(._scroll) .header__logo .icon-gravity-field::before{
    color:#fff;
}
.theme-light header:not(._scroll) .header__logo-color {
    display: none;
}
.theme-light header:not(._scroll) .header__logo .icon-logo{
    display: block;
}



[class="theme-light"] .menu__gravity-ai {
    background: rgba(255, 255, 255, 0.1);
}
[class="theme-light"] .menu__gravity-ai span {
    color: #fff;
}
.modal-content__title {
    color: #fff;
}

@media (max-width:1024px) {
    .program .row {
        flex-direction: column;
        padding: 16px;
        padding-top:48px;
    }
    .program .col, .program .col:first-child {
        width: 100%;
    }
    .program .col:first-child p {
        max-width: unset;
    }
    .program .col:not(:first-child) {
        display: flex;
    }
    .program .col img {
        margin-right: 20px;
    }
    .program .col stromg {
        margin-bottom: 12px;
    }
    .program h3 {
        font-weight: 500;
    }

    .program .row::before {
        content:"";
        width: 100%;
        height: 32px;
        position: absolute;
        left: 0;
        top: 0;
        border-radius: 8px 8px 0 0px;
    }
    .become .row {
        flex-direction: column;
    }
    .description p, .logo-container {
        max-width: unset;
    }
    .logo-container div {

    }
    .form {
        width:100%;
    }
}

@media (max-width:768px) {
    .inner-hero h1 {
        max-width: unset;
    }
    .inner-hero__wrapper, .inner-hero__desc {
        text-align: center;
    }
    .form {
        min-width: unset;
    }
    .inner-hero {
        height:440px;
    }
    .inner-hero h1 {
        margin-top:4rem;
    }
    .partners img {
        width:72px;
        height:21px;
        margin: 14px 24px;
    }
    .partners img.custom_img {
        height:auto;
        width:auto;
        max-width:72px;
        max-height:21px;
    }
    h2 {
        font-size: 2.4rem;
        margin-bottom: 2.4rem;
    }
    .program {
        margin:6rem 0;
    }
    .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    .program .row {
        padding-top:3.2rem 0;
    }
    .program strong {
        font-size:14px;
    }
    .program p {
        font-size: 12px;
    }
    .program .col:first-child p {
        font-size:14px;
    }
    .program h3 {
        font-size:1.6rem;
        margin-bottom: 1.2rem;
    }
    .program .col:not(:first-child) {
        align-items: flex-start;
    }
    .become {
        padding:6rem 0;
    }
    .description p {
        font-size: 1.6rem;
    }
    .logo-container img {
        width:72px;
        height:21px;
        margin:13px 24px;
    }
    .logo-container img.custom_img {
        max-width: 72px;
        max-height: 21px;
        width: auto;
        height: auto;
    }
    .logo-container div {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    .become h4 {
        text-align: center;
    }
    .logo-container + .logo-container {
        margin-top:3rem;
        padding-top:3rem;
    }
    .form {
        margin-left:0;
        padding:12px;
        padding-bottom: 17px;
        margin-top:3rem;
    }
    .form-item:not(:nth-child(1)):not(:nth-child(2)) {
        width:100%;
    }
    .form-title {
        font-size: 16px;
    }
    .form-item label.checkbox, .form label a {
        font-size: 12px;
    }
    .form-item label.checkbox br {
        display: none;
    }
    .submit {
        height: 56px;
    }
    .footer__logo.mobile {
        display: block;
    }
    .footer__logo-light.mobile {
        display: none !important;
    }
    .footer .footer__logo.desktop {
        display: none;
    }

    .footer [href="/ru/request-demo"].btn.mobile {
        display: none;
    }


}