*,:focus{outline:none!important}body{font-family:'Roboto',sans-serif}.logo{width:150px}.head-info{margin-top:1rem}a{text-decoration:none;color:#333}a:hover{text-decoration:none;color:#666}a,h1,h2,h3,h4,h5,p{color:#333}h1{font-size:33px}h2{padding:10px 20px;margin:60px 0 30px;font-size:24px;position:relative;background-color:#eef3f5}h2:before{content:"";display:block;position:absolute;left:0;top:0;width:3px;height:100%;background-color:#005cbf}.head-info p{margin-bottom:5px}.head-info .btn-primary{margin-top:.3rem}.main-menu{width:100%;background-color:#eef3f5}.btn-outline-primary{border-radius:0;border:1px soild #333}.main-menu .nav-link{background-color:transparent}.main-menu .nav-link.active{background-color:transparent}.nav-pills .nav-link.active,.nav-pills .show > .nav-link{color:#333}.navbar-nav{margin-left:auto;margin-right:auto}.btn-primary{border-radius:0}.modal-content{border-radius:0;text-align:left}.catalog-sert{width:180px;height:auto;margin-bottom:40px;-webkit-transition:all linear .25s;-o-transition:all linear .25s;transition:all linear .25s}.catalog-sert:hover{-webkit-transition:.25s;-o-transition:.25s;transition:.25s;}.catalog{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly}.catalog img{margin:0 20px 40px}.advantages{cursor:default;padding:25px;max-width:450px}.advantages p{font-size:1.2rem}.advantages p:last-child{margin-bottom:0}.advantages p:hover{color:#007bff;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.slide-map-sert{max-width:100%}.check-info{margin:45px auto 0}.title{font-size:1.5rem;text-align:center}.rosaccr{width:100%}.zayavka{font-size:15px}a,a > span{position:relative;color:inherit;text-decoration:none}a:before,a:after,a > span:before,a > span:after{content:'';position:absolute;-webkit-transition:-webkit-transform .5s ease;transition:-webkit-transform .5s ease;-o-transition:transform .5s ease;transition:transform .5s ease;transition:transform .5s ease,-webkit-transform .5s ease}.link{display:inline-block;padding-top:1px;padding-bottom:1px;overflow:hidden}.link:before{left:0;bottom:0;width:100%;height:1px;background:#333;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%)}.link:hover:before{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.step{margin-bottom:8rem;margin-top:7rem}.clients{margin-bottom:7rem;margin-top:7rem}.gray{background-color:#f8f8f8;padding:20px 0 5px 20px;margin:0 0 0 20px}.step-block{width:300px;margin-left:auto;margin-right:auto}.red-line{text-indent:25px}.bold{font-weight:700}.float-right{float:right}.ssgorstr{margin:0 1rem 0 0;max-width:190px}.about-img{max-width:820px}.swiper-wrapper img{width:100%}@media (max-width: 768px){#head,#footer{text-align:center}.logo{margin-bottom:20px}.advantages{margin:0 auto 30px}}



*[contenteditable="true"] {
    cursor: poionter;
}

.btn-block+.btn-block {
    margin-top: 0;
}

.radio_group .radio {
    cursor: pointer;
    user-select: none;
    position: relative;
    padding: 0 0 0 20px;
    margin-bottom: 10px;
}
.radio_group .radio:before {
    display: block;
    content: "";
    width: 15px;
    height: 15px;
    border: 1px solid #9c9c9c;
    border-radius: 50%;
    position: absolute;
    top: -2px;
    left: 0;
    bottom: 0;
    margin: auto;
}

.radio_group .radio.checked:after {
    display: block;
    content: "";
    width: 9px;
    height: 9px;
    background-color: #007bff;
    border-radius: 50%;
    position: absolute;
    top: -1px;
    left: 3px;
    bottom: 0;
    margin: auto;
}

.checkbox {
    cursor: pointer;
    user-select: none;
    position: relative;
    padding-left: 25px;
    margin-bottom: 15px;
}
.checkbox:before {
    display: block;
    content: "";
    width: 15px;
    height: 15px;
    border: 1px solid #9c9c9c;
    position: absolute;
    top: -2px;
    left: 0;
    bottom: 0;
    margin: auto;
}


.radio_group .radio.checked,
.checkbox.checked {
    font-weight: bold;
}

.radio_group.disable,
.radio_group.disable * {
    cursor: no-drop !important;
}

.radio_group.disable .checked:after {
    background-color: #9c9c9c !important;
}

.checkbox.checked:after {
    display: block;
    content: "";
    width: 9px;
    height: 9px;
    background-color: #007bff;
    position: absolute;
    top: -1px;
    left: 3px;
    bottom: 0;
    margin: auto;
}

.threendfl table tr .border-danger {
    border-width: 0 0 2px 0 !important;
}

.need_year .radio_group {
    display: flex;
    justify-content: space-around;
}
.need_year_group input,
.reason_group input {
    margin-right: 7px;
}

.need_year_group label,
.reason_group label {
    display: inline;
}

.link_adder {
    color: #007bff;
    font-size: 14px;
    cursor: pointer;
    user-select: none;
}

.link_adder:hover {
    color: #0069d9;
}

.checkbox_hidden .checkbox {
    display: none;
}

.checkbox_hidden.visible .checkbox {
    display: inherit;
}

.calc input:not(.datepicker),
.react-dadata__input {
    /*border: 1px solid #3b3b3b;*/
    /*border-radius: 0;*/
}

.calc input:not(.datepicker),
.calc textarea,
.calc .react-dadata__input {
    /*display: block;*/
    /*padding: 3px 10px;*/
    /*width: 100%;*/
    /*height: auto;*/
}

.ant-input-number {
    width: 100%;
}

.react-dadata__input:focus {
    outline: none;
    box-shadow: none !important;
}

.react-dadata__container {
    width: 100%;
}


select {
    cursor: pointer;
    padding: 3px 10px;
    max-width: 360px;
}

.suggestions-suggestions {
    padding: 3px 10px;
    position: absolute;
    background-color: #fff;
    border: 1px solid rgb(118, 118, 118);
    width: 100%;
    z-index: 999;
}

.suggestions-suggestion:hover {
    cursor: pointer;
    font-weight: bold;
}

.birthday p,
.city_birth p,
.code_infns p,
.code_oktmo p,
.data_other_taxpayer .d-flex p,
.contact_phone p {
    margin-bottom: 0;
    margin-right: 15px;
    width: 140px;
}

.two_ndfl_employer .d-flex p {
    margin-bottom: 0;
    margin-right: 15px;
    width: 150px;
}

#address_infns_input,
#name_document_other_txpayer,
.employer {
    width: 100% !important;
}

.reference_percent {
    width: 210px;
}


.employer_list .two_ndfl_employer:nth-child(1) .remove_employer,
.insurance_live_list .insurance_live_company:nth-child(1) .remove_employer,
.nonstate_pension_list .nonstate_pension_company:nth-child(1) .remove_employer,
.voluntary_pension_list .voluntary_pension_company:nth-child(1) .remove_employer {
    display: none !important;
}

.calc table {
    /*border-collapse: collapse;*/
}

.remove_tr {
    cursor: pointer;
    user-select: none;
}
.remove_tr:hover {
    font-weight: bold;
}

.four_point_list thead,
.three_point_list thead {
    font-size: 13px;
}

.four_point_list thead th,
.three_point_list thead th {
    vertical-align: middle;
}



.calc .d-flex p {
    margin-bottom: 0;
    margin-right: 15px;
    width: 150px;
}

.btn-primary.disabled,
.btn-primary:disabled {
    cursor: not-allowed;
}

.btn-back:hover {
    background-color: rgb(214 214 214);
}


.ant-checkbox-wrapper+.ant-checkbox-wrapper {
    margin-left: 0;
}

.ant-checkbox-wrapper,
.ant-radio-wrapper {
    user-select: none;
}

.ant-radio-disabled+span {
    color: inherit;
}

.ant-btn.disabled {
    background: #f5f5f5;
    border-color: #d9d9d9;
    box-shadow: none;
    color: rgba(0,0,0,.25);
    text-shadow: none;
    cursor: not-allowed;
}

.ant-select {
    width: 100%;
}

.ant-picker {
    width: 100%;
}

.anticon {
    vertical-align: 0;
}

.ant-table-thead .ant-table-cell {
    font-weight: bold;
}

/* Editable cells */
.editable-cell {
    position: relative;
}

.editable-cell-value-wrap {
    min-height: 32px;
    padding: 5px 12px;
    cursor: pointer;
}

.editable-row:hover .editable-cell-value-wrap {
    padding: 4px 11px;
    border: 1px solid #d9d9d9;
    border-radius: 2px;
}

[data-theme='dark'] .editable-row:hover .editable-cell-value-wrap {
    border: 1px solid #434343;
}

.ant-form-item {
    margin-bottom: 0;
}

/* Editable cells */

.ant-dropdown-menu-item {
    white-space: pre-wrap;
}

@media (min-width: 768px) {
    .right-sidebar {
        position: -webkit-sticky;
        position: sticky;
        top: 25px;
        align-self: flex-start;
        z-index: 10;
    }
}

/* ==========================================================================
   Страница "О нас" - Trust & Team Styles
   ========================================================================== */

.about-hero-intro {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 25px;
}

.about-hero-intro .lead-text {
    font-size: 1.05rem;
    line-height: 1.6;
    color: #2c3e50;
    margin-bottom: 0;
}

.trust-stats-row {
    margin-bottom: 30px;
}

.trust-stat-card {
    background: #ffffff;
    border: 1px solid #e3e8ee;
    border-radius: 8px;
    padding: 18px 15px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    height: 100%;
    transition: all 0.25s ease;
    border-top: 3px solid #005cbf;
}

.trust-stat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 16px rgba(0, 92, 191, 0.12);
}

