:root {
    --font-size-p: 18px;
}

* {
    margin: 0;
    padding: 0;
}

html,
body {
    font-family: "Montserrat", sans-serif;
    margin: 0;
    overflow-x: hidden;
}

h2 {
    font-style: normal;
    font-weight: 700;
    font-size: 38px;
    line-height: 46px;
    color: #000000;
    padding: 0;
    margin: 0;
}

.header {
    width: 100%;
    height: 128px;
    position: fixed;
    background: #FFFFFF;
    z-index: 15;
    display: flex;
    align-items: center;
}

.margin-header {
    margin-bottom: 128px;
}

.scrolled {
    height: 95px;
}

.main-container {
    max-width: 1695px;
    margin: auto;
    width: 100%;
}

.menu-container {
    display: flex;
    margin: auto;
    justify-content: space-between;
    padding-top: 25px;
    padding-bottom: 25px;
    padding-right: 10px;
    padding-left: 0px;
}

.menu-container__logo {}

.menu-container__menu {
    width: 100%;
    display: flex;
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 0.02em;
    /*align-items: center;*/
    color: #000000;
    max-width: 915px;
    justify-content: space-between;
    margin: 18px 0 0;
}

.menu-container__menu li {
    list-style: none;
}

.menu-container__menu li img {
    vertical-align: unset;
    /*width: 16px;*/
}

.menu-container__menu li a {
    color: unset;
    text-decoration: none;
}

.menu-container__menu li.active {
    font-weight: 700;
}

.menu-container__menu li.active::after {
    content: '';
    display: block;
    position: relative;
    width: 100%;
    height: 7px;
    bottom: -12px;
    background-color: #F2D34C;
}

.banner {
    height: 624px;
    display: flex;
    max-width: 1920px;
    margin: auto;
    position: relative;
}

.banner-content {
    overflow: hidden;
}

.banner.large {
    height: 778px;
}

/*.banner::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
}*/

.banner__info {
    width: 684px;
    display: flex;
}

.banner__img {
    flex: 1;
    padding: 7px;
    background: rgba(241, 243, 244, 0.3);
}

.nav-panel {
    background-color: #D5DEF7;
    height: 100%
}

.nav-button {
    padding: 40px;
    cursor: pointer;
    transition: .2s;
    user-select: none;
}

.banner-text {
    width: 576px;
    background-color: #F1F3F4;
    padding: 64px 48px 56px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
}

.banner-text.black {
    background-color: black;
    color: white;
}

.banner-title {
    font-style: normal;
    font-weight: 600;
    font-size: 56px;
    line-height: 124%;
}

.banner-desc {
    font-style: normal;
    font-weight: 500;
    font-size: var(--font-size-p);
    line-height: 180%;
    color: #636363;
    margin-top: 48px;
    text-align: justify;
}

.black .banner-desc {
    color: white;
}

.banner-desc p {
    margin-bottom: 32px;
}

.banner__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-element {
    position: absolute;
    top: 39px;
    right: 0;
}

.section-title,
.section-title__text,
.section-title__bg {
    display: inline-block;
}

.information {
    margin-top: 64px;
    padding: 0 10px;
}

.section-title {
    position: relative;
}

.section-title__text {
    position: relative;
    display: inline-block;
    z-index: 1;
    white-space: nowrap;
}

.section-title__text h1 {
    font-weight: 700;
    font-size: 38px;
}

.section-title__bg {
    position: absolute;
    top: -3px;
    left: 0;
    right: -40px;
    height: 55px;
    background-color: #D5DEF6;
    margin-left: calc(15% + 24px);
    overflow: hidden;
}

.section-title__bg.yellow {
    background-color: #F2D34C;
}

.section-title__bg-figure {
    margin-bottom: 20px;
    width: 0;
    height: 0;
    border: 50px solid transparent;
    border-bottom: 70px solid #ffffff;
    position: absolute;
    top: -92px;
    right: -80px;
}

.section-title__bg.yellow .section-title__bg-figure {
    border-bottom-color: #D5DEF6;
}

.section-title__bg-figure:after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: -50px;
    top: 69px;
    border: 50px solid transparent;
    border-top: 70px solid #ffffff;
}

