/* Sprint Editor — article template (sirius) */

/* Блоки Sprint — на всю ширину контейнера статьи (как hero) */
.sirius-sprint-blocks {
    width: 100%;
    max-width: none;
}

.sirius-sprint-blocks > .section,
.sirius-sprint-blocks > .flex-elements-list,
.sirius-sprint-blocks > .accordion-block-container,
.sirius-sprint-blocks > .content-table-block,
.sirius-sprint-blocks > .gallery-slider-wrap--gv4 {
    margin-bottom: 1.5rem;
}

.sirius-sprint-blocks .section-news-info-text,
.sirius-sprint-blocks .section-pool-body {
    line-height: 1.55;
}

.sirius-sprint-blocks .section-news-info-text p,
.sirius-sprint-blocks .section-news-info-text .style-2 {
    margin: 0 0 0.75rem;
    line-height: 1.55;
    font-size: 18px;
}

.sirius-sprint-blocks img {
    max-width: 100%;
    height: auto;
}

/* --- stock Sprint (как на лицее) --- */
.sp-block-table table {
    width: 100%;
    border-collapse: collapse;
}

.sp-block-table table tr {
    background: #f7f7f7;
    color: #8a8a8a;
}

.sp-block-table table tr:nth-child(odd) {
    background: #e7e6e6;
}

.sp-block-table table tr:hover {
    background: #d4d4d4;
    color: #000;
}

.sp-block-table table td {
    text-align: left;
    border: 1px solid #ccc;
    padding: 5px;
}

.sp-block-table p {
    margin: 0;
}

.sp-image img {
    width: 100%;
}

.sp-video iframe,
.sp-video-gallery iframe {
    border-width: 0;
}

.sp-iblock-sections,
.sp-iblock-elements {
    padding: 10px;
    border: 1px solid #c3c3c3;
    margin: 10px 0;
}

.sp-gallery-items {
    overflow: hidden;
}

.sp-gallery-item {
    float: left;
    height: 220px;
    padding: 5px;
}

.sp-button_link,
.sp-button_link:link,
.sp-button_link:visited {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px 0;
    border-radius: 20px;
    text-decoration: none;
    background: #ccc;
    color: #333;
}

.sp-button_link:hover {
    text-decoration: none;
    background: #333;
    color: #ccc;
}

.sp-accordion {
    border: 1px solid #ccc;
    border-radius: 5px;
}

.sp-accordion-title {
    border-top: 1px solid #ccc;
    color: #444;
    cursor: pointer;
    padding: 10px;
    text-align: left;
}

.sp-accordion-title:first-child {
    border-top: none;
}

.sp-accordion-container {
    padding: 0 10px 10px;
    display: none;
    overflow: hidden;
}

.sp-accordion-title:after {
    content: '\02795';
    font-size: 12px;
    color: #777;
    float: right;
    margin: 2px 5px;
}

.sp-accordion-title__active:after {
    content: "\2796";
}

.sp-complex-table {
    display: table;
    table-layout: fixed;
    border-spacing: 10px;
}

.sp-complex-row {
    display: table-row;
}

.sp-complex-col {
    display: table-cell;
    vertical-align: top;
}

/* --- минимальные sirius-sp-* (старые stock-шаблоны) --- */
.sirius-sp-block {
    margin-bottom: 1.5rem;
    max-width: none;
    width: 100%;
}

.sirius-sp-htag {
    margin: 1.5rem 0 0.75rem;
}

.sirius-sp-button {
    display: inline-flex;
    align-items: center;
    margin-top: 0.5rem;
}

.sirius-sp-accordion-title {
    cursor: pointer;
    font-weight: 600;
    padding: 0.75rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    user-select: none;
}

.sirius-sp-accordion-title.is-open {
    border-bottom-color: transparent;
}

.sirius-sp-accordion-body {
    display: none;
    padding: 0 0 1rem;
}

.sirius-sp-accordion-body.is-open {
    display: block;
}