.trust-stat-num {
    font-size: 1.75rem;
    font-weight: 700;
    color: #005cbf;
    line-height: 1.1;
    margin-bottom: 6px;
}

.trust-stat-title {
    font-size: 0.85rem;
    color: #555;
    margin-bottom: 0;
    line-height: 1.3;
}

.section-subtitle-badge {
    display: inline-block;
    background: #eef3f5;
    color: #005cbf;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 4px 10px;
    border-radius: 4px;
    margin-bottom: 8px;
}

/* Карточки сотрудников */
.team-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 20px;
    height: 100%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    transition: all 0.25s ease;
    display: flex;
    flex-direction: column;
}

.team-card:hover {
    transform: translateY(-3px);
    border-color: #b0cbe8;
    box-shadow: 0 8px 20px rgba(0, 92, 191, 0.1);
}

.team-header {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
}

.team-avatar-wrap {
    position: relative;
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    margin-right: 14px;
}

.team-avatar-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, #005cbf 0%, #0088ff 100%);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    box-shadow: 0 4px 10px rgba(0, 92, 191, 0.25);
    border: 2px solid #ffffff;
}

.team-avatar-img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    box-shadow: 0 4px 10px rgba(0, 92, 191, 0.2);
    border: 2px solid #ffffff;
}