.section-title__bg.yellow .section-title__bg-figure:after {
    border-top-color: #D5DEF6;
}

.thumb-saving-half:has(a) {
    cursor: pointer;
}

.thumb-saving-half {
    flex: 8;
    display: flex;
    flex-wrap: wrap;
}

.thumb-saving-half .thumb-saving {
    width: calc(50% - 25px);
}

.title-block {
    flex: 4;
}

.title-block.contacts {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

@media (min-width: 1281px) {
    .thumb-saving-half .thumb-saving:nth-child(2n) {
        margin-left: 50px;
    }
}

@media (min-width: 920px) {
    .menu-popup {
        display: none;
    }
}

.thumb-saving {
    display: flex;
    margin-bottom: 24px;
    padding: 24px;
}

.thumb-saving-small {
    display: flex;
    margin-bottom: 40px;
    padding: 0 0 0;
}

.thumb-saving-text {
    flex: 1;
}

.thumb-saving__pic.center {
    display: flex;
    align-items: center;
}

.thumb-saving__pic {
    padding: 0 34px 0 2px;
}

.thumb-saving-small .thumb-saving__pic {
    padding: 0 14px 0 0;
}

.thumb-saving-text__title a {
    color: black;
    text-decoration: none;
}

.thumb-saving-text__title {
    font-style: normal;
    font-weight: 600;
    font-size: 24px;
    line-height: 180%;
}

.thumb-saving-text__desc {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: var(--font-size-p);
    line-height: 32px;
    color: #636363;
}

.text-justify {
    text-align: justify;
}

.thumb-absolute-pic {
    position: relative;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    z-index: 1;
}

.thumb-absolute-pic img {
    position: absolute;
}

.top-wrapper {
    padding: 50px 15px 40px;
    background-color: #D5DEF6;
    margin-top: 55px;
}

.wrapper-info {
    text-align: center;
    max-width: 840px;
    margin: auto;
}

.wrapper-info__desc {
    font-style: normal;
    font-weight: 600;
    font-size: 24px;
    line-height: 180%;
    color: #00162F;
    margin-top: 55px;
}

.wrapper-info__pic {
    margin-top: 49px;
}

.active .banner-additional {
    transform: translateX(0);
}

.active .nav-button {
    transform: rotate(90deg);
}

.banner-additional {
    position: absolute;
    top: 0;
    bottom: 0;
    transform: translateX(-102%);
    right: 0;
    left: 0;
    background-color: black;
    z-index: 10;
    transition: .2s;
    text-align: left;
}

.banner-additional ul {
    max-width: 366px;
    margin-top: 80px;
    margin-left: 32px;
}

.banner-additional ul li {
    font-style: normal;
    font-weight: 500;
    font-size: 23px;
    line-height: 28px;
    list-style: none;
    color: #FFFFFF;
    margin-bottom: 24px;
    position: relative;
}

.banner-additional ul li a {
    color: #FFFFFF;
    text-decoration: none;
}

.banner-additional ul li:before {
    content: url("/assets/img/li-style-cube.svg");
    position: absolute;
    display: block;
    left: -28px;
}

.banner-additional ul li.active {
    color: #F2D34C;
}

.banner-additional ul li.top:before {
    top: 10px;
}

.banner-additional .banner-element {
    top: auto;
    top: 328px;
}

.contact-section {
    margin-top: 150px;
    padding-left: 10px;
}

.contacts-about {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    gap: 20px;
    font-size: 21px;
    line-height: 31px;
    font-weight: 500;
    color: #636363;
}

.contact-mail,
.contact-req,
.contact-address {
    /* font-weight: 500; */
    /* margin-top: 24px; */
}
.contact-register-title {
    font-weight: 600;
}

.contact-address {
    margin-top: 40px;
}

.contact-register {
    /* font-size: 16px; */
    /* line-height: 12px; */
}

.contact-title {
    /* margin-top: 50px; */
}

.contact-map {
    overflow: hidden;
    height: 628px;
    width: 100%;
}

.contact-map img {
    /*transform: matrix(1.2, 0, 0, 1.2, -65, -13);*/
}

.contact-pic {
    position: relative;
    width: 100%;
}

.contact-pic img {
    /* position: absolute;
    right: 125px;
    top: -30px; */
    position: absolute;
    right: 75px;
    top: -125px;
    width: 110px;
}

.contact-personal-info {
    font-weight: 500;
    font-size: 12px;
    line-height: 20px;
    padding-bottom: 15px;
}

.banner-bottom-pic {
    position: absolute;
    bottom: 0;
}

.banner-blue-bg {
    background-color: #EDF2FF;
    overflow: hidden;
}

.banner-item:last-child {
    background: #F1F3F4;
}

#banner-box {
    position: absolute;
    bottom: 64px;
    left: 27%;
}