/* --- «Аккордеон» (my_accordion): отдельные карточки с рамкой, отступы как у синего (.style-2) --- */
.accordion-block-container.bordered .accordion-block-item {
    border: 1px solid #E1E5EF;
    border-radius: 2px;
    margin-bottom: 16px;
}

.accordion-block-container.bordered .accordion-block-item:last-of-type {
    margin-bottom: 0;
}

.accordion-block-container.bordered .accordion-block-item .accordion-block-item-header a {
    box-sizing: border-box;
    padding: 24px 64px 24px 24px;
}

.accordion-block-container.bordered .accordion-block-item .accordion-block-item-header a .icon {
    right: 24px;
}

.accordion-block-container.bordered .accordion-block-item .accordion-block-item-body {
    padding: 0 24px 24px;
}

@media (max-width: 767px) {
    .accordion-block-container.bordered .accordion-block-item .accordion-block-item-header a {
        padding: 20px 56px 20px 20px;
        font-size: 18px;
    }

    .accordion-block-container.bordered .accordion-block-item .accordion-block-item-header a .icon {
        right: 20px;
    }

    .accordion-block-container.bordered .accordion-block-item .accordion-block-item-body {
        padding: 0 20px 20px;
    }
}

/* Клик по фото → Fancybox, не переход на файл */
.content-picture-block > a[data-fancybox],
.sirius-sp-image > a[data-fancybox] {
    display: block;
    cursor: zoom-in;
    line-height: 0;
}
.content-picture-block > a[data-fancybox] img,
.sirius-sp-image > a[data-fancybox] img {
    display: block;
    width: 100%;
    height: auto;
}

/* --- Сетки редактора (layout_2..4): колонки рядом, на мобильных — столбиком --- */
.sirius-sp-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    margin-bottom: 1.5rem;
}

.sirius-sp-grid > div {
    flex: 1 1 0;
    min-width: 0;
}

.sirius-sp-grid > .col-md-3 { flex: 0 0 calc(25% - 18px); }
.sirius-sp-grid > .col-md-4 { flex: 0 0 calc(33.333% - 16px); }
.sirius-sp-grid > .col-md-6 { flex: 0 0 calc(50% - 12px); }
.sirius-sp-grid > .col-md-8 { flex: 0 0 calc(66.666% - 8px); }
.sirius-sp-grid > .col-md-9 { flex: 0 0 calc(75% - 6px); }
.sirius-sp-grid > .col-md-12 { flex: 0 0 100%; }

.sirius-sp-grid .sirius-sp-block:last-child,
.sirius-sp-grid .content-picture-block {
    margin-bottom: 0;
}

.sirius-sp-grid .section-news-info,
.sirius-sp-grid .content-picture-block {
    margin-top: 0;
}

@media (max-width: 767px) {
    .sirius-sp-grid {
        flex-direction: column;
        gap: 16px;
    }

    .sirius-sp-grid > div {
        flex: 1 1 auto !important;
        width: 100%;
    }
}

/* Заголовки разделов статьи */
.sirius-sprint-blocks .sirius-sp-htag {
    margin: 2.5rem 0 1rem;
}

.sirius-sprint-blocks > .sirius-sp-block--htag:first-child .sirius-sp-htag {
    margin-top: 0;
}

/* --- «Сириус | Ключевые цифры» --- */
.sirius-numbers {
    --sirius-numbers-accent: #8c59b7;
    background: #f5f6fa;
    border-radius: 4px;
    padding: 28px 32px;
    margin: 0.5rem 0 1.5rem;
}