.team-avatar-status {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 14px;
    height: 14px;
    background-color: #28a745;
    border: 2px solid #ffffff;
    border-radius: 50%;
}

.team-name {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 3px;
    line-height: 1.25;
}

.team-role {
    font-size: 0.82rem;
    color: #005cbf;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 0;
}

.team-competencies {
    font-size: 0.85rem;
    color: #4a5568;
    line-height: 1.45;
    margin-bottom: 16px;
    flex-grow: 1;
}

.team-contacts-list {
    background: #f8fafc;
    border: 1px solid #edf2f7;
    border-radius: 6px;
    padding: 10px 12px;
    margin-bottom: 0;
}

.team-contact-row {
    font-size: 0.88rem;
    margin-bottom: 7px;
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}

.team-contact-row:last-child {
    margin-bottom: 0;
}

.team-contact-row i {
    width: 20px !important;
    color: #007bff !important;
    font-size: 1.1rem !important;
    margin-right: 8px !important;
    text-align: center !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
}

.team-contact-row a {
    color: #2d3748;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s ease;
}

.team-contact-row a:hover {
    color: #007bff;
    text-decoration: underline;
}

.team-ext-badge {
    display: inline-block;
    background: #e3f2fd;
    color: #005cbf;
    font-weight: 700;
    font-size: 0.78rem;
    padding: 2px 6px;
    border-radius: 4px;
    margin-left: 6px;
}