#banner-people {
    position: absolute;
    bottom: 84px;
    left: 27%;
}

#banner-vector {
    position: absolute;
    bottom: 0;
    left: 55%;
}

#our_team {
    margin-top: 64px;
}

#technology_stack {
    margin-top: 64px;
}

.not-fount {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - 323px);
}

.not-fount-container {
    padding: 150px 0 200px;
    text-align: center;
}

.not-fount__title {
    font-weight: 700;
    font-size: 85px;
    line-height: 70px;
}

.not-fount__desc {}

.text-white {
    color: white;
}

.images-sidebar {
    padding-left: 6%;
    padding-right: 0;
    overflow: hidden;
}

.prod-banner-menu {
    position: absolute;
    top: 0;
    width: 100%;
    bottom: 0;
    display: flex;
    z-index: 5;
}

.light-nav-panel {
    width: 108px;
    height: 100%;
    overflow: hidden;
}

.banner-additional-container {
    display: inline-block;
    position: relative;
    width: 576px;
    overflow: hidden;
    height: 100%;
}

.wrapper-info__title {
    padding-top: 42px;
    padding-bottom: 22px;
}

.functions {
    background-color: #000000;
    color: #FFFFFF;
    padding-bottom: 58px;
    padding-top: 42px;
}

.technologies {
    margin-top: 100px;
}

.sub-menu {
    position: absolute;
    background-color: white;
    padding: 24px 24px 0 24px;
    right: 10px;
    top: 120px;
    border-radius: 0px 0px 24px 24px;
    width: 729px;
    z-index: 500;
    box-shadow: -4px 4px 5px 0px rgb(201 201 201 / 15%);
    display: flex;
    flex-wrap: wrap;
}

.sub-menu__item {
    display: flex;
    width: 50%;
    cursor: pointer;
    padding: 0 0 32px 16px;
}

.sub-menu__item-pic {
    padding-right: 25px;
    display: flex;
    align-items: center;
}

.sub-menu__item-text {
    font-weight: 500;
    font-size: 14px;
    line-height: 180%;
    color: #969696;
    transition: .2s;
}

.sub-menu__item-text {
    display: flex;
    align-items: center;
}

.sub-menu__item.active .sub-menu__item-text,
.sub-menu__item:hover .sub-menu__item-text {
    color: #000000;
}

.data-title {
    margin: 115px 0;
}

.tehno-title {
    margin-bottom: 42px;
    margin-top: 44px;
}

.main-row {
    display: flex;
}

.section-row {
    display: flex;
}

.flex-4 {
    flex: 4;
}

.flex-8 {
    flex: 8;
}

.section-pic-compass {
    width: 200px;
    margin-top: 180px;
    margin-left: 129px;
}

.section-pic-plane {
    width: 330px;
    margin-top: 180px;
    margin-left: 20px;
}

.menu-popup {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: white;
    z-index: 90;
    overflow-x: auto;
}

.menu-popup ul {
    width: 288px;
    margin: 24px auto 0;
    user-select: none;
    padding-left: 0;
}

.menu-popup ul li:before {
    content: url("/assets/img/li-style-cube-2.svg");
    display: block;
    margin-right: 12px;
}

.menu-popup ul li {
    font-weight: 700;
    font-size: 12px;
    list-style: none;
    display: flex;
    align-items: center;
    width: 100%;
    flex-wrap: wrap;
}

.menu-popup ul li a {
    text-decoration: none;
    color: #000000;
}

.menu-popup ul li.active a {
    color: #F2D34C;
}

.a-with-icon {
    display: inline-flex;
    justify-content: space-between;
    width: 79%;
}