.sirius-numbers--blue { --sirius-numbers-accent: #148eff; }
.sirius-numbers--coral { --sirius-numbers-accent: #f0796b; }
.sirius-numbers--green { --sirius-numbers-accent: #2a9d8f; }

.sirius-numbers__title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 8px;
}

.sirius-numbers__text {
    font-size: 16px;
    line-height: 1.5;
    color: #4a5562;
    margin-bottom: 20px;
}

.sirius-numbers__list {
    display: grid;
    grid-template-columns: repeat(var(--sirius-numbers-cols, 4), minmax(0, 1fr));
    gap: 24px 32px;
}

.sirius-numbers--cols-1 { --sirius-numbers-cols: 1; }
.sirius-numbers--cols-2 { --sirius-numbers-cols: 2; }
.sirius-numbers--cols-3 { --sirius-numbers-cols: 3; }
.sirius-numbers--cols-4 { --sirius-numbers-cols: 4; }

.sirius-numbers__item {
    border-left: 2px solid var(--sirius-numbers-accent);
    padding-left: 16px;
}

.sirius-numbers__value {
    color: var(--sirius-numbers-accent);
    font-size: 44px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.01em;
    white-space: nowrap;
}

.sirius-numbers__label {
    margin-top: 6px;
    font-size: 16px;
    line-height: 1.4;
    color: #0f2233;
}

.sirius-sp-grid .sirius-numbers {
    margin: 0;
    height: 100%;
    box-sizing: border-box;
}

@media (max-width: 1023px) {
    .sirius-numbers__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sirius-numbers__value {
        font-size: 36px;
    }
}

@media (max-width: 479px) {
    .sirius-numbers {
        padding: 20px 16px;
    }

    .sirius-numbers__list {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    .sirius-numbers__value {
        font-size: 32px;
        white-space: normal;
    }
}

/* --- Карточка персоны («Картинка с текстом и позицией») --- */
.sirius-person {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.sirius-person__pic {
    flex: 0 0 120px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(160deg, #eadff3, #dbe8fb);
}

.sirius-person__pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 15%;
    display: block;
}

.sirius-person__body {
    min-width: 0;
    padding-top: 8px;
}

.sirius-person__name,
.sirius-person__name p {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

.sirius-person__position,
.sirius-person__position p {
    margin: 4px 0 0;
    font-size: 14px;
    line-height: 1.4;
    color: #8c59b7;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.sirius-person__text,
.sirius-person__text p {
    margin: 8px 0 0;
    font-size: 15px;
    line-height: 1.45;
    color: #4a5562;
}

@media (max-width: 479px) {
    .sirius-person__pic {
        flex-basis: 88px;
        width: 88px;
        height: 88px;
    }
}

/* --- Цитата --- */
.sirius-quote {
    position: relative;
    margin: 1rem 0 2rem;
    padding: 32px 36px 28px 88px;
    background: #f3eef8;
    border-radius: 4px;
}

.sirius-quote::before {
    content: "\201C";
    position: absolute;
    left: 28px;
    top: 12px;
    font-family: "CanelaDeck", Georgia, serif;
    font-size: 96px;
    line-height: 1;
    color: #8c59b7;
}

.sirius-quote__text {
    margin: 0;
    font-size: 22px;
    line-height: 1.45;
    font-weight: 500;
    color: #0f2233;
}

.sirius-quote__author {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid rgba(140, 89, 183, 0.25);
    font-size: 15px;
    line-height: 1.45;
    color: #4a5562;
}

.sirius-quote__author p {
    margin: 0;
}

.sirius-quote__author p:first-child,
.sirius-quote__author b,
.sirius-quote__author strong {
    color: #0f2233;
    font-weight: 700;
}

@media (max-width: 767px) {
    .sirius-quote {
        padding: 56px 20px 20px;
    }

    .sirius-quote::before {
        left: 16px;
        top: 4px;
        font-size: 72px;
    }

    .sirius-quote__text {
        font-size: 18px;
    }
}

/* Подписи к фото внутри колонок — компактнее */
.sirius-sp-grid .content-picture-block img {
    border-radius: 4px;
}

/* --- Текст статьи: кегль и списки (стоковый «Текст» и «Текст в рамке») --- */
.sirius-sprint-blocks .sirius-sp-block--text p,
.sirius-sprint-blocks .sirius-sp-block--text li,
.sirius-sprint-blocks .text-with-border p,
.sirius-sprint-blocks .text-with-border li {
    font-size: 17px;
    line-height: 1.55;
}

.sirius-sprint-blocks .sirius-sp-block--text p {
    margin: 0 0 0.85rem;
}

.sirius-sprint-blocks .sirius-sp-block--text p:last-child {
    margin-bottom: 0;
}

.sirius-sprint-blocks .sirius-sp-block--text ul,
.sirius-sprint-blocks .sirius-sp-block--text ol,
.sirius-sprint-blocks .text-with-border ul,
.sirius-sprint-blocks .text-with-border ol {
    margin: 0 0 0.85rem;
    padding-left: 1.4em;
}

.sirius-sprint-blocks .sirius-sp-block--text ul,
.sirius-sprint-blocks .text-with-border ul {
    list-style: disc;
}

.sirius-sprint-blocks .sirius-sp-block--text ol,
.sirius-sprint-blocks .text-with-border ol {
    list-style: decimal;
}

.sirius-sprint-blocks .sirius-sp-block--text li,
.sirius-sprint-blocks .text-with-border li {
    margin-bottom: 0.45rem;
    padding-left: 0.2em;
}

.sirius-sprint-blocks .sirius-sp-block--text li::marker,
.sirius-sprint-blocks .text-with-border li::marker {
    color: #8c59b7;
}

.sirius-sprint-blocks .sirius-sp-block--text a,
.sirius-sprint-blocks .text-with-border a {
    color: #148eff;
}

/* Заголовки разделов */
.sirius-sprint-blocks h2.sirius-sp-htag {
    font-size: 32px;
    line-height: 1.2;
    font-weight: 700;
}

.sirius-sprint-blocks h3.sirius-sp-htag {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
    margin-top: 1.75rem;
}

@media (max-width: 767px) {
    .sirius-sprint-blocks h2.sirius-sp-htag {
        font-size: 24px;
    }

    .sirius-sprint-blocks h3.sirius-sp-htag {
        font-size: 19px;
    }
}

/* Карточки «Текст в рамке» в колонках: заголовок-номер, одинаковые отступы */
.sirius-sprint-blocks .text-with-border h3 {
    font-size: 19px;
    line-height: 1.3;
    font-weight: 700;
    margin: 0 0 10px;
}

.sirius-sprint-blocks .text-with-border .sirius-card-num {
    display: block;
    font-size: 40px;
    line-height: 1;
    font-weight: 300;
    color: #2a9d8f;
    margin-bottom: 10px;
}

.sirius-sp-grid .text-with-border {
    margin-bottom: 0;
}

/* --- «Горизонтальная таблица»: строки «параметр — значение» --- */
.sirius-sprint-blocks .content-table-block .service-list-main-line {
    display: none;
}

.sirius-sprint-blocks .content-table-block .table-block-line-container {
    display: flex;
    gap: 24px;
    padding: 12px 0;
    border-top: 1px solid #e1e5ef;
}

.sirius-sprint-blocks .content-table-block .table-block-line:last-child {
    border-top: 1px solid #e1e5ef;
}

.sirius-sprint-blocks .content-table-block .table-block-line-name {
    flex: 0 0 34%;
    min-width: 0;
}

.sirius-sprint-blocks .content-table-block .table-block-line-desc {
    flex: 1 1 auto;
    min-width: 0;
}

.sirius-sprint-blocks .content-table-block p {
    margin: 0;
    font-size: 16px;
    line-height: 1.45;
}

@media (max-width: 479px) {
    .sirius-sprint-blocks .content-table-block .table-block-line-container {
        flex-direction: column;
        gap: 4px;
    }
}

/* Цифры в узких колонках сетки */
.sirius-sp-grid .col-md-3 .sirius-numbers__value,
.sirius-sp-grid .col-md-4 .sirius-numbers__value,
.sirius-sp-grid .col-md-5 .sirius-numbers__value {
    font-size: 36px;
    white-space: normal;
}