/* Общие синие иконки */
.icon-blue {
    color: #007bff !important;
    font-size: 1.15rem !important;
    width: 22px !important;
    text-align: center !important;
    margin-right: 8px !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
}

/* Блок контактов офиса и расписания */
.office-contacts-panel {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 22px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    margin-bottom: 25px;
}

.office-contact-line {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    margin-bottom: 12px;
    font-size: 0.95rem;
    line-height: 1.4;
}

.office-contact-line:last-child {
    margin-bottom: 0;
}

.office-contact-text {
    color: #2c3e50;
}

.office-contact-text a {
    color: #005cbf;
    font-weight: 600;
}

.office-contact-text a:hover {
    color: #007bff;
    text-decoration: underline;
}

.map-wrapper {
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #dee2e6;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);
    background: #f8fafc;
    min-height: 400px;
}

@media (max-width: 768px) {
    .about-hero-intro {
        padding: 16px;
    }
    .trust-stat-card {
        margin-bottom: 12px;
    }
    .team-card {
        margin-bottom: 15px;
    }
    .why-box {
        margin-bottom: 12px;
    }
    .office-contacts-panel {
        padding: 16px;
    }
}

/* Расширенный и аккуратный блок подачи заявки */
.zayavka {
    width: 100% !important;
    min-width: 255px !important;
    max-width: 100% !important;
    padding: 16px 18px !important;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.right-sidebar {
    min-width: 255px;
}

.zayavka .title {
    font-size: 1.25rem !important;
    font-weight: 700;
    color: #1a202c;
}

.check-info {
    margin-top: 15px !important;
    padding: 16px 18px !important;
}

/* Drag & Drop и файловый загрузчик */
.file-upload-wrapper {
    position: relative;
    transition: all 0.2s ease;
}

.file-upload-btn {
    border-style: dashed !important;
    border-width: 1.5px !important;
    background: #fafbfc;
    color: #495057;
    transition: all 0.2s ease;
}

.file-upload-btn:hover {
    background: #eef2f7;
    border-color: #007bff !important;
    color: #007bff;
}

.file-upload-btn.dragover {
    background: #e3f2fd !important;
    border-color: #007bff !important;
    color: #007bff !important;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

.file-list-preview {
    margin-top: 4px;
}

.file-preview-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 6px;
    background: #ffffff;
    border: 1px solid #edf2f7;
    border-radius: 4px;
    margin-bottom: 3px;
    font-size: 11px;
    line-height: 1.25;
}

.file-preview-item .file-name {
    max-width: 80%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #334155;
}

.file-trash-btn {
    background: transparent;
    border: none;
    padding: 0 2px 0 6px;
    cursor: pointer;
    color: #94a3b8;
    transition: color 0.2s ease;
    outline: none;
    line-height: 1;
}

.file-trash-btn:hover,
.file-trash-btn:focus {
    color: #dc3545 !important;
    outline: none;
}

/* Иконки мессенджеров в шапке */
.header-messengers {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.messenger-btn,
.messenger-btn:before,
.messenger-btn:after {
    box-sizing: border-box;
}

.messenger-btn:before,
.messenger-btn:after {
    display: none !important;
    content: none !important;
}

.messenger-btn {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0;
    margin: 0;
    vertical-align: middle;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.messenger-btn i {
    display: inline-block;
    line-height: 1;
    margin: 0;
    padding: 0;
}

.messenger-btn.messenger-wa i {
    font-size: 30px;
    color: #25D366;
}

.messenger-btn.messenger-tg i {
    font-size: 30px;
    /* margin-right: 1px; */
    /* margin-top: 1px; */
    color: #2AABEE;
}

.messenger-btn:hover {
    transform: scale(1.12);
    opacity: 0.85;
}

/* Кнопка в шапке */
.header-action-btn {
    white-space: nowrap;
    padding: 9px 14px;
    font-weight: 400 !important;
    text-transform: uppercase;
    line-height: 1.3;
    border-radius: 4px;
    display: inline-block;
    letter-spacing: 0.2px;
    transition: all 0.2s ease;
}

@media (max-width: 991px) {
    .header-action-btn {
        white-space: normal;
        padding: 8px 10px;
    }
}

/* Сброс глобальных стилей h2/h3 для карточек статей, превью и модальных окон */
.card h2,
.card-body h2,
.article-card h2,
.articles-catalog h2,
.card h3,
.card-body h3,
.article-card h3,
.articles-catalog h3 {
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
    background-color: transparent !important;
    position: static !important;
    border: none !important;
}

.card h2:before,
.card-body h2:before,
.article-card h2:before,
.articles-catalog h2:before,
.card h3:before,
.card-body h3:before,
.article-card h3:before,
.articles-catalog h3:before {
    display: none !important;
    content: none !important;
}

/* Белый цвет заголовков ТОЛЬКО в темных блоках (например, верхний Лид-Магнит CTA) */
.text-white h2,
.text-white h3,
.card.text-white h2,
.card.text-white h3,
.rounded.text-white h2,
.rounded.text-white h3 {
    color: #ffffff !important;
}

/* Типографика статей (базовый шрифт >= 16px) */
article,
.article-content,
.articles-catalog {
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: #2d3748;
}

article p,
article li,
article td,
article th,
article .alert,
.article-card p,
.articles-catalog p {
    font-size: 16px !important;
    line-height: 1.7 !important;
}

article .card p,
article .card li {
    font-size: 16px !important;
    line-height: 1.7 !important;
}

article .small,
article small,
.articles-catalog .small,
.articles-catalog small {
    font-size: 15.5px !important;
    line-height: 1.6 !important;
}

article table {
    font-size: 15.5px !important;
}

article .badge,
.articles-catalog .badge {
    font-size: 13px !important;
}

/* ========================================================
   Главный баннер Ozon в статьях (десктоп и мобильный)
   Использует фоны /img/articles/ozon-main.jpg и ozon-mob.jpg
   ======================================================== */
.article-banner-ozon {
    position: relative;
    border-radius: 8px;
    background: #005bff url('/img/articles/ozon-main.jpg') no-repeat center center;
    background-size: cover;
    box-shadow: 0 4px 15px rgba(0, 91, 255, 0.25);
    overflow: hidden;
    padding: 48px 30px 65px 35px;
    color: #ffffff !important;
}

.article-banner-ozon .banner-ozon-content {
    max-width: 58%;
    position: relative;
    z-index: 2;
}

.article-banner-ozon h2,
.article-banner-ozon h3 {
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
}

.article-banner-ozon p {
    font-size: 15px;
    line-height: 1.4;
    margin: 0 0 12px 0 !important;
    color: #ffffff !important;
    opacity: 0.95;
}

.article-banner-ozon .btn-warning {
    color: #212529 !important;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 18px;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

@media (max-width: 991px) and (min-width: 768px) {
    .article-banner-ozon {
        padding: 42px 20px 60px 25px;
    }
    .article-banner-ozon .banner-ozon-content {
        max-width: 62%;
    }
    .article-banner-ozon h2,
    .article-banner-ozon h3 {
        font-size: 18px;
    }
    .article-banner-ozon p {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .article-banner-ozon {
        background-image: url('/img/articles/ozon-mob.jpg');
        background-position: center top;
        background-size: 100% auto;
        padding: 70px 20px 350px 20px;
    }
    .article-banner-ozon .banner-ozon-content {
        max-width: 100%;
        text-align: left;
    }
    .article-banner-ozon h2,
    .article-banner-ozon h3 {
        font-size: 18px;
        line-height: 1.3;
    }
    .article-banner-ozon p {
        font-size: 14.5px;
    }
}

/* Запрет выделения и копирования номеров телефонов */
.phone-no-select {
    -webkit-touch-callout: none !important;
    -webkit-user-select: none !important;
    -khtml-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    cursor: default !important;
}


