.a-with-icon img {
    cursor: pointer;
}

.small-sub-menu ul {
    margin-top: 0;
    padding-left: 29px;
}

.small-sub-menu ul li {
    flex-wrap: nowrap;
    margin-bottom: 10px;
    margin-top: 10px;
    font-weight: 500;
    font-size: 11px;
    line-height: 160%;
}

.small-sub-menu ul li a {
    color: #969696;
}

.small-sub-menu ul li:hover a {
    color: #706f6f;
}

.small-sub-menu ul li:before {
    content: url("/assets/img/li-style-cube.svg");
    display: block;
    margin-right: 12px;
}

.banner-black-320 .main-container,
.banner-black-320 .container-fluid {
    padding-right: 0;
    padding-left: 0;
}

.stack-section {
    margin-top: 80px;
    margin-bottom: 80px;
}

.stack-title {
    text-align: center;
}

.stack-items {
    display: flex;
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 40px;
}

.stack-item {
    width: 180px;
    text-align: center;
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
}

.popup-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(1px);
    /*display: flex;*/
    /*align-items: center;
    justify-content: center;*/
    padding: 5vw 15px;
    overflow: auto;
}

.popup-container {
    padding: 58px 80px 60px;
    width: 1116px;
    height: auto;
    max-width: 100%;
    border-radius: 24px;
    position: relative;
    background-color: white;
    margin: 0 auto;
}

.popup-close {
    position: absolute;
    right: 0;
    top: 0;
    opacity: .8;
    transition: .2s;
    cursor: pointer;
    padding: 26px 33px;
}

.popup-close:hover {
    opacity: 1;
}

.popup-title {
    font-size: 38px;
    line-height: 46px;
    color: #000000;
    font-weight: 700;
    text-align: center;
}

.popup-menu {
    margin-top: 40px;
    margin-bottom: 54px;
}

.popup-menu ul {
    display: flex;
    justify-content: space-between;
    margin-left: 0;
    padding-left: 0;
}

.popup-menu ul li {
    list-style: none;
    font-weight: 500;
    font-size: 22px;
    line-height: 37px;
    color: #636363;
    position: relative;
    transition: .2s;
}

.popup-menu ul li:not(.active) {
    cursor: pointer;
}

.popup-menu ul li:not(.active):hover {
    color: #000000;
}

.popup-menu ul li.active {
    color: #000000;
}

.popup-menu ul li.active:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 5px;
    background-color: #F2D34C;
    bottom: -8px;
}

.popup-bnr {
    overflow: hidden;
    border-radius: 24px;
}

.popup-bnr img {
    width: 100%;
    display: none;
}

.yellow-button.text {
    position: absolute;
    left: calc(50% - 179px/2);
    width: auto;
    padding: 6px 30px;
    transform: rotate(0) !important;
    align-items: center;
    display: flex;
    font-weight: 600;
    font-size: 12px;
    line-height: 32px;
    color: #000000;
}

.product-advantages {
    margin-top: 45px;
    margin-bottom: 50px;
}

.product-description {
    display: flex;
}

.product-description-container {
    flex: 1;
    margin-right: 58px;
    position: relative;
}

#products-img {
    width: 630px;
    margin-top: -128px;
    position: relative;
    z-index: 10;
    right: -110px;
}

.product-description .thumb-saving-text__desc {
    padding-top: 9px;
}

#products-img-earth {
    left: 16%;
    position: relative;
}

/* Legal pages (privacy, talent-pool) */

.legal-page {
    padding-top: 32px;
    padding-bottom: 48px;
    color: #1a1a1a;
}

.legal-page .container-fluid {
    max-width: 880px;
    margin: 0 auto;
}

.legal-page__header {
    margin-bottom: 36px;
}

.legal-page__header h1 {
    font-style: normal;
    font-weight: 700;
    font-size: 36px;
    line-height: 1.25;
    color: #000000;
    margin: 0;
}

.legal-page__meta {
    color: #636363;
    font-size: 14px;
    margin: 18px 0 8px;
}

.legal-page__pdf a {
    color: #0010B1;
    text-decoration: none;
    border-bottom: 1px solid #0010B1;
    font-size: 14px;
}
.legal-page__pdf a:hover {
    color: #000000;
    border-bottom-color: #000000;
}

.legal-page__section {
    margin-bottom: 28px;
}

.legal-page__section h2 {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    color: #000000;
    margin: 24px 0 12px;
    padding: 0;
}

.legal-page__section h3 {
    font-size: 19px;
    font-weight: 700;
    line-height: 1.35;
    color: #000000;
    margin: 22px 0 10px;
}

.legal-page__section h4 {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    color: #0010B1;
    margin: 18px 0 8px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.legal-page__section p {
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 12px;
    text-align: justify;
}

.legal-page__section ul {
    margin: 0 0 14px;
    padding-left: 22px;
}

.legal-page__section li {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 6px;
}

.legal-page__section a {
    color: #0010B1;
}
.legal-page__section a:hover {
    color: #000000;
}

.legal-page__section strong {
    font-weight: 700;
    color: #000000;
}

@media (max-width: 720px) {
    .legal-page__header h1 { font-size: 26px; }
    .legal-page__section h2 { font-size: 20px; }
    .legal-page__section h3 { font-size: 17px; }
    .legal-page__section h4 { font-size: 14px; }
    .legal-page__section p,
    .legal-page__section li { font-size: 14px; }
}


/* Product page — screenshots gallery (inline tabs) */
.product-screens__lead {
    max-width: 880px;
    margin: 16px auto 28px;
    text-align: center;
    color: #555;
    font-size: 16px;
    line-height: 1.5;
}

.product-screens__tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 0 auto 24px;
    max-width: 900px;
    padding: 0 12px;
}

.product-screens__tab {
    appearance: none;
    border: 1px solid #cfd2da;
    background: #ffffff;
    color: #1a1a1a;
    font-family: inherit;
    font-size: 15px;
    font-weight: 500;
    padding: 10px 18px;
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.product-screens__tab:hover {
    border-color: #0010B1;
    color: #0010B1;
}
.product-screens__tab.active {
    background: #0010B1;
    border-color: #0010B1;
    color: #ffffff;
}

.product-screens__viewport {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 12px 48px;
    position: relative;
}
.product-screens__image {
    display: none;
    width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
    border: 1px solid #e5e7eb;
}
.product-screens__image.active {
    display: block;
}

/* Product page — licensing & pricing */
.product-licensing {
    padding-top: 24px;
    padding-bottom: 48px;
}
.licensing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 28px;
}
.licensing-card {
    background: #f7f8fa;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 24px;
}
.licensing-card h3 {
    margin: 0 0 14px;
    font-size: 18px;
    font-weight: 700;
    color: #0010B1;
}
.licensing-list {
    list-style: disc;
    padding-left: 20px;
    margin: 0;
}
.licensing-list li {
    font-size: 15px;
    line-height: 1.55;
    margin-bottom: 8px;
}
.licensing-list em,
.licensing-pricing em {
    color: #8a8d96;
    font-style: italic;
}
.licensing-pricing {
    font-size: 16px;
    margin: 0 0 12px;
}
.licensing-note {
    font-size: 14px;
    line-height: 1.5;
    color: #555;
    margin: 0;
}
.licensing-card--cta {
    background: #0b1331;
    color: #ffffff;
    border-color: #0b1331;
}
.licensing-card--cta h3 {
    color: #F2D34C;
}
.licensing-card--cta p {
    color: #ffffff;
    font-size: 15px;
    line-height: 1.5;
    margin: 0 0 12px;
}
.licensing-cta-button {
    display: inline-block;
    background: #F2D34C;
    color: #0b1331;
    font-weight: 700;
    text-decoration: none;
    padding: 12px 18px;
    border-radius: 8px;
    margin: 6px 0 14px;
    font-size: 15px;
}
.licensing-cta-button:hover {
    background: #ffe066;
}
.licensing-phone {
    font-size: 14px;
    color: #cfd2da;
    margin: 0;
}
.licensing-phone a {
    color: #ffffff;
    text-decoration: none;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
}

/* Product page — legal info */
.product-legal {
    padding-top: 24px;
    padding-bottom: 56px;
}
.legal-list {
    max-width: 880px;
    margin: 28px auto 0;
    padding: 0 12px;
}
.legal-list dt {
    font-weight: 700;
    color: #0010B1;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-top: 22px;
    margin-bottom: 6px;
}
.legal-list dt:first-of-type {
    margin-top: 0;
}
.legal-list dd {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
    color: #1a1a1a;
}
.legal-actions {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}
.legal-link {
    color: #0010B1;
    text-decoration: none;
    border-bottom: 1px solid #0010B1;
    font-size: 14px;
}
.legal-link:hover {
    color: #000000;
    border-bottom-color: #000000;
}

@media (max-width: 1170px) {
    .licensing-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
    .product-screens__tab { font-size: 13px; padding: 8px 14px; }
    .licensing-card { padding: 18px; }
    .legal-list { padding: 0 16px; }
}

/* Реквизиты */
.requisites-grid {
    margin-top: 36px;
}
.requisites-col {
    padding: 0 32px 32px 0;
}
.requisites-col:last-child {
    padding-right: 0;
}
.requisites-col-title {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #0010B1;
}
.requisites-list {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 10px 20px;
    font-size: 15px;
    line-height: 1.6;
    color: #1a1a1a;
}
.requisites-list dt {
    font-weight: 600;
    color: #555;
    white-space: nowrap;
}
.requisites-list dd {
    margin: 0;
}
.requisites-list a {
    color: #0010B1;
    text-decoration: none;
}
.requisites-list a:hover {
    text-decoration: underline;
}
@media (max-width: 768px) {
    .requisites-col { padding-right: 0; }
    .requisites-list { grid-template-columns: 1fr; gap: 2px 0; }
    .requisites-list dt { margin-top: 10px; }
}

/* Сведения об ИТ-деятельности */
.it-activity-inner {
    max-width: 960px;
    padding: 40px 0 60px;
}
.ita-intro {
    font-size: 14px;
    color: #777;
    margin: 24px 0 40px;
    line-height: 1.6;
}
.ita-section {
    margin-bottom: 44px;
    padding-bottom: 44px;
    border-bottom: 1px solid #e5e5e5;
}
.ita-section--last {
    border-bottom: none;
}
.ita-text {
    font-size: 15px;
    line-height: 1.7;
    color: #1a1a1a;
    margin-top: 16px;
}
.ita-text--note {
    color: #666;
    font-style: italic;
    margin-bottom: 20px;
}
.okvyed-list dt {
    font-family: monospace;
    font-size: 14px;
    color: #1a1a1a;
    font-weight: 600;
}
.okvyed-main {
    font-weight: 700 !important;
    color: #0010B1 !important;
}
.okvyed-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    color: #fff;
    background: #0010B1;
    border-radius: 3px;
    padding: 1px 6px;
    margin-left: 8px;
    vertical-align: middle;
    font-style: normal;
}
.ita-products {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 4px;
}
.ita-product {
    padding: 16px 0;
    border-bottom: 1px solid #f0f0f0;
    display: grid;
    grid-template-columns: 220px 1fr;
    grid-template-rows: auto auto;
    column-gap: 24px;
}
.ita-product__name {
    grid-column: 1;
    grid-row: 1 / 3;
    display: flex;
    align-items: flex-start;
    padding-top: 2px;
}
.ita-product__name a {
    font-size: 15px;
    font-weight: 600;
    color: #0010B1;
    text-decoration: none;
    line-height: 1.4;
}
.ita-product__name a:hover {
    text-decoration: underline;
}
.ita-product__desc {
    grid-column: 2;
    grid-row: 1;
    font-size: 15px;
    line-height: 1.6;
    color: #1a1a1a;
}
.ita-product__cert {
    grid-column: 2;
    grid-row: 2;
    font-size: 13px;
    color: #666;
    margin-top: 4px;
}
.ita-product:last-child {
    border-bottom: none;
}
@media (max-width: 768px) {
    .it-activity-inner { padding: 24px 0 40px; }
    .ita-product { grid-template-columns: 1fr; }
    .ita-product__name { grid-column: 1; grid-row: 1; margin-bottom: 6px; }
    .ita-product__desc { grid-column: 1; grid-row: 2; }
    .ita-product__cert { grid-column: 1; grid-row: 3; }
}
