/*NOTE: This file is intended for programmers. Aspro technical support is not advised to work with him.*/

/* Examples (uncomment to use):*/

/* Expand site width */
/* body .wrapper { max-width: 1400px !important;  } */

/* Set site background image */
/* body {  background: url(image_source) top no-repeat; }

/* Hide compare button */
/* a.compare_item { display: none !important;  }*/

.overview{
    background-color: #EEECEB;
    padding-top: 25px;
    padding-bottom: 25px;
}

.overview__title{
    line-height: 3rem;
    margin-bottom: 2rem;
    margin-top: 1rem;
    color: #091b1d;
    font-size: 2.875rem;
}

.overview__subttle{
    font-size: 1.6rem;
    line-height: 1.75rem;
    margin-bottom: 1rem;
    font-weight: 400;
}

.overview__promo{
    margin-bottom: 1.875rem
}

.overview__list{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.overview__list__info{
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
}

.overview__list__info h4{
    margin-bottom: 0.8rem;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 600;
}

.overview__list__info h4 b{
    font-size: 2rem;
}

.overview__list__info p{
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.5rem;
}

@media (max-width: 992px){
    .overview__list__info {
        flex: 0 0 25%;
        max-width: 25%;
    }
}

@media (max-width: 768px){
    .overview__list__info {
        flex: 0 0 50%;
        max-width: calc(50% - 30px);
    }
}

/*cookie*/
.cookie-consent {
  position: fixed;
  bottom: 20px;
  left: 20px;
  right: 20px;
  max-width: 480px;
  margin: 0 auto;
  background: #001f3f; /* фирменный тёмный синий фон */
  color: #ffffff;
  padding: 16px 20px;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.5;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 2000; /* FIX 2026-09-14: было 9999, перекрывало модалки Bitrix popup (z-index 3000) — форма "Задать вопрос"/"Заказать продукт" оказывалась под баннером. Снижено ниже слоя модалок (3000), но выше обычного контента страницы (max 1000) */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.cookie-button {
  background: #ff6600; /* ОРАНЖЕВЫЙ цвет по умолчанию */
  border: none;
  padding: 10px 16px;
  border-radius: 5px;
  font-weight: bold;
  cursor: pointer;
  color: #ffffff;
  transition: background 0.3s, color 0.3s;
  margin-left: 15px;
}

.cookie-button:hover {
  background: #ffcc00; /* ЖЁЛТЫЙ при наведении */
  color: #002f5d; /* Синий текст при наведении */
}


.course-ib-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    color: #333;
    background: white;
}

.course-ib-header {
    background: white;
    color: #002F5D;
    padding: 40px 30px;
    border-radius: 5px;
    margin-bottom: 30px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    border: 2px solid #002F5D;
}

.course-ib-description {
    font-size: 16px;
    opacity: 0.95;
    margin-bottom: 20px;
}

.course-ib-badges {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    margin-top: 25px;
}

.course-ib-badge {
    background: rgba(254, 92, 29, 0.1);
    color: #002F5D;
    padding: 8px 16px;
    border-radius: 25px;
    font-size: 14px;
    font-weight: 500;
    border: 1px solid #FE5C1D;
}

/* Блок характеристик с визуальным разделением */
.course-ib-characteristics {
    background: #f8f9fa;
    padding: 40px;
    border-radius: 8px;
    margin-bottom: 30px;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
}

.course-ib-characteristics-title {
    font-size: 28px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 30px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-characteristics-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-characteristics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
    margin-top: 30px;
}

.course-ib-characteristic-item {
    background: white;
    padding: 25px;
    border-radius: 5px;
    border: 2px solid #f1f5f9;
    transition: all 0.4s ease;
    position: relative;
}

.course-ib-characteristic-item:hover {
    transform: translateY(-8px);
    border-color: #FE5C1D;
    box-shadow: 0 20px 40px rgba(254, 92, 29, 0.15);
}

.course-ib-characteristic-label {
    font-size: 14px;
    font-weight: 600;
    color: #FE5C1D;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.course-ib-characteristic-value {
    font-size: 18px;
    font-weight: 700;
    color: #002F5D;
    line-height: 1.3;
    margin-bottom: 5px;
}

.course-ib-characteristic-note {
    font-size: 15px;
    color: #64748b;
    line-height: 1.6;
}

/* Блок образования как обычная карточка в сетке */
.course-ib-characteristic-item.course-ib-education-block {
    background: white;
    border: 2px solid #f1f5f9;
    padding: 25px;
}

.course-ib-education-block .course-ib-characteristic-label {
    color: #FE5C1D;
}

.course-ib-education-block .course-ib-characteristic-value {
    color: #002F5D;
    font-size: 18px;
    margin-bottom: 12px;
}

.course-ib-education-block .course-ib-characteristic-note {
    color: #64748b;
    font-size: 15px;
    line-height: 1.6;
}

.course-ib-education-block:hover {
    transform: translateY(-8px);
    border-color: #FE5C1D;
    box-shadow: 0 20px 40px rgba(254, 92, 29, 0.15);
}

.course-ib-characteristic-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    color: #FE5C1D;
    font-size: 24px;
    font-weight: 700;
}

/* Остальные блоки */
.course-ib-target-audience {
    background: white;
    padding: 40px;
    border-radius: 8px;
    margin-bottom: 30px;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
}

.course-ib-section-title {
    font-size: 28px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 30px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-section-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-audience-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
    margin-top: 30px;
}

.course-ib-audience-card {
    background: white;
    padding: 25px;
    border-radius: 5px;
    border: 2px solid #f1f5f9;
    transition: all 0.4s ease;
    position: relative;
}

.course-ib-audience-card:hover {
    transform: translateY(-8px);
    border-color: #FE5C1D;
    box-shadow: 0 20px 40px rgba(254, 92, 29, 0.15);
}

.course-ib-card-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    color: white;
    font-size: 20px;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(254, 92, 29, 0.3);
}

.course-ib-card-title {
    font-size: 18px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 12px;
    line-height: 1.4;
}

.course-ib-card-description {
    font-size: 15px;
    color: #64748b;
    line-height: 1.6;
}

/* Программа обучения */
.course-ib-program-section {
    margin-bottom: 30px;
}

.course-ib-program-section .course-ib-section-title {
    font-size: 24px;
    font-weight: 600;
    color: #002F5D;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: left;
    padding-bottom: 0;
}

.course-ib-program-section .course-ib-section-title:after {
    display: none;
}

.course-ib-program-section .course-ib-icon {
    width: 24px;
    height: 24px;
    background: #FE5C1D;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 12px;
}

/* Как проходит обучение */
.course-ib-learning-process {
    background: white;
    padding: 40px 20px;
    border-radius: 8px;
    margin-bottom: 30px;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
    width: 100%;
    box-sizing: border-box;
}

.course-ib-learning-title {
    font-size: 32px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-learning-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-process-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-top: 30px;
    width: 100%;
}

.course-ib-process-step {
    background: white;
    padding: 25px;
    border-radius: 12px;
    border: 2px solid #f1f5f9;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

.course-ib-process-step::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    transition: height 0.4s ease;
}

.course-ib-process-step:hover {
    transform: translateY(-5px);
    border-color: #FE5C1D;
    box-shadow: 0 25px 50px rgba(254, 92, 29, 0.2);
}

.course-ib-process-step:hover::before {
    height: 6px;
}

.course-ib-step-header {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.course-ib-step-number {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    color: white;
    font-size: 18px;
    font-weight: 700;
    flex-shrink: 0;
    position: relative;
    box-shadow: 0 8px 20px rgba(254, 92, 29, 0.3);
}

.course-ib-step-title {
    font-size: 20px;
    font-weight: 700;
    color: #002F5D;
    margin: 0;
    line-height: 1.3;
}

.course-ib-step-description {
    font-size: 15px;
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 15px;
}

.course-ib-step-features {
    list-style: none;
    padding: 0;
    margin: 0;
}

.course-ib-step-features li {
    padding: 6px 0;
    padding-left: 20px;
    position: relative;
    font-size: 14px;
    color: #555;
    line-height: 1.5;
}

.course-ib-step-features li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #FE5C1D;
    font-weight: bold;
    font-size: 14px;
}

@media (max-width: 768px) {
    .course-ib-container {
        padding: 15px;
    }
    
    .course-ib-header,
    .course-ib-characteristics,
    .course-ib-learning-process {
        padding: 25px 20px;
    }
    
    .course-ib-characteristics-title,
    .course-ib-section-title,
    .course-ib-learning-title {
        font-size: 24px;
    }
    
    .course-ib-characteristics-grid,
    .course-ib-process-steps {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .course-ib-characteristic-item,
    .course-ib-process-step {
        padding: 20px 15px;
    }
    
    .course-ib-education-block {
        padding: 25px 20px;
    }
    
    .course-ib-characteristic-icon {
        width: 28px;
        height: 28px;
        font-size: 18px;
        top: 15px;
        right: 15px;
    }
    
    .course-ib-step-header {
        flex-direction: column;
        align-items: flex-start;
        text-align: center;
    }
    
    .course-ib-step-number {
        margin-right: 0;
        margin-bottom: 10px;
        align-self: center;
    }
    
    .course-ib-step-title {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .course-ib-characteristics-grid {
        gap: 15px;
    }
    
    .course-ib-characteristic-item {
        padding: 15px;
    }
    
    .course-ib-characteristic-value {
        font-size: 16px;
    }
    
    .course-ib-characteristic-icon {
        display: none;
    }
}

.course-ib-header {
    background: linear-gradient(135deg, #002F5D, #003A73);
    padding: 50px 40px;
    border-radius: 15px;
    margin-bottom: 30px;
    box-shadow: 0 15px 35px rgba(0, 47, 93, 0.2);
    border: none;
    position: relative;
    overflow: hidden;
    color: white;
}

.course-ib-header::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 150px;
    height: 150px;
    background: rgba(254, 92, 29, 0.1);
    border-radius: 50%;
    transform: translate(50%, -50%);
}

.course-ib-header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100px;
    height: 100px;
    background: rgba(254, 92, 29, 0.05);
    border-radius: 50%;
    transform: translate(-50%, 50%);
}

.course-ib-header-content {
    position: relative;
    z-index: 2;
}

.course-ib-header-title {
    font-size: 32px;
    font-weight: 700;
    color: white;
    margin-bottom: 25px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-header-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-description {
    font-size: 16px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 30px;
    text-align: center;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.course-ib-badges {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    margin-top: 30px;
}

.course-ib-badge {
    background: rgba(255, 255, 255, 0.1);
    color: white;
    padding: 20px 25px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, 0.2);
    text-align: center;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    backdrop-filter: blur(10px);
}

.course-ib-badge::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    transition: height 0.4s ease;
}

.course-ib-badge:hover {
    transform: translateY(-3px);
    border-color: #FE5C1D;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.3);
    background: rgba(254, 92, 29, 0.2);
}

.course-ib-badge:hover::before {
    height: 4px;
}

.course-ib-badge-icon {
    width: 24px;
    height: 24px;
    background: #FE5C1D;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 12px;
    font-weight: 700;
    flex-shrink: 0;
    transition: all 0.4s ease;
}

.course-ib-badge:hover .course-ib-badge-icon {
    background: white;
    color: #FE5C1D;
    transform: scale(1.1);
}

@media (max-width: 768px) {
    .course-ib-header {
        padding: 30px 20px;
    }
    
    .course-ib-header-title {
        font-size: 24px;
    }
    
    .course-ib-description {
        font-size: 15px;
    }
    
    .course-ib-badges {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .course-ib-badge {
        padding: 15px 20px;
        font-size: 14px;
    }
    
    .course-ib-badge-icon {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }
}

@media (max-width: 480px) {
    .course-ib-badge {
        padding: 12px 15px;
        font-size: 13px;
    }
}

.course-ib-characteristics {
    background: white;
    padding: 50px 40px;
    border-radius: 15px;
    margin-bottom: 30px;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
    position: relative;
    overflow: hidden;
}

.course-ib-characteristics::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 150px;
    height: 150px;
    background: rgba(254, 92, 29, 0.05);
    border-radius: 50%;
    transform: translate(50%, -50%);
}

.course-ib-characteristics::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100px;
    height: 100px;
    background: rgba(254, 92, 29, 0.03);
    border-radius: 50%;
    transform: translate(-50%, 50%);
}

.course-ib-characteristics-title {
    font-size: 32px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
    z-index: 2;
}

.course-ib-characteristics-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-characteristics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
    margin-top: 30px;
    position: relative;
    z-index: 2;
}

.course-ib-characteristic-item {
    background: white;
    padding: 25px;
    border-radius: 12px;
    border: 2px solid #f1f5f9;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

.course-ib-characteristic-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    transition: height 0.4s ease;
}

.course-ib-characteristic-item:hover {
    transform: translateY(-5px);
    border-color: #FE5C1D;
    box-shadow: 0 25px 50px rgba(254, 92, 29, 0.2);
}

.course-ib-characteristic-item:hover::before {
    height: 6px;
}

.course-ib-characteristic-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #002F5D, #003A73);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    color: white;
    font-size: 20px;
    font-weight: 700;
    transition: all 0.4s ease;
    box-shadow: 0 8px 20px rgba(0, 47, 93, 0.3);
}

.course-ib-characteristic-item:hover .course-ib-characteristic-icon {
    background: #FE5C1D;
    transform: scale(1.1);
}

.course-ib-characteristic-label {
    font-size: 14px;
    font-weight: 600;
    color: #FE5C1D;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.course-ib-characteristic-value {
    font-size: 18px;
    font-weight: 700;
    color: #002F5D;
    line-height: 1.3;
    margin-bottom: 5px;
}

.course-ib-characteristic-note {
    font-size: 15px;
    color: #64748b;
    line-height: 1.6;
}

/* Блок образования как обычная карточка */
.course-ib-characteristic-item.course-ib-education-block {
    background: white;
    color: #333;
    border: 2px solid #f1f5f9;
    padding: 25px;
}

.course-ib-education-block .course-ib-characteristic-icon {
    background: linear-gradient(135deg, #002F5D, #003A73);
    color: white;
    box-shadow: 0 8px 20px rgba(0, 47, 93, 0.3);
}

.course-ib-education-block:hover .course-ib-characteristic-icon {
    background: #FE5C1D;
    color: white;
    transform: scale(1.1);
}

.course-ib-education-block .course-ib-characteristic-label {
    color: #FE5C1D;
}

.course-ib-education-block .course-ib-characteristic-value {
    color: #002F5D;
    font-size: 18px;
    margin-bottom: 5px;
}

.course-ib-education-block .course-ib-characteristic-note {
    color: #64748b;
    font-size: 15px;
    line-height: 1.6;
}

.course-ib-education-block:hover {
    transform: translateY(-5px);
    border-color: #FE5C1D;
    box-shadow: 0 25px 50px rgba(254, 92, 29, 0.2);
}

.course-ib-education-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    transition: height 0.4s ease;
}

.course-ib-education-block:hover::before {
    height: 6px;
}

@media (max-width: 768px) {
    .course-ib-characteristics {
        padding: 30px 20px;
    }
    
    .course-ib-characteristics-title {
        font-size: 24px;
        margin-bottom: 25px;
    }
    
    .course-ib-characteristics-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .course-ib-characteristic-item {
        padding: 20px;
    }
    
    .course-ib-education-block {
        padding: 25px 20px;
    }
    
    .course-ib-characteristic-icon {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }
}

@media (max-width: 480px) {
    .course-ib-characteristics-grid {
        gap: 15px;
    }
    
    .course-ib-characteristic-item {
        padding: 15px;
    }
    
    .course-ib-characteristic-value {
        font-size: 16px;
    }
    
    .course-ib-characteristic-icon {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
}

.course-ib-frdo-section {
    background: white;
    padding: 50px 40px;
    border-radius: 15px;
    margin: 30px 0;
    position: relative;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
    width: 100%;
    box-sizing: border-box;
}

.course-ib-frdo-section::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 150px;
    height: 150px;
    background: rgba(254, 92, 29, 0.05);
    border-radius: 50%;
    transform: translate(50%, -50%);
}

.course-ib-frdo-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100px;
    height: 100px;
    background: rgba(254, 92, 29, 0.03);
    border-radius: 50%;
    transform: translate(-50%, 50%);
}

.course-ib-frdo-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.course-ib-frdo-content h2 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 25px;
    line-height: 1.2;
    color: #002F5D;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-frdo-content h2:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 80px;
    height: 4px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-frdo-subtitle {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #FE5C1D;
    line-height: 1.3;
}

.course-ib-frdo-description {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 15px;
    color: #64748b;
}

.course-ib-frdo-highlight {
    font-weight: 600;
    color: #002F5D;
}

.course-ib-frdo-images {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 25px;
    position: relative;
}

.course-ib-document-image {
    width: 100%;
    max-width: 300px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
    transition: all 0.4s ease;
    position: relative;
    transform: rotate(-2deg);
}

.course-ib-document-image:nth-child(1) {
    transform: rotate(-3deg);
    z-index: 3;
}

.course-ib-document-image:nth-child(2) {
    transform: rotate(2deg) translate(-15px, -20px);
    z-index: 2;
}

.course-ib-document-image:hover {
    transform: rotate(0deg) scale(1.08);
    z-index: 10;
    box-shadow: 0 25px 50px rgba(254, 92, 29, 0.25);
}

/* Добавляем подписи под документами */
.course-ib-document-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.course-ib-document-caption {
    margin-top: 15px;
    font-size: 14px;
    font-weight: 600;
    color: #002F5D;
    text-align: center;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
}

.course-ib-document-wrapper:hover .course-ib-document-caption {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 1024px) {
    .course-ib-frdo-container {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center;
    }

    .course-ib-frdo-content h2:after {
        left: 50%;
        transform: translateX(-50%);
    }

    .course-ib-frdo-images {
        flex-direction: row;
        justify-content: center;
        gap: 30px;
    }

    .course-ib-document-image:nth-child(2) {
        transform: rotate(2deg) translate(0, 0);
    }
}

@media (max-width: 768px) {
    .course-ib-frdo-section {
        padding: 30px 20px;
    }

    .course-ib-frdo-content h2 {
        font-size: 28px;
    }

    .course-ib-frdo-subtitle {
        font-size: 16px;
    }

    .course-ib-frdo-description {
        font-size: 14px;
    }

    .course-ib-frdo-images {
        flex-direction: column;
        gap: 20px;
    }

    .course-ib-document-image {
        max-width: 280px;
    }

    .course-ib-document-image:nth-child(2) {
        transform: rotate(2deg) translate(-10px, -15px);
    }
}

@media (max-width: 480px) {
    .course-ib-frdo-container {
        gap: 25px;
    }

    .course-ib-document-image {
        max-width: 250px;
    }

    .course-ib-document-image:nth-child(2) {
        transform: rotate(2deg) translate(-5px, -10px);
    }
}

.course-ib-advantages-section {
    background: white;
    padding: 50px 40px;
    border-radius: 15px;
    margin: 30px 0;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
    width: 100%;
    box-sizing: border-box;
}

.course-ib-advantages-title {
    font-size: 32px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-advantages-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-advantages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
    margin-top: 30px;
}

.course-ib-advantage-card {
    background: white;
    padding: 30px 20px;
    border-radius: 12px;
    border: 2px solid #f1f5f9;
    transition: all 0.4s ease;
    text-align: center;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

.course-ib-advantage-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    background: #FE5C1D;
    transition: height 0.4s ease;
}

.course-ib-advantage-card:hover {
    transform: translateY(-5px);
    border-color: #FE5C1D;
    box-shadow: 0 25px 50px rgba(254, 92, 29, 0.2);
}

.course-ib-advantage-card:hover::before {
    height: 4px;
}

.course-ib-advantage-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #002F5D, #003A73);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    color: white;
    font-size: 24px;
    transition: all 0.4s ease;
    position: relative;
}

.course-ib-advantage-card:hover .course-ib-advantage-icon {
    background: #FE5C1D;
    transform: scale(1.1);
}

.course-ib-advantage-title {
    font-size: 16px;
    font-weight: 700;
    color: #002F5D;
    margin: 0;
    line-height: 1.3;
}

@media (max-width: 768px) {
    .course-ib-advantages-section {
        padding: 30px 20px;
    }
    
    .course-ib-advantages-title {
        font-size: 24px;
        margin-bottom: 25px;
    }
    
    .course-ib-advantages-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 20px;
    }
    
    .course-ib-advantage-card {
        padding: 25px 15px;
    }
    
    .course-ib-advantage-title {
        font-size: 14px;
    }

    .course-ib-advantage-icon {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .course-ib-advantages-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 15px;
    }
    
    .course-ib-advantage-card {
        padding: 20px 10px;
    }
    
    .course-ib-advantage-title {
        font-size: 13px;
    }
}

.course-ib-advantages-section {
    background: white;
    padding: 50px 40px;
    border-radius: 15px;
    margin: 30px 0;
    box-shadow: 0 15px 35px rgba(254, 92, 29, 0.1);
    border: 1px solid #e2e8f0;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.course-ib-advantages-section::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 150px;
    height: 150px;
    background: rgba(254, 92, 29, 0.05);
    border-radius: 50%;
    transform: translate(50%, -50%);
}

.course-ib-advantages-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100px;
    height: 100px;
    background: rgba(254, 92, 29, 0.03);
    border-radius: 50%;
    transform: translate(-50%, 50%);
}

.course-ib-advantages-title {
    font-size: 32px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
    z-index: 2;
}

.course-ib-advantages-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-advantages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
    margin-top: 30px;
    position: relative;
    z-index: 2;
}

.course-ib-advantage-card {
    background: white;
    padding: 30px 20px;
    border-radius: 12px;
    border: 2px solid #f1f5f9;
    transition: all 0.4s ease;
    text-align: center;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

.course-ib-advantage-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    background: linear-gradient(135deg, #FE5C1D, #FF8A4C);
    transition: height 0.4s ease;
}

.course-ib-advantage-card:hover {
    transform: translateY(-5px);
    border-color: #FE5C1D;
    box-shadow: 0 25px 50px rgba(254, 92, 29, 0.2);
}

.course-ib-advantage-card:hover::before {
    height: 6px;
}

.course-ib-advantage-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #002F5D, #003A73);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    color: white;
    font-size: 24px;
    transition: all 0.4s ease;
    position: relative;
    box-shadow: 0 8px 20px rgba(0, 47, 93, 0.3);
}

.course-ib-advantage-card:hover .course-ib-advantage-icon {
    background: #FE5C1D;
    transform: scale(1.1);
}

.course-ib-advantage-title {
    font-size: 16px;
    font-weight: 700;
    color: #002F5D;
    margin: 0;
    line-height: 1.3;
}

@media (max-width: 768px) {
    .course-ib-advantages-section {
        padding: 30px 20px;
    }
    
    .course-ib-advantages-title {
        font-size: 24px;
        margin-bottom: 25px;
    }
    
    .course-ib-advantages-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 20px;
    }
    
    .course-ib-advantage-card {
        padding: 25px 15px;
    }
    
    .course-ib-advantage-title {
        font-size: 14px;
    }

    .course-ib-advantage-icon {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .course-ib-advantages-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 15px;
    }
    
    .course-ib-advantage-card {
        padding: 20px 10px;
    }
    
    .course-ib-advantage-title {
        font-size: 13px;
    }
}


.course-ib-contact-section {
    background: linear-gradient(135deg, #002F5D 0%, #003A73 100%);
    padding: 60px;
    border-radius: 24px;
    margin: 60px 0;
    position: relative;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
    color: white;
}

.course-ib-contact-section::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(254, 92, 29, 0.08) 0%, transparent 70%);
    border-radius: 50%;
}

.course-ib-contact-section::after {
    content: '';
    position: absolute;
    bottom: -80px;
    left: -80px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(254, 92, 29, 0.06) 0%, transparent 70%);
    border-radius: 50%;
}

.course-ib-contact-container {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 60px;
    align-items: center;
    position: relative;
    z-index: 2;
    max-width: 1400px;
    margin: 0 auto;
}

.course-ib-contact-content {
    position: relative;
}

.course-ib-contact-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(254, 92, 29, 0.15);
    color: #FE5C1D;
    padding: 10px 20px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 32px;
    border: 1px solid rgba(254, 92, 29, 0.3);
}

.course-ib-contact-badge::before {
    content: "●";
    color: #FE5C1D;
    font-size: 8px;
}

.course-ib-contact-title {
    font-size: 48px;
    font-weight: 800;
    margin-bottom: 20px;
    line-height: 1.1;
    color: white;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.course-ib-contact-subtitle {
    font-size: 18px;
    margin-bottom: 40px;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.6;
    font-weight: 400;
    max-width: 90%;
}

.course-ib-contact-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 24px;
    max-width: 500px;
}

.course-ib-form-input {
    width: 100%;
    padding: 18px 24px;
    border: none;
    border-radius: 16px;
    font-size: 16px;
    background: rgba(255, 255, 255, 0.95);
    color: #1e293b;
    outline: none;
    transition: all 0.3s ease;
    box-sizing: border-box;
    font-family: inherit;
}

.course-ib-form-input:focus {
    background: white;
    box-shadow: 0 0 0 4px rgba(254, 92, 29, 0.2);
    transform: translateY(-1px);
}

.course-ib-form-input::placeholder {
    color: #94a3b8;
    font-weight: 400;
}

.course-ib-submit-btn {
    padding: 18px 36px;
    background: linear-gradient(135deg, #FE5C1D 0%, #ff7a47 100%);
    color: white;
    border: none;
    border-radius: 16px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 8px 25px rgba(254, 92, 29, 0.3);
    position: relative;
    overflow: hidden;
    align-self: flex-start;
}

.course-ib-submit-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.course-ib-submit-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 35px rgba(254, 92, 29, 0.4);
}

.course-ib-submit-btn:hover::before {
    left: 100%;
}

.course-ib-privacy-notice {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: flex-start;
    gap: 12px;
    line-height: 1.5;
    max-width: 500px;
}

.course-ib-privacy-checkbox {
    margin-top: 2px;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    accent-color: #FE5C1D;
}

.course-ib-privacy-link {
    color: #FE5C1D;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

.course-ib-privacy-link:hover {
    color: #ff7a47;
    text-decoration: underline;
}

.course-ib-visual-section {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.course-ib-consultant-card {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 500px;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.3);
    transition: all 0.4s ease;
    background-image: url('/upload/iblock/b2e/06b1qfhidf2hcw3v7obek0sj0qqf66l8.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.course-ib-consultant-card:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 35px 70px rgba(0, 0, 0, 0.4);
}

.course-ib-consultant-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.7));
    padding: 40px 30px 30px;
    color: white;
}

.course-ib-consultant-name {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 8px;
    color: white;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.course-ib-consultant-position {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.9);
    font-weight: 500;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

@media (max-width: 1200px) {
    .course-ib-contact-container {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .course-ib-contact-section {
        padding: 50px 40px;
    }

    .course-ib-consultant-card {
        height: 400px;
    }
}

@media (max-width: 768px) {
    .course-ib-contact-section {
        padding: 40px 20px;
        margin: 40px 0;
    }

    .course-ib-contact-title {
        font-size: 36px;
    }

    .course-ib-contact-subtitle {
        font-size: 16px;
        max-width: 100%;
    }

    .course-ib-contact-form {
        max-width: 100%;
    }

    .course-ib-submit-btn {
        align-self: stretch;
    }

    .course-ib-consultant-card {
        height: 350px;
    }

    .course-ib-privacy-notice {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .course-ib-contact-title {
        font-size: 28px;
    }

    .course-ib-form-input,
    .course-ib-submit-btn {
        padding: 16px 20px;
    }

    .course-ib-consultant-card {
        height: 300px;
    }

    .course-ib-consultant-overlay {
        padding: 30px 20px 20px;
    }

    .course-ib-consultant-name {
        font-size: 24px;
    }

    .course-ib-consultant-position {
        font-size: 14px;
    }
}
.course-ib-requirements {
    background: white;
    padding: 40px;
    border-radius: 12px;
    margin-bottom: 30px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    border: 1px solid #e9ecef;
}

.course-ib-requirements-title {
    font-size: 28px;
    font-weight: 700;
    color: #002F5D;
    margin-bottom: 30px;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.course-ib-requirements-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: #FE5C1D;
    border-radius: 2px;
}

.course-ib-requirement-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
    margin-bottom: 15px;
    border-left: 4px solid #FE5C1D;
}

.course-ib-requirement-item:last-child {
    margin-bottom: 0;
}

.course-ib-requirement-icon {
    font-size: 32px;
    flex-shrink: 0;
}

.course-ib-requirement-text {
    flex: 1;
    font-size: 16px;
    color: #555;
    line-height: 1.5;
}

.course-ib-requirement-btn {
    background: #FE5C1D;
    color: white;
    padding: 10px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.course-ib-requirement-btn:hover {
    background: #e54d17;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(254, 92, 29, 0.3);
    text-decoration: none;
    color: white;
}

@media (max-width: 768px) {
    .course-ib-requirements {
        padding: 25px 20px;
    }
    
    .course-ib-requirements-title {
        font-size: 22px;
    }
    
    .course-ib-requirement-item {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }
    
    .course-ib-requirement-text {
        font-size: 15px;
    }
}

        .course-ib-courses-section {
            background: white;
            padding: 15px 10px;
            border-radius: 3px;
            position: relative;
            overflow: hidden;
        }

        .course-ib-courses-section::before {
            content: '';
            position: absolute;
            top: -50px;
            right: -50px;
            width: 150px;
            height: 150px;
            border-radius: 50%;
        }

        .course-ib-courses-section::after {
            content: '';
            position: absolute;
            bottom: -30px;
            left: -30px;
            width: 100px;
            height: 100px;
            border-radius: 50%;
        }

        .course-ib-courses-header {
            text-align: center;
            margin-bottom: 50px;
            position: relative;
            z-index: 2;
        }

        .course-ib-courses-badge {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            color: #FE5C1D;
            padding: 8px 16px;
            border-radius: 50px;
            font-size: 12px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin-bottom: 24px;
            border: 1px solid rgba(254, 92, 29, 0.2);
        }

        .course-ib-courses-badge::before {
            content: "●";
            color: #FE5C1D;
            font-size: 8px;
        }

        .course-ib-courses-title {
            font-size: 32px;
            font-weight: 700;
            color: #002F5D;
            margin-bottom: 16px;
            line-height: 1.2;
            position: relative;
            padding-bottom: 15px;
        }

        .course-ib-courses-title:after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 60px;
            height: 3px;
            background: #FE5C1D;
            border-radius: 2px;
        }

        .course-ib-courses-subtitle {
            font-size: 16px;
            color: #64748b;
            line-height: 1.6;
            max-width: 600px;
            margin: 0 auto;
        }

        .course-ib-courses-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            grid-template-rows: auto auto;
            gap: 16px;
            position: relative;
            z-index: 2;
        }

        .course-ib-course-card {
            background: white;
            padding: 20px;
            border-radius: 12px;
            border: 2px solid #f1f5f9;
            transition: all 0.4s ease;
            position: relative;
            overflow: hidden;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
            display: flex;
            flex-direction: column;
            height: 100%;
            min-height: 280px;
        }

        .course-ib-course-card:first-child {
            grid-column: 1 / -1;
            min-height: 200px;
        }

        .course-ib-course-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 0;
            background: linear-gradient(135deg, #FE5C1D, #ff7a47);
            transition: height 0.4s ease;
        }

        .course-ib-course-card:hover {
            transform: translateY(-8px);
            border-color: #FE5C1D;
            box-shadow: 0 20px 40px rgba(254, 92, 29, 0.15);
        }

        .course-ib-course-card:hover::before {
            height: 4px;
        }

        .course-ib-course-header {
            margin-bottom: 12px;
        }

        .course-ib-course-info {
            width: 100%;
        }

        .course-ib-course-title {
            font-size: 16px;
            font-weight: 700;
            color: #002F5D;
            margin-bottom: 8px;
            line-height: 1.3;
        }

        .course-ib-course-duration {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            background: rgba(254, 92, 29, 0.1);
            color: #FE5C1D;
            padding: 4px 12px;
            border-radius: 20px;
            font-size: 12px;
            font-weight: 600;
        }

        .course-ib-course-duration::before {
            content: "⏱";
            font-size: 14px;
        }

        .course-ib-course-description {
            font-size: 13px;
            color: #64748b;
            line-height: 1.5;
            margin-bottom: 12px;
        }

        .course-ib-course-features {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            margin-bottom: 12px;
        }

        .course-ib-course-feature {
            background: #f8fafc;
            color: #475569;
            padding: 4px 10px;
            border-radius: 6px;
            font-size: 11px;
            font-weight: 500;
            border: 1px solid #e2e8f0;
        }

        .course-ib-course-action {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            margin-top: auto;
        }

        .course-ib-course-btn {
            padding: 8px 16px;
            background: transparent;
            color: #FE5C1D;
            border: 2px solid #FE5C1D;
            border-radius: 8px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 6px;
            min-width: 120px;
            justify-content: center;
        }

        .course-ib-course-btn:hover {
            background: #002F5D;
            border-color: #002F5D;
            color: white;
            transform: translateY(-2px);
            box-shadow: 0 8px 20px rgba(0, 47, 93, 0.3);
        }

        .course-ib-course-level {
            font-size: 12px;
            color: #64748b;
            font-weight: 500;
        }

        /* Специальная карточка "Еще курсы" */
        .course-ib-more-courses-card {
            background: linear-gradient(135deg, #002F5D, #0a4b8a);
            color: white;
            padding: 20px;
            border-radius: 12px;
            border: 2px solid transparent;
            transition: all 0.4s ease;
            position: relative;
            overflow: hidden;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-align: center;
            min-height: 160px;
            grid-column: 1 / -1;
        }

        .course-ib-more-courses-card::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(254, 92, 29, 0.1) 0%, transparent 70%);
            animation: pulse 4s ease-in-out infinite;
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); opacity: 0.5; }
            50% { transform: scale(1.1); opacity: 0.8; }
        }

        .course-ib-more-courses-card:hover {
            transform: translateY(-8px) scale(1.02);
            box-shadow: 0 20px 40px rgba(0, 47, 93, 0.3);
        }

        .course-ib-more-courses-icon {
            width: 48px;
            height: 48px;
            margin-bottom: 12px;
            position: relative;
            z-index: 2;
            border-radius: 8px;
            object-fit: contain;
        }

        .course-ib-more-courses-title {
            font-size: 18px;
            font-weight: 700;
            margin-bottom: 8px;
            position: relative;
            z-index: 2;
        }

        .course-ib-more-courses-subtitle {
            font-size: 13px;
            opacity: 0.9;
            margin-bottom: 12px;
            position: relative;
            z-index: 2;
        }

        .course-ib-more-courses-count {
            background: rgba(254, 92, 29, 0.2);
            color: #FE5C1D;
            padding: 6px 12px;
            border-radius: 16px;
            font-size: 11px;
            font-weight: 600;
            margin-bottom: 12px;
            position: relative;
            z-index: 2;
        }

        .course-ib-more-courses-btn {
            background: #FE5C1D;
            color: white;
            border: 2px solid #FE5C1D;
            padding: 8px 16px;
            border-radius: 8px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 6px;
            position: relative;
            z-index: 2;
        }

        .course-ib-more-courses-btn:hover {
            background: white;
            color: #002F5D;
            transform: translateY(-2px);
            box-shadow: 0 8px 20px rgba(255, 255, 255, 0.3);
        }

        @media (max-width: 768px) {
            .course-ib-courses-grid {
                grid-template-columns: 1fr;
                grid-template-rows: auto;
                gap: 20px;
                padding: 40px 20px;
            }

            .course-ib-course-card:first-child {
                grid-column: 1;
            }

            .course-ib-course-card {
                padding: 24px;
            }

            .course-ib-course-action {
                flex-direction: column;
                align-items: stretch;
            }

            .course-ib-course-btn {
                justify-content: center;
            }

            .course-ib-more-courses-card {
                min-height: 140px;
                padding: 16px;
            }
        }

        @media (max-width: 480px) {
            .course-ib-courses-grid {
                padding: 5px 5px;
            }

            .course-ib-course-card {
                padding: 20px;
            }

            .course-ib-course-title {
                font-size: 16px;
            }

            .course-ib-more-courses-card {
                padding: 20px;
            }

            .course-ib-more-courses-icon {
                width: 36px;
                height: 36px;
            }

            .course-ib-more-courses-title {
                font-size: 16px;
            }
        }



/*Выключение перехода на странице Контакты*/
.contacts-list__item.height-100.flexbox.flexbox--direction-row.animate-arrow-hover.color-theme-parent-all.bordered.shadow-hovered.shadow-no-border-hovered.contacts-list__item-without-image {
pointer-events: none;
}
.contacts-list__item-coord.show_on_map {
pointer-events: all;
}
/* =========================================================
   IST / Company Docs — Press-kit styles
   Scope: only inside .ist-presskit (safe for whole site)
   Buttons "К версии ..." hidden on desktop (>980px)
   ========================================================= */

.ist-presskit{
  --navy:#0B1F3A;
  --navy2:#0E2B52;
  --ink:#0F172A;
  --muted:#52637A;

  --accent:#EE7633;
  --accent2:#1E63D5;
  --line:rgba(15,23,42,.10);

  --bg:#ffffff;
  --card:#ffffff;
  --soft:#F3F6FB;

  font-family: Arial, sans-serif;
  color:var(--ink);
  background:var(--bg);
}
.ist-presskit *{box-sizing:border-box}
.ist-presskit a{color:var(--accent2);text-decoration:none}
.ist-presskit a:hover{text-decoration:underline}

.ist-presskit .wrap{
  width:min(1200px,100%);
  margin:0 auto;
  padding:28px 16px 44px;
}

/* subtle background waves */
.ist-presskit .hero{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  padding:28px 22px;
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(238,118,51,.12), transparent 55%),
    radial-gradient(900px 420px at 70% 10%, rgba(30,99,213,.10), transparent 55%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
  border:1px solid var(--line);
}
.ist-presskit .hero:before{
  content:"";
  position:absolute; inset:0;
  background:radial-gradient(rgba(15,23,42,.06) 1px, transparent 1px);
  background-size:26px 26px;
  opacity:.35;
  pointer-events:none;
}
.ist-presskit .hero-inner{position:relative; z-index:1}

.ist-presskit h1{
  margin:0 0 10px 0;
  font-size:clamp(26px,3.4vw,42px);
  line-height:1.08;
  font-weight:900;
  color:var(--navy);
  letter-spacing:-.02em;
}
.ist-presskit .lead{
  margin:0;
  max-width:860px;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}

.ist-presskit .chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.ist-presskit .chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.85);
  color:var(--navy);
  font-weight:800;
  font-size:13px;
  line-height:1;
}
.ist-presskit .dot{
  width:10px;height:10px;border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(238,118,51,.10);
  flex:0 0 auto;
}

.ist-presskit .grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:16px;
}

.ist-presskit .card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:20px;
  padding:18px;
  box-shadow:0 10px 24px rgba(0,0,0,.04);
  position:relative;
  overflow:hidden;
}
.ist-presskit .card:before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(238,118,51,.08), rgba(30,99,213,.06), transparent 60%);
  opacity:.8;
  pointer-events:none;
}
.ist-presskit .card > *{position:relative; z-index:1}

.ist-presskit h2{
  margin:0 0 10px 0;
  font-size:18px;
  font-weight:900;
  color:var(--navy);
  letter-spacing:-.01em;
  display:flex;
  align-items:center;
  gap:10px;
}
.ist-presskit h2 .mark{
  width:10px;height:10px;border-radius:3px;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(238,118,51,.10);
}

.ist-presskit .txt{
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.75;
  white-space:pre-wrap;
}

.ist-presskit .tools{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:12px;
}

.ist-presskit .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 14px;
  border-radius:14px;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.03em;
  border:1px solid transparent;
  background:var(--accent);
  color:#fff;
  cursor:pointer;
  user-select:none;
  -webkit-tap-highlight-color: transparent;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
  text-decoration:none;
  box-shadow:0 8px 18px rgba(238,118,51,.22);
}
.ist-presskit .btn:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(238,118,51,.30);
  text-decoration:none;
}
.ist-presskit .btn.ghost{
  background:#fff;
  color:var(--navy);
  border-color:var(--line);
  box-shadow:none;
}
.ist-presskit .btn.ghost:hover{
  box-shadow:0 12px 26px rgba(0,0,0,.06);
}

/* icon-like circles row */
.ist-presskit .icon-row{
  margin-top:16px;
  background:var(--soft);
  border:1px solid rgba(15,23,42,.08);
  border-radius:22px;
  padding:16px 14px;
}
.ist-presskit .icons{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:12px;
}
.ist-presskit .ic{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
}
.ist-presskit .ic .c{
  width:44px;height:44px;border-radius:999px;
  border:2px solid rgba(238,118,51,.35);
  display:flex;align-items:center;justify-content:center;
  background:rgba(238,118,51,.06);
  flex:0 0 auto;
}
.ist-presskit .ic .c svg{display:block}
.ist-presskit .ic .t{
  font-weight:900;
  color:var(--navy);
  line-height:1.2;
  font-size:13px;
}

/* responsiveness */
@media (max-width: 980px){
  .ist-presskit .grid{grid-template-columns:1fr}
  .ist-presskit .icons{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 520px){
  .ist-presskit .hero{padding:22px 16px}
  .ist-presskit .card{padding:16px}
  .ist-presskit .icons{grid-template-columns:1fr}
  .ist-presskit .btn{width:100%}
}

/* IMPORTANT: show version-switch buttons only on tablets/mobiles (<=980px) */
@media (min-width: 981px){
  .ist-presskit .tools a.btn.ghost{
    display:none !important;
  }
}
    /* ===== IST Contacts intro (scoped) ===== */
    .ist-contacts-intro{
      --navy:#0B1F3A;
      --accent:#EE7633;
      --accent2:#1E63D5;
      --muted:#52637A;
      --line:rgba(15,23,42,.10);

      font-family: Arial, sans-serif;
      color:var(--navy);
    }
    .ist-contacts-intro *{box-sizing:border-box}

    .ist-contacts-intro .box{
      position:relative;
      border-radius:22px;
      padding:22px 20px;
      background:
        radial-gradient(700px 360px at 10% 10%, rgba(238,118,51,.10), transparent 55%),
        radial-gradient(700px 360px at 80% 0%, rgba(30,99,213,.10), transparent 55%),
        linear-gradient(135deg,#ffffff 0%,#fbfdff 100%);
      border:1px solid var(--line);
      overflow:hidden;
    }

    .ist-contacts-intro .box:before{
      content:"";
      position:absolute; inset:0;
      background:radial-gradient(rgba(15,23,42,.05) 1px, transparent 1px);
      background-size:26px 26px;
      opacity:.35;
      pointer-events:none;
    }

    .ist-contacts-intro .inner{position:relative; z-index:1}

    .ist-contacts-intro h2{
      margin:0 0 10px 0;
      font-size:22px;
      font-weight:900;
      letter-spacing:-.01em;
      display:flex;
      align-items:center;
      gap:10px;
    }
    .ist-contacts-intro .mark{
      width:10px;height:10px;border-radius:3px;
      background:var(--accent);
      box-shadow:0 0 0 6px rgba(238,118,51,.12);
      flex:0 0 auto;
    }

    .ist-contacts-intro p{
      margin:0;
      max-width:880px;
      color:var(--muted);
      font-size:15px;
      line-height:1.7;
    }

    .ist-contacts-intro .tags{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:12px;
    }
    .ist-contacts-intro .tag{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      font-size:13px;
      font-weight:800;
      color:var(--navy);
      background:#fff;
      border:1px solid var(--line);
    }
    .ist-contacts-intro .dot{
      width:8px;height:8px;border-radius:50%;
      background:var(--accent2);
      box-shadow:0 0 0 5px rgba(30,99,213,.12);
    }

    @media (max-width: 520px){
      .ist-contacts-intro .box{padding:18px 14px}
      .ist-contacts-intro h2{font-size:20px}
    }
/* ===== IST Legal text block (scoped) ===== */
.ist-legal{
  max-width: 980px;
  margin: 0 auto;
  padding: 24px 20px;
  background: #ffffff;
  border: 1px solid rgba(15,23,42,.12);
  border-radius: 16px;
  font-family: Arial, sans-serif;
  color: #0F172A;
  box-shadow: 0 10px 26px rgba(0,0,0,.04);
}

.ist-legal__title{
  margin: 0 0 14px 0;
  font-size: 18px;
  font-weight: 900;
  color: #0B1F3A;
  letter-spacing: -0.01em;
  display: flex;
  align-items: center;
  gap: 10px;
}

.ist-legal__title::before{
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 3px;
  background: #EE7633;
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.ist-legal__text{
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: #52637A;
}
/* ===== IST History (scoped) ===== */
.ist-history{
  --navy:#0B1F3A;
  --ink:#0F172A;
  --muted:#52637A;
  --accent:#EE7633;
  --accent2:#1E63D5;
  --line:rgba(15,23,42,.10);

  font-family: Arial, sans-serif;
  color:var(--ink);
}

.ist-history .wrap{
  width:min(1200px,100%);
  margin:0 auto;
  padding:28px 16px 44px;
}

.ist-history .hero{
  position:relative;
  border-radius:26px;
  padding:28px 22px;
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(238,118,51,.12), transparent 55%),
    radial-gradient(900px 420px at 70% 10%, rgba(30,99,213,.10), transparent 55%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
  border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(0,0,0,.06);
}

.ist-history .hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(rgba(15,23,42,.06) 1px, transparent 1px);
  background-size:26px 26px;
  opacity:.35;
  pointer-events:none;
}

.ist-history .hero-inner{
  position:relative;
  z-index:1;
}

.ist-history h1{
  margin:0 0 10px 0;
  font-size:clamp(26px,3.3vw,44px);
  font-weight:900;
  color:var(--navy);
  letter-spacing:-.02em;
}

.ist-history .subtitle{
  margin:0;
  max-width:980px;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}

.ist-history .card{
  margin-top:16px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px;
  box-shadow:0 10px 26px rgba(0,0,0,.05);
}

.ist-history .section-title{
  margin:0 0 14px 0;
  font-size:18px;
  font-weight:900;
  color:var(--navy);
  display:flex;
  align-items:center;
  gap:10px;
}

.ist-history .section-title::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:3px;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(238,118,51,.12);
}

.ist-history p{
  margin:0 0 12px 0;
  font-size:15px;
  line-height:1.8;
  color:var(--muted);
}

.ist-history p:last-child{
  margin-bottom:0;
}

@media (max-width: 520px){
  .ist-history .hero{
    padding:22px 16px;
  }
  .ist-history .card{
    padding:16px;
  }
}
/* =========================================================
   IST — History page (SCOPED)
   Scope: only inside .ist-history-page
      ========================================================= */

.ist-history-page{
  --navy:#0B1F3A;
  --ink:#0F172A;
  --muted:#52637A;
  --accent:#EE7633;
  --accent2:#1E63D5;
  --line:rgba(15,23,42,.10);
  --soft:#F3F6FB;

  font-family: Arial, sans-serif;
  color:var(--ink);
}

.ist-history-page *{box-sizing:border-box}
.ist-history-page a{color:var(--accent2);text-decoration:none}
.ist-history-page a:hover{text-decoration:underline}

.ist-history-page .wrap{
  width:min(1200px, 100%);
  margin:0 auto;
  padding:28px 16px 44px;
}

/* layout: always stack blocks vertically */
.ist-history-page .stack{
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* common card */
.ist-history-page .card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px;
  box-shadow:0 10px 26px rgba(0,0,0,.05);
  position:relative;
  overflow:hidden;
}

/* subtle “brand” wash inside cards */
.ist-history-page .card--wash::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(238,118,51,.10), transparent 55%),
    radial-gradient(900px 420px at 78% 10%, rgba(30,99,213,.08), transparent 55%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
  opacity:1;
  pointer-events:none;
}
.ist-history-page .card--wash > *{position:relative; z-index:1}

/* hero */
.ist-history-page .hero{
  border-radius:26px;
  padding:26px 22px;
  border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(0,0,0,.06);
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(238,118,51,.12), transparent 55%),
    radial-gradient(900px 420px at 70% 10%, rgba(30,99,213,.10), transparent 55%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
}
.ist-history-page .hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(rgba(15,23,42,.06) 1px, transparent 1px);
  background-size:26px 26px;
  opacity:.28;
  pointer-events:none;
}

.ist-history-page .hero h1{
  margin:0 0 10px 0;
  font-size:clamp(28px,3.4vw,48px);
  line-height:1.06;
  font-weight:900;
  letter-spacing:-.02em;
  color:var(--navy);
}
.ist-history-page .hero .lead{
  margin:0;
  max-width:980px;
  color:var(--muted);
  font-size:16px;
  line-height:1.75;
}

/* section title with dot */
.ist-history-page .section-title{
  margin:0 0 12px 0;
  font-size:18px;
  font-weight:900;
  color:var(--navy);
  display:flex;
  align-items:center;
  gap:10px;
}
.ist-history-page .section-title::before{
  content:"";
  width:10px;height:10px;border-radius:3px;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(238,118,51,.12);
}

/* text */
.ist-history-page p{
  margin:0 0 12px 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.85;
}
.ist-history-page p:last-child{margin-bottom:0}

/* emphasis helpers */
.ist-history-page strong{color:var(--ink); font-weight:900}
.ist-history-page .pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.10);
  background:rgba(30,99,213,.06);
  color:var(--navy);
  font-weight:900;
  font-size:12px;
  white-space:nowrap;
}
.ist-history-page .pill::before{
  content:"";
  width:8px;height:8px;border-radius:2px;
  background:var(--accent2);
  box-shadow:0 0 0 6px rgba(30,99,213,.10);
}

/* feature list (icons + text) */
.ist-history-page .features{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}
.ist-history-page .feat{
  border:1px solid var(--line);
  border-radius:18px;
  padding:14px;
  background:linear-gradient(135deg, rgba(238,118,51,.06), rgba(30,99,213,.05), #fff 60%);
}
.ist-history-page .feat-top{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}
.ist-history-page .feat-ic{
  width:42px;height:42px;border-radius:999px;
  border:2px solid rgba(238,118,51,.35);
  background:rgba(238,118,51,.06);
  display:flex;align-items:center;justify-content:center;
  flex:0 0 auto;
}
.ist-history-page .feat-ic svg{display:block}
.ist-history-page .feat h3{
  margin:0;
  font-size:14px;
  font-weight:900;
  color:var(--navy);
  line-height:1.2;
}
.ist-history-page .feat p{
  margin:0;
  font-size:14px;
  line-height:1.7;
}

/* licenses highlight */
.ist-history-page .license{
  border:1px solid rgba(238,118,51,.45);
  border-radius:22px;
  padding:18px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(238,118,51,.14), transparent 55%),
    radial-gradient(900px 420px at 78% 10%, rgba(30,99,213,.10), transparent 55%),
    linear-gradient(135deg, #fff 0%, #fbfdff 100%);
  box-shadow:0 16px 40px rgba(0,0,0,.06);
}
.ist-history-page .license .badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(238,118,51,.45);
  background:rgba(238,118,51,.10);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  color:var(--navy);
}
.ist-history-page .license .badge::before{
  content:"";
  width:10px;height:10px;border-radius:3px;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(238,118,51,.12);
}
.ist-history-page .license h2{
  margin:12px 0 8px;
  font-size:clamp(24px,3vw,40px);
  line-height:1.06;
  font-weight:900;
  letter-spacing:-.02em;
  color:var(--ink);
}
.ist-history-page .license p{margin:0;color:var(--muted);font-size:15px;line-height:1.8}

/* logo grid (user will replace LOGO with <img>) */
.ist-history-page .logo-grid{
  margin-top:14px;
  background:rgba(243,246,251,.75);
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  padding:14px;
}
.ist-history-page .logos{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px;
}
.ist-history-page .logo{
  height:62px;
  border-radius:16px;
  border:1px dashed rgba(15,23,42,.18);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  color:rgba(15,23,42,.55);
  text-transform:uppercase;
  letter-spacing:.06em;
  overflow:hidden;
}
.ist-history-page .logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:10px;
  display:block;
}

/* h2 “Наш путь” (just a header, nothing else under it) */
.ist-history-page .next-title{
  margin:12px 0 0;
  font-size:clamp(34px,5vw,72px);
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.03em;
  color:var(--ink);
}

/* responsive */
@media (max-width: 980px){
  .ist-history-page .features{grid-template-columns:1fr}
  .ist-history-page .logos{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 520px){
  .ist-history-page .hero{padding:22px 16px}
  .ist-history-page .card{padding:16px}
  .ist-history-page .license{padding:16px}
  .ist-history-page .logos{grid-template-columns:1fr}
}
/* =========================================================
   IST Partner Page — bind existing styles to Aspro markup
   Goal: do NOT add <div class="ist-partner"> in editor.
   We style .partner-detail__text-wrapper/.partner-detail__text
   as if it was .ist-partner.
   ========================================================= */

/* 1) Внешний контейнер = wrapper */
.partner-detail__text-wrapper{
  /* переменные как в .ist-partner */
  --ink:#0F172A;
  --muted:#52637A;
  --accent:#EE7633;
  --accent2:#1E63D5;
  --line:rgba(15,23,42,.10);

  width:100%;
  max-width:1200px;           
  margin:0 auto;
  padding:32px 36px 36px;

  background:
    radial-gradient(900px 420px at 15% 10%, rgba(238,118,51,.08), transparent 55%),
    radial-gradient(900px 420px at 85% 0%, rgba(30,99,213,.08), transparent 55%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);

  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:0 14px 34px rgba(0,0,0,.06);

  font-family: Arial, sans-serif;
  color:var(--ink);
}

/* 2) у шаблона есть свои отступы/стили — обнуляем мягко */
.partner-detail__text-wrapper .partner-detail__text{
  max-width:980px;            /* читаемая ширина текста внутри широкой карточки */
  margin:0 auto;
}

/* 3) копия ваших правил .ist-partner */
.partner-detail__text-wrapper .partner-detail__text p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.85;
  color:var(--muted);
}

.partner-detail__text-wrapper .partner-detail__text p:first-child{
  font-size:17px;
  font-weight:600;
  color:var(--ink);
}

.partner-detail__text-wrapper .partner-detail__text strong,
.partner-detail__text-wrapper .partner-detail__text b{
  color:var(--ink);
  font-weight:700;
}

.partner-detail__text-wrapper .partner-detail__text a{
  color:var(--accent2);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px dashed rgba(30,99,213,.35);
}
.partner-detail__text-wrapper .partner-detail__text a:hover{
  border-bottom-color:transparent;
}

.partner-detail__text-wrapper .partner-detail__text .partner-meta{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--line);
  font-size:14px;
  color:rgba(15,23,42,.6);
}

/* 5) Красивые списки  */
.partner-detail__text-wrapper .partner-detail__text ul{
  margin:10px 0 14px;
  padding:0;
  list-style:none;
}
.partner-detail__text-wrapper .partner-detail__text li{
  position:relative;
  margin:0 0 10px 0;
  padding-left:22px;
  color:var(--muted);
  line-height:1.7;
}
.partner-detail__text-wrapper .partner-detail__text li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(238,118,51,.12);
}

/* 6) Мобилка */
@media (max-width:640px){
  .partner-detail__text-wrapper{
    padding:20px 18px 22px;
    border-radius:22px;
  }
  .partner-detail__text-wrapper .partner-detail__text{
    max-width:100%;
  }
}
/* КАСТОМНЫЙ CSS-БЛОК. Вставить без тега <style>, если поле Аспро предназначено для CSS */
#ist-gov-security,
#ist-gov-security * {
  box-sizing: border-box;
}

#ist-gov-security {
  --ist-blue: #15375b;
  --ist-blue-dark: #102b49;
  --ist-orange: #ee7633;
  --ist-orange-dark: #d85d18;
  --ist-text: #415064;
  --ist-muted: #687589;
  --ist-line: #dfe7ef;
  --ist-soft: #f4f8fc;
  --ist-warm: #fff7f1;
  --ist-white: #ffffff;
  max-width: 1180px;
  margin: 0 auto;
  color: var(--ist-text);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.65;
}

#ist-gov-security h2,
#ist-gov-security h3,
#ist-gov-security p {
  margin-top: 0;
}

#ist-gov-security h2,
#ist-gov-security h3 {
  color: var(--ist-blue);
}

#ist-gov-security h2 {
  margin-bottom: 18px;
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.16;
  font-weight: 800;
  letter-spacing: -0.02em;
}

#ist-gov-security h3 {
  margin-bottom: 10px;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 750;
}

#ist-gov-security p:last-child {
  margin-bottom: 0;
}

#ist-gov-security a {
  text-decoration: none;
}

.ist-gov__hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: 54px;
  align-items: center;
  overflow: hidden;
  margin: 12px 0 24px;
  padding: 56px;
  border: 1px solid var(--ist-line);
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 12%, rgba(238,118,51,.14), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #f7faff 58%, #fff8f3 100%);
  box-shadow: 0 24px 70px rgba(21,55,91,.10);
}

.ist-gov__hero-title {
  max-width: 760px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.ist-gov__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  color: var(--ist-orange-dark);
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ist-gov__eyebrow span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ist-orange);
  box-shadow: 0 0 0 5px rgba(238,118,51,.13);
}

.ist-gov__lead {
  max-width: 760px;
  margin-bottom: 15px;
  color: var(--ist-text);
  font-size: 18px;
  line-height: 1.65;
}

.ist-gov__hero-note {
  max-width: 720px;
  margin-bottom: 28px;
  color: var(--ist-muted);
  font-size: 13px;
  font-weight: 400;
}

.ist-gov__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 28px;
}

.ist-gov__button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 24px;
  border: 2px solid transparent;
  border-radius: 10px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: transform .2s ease, background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.ist-gov__button:hover {
  transform: translateY(-2px);
}

.ist-gov__button--primary {
  border-color: var(--ist-orange);
  background: var(--ist-orange);
  color: #fff !important;
  box-shadow: 0 13px 28px rgba(238,118,51,.24);
}

.ist-gov__button--primary:hover {
  border-color: var(--ist-orange-dark);
  background: var(--ist-orange-dark);
}

.ist-gov__button--secondary {
  border-color: var(--ist-blue);
  background: transparent;
  color: var(--ist-blue) !important;
}

.ist-gov__button--secondary:hover {
  background: var(--ist-blue);
  color: #fff !important;
}

.ist-gov__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ist-gov__chips span {
  padding: 7px 11px;
  border: 1px solid #d7e2ed;
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  color: var(--ist-blue);
  font-size: 12px;
  font-weight: 700;
}

.ist-gov__hero-visual {
  position: relative;
  min-height: 430px;
}

.ist-gov__hero-visual::before,
.ist-gov__hero-visual::after {
  content: "";
  position: absolute;
  border-radius: 50%;
}

.ist-gov__hero-visual::before {
  inset: 44px 38px 48px;
  border: 1px solid rgba(21,55,91,.12);
  background: linear-gradient(145deg, rgba(21,55,91,.06), rgba(238,118,51,.08));
}

.ist-gov__hero-visual::after {
  top: 96px;
  right: 88px;
  bottom: 95px;
  left: 84px;
  border: 1px dashed rgba(21,55,91,.24);
}

.ist-gov__shield {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  display: flex;
  width: 190px;
  height: 220px;
  align-items: center;
  justify-content: center;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(21,55,91,.14);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 26px 60px rgba(21,55,91,.16);
}

.ist-gov__shield svg {
  width: 120px;
  fill: rgba(238,118,51,.08);
  stroke: var(--ist-orange);
  stroke-width: 8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ist-gov__visual-card {
  position: absolute;
  z-index: 3;
  display: flex;
  min-width: 185px;
  flex-direction: column;
  padding: 15px 17px;
  border: 1px solid var(--ist-line);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 16px 35px rgba(21,55,91,.13);
}

.ist-gov__visual-card strong {
  color: var(--ist-orange);
  font-size: 17px;
}

.ist-gov__visual-card span {
  color: var(--ist-muted);
  font-size: 12px;
}

.ist-gov__visual-card--one {
  top: 28px;
  left: 0;
}

.ist-gov__visual-card--two {
  right: 0;
  bottom: 48px;
}

.ist-gov__visual-card--three {
  bottom: 8px;
  left: 4px;
}

.ist-gov__nav {
  position: sticky;
  z-index: 20;
  top: 74px;
  display: flex;
  gap: 8px;
  overflow-x: auto;
  margin: 0 0 30px;
  padding: 10px;
  border: 1px solid var(--ist-line);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(10px);
  scrollbar-width: thin;
}

.ist-gov__nav a {
  flex: 0 0 auto;
  padding: 9px 13px;
  border-radius: 8px;
  color: var(--ist-blue);
  font-size: 13px;
  font-weight: 700;
}

.ist-gov__nav a:hover,
.ist-gov__nav a.is-active {
  background: var(--ist-blue);
  color: #fff;
}

.ist-gov__section {
  scroll-margin-top: 145px;
  margin-bottom: 30px;
  padding: 54px;
  border: 1px solid var(--ist-line);
  border-radius: 26px;
  background: var(--ist-white);
}

.ist-gov__section--soft {
  background: var(--ist-soft);
}

.ist-gov__section--gradient {
  background: linear-gradient(135deg, #fff8f3 0%, #fff 38%, #f3f8fd 100%);
}

.ist-gov__section--why {
  background: var(--ist-blue);
}

.ist-gov__section--why h2,
.ist-gov__section--why h3,
.ist-gov__section--why p {
  color: #fff;
}

.ist-gov__section--why .ist-gov__eyebrow {
  color: #ffb17f;
}

.ist-gov__section-head {
  max-width: 820px;
  margin-bottom: 34px;
}

.ist-gov__section-head > p {
  margin-bottom: 0;
  color: var(--ist-muted);
  font-size: 17px;
}

.ist-gov__risk-grid,
.ist-gov__services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.ist-gov__risk-card,
.ist-gov__service-card {
  border: 1px solid var(--ist-line);
  border-radius: 18px;
  background: #fff;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ist-gov__risk-card:hover,
.ist-gov__service-card:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.ist-gov__risk-card {
  padding: 24px;
}

.ist-gov__risk-card p {
  margin-bottom: 0;
  color: var(--ist-muted);
  font-size: 14px;
}

.ist-gov__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
  color: var(--ist-orange-dark);
  font-size: 12px;
  font-weight: 850;
}

.ist-gov__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--ist-orange);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ist-gov__regulations,
.ist-gov__results {
  display: grid;
  grid-template-columns: minmax(280px, .85fr) minmax(0, 1.15fr);
  gap: 42px;
  align-items: start;
}

.ist-gov__regulations-intro > p,
.ist-gov__results > div:first-child > p {
  color: var(--ist-muted);
}

.ist-gov__notice {
  margin-top: 22px;
  padding: 18px;
  border-left: 4px solid var(--ist-orange);
  border-radius: 0 12px 12px 0;
  background: #fff;
  color: var(--ist-text);
  font-size: 13px;
}

.ist-gov__check-list {
  display: grid;
  gap: 10px;
}

.ist-gov__check-list > div {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 15px 17px;
  border: 1px solid var(--ist-line);
  border-radius: 13px;
  background: #fff;
  font-size: 14px;
}

.ist-gov__check-list i {
  position: relative;
  flex: 0 0 19px;
  width: 19px;
  height: 19px;
  margin-top: 2px;
  border: 2px solid var(--ist-orange);
  border-radius: 50%;
}

.ist-gov__check-list i::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 5px;
  width: 5px;
  height: 8px;
  border-right: 2px solid var(--ist-orange);
  border-bottom: 2px solid var(--ist-orange);
  transform: rotate(45deg);
}

.ist-gov-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.ist-gov-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--ist-line);
  border-radius: 16px;
  background: #fff;
}

.ist-gov-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.ist-gov-process article:nth-child(3)::after,
.ist-gov-process article:last-child::after {
  display: none;
}

.ist-gov-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--ist-orange);
  font-size: 12px;
  font-weight: 850;
}

.ist-gov-process p {
  margin-bottom: 0;
  color: var(--ist-muted);
  font-size: 13px;
}

.ist-gov__service-card {
  padding: 25px;
}

.ist-gov__service-head {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 17px;
}

.ist-gov__service-head span {
  display: flex;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--ist-orange);
  border-radius: 10px;
  color: var(--ist-orange-dark);
  font-size: 12px;
  font-weight: 850;
}

.ist-gov__service-head h3 {
  margin: 0;
}

.ist-gov__service-card ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ist-gov__service-card li {
  position: relative;
  padding-left: 16px;
  color: var(--ist-muted);
  font-size: 13px;
}

.ist-gov__service-card li::before {
  content: "";
  position: absolute;
  top: .72em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--ist-orange);
}

.ist-gov__result-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.ist-gov__result-list > div {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  padding: 16px;
  border: 1px solid var(--ist-line);
  border-radius: 14px;
  background: var(--ist-soft);
  font-size: 13px;
}

.ist-gov__result-list b {
  color: var(--ist-orange);
  font-size: 12px;
}

.ist-gov__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 28px;
}

.ist-gov__stats > div {
  padding: 22px;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 16px;
  background: rgba(255,255,255,.07);
}

.ist-gov__stats strong {
  display: block;
  margin-bottom: 7px;
  color: #ff9a5c;
  font-size: 25px;
  line-height: 1.15;
}

.ist-gov__stats span {
  color: rgba(255,255,255,.78);
  font-size: 12px;
  line-height: 1.45;
}

.ist-gov__why-text {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
  color: rgba(255,255,255,.83);
}

.ist-gov__why-text p {
  color: rgba(255,255,255,.83);
}

.ist-gov__faq {
  display: grid;
  gap: 10px;
}

.ist-gov__faq-item {
  overflow: hidden;
  border: 1px solid var(--ist-line);
  border-radius: 14px;
  background: #fff;
}

.ist-gov__faq-question {
  display: flex;
  width: 100%;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  padding: 20px 22px;
  border: 0;
  background: transparent;
  color: var(--ist-blue);
  font: inherit;
  font-weight: 750;
  text-align: left;
  cursor: pointer;
}

.ist-gov__faq-question span {
  position: relative;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--ist-soft);
}

.ist-gov__faq-question span::before,
.ist-gov__faq-question span::after {
  content: "";
  position: absolute;
  top: 13px;
  left: 8px;
  width: 12px;
  height: 2px;
  background: var(--ist-blue);
  transition: transform .2s ease;
}

.ist-gov__faq-question span::after {
  transform: rotate(90deg);
}

.ist-gov__faq-question[aria-expanded="true"] span::after {
  transform: rotate(0);
}

.ist-gov__faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease;
}

.ist-gov__faq-answer p {
  margin: 0;
  padding: 0 22px 21px;
  color: var(--ist-muted);
  font-size: 14px;
}

.ist-gov__cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 40px;
  align-items: center;
  margin-bottom: 20px;
  padding: 44px 50px;
  border: 1px solid #f0d7c5;
  border-radius: 26px;
  background:
    radial-gradient(circle at 94% 12%, rgba(238,118,51,.17), transparent 25%),
    linear-gradient(135deg, #fff7f1, #fff 48%, #f3f8fd);
}

.ist-gov__cta h2 {
  margin-bottom: 12px !important;
  font-size: clamp(26px, 3vw, 38px) !important;
}

.ist-gov__cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: var(--ist-muted);
}

@media (max-width: 1024px) {
  .ist-gov__hero {
    grid-template-columns: 1fr;
  }

  .ist-gov__hero-visual {
    min-height: 380px;
  }

  .ist-gov__risk-grid,
  .ist-gov__services {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ist-gov__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ist-gov-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ist-gov-process article:nth-child(3)::after {
    display: block;
  }

  .ist-gov-process article:nth-child(2n)::after,
  .ist-gov-process article:last-child::after {
    display: none;
  }
}

@media (max-width: 767px) {
  #ist-gov-security {
    font-size: 15px;
  }

  .ist-gov__hero,
  .ist-gov__section,
  .ist-gov__cta {
    padding: 28px 20px;
    border-radius: 18px;
  }

  .ist-gov__hero-title {
    font-size: 32px !important;
  }

  .ist-gov__lead {
    font-size: 16px;
  }

  .ist-gov__hero-visual {
    min-height: 330px;
  }

  .ist-gov__visual-card {
    min-width: 150px;
    max-width: 170px;
  }

  .ist-gov__nav {
    top: 58px;
    margin-bottom: 20px;
  }

  .ist-gov__risk-grid,
  .ist-gov__services,
  .ist-gov__regulations,
  .ist-gov__results,
  .ist-gov__result-list,
  .ist-gov__why-text,
  .ist-gov__cta,
  .ist-gov-process {
    grid-template-columns: 1fr;
  }

  .ist-gov-process article::after {
    display: none !important;
  }

  .ist-gov__stats {
    grid-template-columns: 1fr 1fr;
  }

  .ist-gov__cta {
    gap: 24px;
  }

  .ist-gov__cta .ist-gov__button {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .ist-gov__actions {
    display: grid;
  }

  .ist-gov__button {
    width: 100%;
  }

  .ist-gov__hero-visual {
    min-height: 290px;
  }

  .ist-gov__shield {
    width: 155px;
    height: 185px;
  }

  .ist-gov__visual-card {
    min-width: 132px;
    max-width: 145px;
    padding: 11px 12px;
  }

  .ist-gov__stats {
    grid-template-columns: 1fr;
  }

  .ist-gov-process {
    grid-template-columns: 1fr;
  }

  .ist-gov-process article::after {
    display: none !important;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность банков и финансовых организаций (istf-) ===== */
/* ИБ БАНКОВ И ФИНАНСОВЫХ ОРГАНИЗАЦИЙ. Вставить в кастомный CSS без тега <style> */
#ist-fin-security-v2,
#ist-fin-security-v2 * {
  box-sizing: border-box;
}

#ist-fin-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-fin-security-v2 h1,
#ist-fin-security-v2 h2,
#ist-fin-security-v2 h3,
#ist-fin-security-v2 p {
  margin-top: 0;
}

#ist-fin-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-fin-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-fin-security-v2 a {
  text-decoration: none;
}

.istf-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istf-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istf-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istf-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istf-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istf-hero__content,
.istf-hero__visual {
  position: relative;
  z-index: 2;
}

.istf-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istf-kicker--light {
  color: #ffc29b;
}

.istf-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istf-hero h2 {
  max-width: 690px;
  font-size: clamp(37px, 4.3vw, 52px) !important;
}

.istf-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istf-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istf-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.istf-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istf-btn:hover {
  transform: translateY(-2px);
}

.istf-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istf-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istf-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istf-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istf-hero__badges {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 24px;
  max-width: 710px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istf-hero__badges li {
  display: flex;
  min-width: 0;
  gap: 7px;
  align-items: center;
  color: var(--m);
  font-size: 13px;
  line-height: 1.3;
}

.istf-hero__badges li::before {
  content: none;
}

.istf-hero__badges svg {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istf-hero__visual {
  min-height: 500px;
}

.istf-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 500px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istf-orbit-ring {
  fill: none;
  stroke: rgba(21,55,91,.14);
  stroke-width: 1;
  stroke-dasharray: 4 9;
}

.istf-orbit-group {
  transform-box: view-box;
  transform-origin: 300px 300px;
  animation: istfOrbitSpin 16s linear infinite;
}

.istf-particle {
  fill: var(--o);
  filter: drop-shadow(0 0 6px rgba(238,118,51,.55));
  animation: istfPulse 2.6s ease-in-out infinite;
}

.istf-particle--alt {
  fill: var(--b);
  filter: drop-shadow(0 0 6px rgba(21,55,91,.35));
  animation-delay: 1.1s;
}

.istf-card {
  transform-box: view-box;
  transform-origin: 295px 270px;
  animation: istfCardFloat 5.5s ease-in-out infinite;
}

.istf-card__scan {
  animation: istfScan 4.5s ease-in-out infinite;
}

.istf-badge circle:first-child {
  filter: drop-shadow(0 10px 20px rgba(238,118,51,.35));
}

.istf-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istf-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istf-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istf-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istf-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istf-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istf-float--one {
  top: 20px;
  left: 12px;
}

.istf-float--two {
  top: 132px;
  right: -8px;
}

.istf-float--three {
  bottom: 16px;
  left: 30px;
}

.istf-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istf-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istf-nav a:hover,
.istf-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istf-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istf-section--soft {
  background: var(--s);
}

.istf-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istf-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istf-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.istf-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istf-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istf-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istf-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istf-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istf-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istf-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istf-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istf-reg__intro h2,
.istf-reg__intro p {
  color: #fff !important;
}

.istf-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istf-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.istf-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istf-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istf-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istf-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istf-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istf-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istf-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istf-service {
  position: relative;
  overflow: hidden;
  min-height: 300px;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istf-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istf-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istf-service:hover::before {
  transform: scaleX(1);
}

.istf-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istf-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istf-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istf-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istf-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istf-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istf-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istf-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istf-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istf-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istf-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istf-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istf-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istf-checklist li::before {
  content: none;
}

.istf-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istf-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istf-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istf-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istf-process article:nth-child(3)::after,
.istf-process article:nth-child(6)::after {
  display: none;
}

.istf-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istf-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istf-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istf-result > div:first-child > p {
  color: var(--m);
}

.istf-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istf-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istf-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istf-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istf-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istf-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istf-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istf-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istf-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istf-cta__contacts {
  margin-top: 20px;
}

.istf-cta__contacts a,
.istf-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istf-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istf-cta__contacts a:last-child,
.istf-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istf-cta__contacts a:hover {
  color: #fff;
}

.istf-cta__action {
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istfPulse {
  0%, 100% { opacity: .35; transform: scale(.85); transform-origin: center; }
  50% { opacity: 1; transform: scale(1.35); transform-origin: center; }
}

@keyframes istfOrbitSpin {
  to { transform: rotate(360deg); }
}

@keyframes istfCardFloat {
  0%, 100% { transform: translateY(0) rotate(-3deg); }
  50% { transform: translateY(-10px) rotate(-1deg); }
}

@keyframes istfScan {
  0% { transform: translateX(0); opacity: 0; }
  15% { opacity: .8; }
  50% { transform: translateX(200px); opacity: .8; }
  70% { opacity: 0; }
  100% { transform: translateX(200px); opacity: 0; }
}

@media (max-width: 1050px) {
  .istf-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istf-hero__visual {
    min-height: 480px;
  }

  .istf-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istf-service-grid,
  .istf-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istf-reg,
  .istf-result,
  .istf-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istf-stack__grid,
  .istf-checklist,
  .istf-hero__badges {
    grid-template-columns: 1fr;
  }

  .istf-process article:nth-child(3)::after {
    display: block;
  }

  .istf-process article:nth-child(2n)::after {
    display: none;
  }

  .istf-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istf-hero,
  .istf-section,
  .istf-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istf-hero {
    min-height: 0;
  }

  .istf-hero h2 {
    font-size: 33px !important;
  }

  .istf-hero__lead {
    font-size: 16px;
  }

  .istf-hero__visual {
    min-height: 380px;
  }

  .istf-illustration {
    width: 430px;
  }

  .istf-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istf-float__icon {
    width: 28px;
    height: 28px;
  }

  .istf-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istf-float__text strong {
    font-size: 11.5px;
  }

  .istf-float__text small {
    font-size: 10px;
  }

  .istf-nav {
    top: 58px;
  }

  .istf-reg__cards,
  .istf-result__list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .istf-risk-grid,
  .istf-service-grid,
  .istf-process {
    grid-template-columns: 1fr;
  }

  .istf-process article::after {
    display: none !important;
  }

  .istf-hero__actions {
    display: grid;
  }

  .istf-btn {
    width: 100%;
  }

  .istf-hero__visual {
    min-height: 320px;
  }

  .istf-illustration {
    width: 360px;
  }

  .istf-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istf-orbit-group,
  .istf-particle,
  .istf-card,
  .istf-card__scan {
    animation: none;
  }

  .istf-btn,
  .istf-risk,
  .istf-service,
  .istf-stack__item,
  .istf-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность для производственных предприятий и ОПК (istp-) ===== */
/* ИБ ДЛЯ ПРОИЗВОДСТВЕННЫХ ПРЕДПРИЯТИЙ И ОПК. Вставить в кастомный CSS без тега <style> */
#ist-prod-security-v2,
#ist-prod-security-v2 * {
  box-sizing: border-box;
}

#ist-prod-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-prod-security-v2 h1,
#ist-prod-security-v2 h2,
#ist-prod-security-v2 h3,
#ist-prod-security-v2 h4,
#ist-prod-security-v2 p {
  margin-top: 0;
}

#ist-prod-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-prod-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-prod-security-v2 a {
  text-decoration: none;
}

.istp-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istp-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istp-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istp-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istp-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istp-hero__content,
.istp-hero__visual {
  position: relative;
  z-index: 2;
}

.istp-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istp-kicker--light {
  color: #ffc29b;
}

.istp-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istp-hero h2 {
  max-width: 690px;
  font-size: clamp(37px, 4.3vw, 52px) !important;
}

.istp-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istp-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istp-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.istp-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istp-btn:hover {
  transform: translateY(-2px);
}

.istp-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istp-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istp-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istp-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istp-hero__badges {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 24px;
  max-width: 710px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istp-hero__badges li {
  display: flex;
  min-width: 0;
  gap: 7px;
  align-items: center;
  color: var(--m);
  font-size: 13px;
  line-height: 1.3;
}

.istp-hero__badges li::before {
  content: none;
}

.istp-hero__badges svg {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-hero__visual {
  min-height: 500px;
}

.istp-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 500px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istp-zone {
  opacity: .5;
}

.istp-zone--it {
  fill: rgba(21,55,91,.06);
}

.istp-zone--ot {
  fill: rgba(238,118,51,.08);
}

.istp-links path {
  fill: none;
  stroke: rgba(21,55,91,.2);
  stroke-width: 1.5;
  stroke-dasharray: 5 6;
}

.istp-node circle:first-child {
  fill: rgba(255,255,255,.96);
  stroke: rgba(21,55,91,.16);
  stroke-width: 1;
  filter: drop-shadow(0 12px 18px rgba(21,55,91,.12));
}

.istp-node path,
.istp-node rect {
  fill: none;
  stroke: var(--b);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-gear {
  transform-box: view-box;
  transform-origin: 0 0;
  animation: istpGearSpin 6s linear infinite;
}

.istp-gear circle {
  fill: none;
  stroke: var(--b);
  stroke-width: 2.4;
}

.istp-gateway circle:first-child {
  transform-box: view-box;
  transform-origin: 310px 310px;
  filter: drop-shadow(0 16px 30px rgba(21,55,91,.3));
  animation: istpGatePulse 2.8s ease-in-out infinite;
}

.istp-signal {
  fill: var(--o);
  filter: drop-shadow(0 0 6px rgba(238,118,51,.6));
}

.istp-signal--a {
  offset-path: path('M140 210 L310 310 L480 410');
  animation: istpSignalMove 3.2s ease-in-out infinite;
}

.istp-signal--b {
  offset-path: path('M140 410 L310 310 L480 210');
  animation: istpSignalMove 3.2s ease-in-out infinite 1.6s;
}

.istp-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istp-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istp-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istp-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istp-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istp-float--one {
  top: 20px;
  left: 12px;
}

.istp-float--two {
  top: 208px;
  right: 8px;
}

.istp-float--three {
  bottom: 16px;
  right: 20px;
}

.istp-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istp-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istp-nav a:hover,
.istp-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istp-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istp-section--soft {
  background: var(--s);
}

.istp-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istp-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istp-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.istp-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istp-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istp-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istp-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istp-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istp-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istp-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istp-reg__intro h2,
.istp-reg__intro p {
  color: #fff !important;
}

.istp-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istp-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.istp-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istp-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istp-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istp-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istp-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istp-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istp-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istp-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istp-service {
  position: relative;
  overflow: hidden;
  min-height: 300px;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istp-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istp-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istp-service:hover::before {
  transform: scaleX(1);
}

.istp-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istp-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istp-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istp-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istp-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istp-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istp-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istp-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istp-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istp-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istp-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istp-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istp-checklist li::before {
  content: none;
}

.istp-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-when__action {
  margin-top: 24px;
  text-align: center;
}

.istp-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istp-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istp-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istp-process article:nth-child(3)::after,
.istp-process article:nth-child(6)::after {
  display: none;
}

.istp-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istp-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istp-case-list {
  display: grid;
  gap: 20px;
}

.istp-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istp-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istp-case__block {
  margin-bottom: 22px;
}

.istp-case__block:last-of-type {
  margin-bottom: 0;
}

.istp-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istp-case__block > p {
  max-width: 820px;
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istp-case__group {
  margin-top: 16px;
}

.istp-case__group:first-child {
  margin-top: 6px;
}

.istp-case__group h4 {
  margin: 0 0 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 750;
}

.istp-case__group ul {
  display: grid;
  gap: 6px;
  margin: 0;
  max-width: 760px;
  padding: 0;
  list-style: none;
}

.istp-case__group li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istp-case__group li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istp-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istp-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istp-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istp-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istp-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istp-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istp-cta__contacts {
  margin-top: 20px;
}

.istp-cta__contacts a,
.istp-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istp-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istp-cta__contacts a:last-child,
.istp-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istp-cta__contacts a:hover {
  color: #fff;
}

.istp-cta__action {
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istpGearSpin {
  to { transform: rotate(360deg); }
}

@keyframes istpGatePulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.045); }
}

@keyframes istpSignalMove {
  0% { offset-distance: 0%; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { offset-distance: 100%; opacity: 0; }
}

@media (max-width: 1050px) {
  .istp-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istp-hero__visual {
    min-height: 480px;
  }

  .istp-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istp-service-grid,
  .istp-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istp-reg,
  .istp-result,
  .istp-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istp-stack__grid,
  .istp-checklist,
  .istp-hero__badges {
    grid-template-columns: 1fr;
  }

  .istp-process article:nth-child(3)::after {
    display: block;
  }

  .istp-process article:nth-child(2n)::after {
    display: none;
  }

  .istp-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istp-hero,
  .istp-section,
  .istp-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istp-case {
    padding: 24px 20px;
  }

  .istp-hero {
    min-height: 0;
  }

  .istp-hero h2 {
    font-size: 33px !important;
  }

  .istp-hero__lead {
    font-size: 16px;
  }

  .istp-hero__visual {
    min-height: 380px;
  }

  .istp-illustration {
    width: 430px;
  }

  .istp-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istp-float__icon {
    width: 28px;
    height: 28px;
  }

  .istp-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istp-float__text strong {
    font-size: 11.5px;
  }

  .istp-float__text small {
    font-size: 10px;
  }

  .istp-nav {
    top: 58px;
  }

  .istp-reg__cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .istp-risk-grid,
  .istp-service-grid,
  .istp-process {
    grid-template-columns: 1fr;
  }

  .istp-process article::after {
    display: none !important;
  }

  .istp-hero__actions {
    display: grid;
  }

  .istp-btn {
    width: 100%;
  }

  .istp-hero__visual {
    min-height: 320px;
  }

  .istp-illustration {
    width: 360px;
  }

  .istp-float {
    display: none;
  }

  .istp-when__action .istp-btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istp-gear,
  .istp-gateway circle:first-child,
  .istp-signal--a,
  .istp-signal--b {
    animation: none;
  }

  .istp-btn,
  .istp-risk,
  .istp-service,
  .istp-stack__item,
  .istp-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность для промышленных предприятий (isti-) ===== */
/* ИБ ДЛЯ ПРОМЫШЛЕННЫХ ПРЕДПРИЯТИЙ. Вставить в кастомный CSS без тега <style> */
#ist-industry-security-v2,
#ist-industry-security-v2 * {
  box-sizing: border-box;
}

#ist-industry-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-industry-security-v2 h1,
#ist-industry-security-v2 h2,
#ist-industry-security-v2 h3,
#ist-industry-security-v2 p {
  margin-top: 0;
}

#ist-industry-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-industry-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-industry-security-v2 a {
  text-decoration: none;
}

.isti-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 600px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.isti-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.isti-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.isti-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.isti-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.isti-hero__content,
.isti-hero__visual {
  position: relative;
  z-index: 2;
}

.isti-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.isti-kicker--light {
  color: #ffc29b;
}

.isti-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.isti-hero h2 {
  max-width: 690px;
  font-size: clamp(37px, 4.3vw, 52px) !important;
}

.isti-hero__lead {
  max-width: 660px;
  margin-bottom: 30px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.isti-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.isti-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.isti-btn:hover {
  transform: translateY(-2px);
}

.isti-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.isti-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.isti-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.isti-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.isti-hero__visual {
  min-height: 500px;
}

.isti-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.isti-radar-ring {
  fill: none;
  stroke: rgba(21,55,91,.14);
  stroke-width: 1;
  stroke-dasharray: 4 9;
}

.isti-radar-sweep {
  transform-box: view-box;
  transform-origin: 310px 330px;
  animation: istiRadarSpin 5s linear infinite;
}

.isti-node circle {
  fill: var(--o);
  filter: drop-shadow(0 0 6px rgba(238,118,51,.55));
  animation: istiNodePulse 3.6s ease-in-out infinite;
}

.isti-shield {
  transform-box: view-box;
  transform-origin: 310px 254px;
  animation: istiShieldPulse 3.2s ease-in-out infinite;
}

.isti-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.isti-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.isti-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isti-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.isti-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.isti-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.isti-float--one {
  top: 12px;
  left: 0;
}

.isti-float--two {
  top: 150px;
  right: -6px;
}

.isti-float--three {
  bottom: 12px;
  left: 10px;
}

.isti-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.isti-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.isti-nav a:hover,
.isti-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.isti-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.isti-section--soft {
  background: var(--s);
}

.isti-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.isti-section__head {
  max-width: 840px;
  margin-bottom: 30px;
}

.isti-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.isti-section__text {
  max-width: 760px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 16px;
}

.isti-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.isti-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 10px 18px;
  border: 1px solid var(--l);
  border-radius: 999px;
  background: #fff;
  color: var(--t);
  font-size: 13.5px;
  font-weight: 650;
  line-height: 1.35;
}

.isti-chips--tags {
  margin-top: 22px;
}

.isti-chips--tags .isti-chip {
  background: var(--s);
}

.isti-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isti-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isti-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.isti-process article:last-child::after {
  display: none;
}

.isti-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isti-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.isti-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isti-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 18px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: var(--s);
}

.isti-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isti-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
}

.isti-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.isti-reg__intro h2,
.isti-reg__intro p {
  color: #fff !important;
}

.isti-reg__intro p {
  max-width: 480px;
  margin-bottom: 14px;
  color: rgba(255,255,255,.76) !important;
  font-size: 15px;
}

.isti-reg__intro p:last-child {
  margin-bottom: 0;
}

.isti-reg__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.isti-reg__cards div {
  padding: 22px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.isti-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.isti-reg__cards strong {
  display: block;
  margin-bottom: 6px;
  color: #ff9c60;
  font-size: 17px;
}

.isti-reg__cards span {
  color: rgba(255,255,255,.82);
  font-size: 13.5px;
  line-height: 1.4;
}

.isti-service-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.isti-service {
  position: relative;
  overflow: hidden;
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.isti-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.isti-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.isti-service:hover::before {
  transform: scaleX(1);
}

.isti-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.isti-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.isti-service__top svg {
  width: 32px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isti-service p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.5;
}

.isti-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.isti-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.isti-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.isti-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.isti-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.isti-cta__contacts {
  margin-top: 20px;
}

.isti-cta__contacts a,
.isti-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.isti-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isti-cta__contacts a:last-child,
.isti-cta__contacts span:last-child {
  margin-bottom: 0;
}

.isti-cta__contacts a:hover {
  color: #fff;
}

.isti-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

.isti-cta__action .isti-btn--ghost {
  border-color: rgba(255,255,255,.3);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.isti-cta__action .isti-btn--ghost:hover {
  border-color: #fff;
  background: rgba(255,255,255,.16);
}

@keyframes istiRadarSpin {
  to { transform: rotate(360deg); }
}

@keyframes istiNodePulse {
  0%, 100% { opacity: .3; transform: scale(.8); transform-origin: center; }
  50% { opacity: 1; transform: scale(1.3); transform-origin: center; }
}

@keyframes istiShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .isti-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .isti-hero__visual {
    min-height: 440px;
  }

  .isti-service-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .isti-reg {
    grid-template-columns: minmax(0, 1fr);
  }

  .isti-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .isti-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .isti-result__list {
    grid-template-columns: minmax(0, 1fr);
  }

  .isti-process article:nth-child(3)::after {
    display: block;
  }

  .isti-process article:nth-child(2n)::after,
  .isti-process article:last-child::after {
    display: none;
  }

  .isti-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .isti-hero,
  .isti-section,
  .isti-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .isti-hero {
    min-height: 0;
  }

  .isti-hero h2 {
    font-size: 33px !important;
  }

  .isti-hero__lead {
    font-size: 16px;
  }

  .isti-hero__visual {
    min-height: 340px;
  }

  .isti-illustration {
    width: 400px;
  }

  .isti-nav {
    top: 58px;
  }

  .isti-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .isti-float__icon {
    width: 28px;
    height: 28px;
  }

  .isti-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .isti-float__text strong {
    font-size: 11.5px;
  }

  .isti-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .isti-service-grid,
  .isti-process {
    grid-template-columns: minmax(0, 1fr);
  }

  .isti-process article::after {
    display: none !important;
  }

  .isti-hero__actions {
    display: grid;
  }

  .isti-btn {
    width: 100%;
  }

  .isti-hero__visual {
    min-height: 300px;
  }

  .isti-illustration {
    width: 320px;
  }

  .isti-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .isti-radar-sweep,
  .isti-node circle,
  .isti-shield {
    animation: none;
  }

  .isti-btn,
  .isti-service,
  .isti-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность предприятий топливно-энергетического комплекса (istt-) ===== */
/* ИБ ПРЕДПРИЯТИЙ ТОПЛИВНО-ЭНЕРГЕТИЧЕСКОГО КОМПЛЕКСА. Вставить в кастомный CSS без тега <style> */
#ist-tek-security-v2,
#ist-tek-security-v2 * {
  box-sizing: border-box;
}

#ist-tek-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-tek-security-v2 h1,
#ist-tek-security-v2 h2,
#ist-tek-security-v2 h3,
#ist-tek-security-v2 h4,
#ist-tek-security-v2 p {
  margin-top: 0;
}

#ist-tek-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-tek-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-tek-security-v2 a {
  text-decoration: none;
}

.istt-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 680px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istt-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istt-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istt-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istt-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istt-hero__content,
.istt-hero__visual {
  position: relative;
  z-index: 2;
}

.istt-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istt-kicker--light {
  color: #ffc29b;
}

.istt-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istt-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istt-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istt-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istt-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.istt-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istt-btn:hover {
  transform: translateY(-2px);
}

.istt-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istt-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istt-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istt-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istt-hero__badges {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 24px;
  max-width: 710px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istt-hero__badges li {
  display: flex;
  min-width: 0;
  gap: 7px;
  align-items: center;
  color: var(--m);
  font-size: 13px;
  line-height: 1.3;
}

.istt-hero__badges li::before {
  content: none;
}

.istt-hero__badges svg {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istt-hero__visual {
  min-height: 520px;
}

.istt-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 520px;
  max-width: 112%;
  transform: translate(-50%, -50%);
}

.istt-ring circle {
  fill: none;
  stroke: var(--o);
  stroke-width: 2;
  transform-box: view-box;
  transform-origin: 310px 410px;
  animation: isttRingExpand 2.4s ease-out infinite;
}

.istt-line--a,
.istt-line--b {
  opacity: .8;
}

.istt-spark circle {
  fill: #fff;
  stroke: var(--o);
  stroke-width: 2;
  filter: drop-shadow(0 0 6px rgba(238,118,51,.65));
  offset-rotate: 0deg;
  animation: isttSparkTravelA 3.2s linear infinite;
}

.istt-spark:nth-child(2) circle {
  animation-name: isttSparkTravelB;
}

.istt-bolt {
  transform-box: view-box;
  transform-origin: 325px 310px;
  animation: isttBoltFlicker 2.6s ease-in-out infinite;
}

.istt-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istt-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istt-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istt-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istt-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istt-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istt-float--one {
  top: 16px;
  left: 8px;
}

.istt-float--two {
  top: 16px;
  right: 0;
}

.istt-float--three {
  bottom: 90px;
  left: 0;
}

.istt-float--four {
  right: 4px;
  bottom: 90px;
}

.istt-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istt-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istt-nav a:hover,
.istt-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istt-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istt-section--soft {
  background: var(--s);
}

.istt-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istt-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istt-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.istt-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istt-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istt-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istt-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istt-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istt-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istt-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istt-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istt-reg__intro h2,
.istt-reg__intro p {
  color: #fff !important;
}

.istt-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istt-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.istt-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istt-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istt-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istt-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istt-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istt-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istt-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istt-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istt-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istt-process article:nth-child(3)::after,
.istt-process article:nth-child(6)::after {
  display: none;
}

.istt-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istt-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istt-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istt-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istt-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istt-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istt-service:hover::before {
  transform: scaleX(1);
}

.istt-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istt-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istt-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istt-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istt-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istt-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istt-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istt-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istt-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istt-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istt-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istt-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istt-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istt-checklist li::before {
  content: none;
}

.istt-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istt-when__action {
  margin-top: 24px;
}

.istt-case-list {
  display: grid;
  gap: 20px;
}

.istt-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istt-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istt-case__block {
  margin-bottom: 22px;
}

.istt-case__block:last-of-type {
  margin-bottom: 0;
}

.istt-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istt-case__block > p {
  max-width: 820px;
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istt-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istt-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istt-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istt-case__group {
  margin-top: 16px;
}

.istt-case__group:first-child {
  margin-top: 6px;
}

.istt-case__group h4 {
  margin: 0 0 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 750;
}

.istt-case__group ul {
  display: grid;
  gap: 6px;
  margin: 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istt-case__group li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istt-case__group li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istt-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istt-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istt-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istt-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istt-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istt-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istt-cta__contacts {
  margin-top: 20px;
}

.istt-cta__contacts a,
.istt-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istt-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istt-cta__contacts a:last-child,
.istt-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istt-cta__contacts a:hover {
  color: #fff;
}

.istt-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes isttRingExpand {
  0% { transform: scale(.5); opacity: .8; }
  100% { transform: scale(2.6); opacity: 0; }
}

@keyframes isttSparkTravelA {
  0% { offset-distance: 0%; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { offset-distance: 100%; opacity: 0; }
}

@keyframes isttSparkTravelB {
  0% { offset-distance: 0%; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { offset-distance: 100%; opacity: 0; }
}

.istt-spark:nth-child(1) circle { offset-path: path('M250 268 Q150 340 60 380'); }
.istt-spark:nth-child(2) circle { offset-path: path('M370 268 Q470 340 560 380'); }

@keyframes isttBoltFlicker {
  0%, 100% { opacity: .25; }
  8% { opacity: 1; }
  16% { opacity: .3; }
  24% { opacity: .9; }
  50% { opacity: .25; }
  62% { opacity: 1; }
  70% { opacity: .3; }
}

@media (max-width: 1050px) {
  .istt-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istt-hero__visual {
    min-height: 480px;
  }

  .istt-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istt-service-grid,
  .istt-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istt-reg,
  .istt-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istt-stack__grid,
  .istt-checklist,
  .istt-hero__badges {
    grid-template-columns: 1fr;
  }

  .istt-process article:nth-child(3)::after {
    display: block;
  }

  .istt-process article:nth-child(2n)::after {
    display: none;
  }

  .istt-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istt-hero,
  .istt-section,
  .istt-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istt-hero {
    min-height: 0;
  }

  .istt-hero h2 {
    font-size: 30px !important;
  }

  .istt-hero__lead {
    font-size: 16px;
  }

  .istt-hero__visual {
    min-height: 380px;
  }

  .istt-illustration {
    width: 430px;
  }

  .istt-nav {
    top: 58px;
  }

  .istt-reg__cards {
    grid-template-columns: 1fr;
  }

  .istt-case {
    padding: 24px;
  }

  .istt-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istt-float__icon {
    width: 28px;
    height: 28px;
  }

  .istt-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istt-float__text strong {
    font-size: 11.5px;
  }

  .istt-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istt-risk-grid,
  .istt-service-grid,
  .istt-process {
    grid-template-columns: 1fr;
  }

  .istt-process article::after {
    display: none !important;
  }

  .istt-hero__actions {
    display: grid;
  }

  .istt-btn {
    width: 100%;
  }

  .istt-hero__visual {
    min-height: 320px;
  }

  .istt-illustration {
    width: 360px;
  }

  .istt-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istt-ring circle,
  .istt-spark circle,
  .istt-bolt {
    animation: none;
  }

  .istt-btn,
  .istt-risk,
  .istt-service,
  .istt-stack__item,
  .istt-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность организаций нефтегазового сектора (istn-) ===== */
/* ИБ ОРГАНИЗАЦИЙ НЕФТЕГАЗОВОГО СЕКТОРА. Вставить в кастомный CSS без тега <style> */
#ist-neftegaz-security-v2,
#ist-neftegaz-security-v2 * {
  box-sizing: border-box;
}

#ist-neftegaz-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-neftegaz-security-v2 h1,
#ist-neftegaz-security-v2 h2,
#ist-neftegaz-security-v2 h3,
#ist-neftegaz-security-v2 h4,
#ist-neftegaz-security-v2 p {
  margin-top: 0;
}

#ist-neftegaz-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-neftegaz-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-neftegaz-security-v2 a {
  text-decoration: none;
}

.istn-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 720px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istn-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istn-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istn-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istn-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istn-hero__content,
.istn-hero__visual {
  position: relative;
  z-index: 2;
}

.istn-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istn-kicker--light {
  color: #ffc29b;
}

.istn-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istn-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istn-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istn-hero__note {
  max-width: 700px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istn-hero__note:last-of-type {
  margin-bottom: 26px;
}

.istn-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.istn-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istn-btn:hover {
  transform: translateY(-2px);
}

.istn-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istn-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istn-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istn-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istn-hero__visual {
  min-height: 560px;
}

.istn-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 520px;
  max-width: 112%;
  transform: translate(-50%, -50%);
}

.istn-monitor circle {
  fill: var(--o);
  filter: drop-shadow(0 0 6px rgba(238,118,51,.55));
  animation: istnMonitorPulse 2.8s ease-in-out infinite;
}

.istn-flame {
  transform-box: view-box;
  transform-origin: 458px 195px;
  animation: istnFlameFlicker 2.4s ease-in-out infinite;
}

.istn-flow line {
  animation: istnFlow 1.4s linear infinite;
}

.istn-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istn-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istn-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istn-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istn-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istn-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istn-float--one {
  top: 16px;
  left: 8px;
}

.istn-float--two {
  top: 16px;
  right: 0;
}

.istn-float--three {
  top: 300px;
  left: 0;
}

.istn-float--four {
  top: 300px;
  right: 4px;
}

.istn-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istn-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istn-nav a:hover,
.istn-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istn-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istn-section--soft {
  background: var(--s);
}

.istn-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istn-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istn-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.istn-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istn-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istn-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istn-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istn-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istn-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istn-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istn-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istn-reg__intro h2,
.istn-reg__intro p {
  color: #fff !important;
}

.istn-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istn-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.istn-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istn-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istn-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istn-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istn-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istn-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istn-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istn-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istn-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istn-process article:nth-child(3)::after,
.istn-process article:nth-child(6)::after {
  display: none;
}

.istn-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istn-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istn-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istn-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istn-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istn-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istn-service:hover::before {
  transform: scaleX(1);
}

.istn-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istn-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istn-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istn-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istn-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istn-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istn-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istn-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istn-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istn-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istn-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istn-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istn-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istn-checklist li::before {
  content: none;
}

.istn-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istn-when__action {
  margin-top: 24px;
}

.istn-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istn-result > div:first-child > p {
  color: var(--m);
}

.istn-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istn-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istn-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istn-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istn-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istn-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istn-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istn-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istn-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istn-cta__contacts {
  margin-top: 20px;
}

.istn-cta__contacts a,
.istn-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istn-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istn-cta__contacts a:last-child,
.istn-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istn-cta__contacts a:hover {
  color: #fff;
}

.istn-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istnMonitorPulse {
  0%, 100% { opacity: .35; transform: scale(.85); transform-origin: center; }
  50% { opacity: 1; transform: scale(1.35); transform-origin: center; }
}

@keyframes istnFlameFlicker {
  0%, 100% { opacity: .7; transform: scale(1); }
  20% { opacity: 1; transform: scale(1.06); }
  35% { opacity: .6; transform: scale(.94); }
  55% { opacity: 1; transform: scale(1.08); }
  75% { opacity: .75; transform: scale(.98); }
}

@keyframes istnFlow {
  to { stroke-dashoffset: -36; }
}

@media (max-width: 1050px) {
  .istn-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istn-hero__visual {
    min-height: 500px;
  }

  .istn-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istn-service-grid,
  .istn-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istn-reg,
  .istn-result,
  .istn-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istn-stack__grid,
  .istn-checklist {
    grid-template-columns: 1fr;
  }

  .istn-process article:nth-child(3)::after {
    display: block;
  }

  .istn-process article:nth-child(2n)::after {
    display: none;
  }

  .istn-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istn-hero,
  .istn-section,
  .istn-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istn-hero {
    min-height: 0;
  }

  .istn-hero h2 {
    font-size: 30px !important;
  }

  .istn-hero__lead {
    font-size: 16px;
  }

  .istn-hero__visual {
    min-height: 400px;
  }

  .istn-illustration {
    width: 430px;
  }

  .istn-nav {
    top: 58px;
  }

  .istn-reg__cards,
  .istn-result__list {
    grid-template-columns: 1fr;
  }

  .istn-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istn-float__icon {
    width: 28px;
    height: 28px;
  }

  .istn-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istn-float__text strong {
    font-size: 11.5px;
  }

  .istn-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istn-risk-grid,
  .istn-service-grid,
  .istn-process {
    grid-template-columns: 1fr;
  }

  .istn-process article::after {
    display: none !important;
  }

  .istn-hero__actions {
    display: grid;
  }

  .istn-btn {
    width: 100%;
  }

  .istn-hero__visual {
    min-height: 340px;
  }

  .istn-illustration {
    width: 360px;
  }

  .istn-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istn-monitor circle,
  .istn-flame,
  .istn-flow line {
    animation: none;
  }

  .istn-btn,
  .istn-risk,
  .istn-service,
  .istn-stack__item,
  .istn-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность сферы логистики и транспорта (istr-) ===== */
/* ИБ СФЕРЫ ЛОГИСТИКИ И ТРАНСПОРТА. Вставить в кастомный CSS без тега <style> */
#ist-transport-security-v2,
#ist-transport-security-v2 * {
  box-sizing: border-box;
}

#ist-transport-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-transport-security-v2 h1,
#ist-transport-security-v2 h2,
#ist-transport-security-v2 h3,
#ist-transport-security-v2 p {
  margin-top: 0;
}

#ist-transport-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-transport-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-transport-security-v2 a {
  text-decoration: none;
}

.istr-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istr-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istr-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istr-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istr-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istr-hero__content,
.istr-hero__visual {
  position: relative;
  z-index: 2;
}

.istr-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istr-kicker--light {
  color: #ffc29b;
}

.istr-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istr-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istr-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istr-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istr-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istr-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istr-btn:hover {
  transform: translateY(-2px);
}

.istr-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istr-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istr-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istr-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istr-hero__visual {
  min-height: 520px;
}

.istr-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 500px;
  max-width: 108%;
  transform: translate(-50%, -50%);
}

.istr-route {
  opacity: .7;
}

.istr-route-flow {
  animation: istrRouteFlow 1.6s linear infinite;
}

.istr-pin--end .istr-pin__pulse {
  animation: istrPinPulse 2.4s ease-in-out infinite;
  transform-box: fill-box;
  transform-origin: center;
}

.istr-van {
  offset-path: path('M90 480C200 480 220 320 310 300C400 280 420 180 530 150');
  offset-rotate: 0deg;
  animation: istrVanTravel 6s linear infinite;
}

.istr-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istr-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istr-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istr-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istr-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istr-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istr-float--one {
  top: 12px;
  left: 0;
}

.istr-float--two {
  top: 210px;
  right: 4px;
}

.istr-float--three {
  bottom: 60px;
  left: 0;
}

.istr-float--four {
  bottom: 0;
  right: 20px;
}

.istr-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istr-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istr-nav a:hover,
.istr-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istr-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istr-section--soft {
  background: var(--s);
}

.istr-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istr-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istr-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.istr-section__note {
  margin: 26px 0 0;
  color: var(--m);
  font-size: 13px;
  font-style: italic;
}

.istr-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istr-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istr-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istr-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istr-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istr-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istr-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istr-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istr-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istr-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istr-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istr-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istr-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istr-reg__intro h2,
.istr-reg__intro p {
  color: #fff !important;
}

.istr-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istr-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.istr-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istr-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istr-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istr-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istr-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istr-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istr-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istr-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istr-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istr-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istr-process article:nth-child(3)::after,
.istr-process article:nth-child(6)::after {
  display: none;
}

.istr-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istr-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istr-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istr-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istr-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istr-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istr-service:hover::before {
  transform: scaleX(1);
}

.istr-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istr-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istr-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istr-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istr-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istr-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istr-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istr-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istr-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istr-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istr-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istr-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istr-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istr-checklist li::before {
  content: none;
}

.istr-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istr-when__action {
  margin-top: 24px;
}

.istr-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istr-result > div:first-child > p {
  color: var(--m);
}

.istr-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istr-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istr-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istr-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istr-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istr-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istr-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istr-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istr-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istr-cta__contacts {
  margin-top: 20px;
}

.istr-cta__contacts a,
.istr-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istr-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istr-cta__contacts a:last-child,
.istr-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istr-cta__contacts a:hover {
  color: #fff;
}

.istr-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istrRouteFlow {
  to { stroke-dashoffset: -32; }
}

@keyframes istrPinPulse {
  0%, 100% { transform: scale(.85); opacity: .7; }
  50% { transform: scale(1.25); opacity: 1; }
}

@keyframes istrVanTravel {
  0% { offset-distance: 0%; }
  100% { offset-distance: 100%; }
}

@media (max-width: 1050px) {
  .istr-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istr-hero__visual {
    min-height: 460px;
  }

  .istr-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istr-service-grid,
  .istr-process,
  .istr-segment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istr-reg,
  .istr-result,
  .istr-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istr-stack__grid,
  .istr-checklist {
    grid-template-columns: 1fr;
  }

  .istr-process article:nth-child(3)::after {
    display: block;
  }

  .istr-process article:nth-child(2n)::after {
    display: none;
  }

  .istr-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istr-hero,
  .istr-section,
  .istr-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istr-hero {
    min-height: 0;
  }

  .istr-hero h2 {
    font-size: 30px !important;
  }

  .istr-hero__lead {
    font-size: 16px;
  }

  .istr-hero__visual {
    min-height: 380px;
  }

  .istr-illustration {
    width: 420px;
  }

  .istr-nav {
    top: 58px;
  }

  .istr-reg__cards,
  .istr-result__list,
  .istr-segment-grid {
    grid-template-columns: 1fr;
  }

  .istr-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istr-float__icon {
    width: 28px;
    height: 28px;
  }

  .istr-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istr-float__text strong {
    font-size: 11.5px;
  }

  .istr-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istr-risk-grid,
  .istr-service-grid,
  .istr-process {
    grid-template-columns: 1fr;
  }

  .istr-process article::after {
    display: none !important;
  }

  .istr-hero__actions {
    display: grid;
  }

  .istr-btn {
    width: 100%;
  }

  .istr-hero__visual {
    min-height: 320px;
  }

  .istr-illustration {
    width: 340px;
  }

  .istr-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istr-route-flow,
  .istr-pin--end .istr-pin__pulse,
  .istr-van {
    animation: none;
  }

  .istr-btn,
  .istr-risk,
  .istr-service,
  .istr-stack__item,
  .istr-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность образовательных организаций (isto-) ===== */
/* ИБ ОБРАЗОВАТЕЛЬНЫХ ОРГАНИЗАЦИЙ. Вставить в кастомный CSS без тега <style> */
#ist-edu-security-v2,
#ist-edu-security-v2 * {
  box-sizing: border-box;
}

#ist-edu-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-edu-security-v2 h1,
#ist-edu-security-v2 h2,
#ist-edu-security-v2 h3,
#ist-edu-security-v2 h4,
#ist-edu-security-v2 p {
  margin-top: 0;
}

#ist-edu-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-edu-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-edu-security-v2 a {
  text-decoration: none;
}

.isto-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.isto-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.isto-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.isto-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.isto-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.isto-hero__content,
.isto-hero__visual {
  position: relative;
  z-index: 2;
}

.isto-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.isto-kicker--light {
  color: #ffc29b;
}

.isto-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.isto-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.isto-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.isto-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.isto-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.isto-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.isto-btn:hover {
  transform: translateY(-2px);
}

.isto-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.isto-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.isto-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.isto-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.isto-hero__visual {
  min-height: 520px;
}

.isto-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.isto-dot circle {
  fill: var(--o);
  filter: drop-shadow(0 0 6px rgba(238,118,51,.55));
  animation: istoDotPulse 3.2s ease-in-out infinite;
}

.isto-shield {
  transform-box: view-box;
  transform-origin: 310px 306px;
  animation: istoShieldPulse 3.4s ease-in-out infinite;
}

.isto-cap {
  transform-box: view-box;
  transform-origin: 310px 230px;
  animation: istoCapSway 3.6s ease-in-out infinite;
}

.isto-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.isto-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.isto-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isto-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.isto-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.isto-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.isto-float--one {
  top: 20px;
  left: 0;
}

.isto-float--two {
  top: 20px;
  right: 0;
}

.isto-float--three {
  bottom: 40px;
  left: 8px;
}

.isto-float--four {
  bottom: 0;
  right: 4px;
}

.isto-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.isto-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.isto-nav a:hover,
.isto-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.isto-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.isto-section--soft {
  background: var(--s);
}

.isto-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.isto-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.isto-section__head p {
  max-width: 760px;
  color: var(--m);
  font-size: 17px;
}

.isto-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isto-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isto-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.isto-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.isto-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.isto-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isto-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isto-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isto-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.isto-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.isto-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isto-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isto-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.isto-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.isto-reg__intro h2,
.isto-reg__intro p {
  color: #fff !important;
}

.isto-reg__intro p {
  margin-bottom: 14px;
  color: rgba(255,255,255,.76) !important;
}

.isto-reg__intro p:last-of-type {
  margin-bottom: 0;
}

.isto-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.isto-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isto-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isto-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.isto-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.isto-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.isto-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.isto-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.isto-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isto-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isto-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.isto-process article:nth-child(3)::after,
.isto-process article:nth-child(6)::after {
  display: none;
}

.isto-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isto-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.isto-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isto-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.isto-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.isto-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.isto-service:hover::before {
  transform: scaleX(1);
}

.isto-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.isto-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.isto-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isto-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.isto-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.isto-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isto-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.isto-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.isto-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isto-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.isto-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.isto-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isto-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.isto-checklist li::before {
  content: none;
}

.isto-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isto-when__action {
  margin-top: 24px;
}

.isto-case-list {
  display: grid;
  gap: 20px;
}

.isto-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.isto-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.isto-case__block {
  margin-bottom: 22px;
}

.isto-case__block:last-of-type {
  margin-bottom: 0;
}

.isto-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.isto-case__block > p {
  max-width: 820px;
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.isto-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.isto-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.isto-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isto-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.isto-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.isto-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.isto-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.isto-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.isto-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.isto-cta__contacts {
  margin-top: 20px;
}

.isto-cta__contacts a,
.isto-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.isto-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isto-cta__contacts a:last-child,
.isto-cta__contacts span:last-child {
  margin-bottom: 0;
}

.isto-cta__contacts a:hover {
  color: #fff;
}

.isto-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istoDotPulse {
  0%, 100% { opacity: .3; transform: scale(.8); transform-origin: center; }
  50% { opacity: 1; transform: scale(1.3); transform-origin: center; }
}

@keyframes istoShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

@keyframes istoCapSway {
  0%, 100% { transform: rotate(-4deg); }
  50% { transform: rotate(4deg); }
}

@media (max-width: 1050px) {
  .isto-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .isto-hero__visual {
    min-height: 460px;
  }

  .isto-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .isto-service-grid,
  .isto-process,
  .isto-segment-grid,
  .isto-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .isto-reg,
  .isto-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .isto-stack__grid,
  .isto-checklist {
    grid-template-columns: 1fr;
  }

  .isto-process article:nth-child(3)::after {
    display: block;
  }

  .isto-process article:nth-child(2n)::after {
    display: none;
  }

  .isto-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .isto-hero,
  .isto-section,
  .isto-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .isto-hero {
    min-height: 0;
  }

  .isto-hero h2 {
    font-size: 30px !important;
  }

  .isto-hero__lead {
    font-size: 16px;
  }

  .isto-hero__visual {
    min-height: 380px;
  }

  .isto-illustration {
    width: 400px;
  }

  .isto-nav {
    top: 58px;
  }

  .isto-reg__cards,
  .isto-segment-grid,
  .isto-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .isto-case {
    padding: 24px;
  }

  .isto-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .isto-float__icon {
    width: 28px;
    height: 28px;
  }

  .isto-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .isto-float__text strong {
    font-size: 11.5px;
  }

  .isto-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .isto-risk-grid,
  .isto-service-grid,
  .isto-process {
    grid-template-columns: 1fr;
  }

  .isto-process article::after {
    display: none !important;
  }

  .isto-hero__actions {
    display: grid;
  }

  .isto-btn {
    width: 100%;
  }

  .isto-hero__visual {
    min-height: 320px;
  }

  .isto-illustration {
    width: 330px;
  }

  .isto-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .isto-dot circle,
  .isto-shield,
  .isto-cap {
    animation: none;
  }

  .isto-btn,
  .isto-risk,
  .isto-service,
  .isto-stack__item,
  .isto-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность ИТ-компаний и разработчиков ПО (istc-) ===== */
/* ИБ ИТ-КОМПАНИЙ И РАЗРАБОТЧИКОВ ПО. Вставить в кастомный CSS без тега <style> */
#ist-itco-security-v2,
#ist-itco-security-v2 * {
  box-sizing: border-box;
}

#ist-itco-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-itco-security-v2 h1,
#ist-itco-security-v2 h2,
#ist-itco-security-v2 h3,
#ist-itco-security-v2 p {
  margin-top: 0;
}

#ist-itco-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-itco-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-itco-security-v2 a {
  text-decoration: none;
}

.istc-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istc-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istc-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istc-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istc-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istc-hero__content,
.istc-hero__visual {
  position: relative;
  z-index: 2;
}

.istc-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istc-kicker--light {
  color: #ffc29b;
}

.istc-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istc-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istc-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istc-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istc-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istc-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istc-btn:hover {
  transform: translateY(-2px);
}

.istc-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istc-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istc-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istc-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istc-hero__visual {
  min-height: 520px;
}

.istc-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istc-cursor {
  animation: istcCursorBlink 1s steps(1) infinite;
}

.istc-shield {
  transform-box: view-box;
  transform-origin: 400px 221px;
  animation: istcShieldPulse 3.2s ease-in-out infinite;
}

.istc-node circle {
  fill: var(--o);
  filter: drop-shadow(0 0 5px rgba(238,118,51,.55));
  animation: istcNodePulse 2.4s ease-in-out infinite;
}

.istc-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istc-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istc-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istc-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istc-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istc-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istc-float--one {
  top: 4px;
  left: 0;
}

.istc-float--two {
  top: 190px;
  right: 4px;
}

.istc-float--three {
  bottom: 30px;
  left: 4px;
}

.istc-float--four {
  bottom: -6px;
  right: 30px;
}

.istc-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istc-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istc-nav a:hover,
.istc-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istc-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istc-section--soft {
  background: var(--s);
}

.istc-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istc-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istc-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istc-section__head p:last-of-type {
  margin-bottom: 0;
}

.istc-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istc-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istc-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istc-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istc-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istc-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istc-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istc-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istc-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istc-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istc-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istc-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istc-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istc-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istc-reg__intro h2,
.istc-reg__intro p {
  color: #fff !important;
}

.istc-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istc-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
}

.istc-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istc-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istc-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istc-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istc-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istc-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istc-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istc-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istc-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istc-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istc-process article:nth-child(3)::after,
.istc-process article:nth-child(6)::after {
  display: none;
}

.istc-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istc-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istc-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istc-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istc-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istc-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istc-service:hover::before {
  transform: scaleX(1);
}

.istc-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istc-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istc-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istc-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istc-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istc-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istc-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istc-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istc-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istc-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istc-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istc-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istc-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istc-checklist li::before {
  content: none;
}

.istc-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istc-when__action {
  margin-top: 24px;
}

.istc-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istc-result > div:first-child > p {
  color: var(--m);
}

.istc-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istc-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istc-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istc-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istc-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istc-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istc-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istc-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istc-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istc-cta__contacts {
  margin-top: 20px;
}

.istc-cta__contacts a,
.istc-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istc-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istc-cta__contacts a:last-child,
.istc-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istc-cta__contacts a:hover {
  color: #fff;
}

.istc-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istcCursorBlink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

@keyframes istcShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@keyframes istcNodePulse {
  0%, 100% { opacity: .35; transform: scale(.8); transform-origin: center; }
  50% { opacity: 1; transform: scale(1.3); transform-origin: center; }
}

@media (max-width: 1050px) {
  .istc-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istc-hero__visual {
    min-height: 460px;
  }

  .istc-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istc-service-grid,
  .istc-process,
  .istc-segment-grid,
  .istc-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istc-reg,
  .istc-result,
  .istc-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istc-stack__grid,
  .istc-checklist {
    grid-template-columns: 1fr;
  }

  .istc-process article:nth-child(3)::after {
    display: block;
  }

  .istc-process article:nth-child(2n)::after {
    display: none;
  }

  .istc-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istc-hero,
  .istc-section,
  .istc-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istc-hero {
    min-height: 0;
  }

  .istc-hero h2 {
    font-size: 30px !important;
  }

  .istc-hero__lead {
    font-size: 16px;
  }

  .istc-hero__visual {
    min-height: 380px;
  }

  .istc-illustration {
    width: 400px;
  }

  .istc-nav {
    top: 58px;
  }

  .istc-reg__cards,
  .istc-result__list,
  .istc-segment-grid,
  .istc-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .istc-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istc-float__icon {
    width: 28px;
    height: 28px;
  }

  .istc-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istc-float__text strong {
    font-size: 11.5px;
  }

  .istc-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istc-risk-grid,
  .istc-service-grid,
  .istc-process {
    grid-template-columns: 1fr;
  }

  .istc-process article::after {
    display: none !important;
  }

  .istc-hero__actions {
    display: grid;
  }

  .istc-btn {
    width: 100%;
  }

  .istc-hero__visual {
    min-height: 320px;
  }

  .istc-illustration {
    width: 330px;
  }

  .istc-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istc-cursor,
  .istc-shield,
  .istc-node circle {
    animation: none;
  }

  .istc-btn,
  .istc-risk,
  .istc-service,
  .istc-stack__item,
  .istc-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность строительной отрасли и девелопмента (ists-) ===== */
/* ИБ СТРОИТЕЛЬНОЙ ОТРАСЛИ И ДЕВЕЛОПМЕНТА. Вставить в кастомный CSS без тега <style> */
#ist-build-security-v2,
#ist-build-security-v2 * {
  box-sizing: border-box;
}

#ist-build-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-build-security-v2 h1,
#ist-build-security-v2 h2,
#ist-build-security-v2 h3,
#ist-build-security-v2 p {
  margin-top: 0;
}

#ist-build-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-build-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-build-security-v2 a {
  text-decoration: none;
}

.ists-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.ists-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.ists-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.ists-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.ists-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.ists-hero__content,
.ists-hero__visual {
  position: relative;
  z-index: 2;
}

.ists-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.ists-kicker--light {
  color: #ffc29b;
}

.ists-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.ists-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.ists-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.ists-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.ists-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.ists-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.ists-btn:hover {
  transform: translateY(-2px);
}

.ists-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.ists-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.ists-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.ists-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.ists-hero__visual {
  min-height: 540px;
}

.ists-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 500px;
  max-width: 110%;
  transform: translate(-50%, -50%);
}

.ists-shield {
  transform-box: view-box;
  transform-origin: 264px 246px;
  animation: istsShieldPulse 3.2s ease-in-out infinite;
}

.ists-hook {
  animation: istsHookLift 3.6s ease-in-out infinite;
}

.ists-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.ists-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.ists-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ists-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.ists-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.ists-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.ists-float--one {
  top: 6px;
  left: 0;
}

.ists-float--two {
  top: 210px;
  left: -6px;
}

.ists-float--three {
  bottom: 90px;
  right: 0;
}

.ists-float--four {
  bottom: 6px;
  left: 60px;
}

.ists-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.ists-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.ists-nav a:hover,
.ists-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.ists-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.ists-section--soft {
  background: var(--s);
}

.ists-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.ists-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.ists-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.ists-section__head p:last-of-type {
  margin-bottom: 0;
}

.ists-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.ists-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.ists-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.ists-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.ists-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.ists-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.ists-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.ists-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.ists-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.ists-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.ists-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ists-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.ists-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.ists-reg__intro h2,
.ists-reg__intro p {
  color: #fff !important;
}

.ists-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.ists-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.ists-reg__accent strong {
  color: #fff;
}

.ists-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.ists-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.ists-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.ists-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.ists-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.ists-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.ists-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.ists-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.ists-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.ists-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.ists-process article:nth-child(3)::after,
.ists-process article:nth-child(6)::after {
  display: none;
}

.ists-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.ists-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.ists-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.ists-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.ists-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.ists-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.ists-service:hover::before {
  transform: scaleX(1);
}

.ists-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.ists-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.ists-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ists-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.ists-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.ists-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.ists-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.ists-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.ists-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.ists-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.ists-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.ists-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ists-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.ists-checklist li::before {
  content: none;
}

.ists-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ists-when__action {
  margin-top: 24px;
}

.ists-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.ists-result > div:first-child > p {
  color: var(--m);
}

.ists-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.ists-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.ists-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.ists-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.ists-case-list {
  display: grid;
  gap: 20px;
}

.ists-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
}

.ists-case h3 {
  max-width: 760px;
  margin-bottom: 16px;
}

.ists-case__lead {
  max-width: 820px;
  margin: 0 0 24px;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.ists-case__block {
  margin-bottom: 22px;
}

.ists-case__block:last-of-type {
  margin-bottom: 0;
}

.ists-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.ists-case__block > p {
  max-width: 820px;
  margin: 0 0 12px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.ists-case__block > p:last-child {
  margin-bottom: 0;
}

.ists-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.ists-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.ists-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.ists-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.ists-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.ists-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.ists-cta__contacts {
  margin-top: 20px;
}

.ists-cta__contacts a,
.ists-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.ists-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ists-cta__contacts a:last-child,
.ists-cta__contacts span:last-child {
  margin-bottom: 0;
}

.ists-cta__contacts a:hover {
  color: #fff;
}

.ists-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istsShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@keyframes istsHookLift {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-90px); }
}

@media (max-width: 1050px) {
  .ists-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .ists-hero__visual {
    min-height: 480px;
  }

  .ists-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .ists-service-grid,
  .ists-process,
  .ists-segment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ists-reg,
  .ists-result,
  .ists-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .ists-stack__grid,
  .ists-checklist {
    grid-template-columns: 1fr;
  }

  .ists-process article:nth-child(3)::after {
    display: block;
  }

  .ists-process article:nth-child(2n)::after {
    display: none;
  }

  .ists-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .ists-hero,
  .ists-section,
  .ists-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .ists-hero {
    min-height: 0;
  }

  .ists-hero h2 {
    font-size: 30px !important;
  }

  .ists-hero__lead {
    font-size: 16px;
  }

  .ists-hero__visual {
    min-height: 400px;
  }

  .ists-illustration {
    width: 420px;
  }

  .ists-nav {
    top: 58px;
  }

  .ists-reg__cards,
  .ists-result__list,
  .ists-segment-grid {
    grid-template-columns: 1fr;
  }

  .ists-case {
    padding: 24px;
  }

  .ists-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .ists-float__icon {
    width: 28px;
    height: 28px;
  }

  .ists-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .ists-float__text strong {
    font-size: 11.5px;
  }

  .ists-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .ists-risk-grid,
  .ists-service-grid,
  .ists-process {
    grid-template-columns: 1fr;
  }

  .ists-process article::after {
    display: none !important;
  }

  .ists-hero__actions {
    display: grid;
  }

  .ists-btn {
    width: 100%;
  }

  .ists-hero__visual {
    min-height: 340px;
  }

  .ists-illustration {
    width: 340px;
  }

  .ists-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ists-shield,
  .ists-hook {
    animation: none;
  }

  .ists-btn,
  .ists-risk,
  .ists-service,
  .ists-stack__item,
  .ists-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность СМИ и медиакомпаний (istm-) ===== */
/* ИБ СМИ И МЕДИАКОМПАНИЙ. Вставить в кастомный CSS без тега <style> */
#ist-media-security-v2,
#ist-media-security-v2 * {
  box-sizing: border-box;
}

#ist-media-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-media-security-v2 h1,
#ist-media-security-v2 h2,
#ist-media-security-v2 h3,
#ist-media-security-v2 p {
  margin-top: 0;
}

#ist-media-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-media-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-media-security-v2 a {
  text-decoration: none;
}

.istm-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istm-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istm-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istm-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istm-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istm-hero__content,
.istm-hero__visual {
  position: relative;
  z-index: 2;
}

.istm-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istm-kicker--light {
  color: #ffc29b;
}

.istm-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istm-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istm-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istm-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istm-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istm-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istm-btn:hover {
  transform: translateY(-2px);
}

.istm-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istm-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istm-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istm-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istm-hero__visual {
  min-height: 520px;
}

.istm-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istm-live-dot circle {
  animation: istmLiveBlink 1.1s steps(1) infinite;
}

.istm-ticker {
  animation: istmTickerScroll 6s linear infinite;
}

.istm-shield {
  transform-box: view-box;
  transform-origin: 400px 201px;
  animation: istmShieldPulse 3.2s ease-in-out infinite;
}

.istm-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istm-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istm-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istm-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istm-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.istm-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istm-float--one {
  top: 4px;
  left: 0;
}

.istm-float--two {
  top: 200px;
  left: -10px;
}

.istm-float--three {
  bottom: 40px;
  right: -6px;
}

.istm-float--four {
  bottom: -6px;
  left: 40px;
}

.istm-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istm-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istm-nav a:hover,
.istm-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istm-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istm-section--soft {
  background: var(--s);
}

.istm-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istm-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istm-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istm-section__head p:last-of-type {
  margin-bottom: 0;
}

.istm-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istm-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istm-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istm-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istm-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istm-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istm-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istm-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istm-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istm-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istm-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istm-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istm-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istm-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istm-reg__intro h2,
.istm-reg__intro p {
  color: #fff !important;
}

.istm-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istm-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istm-reg__accent strong {
  color: #fff;
}

.istm-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istm-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istm-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istm-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istm-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istm-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istm-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istm-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istm-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istm-process article:nth-child(3)::after,
.istm-process article:nth-child(6)::after {
  display: none;
}

.istm-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istm-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istm-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istm-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istm-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istm-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istm-service:hover::before {
  transform: scaleX(1);
}

.istm-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istm-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istm-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istm-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istm-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istm-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istm-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istm-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istm-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istm-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istm-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istm-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istm-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istm-checklist li::before {
  content: none;
}

.istm-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istm-when__action {
  margin-top: 24px;
}

.istm-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istm-result > div:first-child > p {
  color: var(--m);
}

.istm-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istm-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istm-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istm-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istm-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istm-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istm-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istm-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istm-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istm-cta__contacts {
  margin-top: 20px;
}

.istm-cta__contacts a,
.istm-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istm-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istm-cta__contacts a:last-child,
.istm-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istm-cta__contacts a:hover {
  color: #fff;
}

.istm-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istmLiveBlink {
  0%, 60% { opacity: 1; }
  61%, 100% { opacity: .15; }
}

@keyframes istmTickerScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-356px); }
}

@keyframes istmShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istm-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istm-hero__visual {
    min-height: 460px;
  }

  .istm-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istm-service-grid,
  .istm-process,
  .istm-segment-grid,
  .istm-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istm-reg,
  .istm-result,
  .istm-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istm-stack__grid,
  .istm-checklist {
    grid-template-columns: 1fr;
  }

  .istm-process article:nth-child(3)::after {
    display: block;
  }

  .istm-process article:nth-child(2n)::after {
    display: none;
  }

  .istm-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istm-hero,
  .istm-section,
  .istm-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istm-hero {
    min-height: 0;
  }

  .istm-hero h2 {
    font-size: 30px !important;
  }

  .istm-hero__lead {
    font-size: 16px;
  }

  .istm-hero__visual {
    min-height: 380px;
  }

  .istm-illustration {
    width: 400px;
  }

  .istm-nav {
    top: 58px;
  }

  .istm-reg__cards,
  .istm-result__list,
  .istm-segment-grid,
  .istm-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .istm-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istm-float__icon {
    width: 28px;
    height: 28px;
  }

  .istm-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istm-float__text strong {
    font-size: 11.5px;
  }

  .istm-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istm-risk-grid,
  .istm-service-grid,
  .istm-process {
    grid-template-columns: 1fr;
  }

  .istm-process article::after {
    display: none !important;
  }

  .istm-hero__actions {
    display: grid;
  }

  .istm-btn {
    width: 100%;
  }

  .istm-hero__visual {
    min-height: 320px;
  }

  .istm-illustration {
    width: 330px;
  }

  .istm-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istm-live-dot circle,
  .istm-ticker,
  .istm-shield {
    animation: none;
  }

  .istm-btn,
  .istm-risk,
  .istm-service,
  .istm-stack__item,
  .istm-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность в электронной коммерции ===== */
/* ИБ В ЭЛЕКТРОННОЙ КОММЕРЦИИ. Вставить в кастомный CSS без тега <style> */
#ist-ecom-security-v2,
#ist-ecom-security-v2 * {
  box-sizing: border-box;
}

#ist-ecom-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-ecom-security-v2 h1,
#ist-ecom-security-v2 h2,
#ist-ecom-security-v2 h3,
#ist-ecom-security-v2 p {
  margin-top: 0;
}

#ist-ecom-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-ecom-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-ecom-security-v2 a {
  text-decoration: none;
}

.iste-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.iste-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.iste-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.iste-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.iste-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.iste-hero__content,
.iste-hero__visual {
  position: relative;
  z-index: 2;
}

.iste-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.iste-kicker--light {
  color: #ffc29b;
}

.iste-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.iste-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.iste-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.iste-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.iste-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.iste-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.iste-btn:hover {
  transform: translateY(-2px);
}

.iste-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.iste-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.iste-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.iste-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.iste-hero__visual {
  min-height: 520px;
}

.iste-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.iste-item {
  offset-rotate: 0deg;
  offset-path: path('M247 302 C 320 250, 400 260, 452 358');
  animation: isteItemFly 3s linear infinite;
}

.iste-bar-fill {
  transform-box: fill-box;
  transform-origin: 0% 50%;
  animation: isteBarFill 2.8s ease-in-out infinite;
}

.iste-shield {
  transform-box: view-box;
  transform-origin: 440px 163px;
  animation: isteShieldPulse 3.2s ease-in-out infinite;
}

.iste-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.iste-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.iste-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.iste-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.iste-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
}

.iste-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.iste-float--one {
  top: 4px;
  left: 0;
}

.iste-float--two {
  top: 200px;
  left: -10px;
}

.iste-float--three {
  bottom: 40px;
  right: -6px;
}

.iste-float--four {
  bottom: -6px;
  left: 40px;
}

.iste-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.iste-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.iste-nav a:hover,
.iste-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.iste-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.iste-section--soft {
  background: var(--s);
}

.iste-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.iste-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.iste-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.iste-section__head p:last-of-type {
  margin-bottom: 0;
}

.iste-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.iste-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.iste-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.iste-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.iste-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.iste-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.iste-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.iste-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.iste-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.iste-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.iste-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.iste-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.iste-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.iste-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.iste-reg__intro h2,
.iste-reg__intro p {
  color: #fff !important;
}

.iste-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.iste-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.iste-reg__accent strong {
  color: #fff;
}

.iste-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.iste-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.iste-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.iste-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.iste-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.iste-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.iste-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.iste-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.iste-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.iste-process article:nth-child(3)::after,
.iste-process article:nth-child(6)::after {
  display: none;
}

.iste-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.iste-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.iste-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.iste-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.iste-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.iste-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.iste-service:hover::before {
  transform: scaleX(1);
}

.iste-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.iste-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.iste-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.iste-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.iste-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.iste-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.iste-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.iste-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.iste-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.iste-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.iste-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.iste-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.iste-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.iste-checklist li::before {
  content: none;
}

.iste-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.iste-when__action {
  margin-top: 24px;
}

.iste-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.iste-result > div:first-child > p {
  color: var(--m);
}

.iste-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.iste-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.iste-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.iste-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.iste-case-list {
  display: grid;
  gap: 20px;
}

.iste-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.iste-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.iste-case__block {
  margin-bottom: 22px;
}

.iste-case__block:last-of-type {
  margin-bottom: 0;
}

.iste-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.iste-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.iste-case__block > p:last-child {
  margin-bottom: 0;
}

.iste-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.iste-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.iste-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.iste-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.iste-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.iste-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.iste-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.iste-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.iste-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.iste-cta__contacts {
  margin-top: 20px;
}

.iste-cta__contacts a,
.iste-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.iste-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.iste-cta__contacts a:last-child,
.iste-cta__contacts span:last-child {
  margin-bottom: 0;
}

.iste-cta__contacts a:hover {
  color: #fff;
}

.iste-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes isteItemFly {
  0% { offset-distance: 0%; opacity: 0; }
  8% { opacity: 1; }
  88% { opacity: 1; }
  100% { offset-distance: 100%; opacity: 0; }
}

@keyframes isteBarFill {
  0% { transform: scaleX(0); opacity: .3; }
  8% { opacity: 1; }
  75% { transform: scaleX(1); opacity: 1; }
  92% { transform: scaleX(1); opacity: 0; }
  93% { transform: scaleX(0); opacity: 0; }
  100% { transform: scaleX(0); opacity: .3; }
}

@keyframes isteShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .iste-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .iste-hero__visual {
    min-height: 460px;
  }

  .iste-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .iste-service-grid,
  .iste-process,
  .iste-segment-grid,
  .iste-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .iste-reg,
  .iste-result,
  .iste-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .iste-stack__grid,
  .iste-checklist {
    grid-template-columns: 1fr;
  }

  .iste-process article:nth-child(3)::after {
    display: block;
  }

  .iste-process article:nth-child(2n)::after {
    display: none;
  }

  .iste-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .iste-hero,
  .iste-section,
  .iste-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .iste-case {
    padding: 24px;
  }

  .iste-hero {
    min-height: 0;
  }

  .iste-hero h2 {
    font-size: 30px !important;
  }

  .iste-hero__lead {
    font-size: 16px;
  }

  .iste-hero__visual {
    min-height: 380px;
  }

  .iste-illustration {
    width: 400px;
  }

  .iste-nav {
    top: 58px;
  }

  .iste-reg__cards,
  .iste-result__list,
  .iste-segment-grid,
  .iste-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .iste-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .iste-float__icon {
    width: 28px;
    height: 28px;
  }

  .iste-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .iste-float__text strong {
    font-size: 11.5px;
  }

  .iste-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .iste-risk-grid,
  .iste-service-grid,
  .iste-process {
    grid-template-columns: 1fr;
  }

  .iste-process article::after {
    display: none !important;
  }

  .iste-hero__actions {
    display: grid;
  }

  .iste-btn {
    width: 100%;
  }

  .iste-hero__visual {
    min-height: 320px;
  }

  .iste-illustration {
    width: 330px;
  }

  .iste-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .iste-item,
  .iste-bar-fill,
  .iste-shield {
    animation: none;
  }

  .iste-btn,
  .iste-risk,
  .iste-service,
  .iste-stack__item,
  .iste-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность в сфере ЖКХ и городской инфраструктуры ===== */
/* ИБ В СФЕРЕ ЖКХ И ГОРОДСКОЙ ИНФРАСТРУКТУРЫ. Вставить в кастомный CSS без тега <style> */
#ist-zhkh-security-v2,
#ist-zhkh-security-v2 * {
  box-sizing: border-box;
}

#ist-zhkh-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-zhkh-security-v2 h1,
#ist-zhkh-security-v2 h2,
#ist-zhkh-security-v2 h3,
#ist-zhkh-security-v2 p {
  margin-top: 0;
}

#ist-zhkh-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-zhkh-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-zhkh-security-v2 a {
  text-decoration: none;
}

.istz-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istz-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istz-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istz-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istz-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istz-hero__content,
.istz-hero__visual {
  position: relative;
  z-index: 2;
}

.istz-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istz-kicker--light {
  color: #ffc29b;
}

.istz-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istz-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istz-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istz-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istz-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istz-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istz-btn:hover {
  transform: translateY(-2px);
}

.istz-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istz-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istz-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istz-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istz-hero__visual {
  min-height: 520px;
}

.istz-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istz-flow {
  stroke-dasharray: 10 8;
  animation: istzFlow 1.4s linear infinite;
}

.istz-needle {
  transform-box: fill-box;
  transform-origin: 50% 100%;
  animation: istzGaugeSwing 3.4s ease-in-out infinite;
}

.istz-shield {
  transform-box: view-box;
  transform-origin: 400px 168px;
  animation: istzShieldPulse 3.2s ease-in-out infinite;
}

.istz-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istz-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istz-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istz-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istz-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istz-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istz-float--one {
  top: 4px;
  left: 0;
}

.istz-float--two {
  top: 200px;
  left: -10px;
}

.istz-float--three {
  bottom: 40px;
  right: -6px;
}

.istz-float--four {
  bottom: -6px;
  left: 40px;
}

.istz-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istz-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istz-nav a:hover,
.istz-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istz-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istz-section--soft {
  background: var(--s);
}

.istz-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istz-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istz-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istz-section__head p:last-of-type {
  margin-bottom: 0;
}

.istz-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istz-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istz-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istz-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istz-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istz-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istz-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istz-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istz-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istz-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istz-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istz-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istz-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istz-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istz-reg__intro h2,
.istz-reg__intro p {
  color: #fff !important;
}

.istz-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istz-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istz-reg__accent strong {
  color: #fff;
}

.istz-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istz-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istz-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istz-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istz-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istz-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istz-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istz-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istz-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istz-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istz-process article:nth-child(3)::after,
.istz-process article:nth-child(6)::after {
  display: none;
}

.istz-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istz-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istz-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istz-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istz-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istz-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istz-service:hover::before {
  transform: scaleX(1);
}

.istz-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istz-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istz-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istz-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istz-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istz-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istz-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istz-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istz-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istz-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istz-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istz-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istz-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istz-checklist li::before {
  content: none;
}

.istz-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istz-when__action {
  margin-top: 24px;
}

.istz-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istz-result > div:first-child > p {
  color: var(--m);
}

.istz-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istz-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istz-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istz-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istz-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istz-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istz-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istz-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istz-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istz-cta__contacts {
  margin-top: 20px;
}

.istz-cta__contacts a,
.istz-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istz-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istz-cta__contacts a:last-child,
.istz-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istz-cta__contacts a:hover {
  color: #fff;
}

.istz-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istzFlow {
  0% { stroke-dashoffset: 36; }
  100% { stroke-dashoffset: 0; }
}

@keyframes istzGaugeSwing {
  0%, 100% { transform: rotate(-38deg); }
  50% { transform: rotate(34deg); }
}

@keyframes istzShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istz-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istz-hero__visual {
    min-height: 460px;
  }

  .istz-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istz-service-grid,
  .istz-process,
  .istz-segment-grid,
  .istz-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istz-reg,
  .istz-result,
  .istz-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istz-stack__grid,
  .istz-checklist {
    grid-template-columns: 1fr;
  }

  .istz-process article:nth-child(3)::after {
    display: block;
  }

  .istz-process article:nth-child(2n)::after {
    display: none;
  }

  .istz-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istz-hero,
  .istz-section,
  .istz-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istz-hero {
    min-height: 0;
  }

  .istz-hero h2 {
    font-size: 30px !important;
  }

  .istz-hero__lead {
    font-size: 16px;
  }

  .istz-hero__visual {
    min-height: 380px;
  }

  .istz-illustration {
    width: 400px;
  }

  .istz-nav {
    top: 58px;
  }

  .istz-reg__cards,
  .istz-result__list,
  .istz-segment-grid,
  .istz-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .istz-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istz-float__icon {
    width: 28px;
    height: 28px;
  }

  .istz-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istz-float__text strong {
    font-size: 11.5px;
  }

  .istz-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istz-risk-grid,
  .istz-service-grid,
  .istz-process {
    grid-template-columns: 1fr;
  }

  .istz-process article::after {
    display: none !important;
  }

  .istz-hero__actions {
    display: grid;
  }

  .istz-btn {
    width: 100%;
  }

  .istz-hero__visual {
    min-height: 320px;
  }

  .istz-illustration {
    width: 330px;
  }

  .istz-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istz-flow,
  .istz-needle,
  .istz-shield {
    animation: none;
  }

  .istz-btn,
  .istz-risk,
  .istz-service,
  .istz-stack__item,
  .istz-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность медицинских и фармацевтических организаций ===== */
/* ИБ МЕДИЦИНСКИХ И ФАРМАЦЕВТИЧЕСКИХ ОРГАНИЗАЦИЙ. Вставить в кастомный CSS без тега <style> */
#ist-health-security-v2,
#ist-health-security-v2 * {
  box-sizing: border-box;
}

#ist-health-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-health-security-v2 h1,
#ist-health-security-v2 h2,
#ist-health-security-v2 h3,
#ist-health-security-v2 p {
  margin-top: 0;
}

#ist-health-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-health-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-health-security-v2 a {
  text-decoration: none;
}

.isth-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.isth-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.isth-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.isth-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.isth-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.isth-hero__content,
.isth-hero__visual {
  position: relative;
  z-index: 2;
}

.isth-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.isth-kicker--light {
  color: #ffc29b;
}

.isth-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.isth-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.isth-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.isth-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.isth-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.isth-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.isth-btn:hover {
  transform: translateY(-2px);
}

.isth-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.isth-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.isth-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.isth-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.isth-hero__visual {
  min-height: 520px;
}

.isth-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.isth-ecg {
  stroke-dasharray: 620;
  stroke-dashoffset: 620;
  animation: isthEcgDraw 2.6s linear infinite;
}

.isth-pill {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: isthPillWobble 3.6s ease-in-out infinite;
}

.isth-shield {
  transform-box: view-box;
  transform-origin: 440px 163px;
  animation: isthShieldPulse 3.2s ease-in-out infinite;
}

.isth-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.isth-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.isth-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isth-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.isth-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.isth-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.isth-float--one {
  top: 4px;
  left: 0;
}

.isth-float--two {
  top: 200px;
  left: -10px;
}

.isth-float--three {
  bottom: 40px;
  right: -6px;
}

.isth-float--four {
  bottom: -6px;
  left: 40px;
}

.isth-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.isth-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.isth-nav a:hover,
.isth-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.isth-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.isth-section--soft {
  background: var(--s);
}

.isth-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.isth-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.isth-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.isth-section__head p:last-of-type {
  margin-bottom: 0;
}

.isth-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isth-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isth-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isth-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.isth-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.isth-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.isth-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.isth-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.isth-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isth-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isth-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isth-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.isth-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.isth-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isth-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isth-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.isth-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.isth-reg__intro h2,
.isth-reg__intro p {
  color: #fff !important;
}

.isth-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.isth-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.isth-reg__accent strong {
  color: #fff;
}

.isth-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isth-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isth-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.isth-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.isth-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.isth-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.isth-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.isth-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isth-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isth-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.isth-process article:nth-child(3)::after,
.isth-process article:nth-child(6)::after,
.isth-process article:last-child::after {
  display: none;
}

.isth-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isth-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.isth-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isth-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.isth-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.isth-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.isth-service:hover::before {
  transform: scaleX(1);
}

.isth-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.isth-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.isth-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isth-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.isth-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.isth-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isth-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.isth-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.isth-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isth-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.isth-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.isth-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isth-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.isth-checklist li::before {
  content: none;
}

.isth-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isth-when__action {
  margin-top: 24px;
}

.isth-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.isth-result > div:first-child > p {
  color: var(--m);
}

.isth-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isth-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isth-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isth-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.isth-case-list {
  display: grid;
  gap: 20px;
}

.isth-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.isth-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.isth-case__block {
  margin-bottom: 22px;
}

.isth-case__block:last-of-type {
  margin-bottom: 0;
}

.isth-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.isth-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.isth-case__block > p:last-child {
  margin-bottom: 0;
}

.isth-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.isth-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.isth-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isth-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.isth-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.isth-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.isth-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.isth-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.isth-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.isth-cta__contacts {
  margin-top: 20px;
}

.isth-cta__contacts a,
.isth-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.isth-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isth-cta__contacts a:last-child,
.isth-cta__contacts span:last-child {
  margin-bottom: 0;
}

.isth-cta__contacts a:hover {
  color: #fff;
}

.isth-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes isthEcgDraw {
  0% { stroke-dashoffset: 620; }
  60% { stroke-dashoffset: 0; }
  100% { stroke-dashoffset: -140; }
}

@keyframes isthPillWobble {
  0%, 100% { transform: rotate(-8deg); }
  50% { transform: rotate(8deg); }
}

@keyframes isthShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .isth-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .isth-hero__visual {
    min-height: 460px;
  }

  .isth-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .isth-service-grid,
  .isth-process,
  .isth-segment-grid,
  .isth-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .isth-reg,
  .isth-result,
  .isth-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .isth-stack__grid,
  .isth-checklist {
    grid-template-columns: 1fr;
  }

  .isth-process article:nth-child(3)::after {
    display: block;
  }

  .isth-process article:nth-child(2n)::after,
  .isth-process article:last-child::after {
    display: none;
  }

  .isth-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .isth-hero,
  .isth-section,
  .isth-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .isth-case {
    padding: 24px;
  }

  .isth-hero {
    min-height: 0;
  }

  .isth-hero h2 {
    font-size: 30px !important;
  }

  .isth-hero__lead {
    font-size: 16px;
  }

  .isth-hero__visual {
    min-height: 380px;
  }

  .isth-illustration {
    width: 400px;
  }

  .isth-nav {
    top: 58px;
  }

  .isth-reg__cards,
  .isth-result__list,
  .isth-segment-grid,
  .isth-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .isth-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .isth-float__icon {
    width: 28px;
    height: 28px;
  }

  .isth-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .isth-float__text strong {
    font-size: 11.5px;
  }

  .isth-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .isth-risk-grid,
  .isth-service-grid,
  .isth-process {
    grid-template-columns: 1fr;
  }

  .isth-process article::after {
    display: none !important;
  }

  .isth-hero__actions {
    display: grid;
  }

  .isth-btn {
    width: 100%;
  }

  .isth-hero__visual {
    min-height: 320px;
  }

  .isth-illustration {
    width: 330px;
  }

  .isth-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .isth-ecg,
  .isth-pill,
  .isth-shield {
    animation: none;
  }

  .isth-btn,
  .isth-risk,
  .isth-service,
  .isth-stack__item,
  .isth-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность для компаний розничной торговли (ритейл) ===== */
/* ИБ ДЛЯ КОМПАНИЙ РОЗНИЧНОЙ ТОРГОВЛИ (РИТЕЙЛ). Вставить в кастомный CSS без тега <style> */
#ist-retail-security-v2,
#ist-retail-security-v2 * {
  box-sizing: border-box;
}

#ist-retail-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-retail-security-v2 h1,
#ist-retail-security-v2 h2,
#ist-retail-security-v2 h3,
#ist-retail-security-v2 p {
  margin-top: 0;
}

#ist-retail-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
}

#ist-retail-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-retail-security-v2 a {
  text-decoration: none;
}

.istre-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istre-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istre-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istre-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istre-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istre-hero__content,
.istre-hero__visual {
  position: relative;
  z-index: 2;
}

.istre-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istre-kicker--light {
  color: #ffc29b;
}

.istre-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istre-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istre-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istre-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istre-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istre-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istre-btn:hover {
  transform: translateY(-2px);
}

.istre-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istre-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istre-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istre-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istre-hero__visual {
  min-height: 520px;
}

.istre-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istre-scan {
  animation: istreScanSweep 2.4s ease-in-out infinite;
}

.istre-receipt {
  transform-box: fill-box;
  transform-origin: 50% 100%;
  animation: istreReceiptFeed 3s ease-in-out infinite;
}

.istre-shield {
  transform-box: view-box;
  transform-origin: 440px 163px;
  animation: istreShieldPulse 3.2s ease-in-out infinite;
}

.istre-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istre-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istre-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istre-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istre-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istre-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istre-float--one {
  top: 4px;
  left: 0;
}

.istre-float--two {
  top: 200px;
  left: -10px;
}

.istre-float--three {
  bottom: 40px;
  right: -6px;
}

.istre-float--four {
  bottom: -6px;
  left: 40px;
}

.istre-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istre-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istre-nav a:hover,
.istre-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istre-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istre-section--soft {
  background: var(--s);
}

.istre-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istre-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istre-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istre-section__head p:last-of-type {
  margin-bottom: 0;
}

.istre-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istre-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istre-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istre-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istre-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istre-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istre-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istre-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istre-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istre-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istre-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istre-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istre-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istre-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istre-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istre-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istre-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istre-reg__intro h2,
.istre-reg__intro p {
  color: #fff !important;
}

.istre-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istre-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istre-reg__accent strong {
  color: #fff;
}

.istre-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istre-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istre-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istre-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istre-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istre-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istre-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istre-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istre-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istre-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istre-process article:nth-child(3)::after,
.istre-process article:nth-child(6)::after,
.istre-process article:last-child::after {
  display: none;
}

.istre-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istre-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istre-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istre-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istre-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istre-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istre-service:hover::before {
  transform: scaleX(1);
}

.istre-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istre-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istre-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istre-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istre-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istre-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istre-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istre-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istre-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istre-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istre-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istre-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istre-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istre-checklist li::before {
  content: none;
}

.istre-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istre-when__action {
  margin-top: 24px;
}

.istre-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istre-result > div:first-child > p {
  color: var(--m);
}

.istre-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istre-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istre-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istre-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istre-case-list {
  display: grid;
  gap: 20px;
}

.istre-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istre-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istre-case__block {
  margin-bottom: 22px;
}

.istre-case__block:last-of-type {
  margin-bottom: 0;
}

.istre-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istre-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istre-case__block > p:last-child {
  margin-bottom: 0;
}

.istre-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istre-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istre-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istre-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istre-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istre-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istre-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istre-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istre-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istre-cta__contacts {
  margin-top: 20px;
}

.istre-cta__contacts a,
.istre-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istre-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istre-cta__contacts a:last-child,
.istre-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istre-cta__contacts a:hover {
  color: #fff;
}

.istre-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istreScanSweep {
  0% { transform: translateY(0); opacity: 0; }
  8% { opacity: 1; }
  46% { transform: translateY(64px); opacity: 1; }
  54% { opacity: 0; }
  100% { transform: translateY(0); opacity: 0; }
}

@keyframes istreReceiptFeed {
  0% { transform: scaleY(0); opacity: .5; }
  10% { opacity: 1; }
  55% { transform: scaleY(1); opacity: 1; }
  85% { transform: scaleY(1); opacity: 1; }
  92% { opacity: 0; }
  93% { transform: scaleY(0); opacity: 0; }
  100% { transform: scaleY(0); opacity: .5; }
}

@keyframes istreShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istre-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istre-hero__visual {
    min-height: 460px;
  }

  .istre-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istre-service-grid,
  .istre-process,
  .istre-segment-grid,
  .istre-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istre-reg,
  .istre-result,
  .istre-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istre-stack__grid,
  .istre-checklist {
    grid-template-columns: 1fr;
  }

  .istre-process article:nth-child(3)::after {
    display: block;
  }

  .istre-process article:nth-child(2n)::after,
  .istre-process article:last-child::after {
    display: none;
  }

  .istre-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istre-hero,
  .istre-section,
  .istre-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istre-case {
    padding: 24px;
  }

  .istre-hero {
    min-height: 0;
  }

  .istre-hero h2 {
    font-size: 30px !important;
  }

  .istre-hero__lead {
    font-size: 16px;
  }

  .istre-hero__visual {
    min-height: 380px;
  }

  .istre-illustration {
    width: 400px;
  }

  .istre-nav {
    top: 58px;
  }

  .istre-reg__cards,
  .istre-result__list,
  .istre-segment-grid,
  .istre-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .istre-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istre-float__icon {
    width: 28px;
    height: 28px;
  }

  .istre-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istre-float__text strong {
    font-size: 11.5px;
  }

  .istre-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istre-risk-grid,
  .istre-service-grid,
  .istre-process {
    grid-template-columns: 1fr;
  }

  .istre-process article::after {
    display: none !important;
  }

  .istre-hero__actions {
    display: grid;
  }

  .istre-btn {
    width: 100%;
  }

  .istre-hero__visual {
    min-height: 320px;
  }

  .istre-illustration {
    width: 330px;
  }

  .istre-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istre-scan,
  .istre-receipt,
  .istre-shield {
    animation: none;
  }

  .istre-btn,
  .istre-risk,
  .istre-service,
  .istre-stack__item,
  .istre-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Информационная безопасность для телекоммуникационных компаний ===== */

/* Сайтовый фикс (не привязан к конкретной странице): системный H1
   .switcher-title в шапке страницы услуги не переносится на мобильной
   ширине, если текст длиннее ~45 символов — вызывает горизонтальный
   скролл всей страницы. Причина: .topic__heading #pagetitle{display:inline}
   в page-title-breadcrumb-pagination.css бьёт по specificity обычный
   класс — переопределяем тем же уровнем специфичности (ID + класс
   родителя). На этой странице длина H1 (57 символов) впервые вскрыла
   баг. Правило только разрешает перенос, ничего не меняет визуально для
   более коротких заголовков. */
@media (max-width: 767px) {
  .topic__heading #pagetitle,
  .switcher-title {
    display: block;
    overflow-wrap: break-word;
    word-break: break-word;
  }
}
#ist-telecom-security-v2,
#ist-telecom-security-v2 * {
  box-sizing: border-box;
}

#ist-telecom-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-telecom-security-v2 h1,
#ist-telecom-security-v2 h2,
#ist-telecom-security-v2 h3,
#ist-telecom-security-v2 p {
  margin-top: 0;
}

#ist-telecom-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-telecom-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-telecom-security-v2 a {
  text-decoration: none;
}

.istk-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istk-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istk-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istk-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istk-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istk-hero__content,
.istk-hero__visual {
  position: relative;
  z-index: 2;
}

.istk-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istk-kicker--light {
  color: #ffc29b;
}

.istk-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istk-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istk-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istk-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istk-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istk-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istk-btn:hover {
  transform: translateY(-2px);
}

.istk-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istk-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istk-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istk-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istk-hero__visual {
  min-height: 520px;
}

.istk-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istk-wave {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: 0;
  animation: istkWaveExpand 2.7s ease-out infinite;
}

.istk-wave--2 {
  animation-delay: .9s;
}

.istk-wave--3 {
  animation-delay: 1.8s;
}

.istk-packet {
  animation: istkPacketTravel 3.4s linear infinite;
}

.istk-shield {
  transform-box: view-box;
  transform-origin: 400px 423px;
  animation: istkShieldPulse 3.2s ease-in-out infinite;
}

.istk-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istk-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istk-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istk-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istk-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istk-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istk-float--one {
  top: 4px;
  left: 0;
}

.istk-float--two {
  top: 200px;
  left: -10px;
}

.istk-float--three {
  bottom: 40px;
  right: -6px;
}

.istk-float--four {
  bottom: -6px;
  left: 40px;
}

.istk-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istk-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istk-nav a:hover,
.istk-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istk-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istk-section--soft {
  background: var(--s);
}

.istk-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istk-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istk-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istk-section__head p:last-of-type {
  margin-bottom: 0;
}

.istk-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istk-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istk-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istk-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istk-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istk-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istk-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istk-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istk-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istk-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istk-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istk-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istk-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istk-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istk-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istk-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istk-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istk-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istk-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istk-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istk-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istk-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istk-threat-row p:last-child {
  color: var(--m);
}

.istk-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istk-reg__intro h2,
.istk-reg__intro p {
  color: #fff !important;
}

.istk-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istk-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istk-reg__accent strong {
  color: #fff;
}

.istk-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istk-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istk-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istk-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istk-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istk-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istk-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istk-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istk-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istk-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istk-process article:nth-child(3)::after,
.istk-process article:nth-child(6)::after,
.istk-process article:last-child::after {
  display: none;
}

.istk-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istk-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istk-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istk-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istk-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istk-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istk-service:hover::before {
  transform: scaleX(1);
}

.istk-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istk-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istk-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istk-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istk-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istk-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istk-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istk-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istk-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istk-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istk-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istk-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istk-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istk-checklist li::before {
  content: none;
}

.istk-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istk-when__action {
  margin-top: 24px;
}

.istk-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istk-result > div:first-child > p {
  color: var(--m);
}

.istk-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istk-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istk-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istk-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istk-case-list {
  display: grid;
  gap: 20px;
}

.istk-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istk-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istk-case__block {
  margin-bottom: 22px;
}

.istk-case__block:last-of-type {
  margin-bottom: 0;
}

.istk-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istk-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istk-case__block > p:last-child {
  margin-bottom: 0;
}

.istk-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istk-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istk-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istk-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istk-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istk-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istk-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istk-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istk-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istk-cta__contacts {
  margin-top: 20px;
}

.istk-cta__contacts a,
.istk-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istk-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istk-cta__contacts a:last-child,
.istk-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istk-cta__contacts a:hover {
  color: #fff;
}

.istk-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istkWaveExpand {
  0% { transform: scale(.55); opacity: 0; }
  15% { opacity: .8; }
  70% { opacity: .25; }
  100% { transform: scale(1.08); opacity: 0; }
}

@keyframes istkPacketTravel {
  0% { offset-distance: 0%; opacity: 0; }
  8% { opacity: 1; }
  92% { opacity: 1; }
  100% { offset-distance: 100%; opacity: 0; }
}

@keyframes istkShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istk-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istk-hero__visual {
    min-height: 460px;
  }

  .istk-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istk-service-grid,
  .istk-process,
  .istk-segment-grid,
  .istk-segment-grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istk-reg,
  .istk-result,
  .istk-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istk-stack__grid,
  .istk-checklist {
    grid-template-columns: 1fr;
  }

  .istk-process article:nth-child(3)::after {
    display: block;
  }

  .istk-process article:nth-child(2n)::after,
  .istk-process article:last-child::after {
    display: none;
  }

  .istk-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istk-hero,
  .istk-section,
  .istk-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istk-hero {
    min-height: 0;
  }

  .istk-hero h2 {
    font-size: 30px !important;
  }

  .istk-hero__lead {
    font-size: 16px;
  }

  .istk-hero__visual {
    min-height: 380px;
  }

  .istk-illustration {
    width: 400px;
  }

  .istk-nav {
    top: 58px;
  }

  .istk-reg__cards,
  .istk-result__list,
  .istk-segment-grid,
  .istk-segment-grid--3 {
    grid-template-columns: 1fr;
  }

  .istk-threat-table__head,
  .istk-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istk-threat-table__head span:first-child {
    display: none;
  }

  .istk-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istk-float__icon {
    width: 28px;
    height: 28px;
  }

  .istk-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istk-float__text strong {
    font-size: 11.5px;
  }

  .istk-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istk-risk-grid,
  .istk-service-grid,
  .istk-process {
    grid-template-columns: 1fr;
  }

  .istk-process article::after {
    display: none !important;
  }

  .istk-hero__actions {
    display: grid;
  }

  .istk-btn {
    width: 100%;
  }

  .istk-hero__visual {
    min-height: 320px;
  }

  .istk-illustration {
    width: 330px;
  }

  .istk-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istk-wave,
  .istk-packet,
  .istk-shield {
    animation: none;
  }

  .istk-btn,
  .istk-risk,
  .istk-service,
  .istk-stack__item,
  .istk-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Риск-менеджмент ИБ (модель рисков, план обработки) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-risk-consulting-v2,
#ist-risk-consulting-v2 * {
  box-sizing: border-box;
}

#ist-risk-consulting-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-risk-consulting-v2 h1,
#ist-risk-consulting-v2 h2,
#ist-risk-consulting-v2 h3,
#ist-risk-consulting-v2 p {
  margin-top: 0;
}

#ist-risk-consulting-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-risk-consulting-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-risk-consulting-v2 a {
  text-decoration: none;
}

.istrk-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istrk-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istrk-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istrk-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istrk-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istrk-hero__content,
.istrk-hero__visual {
  position: relative;
  z-index: 2;
}

.istrk-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istrk-kicker--light {
  color: #ffc29b;
}

.istrk-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istrk-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istrk-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istrk-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istrk-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istrk-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istrk-btn:hover {
  transform: translateY(-2px);
}

.istrk-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istrk-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istrk-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istrk-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istrk-hero__visual {
  min-height: 520px;
}

.istrk-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istrk-riskdot {
  transform-box: view-box;
  transform-origin: 415px 395px;
  animation: istrkDotPulse 2.4s ease-in-out infinite;
}

.istrk-arrow path:first-child {
  stroke-dasharray: 190;
  stroke-dashoffset: 190;
  animation: istrkArrowDraw 3.2s ease-in-out infinite;
}

.istrk-arrow path:last-child {
  opacity: 0;
  animation: istrkArrowHead 3.2s ease-in-out infinite;
}

.istrk-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istrkShieldPulse 3.2s ease-in-out infinite;
}

.istrk-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istrk-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istrk-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrk-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istrk-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istrk-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istrk-float--one {
  top: 4px;
  left: 0;
}

.istrk-float--two {
  top: 200px;
  left: -10px;
}

.istrk-float--three {
  bottom: 40px;
  right: -6px;
}

.istrk-float--four {
  bottom: -6px;
  left: 40px;
}

.istrk-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istrk-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istrk-nav a:hover,
.istrk-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istrk-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istrk-section--soft {
  background: var(--s);
}

.istrk-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istrk-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istrk-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istrk-section__head p:last-of-type {
  margin-bottom: 0;
}

.istrk-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istrk-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istrk-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istrk-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istrk-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istrk-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istrk-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istrk-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istrk-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istrk-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istrk-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istrk-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istrk-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istrk-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istrk-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrk-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istrk-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istrk-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istrk-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istrk-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istrk-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istrk-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istrk-threat-row p:last-child {
  color: var(--m);
}

.istrk-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istrk-reg__intro h2,
.istrk-reg__intro p {
  color: #fff !important;
}

.istrk-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istrk-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istrk-reg__accent strong {
  color: #fff;
}

.istrk-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istrk-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istrk-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istrk-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istrk-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istrk-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istrk-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istrk-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istrk-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istrk-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istrk-process article:nth-child(3)::after,
.istrk-process article:nth-child(6)::after,
.istrk-process article:last-child::after {
  display: none;
}

.istrk-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istrk-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istrk-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istrk-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istrk-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istrk-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istrk-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istrk-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrk-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istrk-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istrk-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istrk-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istrk-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istrk-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istrk-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istrk-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrk-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istrk-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrk-result-format {
  margin-top: 24px;
}

.istrk-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrk-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istrk-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istrk-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istrk-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istrk-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istrk-faq-list {
  display: grid;
  gap: 12px;
}

.istrk-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istrk-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istrk-faq summary::-webkit-details-marker {
  display: none;
}

.istrk-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istrk-faq__toggle::before,
.istrk-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istrk-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istrk-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istrk-faq[open] .istrk-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istrk-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrk-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istrk-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istrk-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istrk-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istrk-service:hover::before {
  transform: scaleX(1);
}

.istrk-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istrk-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istrk-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrk-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istrk-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istrk-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istrk-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istrk-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istrk-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istrk-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istrk-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istrk-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istrk-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istrk-checklist li::before {
  content: none;
}

.istrk-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrk-when__action {
  margin-top: 24px;
}

.istrk-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istrk-result > div:first-child > p {
  color: var(--m);
}

.istrk-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istrk-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istrk-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istrk-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istrk-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istrk-case-list {
  display: grid;
  gap: 20px;
}

.istrk-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istrk-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istrk-case__block {
  margin-bottom: 22px;
}

.istrk-case__block:last-of-type {
  margin-bottom: 0;
}

.istrk-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istrk-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istrk-case__block > p:last-child {
  margin-bottom: 0;
}

.istrk-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istrk-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istrk-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istrk-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istrk-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istrk-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istrk-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istrk-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istrk-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istrk-cta__contacts {
  margin-top: 20px;
}

.istrk-cta__contacts a,
.istrk-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istrk-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrk-cta__contacts a:last-child,
.istrk-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istrk-cta__contacts a:hover {
  color: #fff;
}

.istrk-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istrkDotPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.22); }
}

@keyframes istrkArrowDraw {
  0% { stroke-dashoffset: 190; }
  55% { stroke-dashoffset: 0; }
  100% { stroke-dashoffset: 0; }
}

@keyframes istrkArrowHead {
  0%, 45% { opacity: 0; }
  55%, 100% { opacity: 1; }
}

@keyframes istrkShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istrk-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istrk-hero__visual {
    min-height: 460px;
  }

  .istrk-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istrk-service-grid,
  .istrk-process,
  .istrk-segment-grid,
  .istrk-segment-grid--3,
  .istrk-diff-grid,
  .istrk-treatment-grid,
  .istrk-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istrk-reg,
  .istrk-result,
  .istrk-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istrk-stack__grid,
  .istrk-checklist {
    grid-template-columns: 1fr;
  }

  .istrk-process article:nth-child(3)::after {
    display: block;
  }

  .istrk-process article:nth-child(2n)::after,
  .istrk-process article:last-child::after {
    display: none;
  }

  .istrk-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istrk-hero,
  .istrk-section,
  .istrk-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istrk-hero {
    min-height: 0;
  }

  .istrk-hero h2 {
    font-size: 30px !important;
  }

  .istrk-hero__lead {
    font-size: 16px;
  }

  .istrk-hero__visual {
    min-height: 380px;
  }

  .istrk-illustration {
    width: 400px;
  }

  .istrk-nav {
    top: 58px;
  }

  .istrk-reg__cards,
  .istrk-result__list,
  .istrk-segment-grid,
  .istrk-segment-grid--3,
  .istrk-diff-grid,
  .istrk-prep-grid,
  .istrk-treatment-grid,
  .istrk-related-grid {
    grid-template-columns: 1fr;
  }

  .istrk-threat-table__head,
  .istrk-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istrk-threat-table__head span:first-child {
    display: none;
  }

  .istrk-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istrk-float__icon {
    width: 28px;
    height: 28px;
  }

  .istrk-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istrk-float__text strong {
    font-size: 11.5px;
  }

  .istrk-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istrk-risk-grid,
  .istrk-service-grid,
  .istrk-process {
    grid-template-columns: 1fr;
  }

  .istrk-process article::after {
    display: none !important;
  }

  .istrk-hero__actions {
    display: grid;
  }

  .istrk-btn {
    width: 100%;
  }

  .istrk-hero__visual {
    min-height: 320px;
  }

  .istrk-illustration {
    width: 330px;
  }

  .istrk-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istrk-riskdot,
  .istrk-arrow path,
  .istrk-shield {
    animation: none;
  }

  .istrk-btn,
  .istrk-risk,
  .istrk-service,
  .istrk-stack__item,
  .istrk-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Экспресс-оценка зрелости ИБ (rapid assessment) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-rapid-consulting-v2,
#ist-rapid-consulting-v2 * {
  box-sizing: border-box;
}

#ist-rapid-consulting-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-rapid-consulting-v2 h1,
#ist-rapid-consulting-v2 h2,
#ist-rapid-consulting-v2 h3,
#ist-rapid-consulting-v2 p {
  margin-top: 0;
}

#ist-rapid-consulting-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-rapid-consulting-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-rapid-consulting-v2 a {
  text-decoration: none;
}

.istrap-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istrap-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istrap-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istrap-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istrap-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istrap-hero__content,
.istrap-hero__visual {
  position: relative;
  z-index: 2;
}

.istrap-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istrap-kicker--light {
  color: #ffc29b;
}

.istrap-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istrap-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istrap-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istrap-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istrap-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istrap-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istrap-btn:hover {
  transform: translateY(-2px);
}

.istrap-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istrap-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istrap-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istrap-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istrap-hero__visual {
  min-height: 520px;
}

.istrap-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istrap-radar {
  animation: istrapRadarPulse 2.8s ease-in-out infinite;
}

.istrap-sweep {
  transform-box: view-box;
  transform-origin: 270px 330px;
  animation: istrapSweepRotate 3.6s linear infinite;
}

.istrap-scalebar {
  width: 0;
  animation: istrapScaleGrow 3s ease-in-out infinite;
}

.istrap-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istrapShieldPulse 3.2s ease-in-out infinite;
}

.istrap-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istrap-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istrap-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istrap-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istrap-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istrap-float--one {
  top: 4px;
  left: 0;
}

.istrap-float--two {
  top: 200px;
  left: -10px;
}

.istrap-float--three {
  bottom: 40px;
  right: -6px;
}

.istrap-float--four {
  bottom: -6px;
  left: 40px;
}

.istrap-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istrap-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istrap-nav a:hover,
.istrap-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istrap-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istrap-section--soft {
  background: var(--s);
}

.istrap-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istrap-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istrap-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istrap-section__head p:last-of-type {
  margin-bottom: 0;
}

.istrap-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istrap-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istrap-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istrap-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istrap-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istrap-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istrap-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istrap-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istrap-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istrap-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istrap-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istrap-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istrap-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istrap-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istrap-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istrap-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istrap-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istrap-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istrap-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istrap-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istrap-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istrap-threat-row p:last-child {
  color: var(--m);
}

.istrap-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istrap-reg__intro h2,
.istrap-reg__intro p {
  color: #fff !important;
}

.istrap-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istrap-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istrap-reg__accent strong {
  color: #fff;
}

.istrap-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istrap-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istrap-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istrap-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istrap-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istrap-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istrap-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istrap-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istrap-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istrap-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istrap-process article:nth-child(3)::after,
.istrap-process article:nth-child(6)::after,
.istrap-process article:last-child::after {
  display: none;
}

.istrap-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istrap-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istrap-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istrap-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istrap-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istrap-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istrap-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istrap-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrap-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istrap-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istrap-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istrap-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istrap-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istrap-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istrap-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istrap-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istrap-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrap-result-format {
  margin-top: 24px;
}

.istrap-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrap-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istrap-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istrap-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istrap-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istrap-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istrap-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istrap-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istrap-compare__row:last-child {
  border-bottom: none;
}

.istrap-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istrap-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istrap-compare__row--head {
  background: var(--b2);
}

.istrap-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istrap-compare__row--head .istrap-compare__label {
  background: transparent;
}

.istrap-compare__row:not(.istrap-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istrap-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istrap-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istrap-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istrap-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istrap-not__item strong {
  color: var(--b);
}

.istrap-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istrap-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istrap-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istrap-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istrap-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istrap-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istrap-levels {
  display: grid;
  gap: 14px;
}

.istrap-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istrap-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istrap-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istrap-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istrap-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istrap-level__text strong {
  color: var(--b);
}

.istrap-faq-list {
  display: grid;
  gap: 12px;
}

.istrap-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istrap-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istrap-faq summary::-webkit-details-marker {
  display: none;
}

.istrap-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istrap-faq__toggle::before,
.istrap-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istrap-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istrap-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istrap-faq[open] .istrap-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istrap-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istrap-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istrap-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istrap-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istrap-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istrap-service:hover::before {
  transform: scaleX(1);
}

.istrap-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istrap-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istrap-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istrap-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istrap-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istrap-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istrap-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istrap-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istrap-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istrap-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istrap-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istrap-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istrap-checklist li::before {
  content: none;
}

.istrap-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-when__action {
  margin-top: 24px;
}

.istrap-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istrap-result > div:first-child > p {
  color: var(--m);
}

.istrap-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istrap-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istrap-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istrap-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istrap-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istrap-case-list {
  display: grid;
  gap: 20px;
}

.istrap-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istrap-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istrap-case__block {
  margin-bottom: 22px;
}

.istrap-case__block:last-of-type {
  margin-bottom: 0;
}

.istrap-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istrap-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istrap-case__block > p:last-child {
  margin-bottom: 0;
}

.istrap-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istrap-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istrap-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istrap-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istrap-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istrap-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istrap-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istrap-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istrap-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istrap-cta__contacts {
  margin-top: 20px;
}

.istrap-cta__contacts a,
.istrap-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istrap-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istrap-cta__contacts a:last-child,
.istrap-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istrap-cta__contacts a:hover {
  color: #fff;
}

.istrap-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istrapRadarPulse {
  0%, 100% { opacity: .78; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.035); }
}

@keyframes istrapSweepRotate {
  0% { transform: rotate(0deg); opacity: .9; }
  100% { transform: rotate(360deg); opacity: .9; }
}

@keyframes istrapScaleGrow {
  0% { width: 0; }
  50% { width: 168px; }
  85% { width: 168px; }
  100% { width: 0; }
}

@keyframes istrapShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istrap-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istrap-hero__visual {
    min-height: 460px;
  }

  .istrap-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istrap-service-grid,
  .istrap-process,
  .istrap-segment-grid,
  .istrap-segment-grid--3,
  .istrap-diff-grid,
  .istrap-treatment-grid,
  .istrap-related-grid,
  .istrap-not-grid,
  .istrap-scope-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istrap-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istrap-level__bar {
    display: none;
  }

  .istrap-reg,
  .istrap-result,
  .istrap-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istrap-stack__grid,
  .istrap-checklist {
    grid-template-columns: 1fr;
  }

  .istrap-process article:nth-child(3)::after {
    display: block;
  }

  .istrap-process article:nth-child(2n)::after,
  .istrap-process article:last-child::after {
    display: none;
  }

  .istrap-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istrap-hero,
  .istrap-section,
  .istrap-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istrap-hero {
    min-height: 0;
  }

  .istrap-hero h2 {
    font-size: 30px !important;
  }

  .istrap-hero__lead {
    font-size: 16px;
  }

  .istrap-hero__visual {
    min-height: 380px;
  }

  .istrap-illustration {
    width: 400px;
  }

  .istrap-nav {
    top: 58px;
  }

  .istrap-reg__cards,
  .istrap-result__list,
  .istrap-segment-grid,
  .istrap-segment-grid--3,
  .istrap-diff-grid,
  .istrap-prep-grid,
  .istrap-treatment-grid,
  .istrap-related-grid,
  .istrap-not-grid,
  .istrap-scope-grid {
    grid-template-columns: 1fr;
  }

  .istrap-threat-table__head,
  .istrap-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istrap-threat-table__head span:first-child {
    display: none;
  }

  .istrap-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istrap-float__icon {
    width: 28px;
    height: 28px;
  }

  .istrap-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istrap-float__text strong {
    font-size: 11.5px;
  }

  .istrap-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istrap-risk-grid,
  .istrap-service-grid,
  .istrap-process {
    grid-template-columns: 1fr;
  }

  .istrap-process article::after {
    display: none !important;
  }

  .istrap-hero__actions {
    display: grid;
  }

  .istrap-btn {
    width: 100%;
  }

  .istrap-hero__visual {
    min-height: 320px;
  }

  .istrap-illustration {
    width: 330px;
  }

  .istrap-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istrap-radar,
  .istrap-sweep,
  .istrap-scalebar,
  .istrap-shield {
    animation: none;
  }

  .istrap-btn,
  .istrap-risk,
  .istrap-service,
  .istrap-stack__item,
  .istrap-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Консультационные услуги по вопросам информационной безопасности ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-advisory-consulting-v2,
#ist-advisory-consulting-v2 * {
  box-sizing: border-box;
}

#ist-advisory-consulting-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-advisory-consulting-v2 h1,
#ist-advisory-consulting-v2 h2,
#ist-advisory-consulting-v2 h3,
#ist-advisory-consulting-v2 p {
  margin-top: 0;
}

#ist-advisory-consulting-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-advisory-consulting-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-advisory-consulting-v2 a {
  text-decoration: none;
}

.istadv-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istadv-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istadv-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istadv-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istadv-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istadv-hero__content,
.istadv-hero__visual {
  position: relative;
  z-index: 2;
}

.istadv-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istadv-kicker--light {
  color: #ffc29b;
}

.istadv-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istadv-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istadv-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istadv-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istadv-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istadv-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istadv-btn:hover {
  transform: translateY(-2px);
}

.istadv-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istadv-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istadv-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istadv-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istadv-hero__visual {
  min-height: 520px;
}

.istadv-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istadv-check path {
  stroke-dasharray: 46;
  stroke-dashoffset: 46;
  animation: istadvCheckDraw 3.4s ease-in-out infinite;
}

.istadv-orbit-a {
  transform-box: view-box;
  transform-origin: 270px 330px;
  animation: istadvOrbitSpin 5s linear infinite;
}

.istadv-orbit-b {
  transform-box: view-box;
  transform-origin: 270px 330px;
  animation: istadvOrbitSpinReverse 3.6s linear infinite;
}

.istadv-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istadvShieldPulse 3.2s ease-in-out infinite;
}

.istadv-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istadv-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istadv-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istadv-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istadv-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istadv-float--one {
  top: 4px;
  left: 0;
}

.istadv-float--two {
  top: 200px;
  left: -10px;
}

.istadv-float--three {
  bottom: 40px;
  right: -6px;
}

.istadv-float--four {
  bottom: -6px;
  left: 40px;
}

.istadv-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istadv-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istadv-nav a:hover,
.istadv-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istadv-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istadv-section--soft {
  background: var(--s);
}

.istadv-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istadv-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istadv-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istadv-section__head p:last-of-type {
  margin-bottom: 0;
}

.istadv-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istadv-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istadv-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istadv-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istadv-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istadv-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istadv-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istadv-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istadv-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istadv-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istadv-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istadv-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istadv-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istadv-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istadv-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istadv-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istadv-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istadv-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istadv-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istadv-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istadv-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istadv-threat-row p:last-child {
  color: var(--m);
}

.istadv-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istadv-reg__intro h2,
.istadv-reg__intro p {
  color: #fff !important;
}

.istadv-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istadv-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istadv-reg__accent strong {
  color: #fff;
}

.istadv-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istadv-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istadv-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istadv-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istadv-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istadv-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istadv-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istadv-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istadv-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istadv-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istadv-process article:nth-child(3)::after,
.istadv-process article:nth-child(6)::after,
.istadv-process article:last-child::after {
  display: none;
}

.istadv-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istadv-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istadv-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istadv-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istadv-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istadv-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istadv-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istadv-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istadv-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istadv-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istadv-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istadv-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istadv-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istadv-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istadv-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istadv-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istadv-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istadv-result-format {
  margin-top: 24px;
}

.istadv-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istadv-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istadv-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istadv-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istadv-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istadv-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istadv-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istadv-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istadv-compare__row:last-child {
  border-bottom: none;
}

.istadv-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istadv-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istadv-compare__row--head {
  background: var(--b2);
}

.istadv-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istadv-compare__row--head .istadv-compare__label {
  background: transparent;
}

.istadv-compare__row:not(.istadv-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istadv-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istadv-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istadv-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istadv-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istadv-not__item strong {
  color: var(--b);
}

.istadv-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istadv-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istadv-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istadv-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istadv-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istadv-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istadv-levels {
  display: grid;
  gap: 14px;
}

.istadv-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istadv-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istadv-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istadv-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istadv-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istadv-level__text strong {
  color: var(--b);
}

.istadv-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istadv-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istadv-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istadv-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istadv-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istadv-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istadv-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istadv-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istadv-faq-list {
  display: grid;
  gap: 12px;
}

.istadv-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istadv-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istadv-faq summary::-webkit-details-marker {
  display: none;
}

.istadv-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istadv-faq__toggle::before,
.istadv-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istadv-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istadv-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istadv-faq[open] .istadv-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istadv-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istadv-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istadv-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istadv-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istadv-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istadv-service:hover::before {
  transform: scaleX(1);
}

.istadv-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istadv-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istadv-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istadv-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istadv-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istadv-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istadv-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istadv-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istadv-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istadv-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istadv-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istadv-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istadv-checklist li::before {
  content: none;
}

.istadv-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-when__action {
  margin-top: 24px;
}

.istadv-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istadv-result > div:first-child > p {
  color: var(--m);
}

.istadv-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istadv-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istadv-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istadv-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istadv-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istadv-case-list {
  display: grid;
  gap: 20px;
}

.istadv-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istadv-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istadv-case__block {
  margin-bottom: 22px;
}

.istadv-case__block:last-of-type {
  margin-bottom: 0;
}

.istadv-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istadv-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istadv-case__block > p:last-child {
  margin-bottom: 0;
}

.istadv-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istadv-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istadv-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istadv-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istadv-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istadv-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istadv-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istadv-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istadv-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istadv-cta__contacts {
  margin-top: 20px;
}

.istadv-cta__contacts a,
.istadv-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istadv-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istadv-cta__contacts a:last-child,
.istadv-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istadv-cta__contacts a:hover {
  color: #fff;
}

.istadv-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istadvCheckDraw {
  0%, 15% { stroke-dashoffset: 46; }
  50%, 85% { stroke-dashoffset: 0; }
  100% { stroke-dashoffset: 46; }
}

@keyframes istadvOrbitSpin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@keyframes istadvOrbitSpinReverse {
  0% { transform: rotate(360deg); }
  100% { transform: rotate(0deg); }
}

@keyframes istadvShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istadv-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istadv-hero__visual {
    min-height: 460px;
  }

  .istadv-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istadv-service-grid,
  .istadv-process,
  .istadv-segment-grid,
  .istadv-segment-grid--3,
  .istadv-diff-grid,
  .istadv-treatment-grid,
  .istadv-related-grid,
  .istadv-not-grid,
  .istadv-scope-grid,
  .istadv-formats-grid,
  .istadv-value-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istadv-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istadv-level__bar {
    display: none;
  }

  .istadv-reg,
  .istadv-result,
  .istadv-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istadv-stack__grid,
  .istadv-checklist {
    grid-template-columns: 1fr;
  }

  .istadv-process article:nth-child(3)::after {
    display: block;
  }

  .istadv-process article:nth-child(2n)::after,
  .istadv-process article:last-child::after {
    display: none;
  }

  .istadv-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istadv-hero,
  .istadv-section,
  .istadv-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istadv-hero {
    min-height: 0;
  }

  .istadv-hero h2 {
    font-size: 30px !important;
  }

  .istadv-hero__lead {
    font-size: 16px;
  }

  .istadv-hero__visual {
    min-height: 380px;
  }

  .istadv-illustration {
    width: 400px;
  }

  .istadv-nav {
    top: 58px;
  }

  .istadv-reg__cards,
  .istadv-result__list,
  .istadv-segment-grid,
  .istadv-segment-grid--3,
  .istadv-diff-grid,
  .istadv-prep-grid,
  .istadv-treatment-grid,
  .istadv-related-grid,
  .istadv-not-grid,
  .istadv-scope-grid,
  .istadv-formats-grid,
  .istadv-value-grid {
    grid-template-columns: 1fr;
  }

  .istadv-threat-table__head,
  .istadv-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istadv-threat-table__head span:first-child {
    display: none;
  }

  .istadv-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istadv-float__icon {
    width: 28px;
    height: 28px;
  }

  .istadv-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istadv-float__text strong {
    font-size: 11.5px;
  }

  .istadv-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istadv-risk-grid,
  .istadv-service-grid,
  .istadv-process {
    grid-template-columns: 1fr;
  }

  .istadv-process article::after {
    display: none !important;
  }

  .istadv-hero__actions {
    display: grid;
  }

  .istadv-btn {
    width: 100%;
  }

  .istadv-hero__visual {
    min-height: 320px;
  }

  .istadv-illustration {
    width: 330px;
  }

  .istadv-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istadv-check path,
  .istadv-orbit-a,
  .istadv-orbit-b,
  .istadv-shield {
    animation: none;
  }

  .istadv-btn,
  .istadv-risk,
  .istadv-service,
  .istadv-stack__item,
  .istadv-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Аудит защищённости веб-приложений ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-webaudit-security-v2,
#ist-webaudit-security-v2 * {
  box-sizing: border-box;
}

#ist-webaudit-security-v2 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-webaudit-security-v2 h1,
#ist-webaudit-security-v2 h2,
#ist-webaudit-security-v2 h3,
#ist-webaudit-security-v2 p {
  margin-top: 0;
}

#ist-webaudit-security-v2 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-webaudit-security-v2 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-webaudit-security-v2 a {
  text-decoration: none;
}

.istwa-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istwa-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istwa-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istwa-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istwa-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istwa-hero__content,
.istwa-hero__visual {
  position: relative;
  z-index: 2;
}

.istwa-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istwa-kicker--light {
  color: #ffc29b;
}

.istwa-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istwa-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istwa-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istwa-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istwa-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istwa-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istwa-btn:hover {
  transform: translateY(-2px);
}

.istwa-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istwa-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istwa-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istwa-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istwa-hero__visual {
  min-height: 520px;
}

.istwa-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istwa-scan rect {
  animation: istwaScanSweep 2.6s ease-in-out infinite;
}

.istwa-bug {
  transform-box: view-box;
  transform-origin: 330px 270px;
  animation: istwaBugFade 3.6s ease-in-out infinite;
}

.istwa-check {
  transform-box: view-box;
  transform-origin: 330px 270px;
  opacity: 0;
  animation: istwaCheckFade 3.6s ease-in-out infinite;
}

.istwa-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istwaShieldPulse 3.2s ease-in-out infinite;
}

.istwa-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istwa-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istwa-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istwa-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istwa-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istwa-float--one {
  top: 4px;
  left: 0;
}

.istwa-float--two {
  top: 200px;
  left: -10px;
}

.istwa-float--three {
  bottom: 40px;
  right: -6px;
}

.istwa-float--four {
  bottom: -6px;
  left: 40px;
}

.istwa-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istwa-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istwa-nav a:hover,
.istwa-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istwa-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istwa-section--soft {
  background: var(--s);
}

.istwa-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istwa-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istwa-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istwa-section__head p:last-of-type {
  margin-bottom: 0;
}

.istwa-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istwa-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istwa-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istwa-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istwa-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istwa-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istwa-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istwa-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istwa-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istwa-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istwa-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istwa-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istwa-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istwa-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istwa-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istwa-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istwa-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istwa-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istwa-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istwa-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istwa-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istwa-threat-row p:last-child {
  color: var(--m);
}

.istwa-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istwa-reg__intro h2,
.istwa-reg__intro p {
  color: #fff !important;
}

.istwa-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istwa-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istwa-reg__accent strong {
  color: #fff;
}

.istwa-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istwa-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istwa-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istwa-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istwa-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istwa-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istwa-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istwa-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istwa-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istwa-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istwa-process article:nth-child(3)::after,
.istwa-process article:nth-child(6)::after,
.istwa-process article:last-child::after {
  display: none;
}

.istwa-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istwa-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istwa-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istwa-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istwa-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istwa-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istwa-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istwa-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istwa-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istwa-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istwa-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istwa-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istwa-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istwa-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istwa-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istwa-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istwa-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istwa-result-format {
  margin-top: 24px;
}

.istwa-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istwa-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istwa-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istwa-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istwa-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istwa-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istwa-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istwa-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istwa-compare__row:last-child {
  border-bottom: none;
}

.istwa-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istwa-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istwa-compare__row--head {
  background: var(--b2);
}

.istwa-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istwa-compare__row--head .istwa-compare__label {
  background: transparent;
}

.istwa-compare__row:not(.istwa-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istwa-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istwa-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istwa-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istwa-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istwa-not__item strong {
  color: var(--b);
}

.istwa-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istwa-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istwa-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istwa-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istwa-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istwa-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istwa-levels {
  display: grid;
  gap: 14px;
}

.istwa-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istwa-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istwa-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istwa-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istwa-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istwa-level__text strong {
  color: var(--b);
}

.istwa-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istwa-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istwa-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istwa-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istwa-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istwa-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istwa-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istwa-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istwa-faq-list {
  display: grid;
  gap: 12px;
}

.istwa-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istwa-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istwa-faq summary::-webkit-details-marker {
  display: none;
}

.istwa-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istwa-faq__toggle::before,
.istwa-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istwa-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istwa-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istwa-faq[open] .istwa-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istwa-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istwa-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istwa-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istwa-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istwa-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istwa-service:hover::before {
  transform: scaleX(1);
}

.istwa-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istwa-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istwa-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istwa-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istwa-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istwa-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istwa-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istwa-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istwa-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istwa-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istwa-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istwa-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istwa-checklist li::before {
  content: none;
}

.istwa-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-when__action {
  margin-top: 24px;
}

.istwa-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istwa-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istwa-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istwa-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istwa-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istwa-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istwa-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istwa-result > div:first-child > p {
  color: var(--m);
}

.istwa-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istwa-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istwa-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istwa-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istwa-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istwa-case-list {
  display: grid;
  gap: 20px;
}

.istwa-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istwa-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istwa-case__block {
  margin-bottom: 22px;
}

.istwa-case__block:last-of-type {
  margin-bottom: 0;
}

.istwa-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istwa-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istwa-case__block > p:last-child {
  margin-bottom: 0;
}

.istwa-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istwa-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istwa-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istwa-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istwa-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istwa-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istwa-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istwa-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istwa-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istwa-cta__contacts {
  margin-top: 20px;
}

.istwa-cta__contacts a,
.istwa-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istwa-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istwa-cta__contacts a:last-child,
.istwa-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istwa-cta__contacts a:hover {
  color: #fff;
}

.istwa-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istwaScanSweep {
  0% { transform: translateY(0); opacity: 0; }
  8% { opacity: 1; }
  46% { transform: translateY(146px); opacity: 1; }
  54% { opacity: 0; }
  100% { transform: translateY(0); opacity: 0; }
}

@keyframes istwaBugFade {
  0%, 40% { opacity: 1; transform: scale(1); }
  55%, 100% { opacity: 0; transform: scale(.7); }
}

@keyframes istwaCheckFade {
  0%, 40% { opacity: 0; transform: scale(.7); }
  55%, 100% { opacity: 1; transform: scale(1); }
}

@keyframes istwaShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istwa-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istwa-hero__visual {
    min-height: 460px;
  }

  .istwa-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istwa-service-grid,
  .istwa-process,
  .istwa-segment-grid,
  .istwa-segment-grid--3,
  .istwa-diff-grid,
  .istwa-treatment-grid,
  .istwa-related-grid,
  .istwa-not-grid,
  .istwa-scope-grid,
  .istwa-formats-grid,
  .istwa-value-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istwa-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istwa-level__bar {
    display: none;
  }

  .istwa-reg,
  .istwa-result,
  .istwa-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istwa-stack__grid,
  .istwa-checklist {
    grid-template-columns: 1fr;
  }

  .istwa-process article:nth-child(3)::after {
    display: block;
  }

  .istwa-process article:nth-child(2n)::after,
  .istwa-process article:last-child::after {
    display: none;
  }

  .istwa-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istwa-hero,
  .istwa-section,
  .istwa-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istwa-hero {
    min-height: 0;
  }

  .istwa-hero h2 {
    font-size: 30px !important;
  }

  .istwa-hero__lead {
    font-size: 16px;
  }

  .istwa-hero__visual {
    min-height: 380px;
  }

  .istwa-illustration {
    width: 400px;
  }

  .istwa-nav {
    top: 58px;
  }

  .istwa-reg__cards,
  .istwa-result__list,
  .istwa-segment-grid,
  .istwa-segment-grid--3,
  .istwa-diff-grid,
  .istwa-prep-grid,
  .istwa-treatment-grid,
  .istwa-related-grid,
  .istwa-not-grid,
  .istwa-scope-grid,
  .istwa-formats-grid,
  .istwa-value-grid {
    grid-template-columns: 1fr;
  }

  .istwa-threat-table__head,
  .istwa-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istwa-threat-table__head span:first-child {
    display: none;
  }

  .istwa-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istwa-float__icon {
    width: 28px;
    height: 28px;
  }

  .istwa-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istwa-float__text strong {
    font-size: 11.5px;
  }

  .istwa-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istwa-risk-grid,
  .istwa-service-grid,
  .istwa-process {
    grid-template-columns: 1fr;
  }

  .istwa-process article::after {
    display: none !important;
  }

  .istwa-hero__actions {
    display: grid;
  }

  .istwa-btn {
    width: 100%;
  }

  .istwa-hero__visual {
    min-height: 320px;
  }

  .istwa-illustration {
    width: 330px;
  }

  .istwa-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istwa-scan rect,
  .istwa-bug,
  .istwa-check,
  .istwa-shield {
    animation: none;
  }

  .istwa-btn,
  .istwa-risk,
  .istwa-service,
  .istwa-stack__item,
  .istwa-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Аудит конфигураций (AD, сеть, почта, облако) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-configaudit-security-v1,
#ist-configaudit-security-v1 * {
  box-sizing: border-box;
}

#ist-configaudit-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-configaudit-security-v1 h1,
#ist-configaudit-security-v1 h2,
#ist-configaudit-security-v1 h3,
#ist-configaudit-security-v1 p {
  margin-top: 0;
}

#ist-configaudit-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-configaudit-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-configaudit-security-v1 a {
  text-decoration: none;
}

.istac-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istac-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istac-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istac-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istac-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istac-hero__content,
.istac-hero__visual {
  position: relative;
  z-index: 2;
}

.istac-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istac-kicker--light {
  color: #ffc29b;
}

.istac-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istac-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istac-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istac-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istac-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istac-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istac-btn:hover {
  transform: translateY(-2px);
}

.istac-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istac-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istac-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istac-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istac-hero__visual {
  min-height: 520px;
}

.istac-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istac-toggle__knob {
  transform-box: fill-box;
  transform-origin: center;
}

.istac-toggle--1 .istac-toggle__knob { animation: istacKnobOff 5.2s ease-in-out infinite; }
.istac-toggle--2 .istac-toggle__knob { animation: istacKnobOn 5.2s ease-in-out infinite .35s; }
.istac-toggle--3 .istac-toggle__knob { animation: istacKnobOn 5.2s ease-in-out infinite .7s; }
.istac-toggle--4 .istac-toggle__knob { animation: istacKnobOff 5.2s ease-in-out infinite 1.05s; }

.istac-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istacShieldPulse 3.2s ease-in-out infinite;
}

.istac-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istac-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istac-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istac-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istac-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istac-float--one {
  top: 4px;
  left: 0;
}

.istac-float--two {
  top: 200px;
  left: -10px;
}

.istac-float--three {
  bottom: 40px;
  right: -6px;
}

.istac-float--four {
  bottom: -6px;
  left: 40px;
}

.istac-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istac-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istac-nav a:hover,
.istac-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istac-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istac-section--soft {
  background: var(--s);
}

.istac-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istac-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istac-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istac-section__head p:last-of-type {
  margin-bottom: 0;
}

.istac-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istac-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istac-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istac-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istac-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istac-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istac-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istac-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istac-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istac-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istac-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istac-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istac-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istac-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istac-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istac-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istac-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istac-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istac-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istac-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istac-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istac-threat-row p:last-child {
  color: var(--m);
}

.istac-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istac-reg__intro h2,
.istac-reg__intro p {
  color: #fff !important;
}

.istac-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istac-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istac-reg__accent strong {
  color: #fff;
}

.istac-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istac-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istac-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istac-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istac-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istac-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istac-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istac-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istac-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istac-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istac-process article:nth-child(3)::after,
.istac-process article:nth-child(6)::after,
.istac-process article:last-child::after {
  display: none;
}

.istac-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istac-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istac-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istac-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istac-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istac-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istac-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istac-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istac-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istac-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istac-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istac-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istac-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istac-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istac-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istac-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istac-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istac-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istac-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istac-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istac-result-format {
  margin-top: 24px;
}

.istac-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istac-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istac-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istac-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istac-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istac-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istac-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istac-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istac-compare__row:last-child {
  border-bottom: none;
}

.istac-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istac-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istac-compare__row--head {
  background: var(--b2);
}

.istac-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istac-compare__row--head .istac-compare__label {
  background: transparent;
}

.istac-compare__row:not(.istac-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istac-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istac-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istac-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istac-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istac-not__item strong {
  color: var(--b);
}

.istac-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istac-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istac-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istac-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istac-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istac-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istac-levels {
  display: grid;
  gap: 14px;
}

.istac-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istac-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istac-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istac-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istac-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istac-level__text strong {
  color: var(--b);
}

.istac-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istac-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istac-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istac-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istac-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istac-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istac-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istac-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istac-faq-list {
  display: grid;
  gap: 12px;
}

.istac-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istac-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istac-faq summary::-webkit-details-marker {
  display: none;
}

.istac-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istac-faq__toggle::before,
.istac-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istac-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istac-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istac-faq[open] .istac-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istac-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istac-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istac-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istac-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istac-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istac-service:hover::before {
  transform: scaleX(1);
}

.istac-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istac-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istac-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istac-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istac-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istac-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istac-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istac-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istac-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istac-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istac-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istac-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istac-checklist li::before {
  content: none;
}

.istac-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-when__action {
  margin-top: 24px;
}

.istac-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istac-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istac-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istac-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istac-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istac-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istac-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istac-result > div:first-child > p {
  color: var(--m);
}

.istac-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istac-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istac-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istac-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istac-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istac-case-list {
  display: grid;
  gap: 20px;
}

.istac-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istac-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istac-case__block {
  margin-bottom: 22px;
}

.istac-case__block:last-of-type {
  margin-bottom: 0;
}

.istac-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istac-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istac-case__block > p:last-child {
  margin-bottom: 0;
}

.istac-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istac-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istac-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istac-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istac-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istac-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istac-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istac-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istac-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istac-cta__contacts {
  margin-top: 20px;
}

.istac-cta__contacts a,
.istac-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istac-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istac-cta__contacts a:last-child,
.istac-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istac-cta__contacts a:hover {
  color: #fff;
}

.istac-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istacKnobOff {
  0%, 12% { transform: translateX(0); fill: #e5554d; }
  38%, 62% { transform: translateX(38px); fill: #2ea36e; }
  88%, 100% { transform: translateX(0); fill: #e5554d; }
}

@keyframes istacKnobOn {
  0%, 12% { transform: translateX(0); fill: #6c7889; }
  38%, 62% { transform: translateX(38px); fill: #2ea36e; }
  88%, 100% { transform: translateX(0); fill: #6c7889; }
}

@keyframes istacShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istac-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istac-hero__visual {
    min-height: 460px;
  }

  .istac-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istac-service-grid,
  .istac-process,
  .istac-segment-grid,
  .istac-segment-grid--3,
  .istac-diff-grid,
  .istac-treatment-grid,
  .istac-related-grid,
  .istac-not-grid,
  .istac-scope-grid,
  .istac-formats-grid,
  .istac-value-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istac-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istac-level__bar {
    display: none;
  }

  .istac-reg,
  .istac-result,
  .istac-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istac-stack__grid,
  .istac-checklist {
    grid-template-columns: 1fr;
  }

  .istac-process article:nth-child(3)::after {
    display: block;
  }

  .istac-process article:nth-child(2n)::after,
  .istac-process article:last-child::after {
    display: none;
  }

  .istac-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istac-hero,
  .istac-section,
  .istac-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istac-hero {
    min-height: 0;
  }

  .istac-hero h2 {
    font-size: 30px !important;
  }

  .istac-hero__lead {
    font-size: 16px;
  }

  .istac-hero__visual {
    min-height: 380px;
  }

  .istac-illustration {
    width: 400px;
  }

  .istac-nav {
    top: 58px;
  }

  .istac-reg__cards,
  .istac-result__list,
  .istac-segment-grid,
  .istac-segment-grid--3,
  .istac-diff-grid,
  .istac-prep-grid,
  .istac-treatment-grid,
  .istac-related-grid,
  .istac-not-grid,
  .istac-scope-grid,
  .istac-formats-grid,
  .istac-value-grid {
    grid-template-columns: 1fr;
  }

  .istac-threat-table__head,
  .istac-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istac-threat-table__head span:first-child {
    display: none;
  }

  .istac-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istac-float__icon {
    width: 28px;
    height: 28px;
  }

  .istac-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istac-float__text strong {
    font-size: 11.5px;
  }

  .istac-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istac-risk-grid,
  .istac-service-grid,
  .istac-process {
    grid-template-columns: 1fr;
  }

  .istac-process article::after {
    display: none !important;
  }

  .istac-hero__actions {
    display: grid;
  }

  .istac-btn {
    width: 100%;
  }

  .istac-hero__visual {
    min-height: 320px;
  }

  .istac-illustration {
    width: 330px;
  }

  .istac-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istac-toggle__knob,
  .istac-shield {
    animation: none;
  }

  .istac-btn,
  .istac-risk,
  .istac-service,
  .istac-stack__item,
  .istac-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Аудит уязвимостей ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-vulnaudit-security-v1,
#ist-vulnaudit-security-v1 * {
  box-sizing: border-box;
}

#ist-vulnaudit-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-vulnaudit-security-v1 h1,
#ist-vulnaudit-security-v1 h2,
#ist-vulnaudit-security-v1 h3,
#ist-vulnaudit-security-v1 p {
  margin-top: 0;
}

#ist-vulnaudit-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-vulnaudit-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-vulnaudit-security-v1 a {
  text-decoration: none;
}

.istva-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istva-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istva-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istva-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istva-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istva-hero__content,
.istva-hero__visual {
  position: relative;
  z-index: 2;
}

.istva-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istva-kicker--light {
  color: #ffc29b;
}

.istva-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istva-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istva-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istva-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istva-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istva-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istva-btn:hover {
  transform: translateY(-2px);
}

.istva-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istva-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istva-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istva-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istva-hero__visual {
  min-height: 520px;
}

.istva-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istva-row {
  transform-box: fill-box;
  transform-origin: center;
}

.istva-row--fading {
  animation: istvaRowDissolve 4.4s ease-in-out infinite;
}

.istva-row--5 {
  opacity: 0;
  animation: istvaRowResolve 4.4s ease-in-out infinite;
}

.istva-check-mini {
  stroke-dasharray: 18;
  stroke-dashoffset: 18;
  animation: istvaCheckDraw 4.4s ease-in-out infinite;
}

.istva-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istvaShieldPulse 3.2s ease-in-out infinite;
}

.istva-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istva-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istva-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istva-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istva-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istva-float--one {
  top: 4px;
  left: 0;
}

.istva-float--two {
  top: 200px;
  left: -10px;
}

.istva-float--three {
  bottom: 40px;
  right: -6px;
}

.istva-float--four {
  bottom: -6px;
  left: 40px;
}

.istva-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istva-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istva-nav a:hover,
.istva-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istva-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istva-section--soft {
  background: var(--s);
}

.istva-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istva-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istva-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istva-section__head p:last-of-type {
  margin-bottom: 0;
}

.istva-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istva-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istva-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istva-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istva-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istva-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istva-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istva-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istva-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istva-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istva-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istva-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istva-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istva-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istva-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istva-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istva-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istva-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istva-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istva-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istva-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istva-threat-row p:last-child {
  color: var(--m);
}

.istva-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istva-reg__intro h2,
.istva-reg__intro p {
  color: #fff !important;
}

.istva-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istva-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istva-reg__accent strong {
  color: #fff;
}

.istva-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istva-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istva-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istva-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istva-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istva-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istva-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istva-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istva-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istva-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istva-process article:nth-child(3)::after,
.istva-process article:nth-child(6)::after,
.istva-process article:last-child::after {
  display: none;
}

.istva-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istva-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istva-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istva-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istva-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istva-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istva-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istva-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istva-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istva-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istva-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istva-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istva-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istva-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istva-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istva-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istva-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istva-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istva-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istva-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istva-result-format {
  margin-top: 24px;
}

.istva-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istva-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istva-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istva-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istva-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istva-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istva-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istva-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istva-compare__row:last-child {
  border-bottom: none;
}

.istva-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istva-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istva-compare__row--head {
  background: var(--b2);
}

.istva-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istva-compare__row--head .istva-compare__label {
  background: transparent;
}

.istva-compare__row:not(.istva-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istva-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istva-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istva-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istva-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istva-not__item strong {
  color: var(--b);
}

.istva-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istva-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istva-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istva-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istva-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istva-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istva-levels {
  display: grid;
  gap: 14px;
}

.istva-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istva-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istva-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istva-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istva-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istva-level__text strong {
  color: var(--b);
}

.istva-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istva-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istva-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istva-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istva-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istva-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istva-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istva-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istva-faq-list {
  display: grid;
  gap: 12px;
}

.istva-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istva-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istva-faq summary::-webkit-details-marker {
  display: none;
}

.istva-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istva-faq__toggle::before,
.istva-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istva-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istva-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istva-faq[open] .istva-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istva-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istva-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istva-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istva-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istva-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istva-service:hover::before {
  transform: scaleX(1);
}

.istva-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istva-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istva-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istva-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istva-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istva-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istva-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istva-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istva-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istva-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istva-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istva-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
}

.istva-checklist li::before {
  content: none;
}

.istva-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-when__action {
  margin-top: 24px;
}

.istva-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istva-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istva-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istva-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istva-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istva-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istva-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istva-result > div:first-child > p {
  color: var(--m);
}

.istva-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istva-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istva-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istva-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istva-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istva-case-list {
  display: grid;
  gap: 20px;
}

.istva-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istva-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istva-case__block {
  margin-bottom: 22px;
}

.istva-case__block:last-of-type {
  margin-bottom: 0;
}

.istva-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istva-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istva-case__block > p:last-child {
  margin-bottom: 0;
}

.istva-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istva-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istva-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istva-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istva-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istva-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istva-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istva-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istva-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istva-cta__contacts {
  margin-top: 20px;
}

.istva-cta__contacts a,
.istva-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istva-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istva-cta__contacts a:last-child,
.istva-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istva-cta__contacts a:hover {
  color: #fff;
}

.istva-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istvaRowDissolve {
  0%, 45% { opacity: 1; transform: translateX(0); }
  65%, 100% { opacity: 0; transform: translateX(14px); }
}

@keyframes istvaRowResolve {
  0%, 55% { opacity: 0; transform: translateY(6px); }
  75%, 100% { opacity: 1; transform: translateY(0); }
}

@keyframes istvaCheckDraw {
  0%, 60% { stroke-dashoffset: 18; }
  85%, 100% { stroke-dashoffset: 0; }
}

@keyframes istvaShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istva-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istva-hero__visual {
    min-height: 460px;
  }

  .istva-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istva-service-grid,
  .istva-process,
  .istva-segment-grid,
  .istva-segment-grid--3,
  .istva-diff-grid,
  .istva-treatment-grid,
  .istva-related-grid,
  .istva-not-grid,
  .istva-scope-grid,
  .istva-formats-grid,
  .istva-value-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istva-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istva-level__bar {
    display: none;
  }

  .istva-reg,
  .istva-result,
  .istva-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istva-stack__grid,
  .istva-checklist {
    grid-template-columns: 1fr;
  }

  .istva-process article:nth-child(3)::after {
    display: block;
  }

  .istva-process article:nth-child(2n)::after,
  .istva-process article:last-child::after {
    display: none;
  }

  .istva-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istva-hero,
  .istva-section,
  .istva-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istva-hero {
    min-height: 0;
  }

  .istva-hero h2 {
    font-size: 30px !important;
  }

  .istva-hero__lead {
    font-size: 16px;
  }

  .istva-hero__visual {
    min-height: 380px;
  }

  .istva-illustration {
    width: 400px;
  }

  .istva-nav {
    top: 58px;
  }

  .istva-reg__cards,
  .istva-result__list,
  .istva-segment-grid,
  .istva-segment-grid--3,
  .istva-diff-grid,
  .istva-prep-grid,
  .istva-treatment-grid,
  .istva-related-grid,
  .istva-not-grid,
  .istva-scope-grid,
  .istva-formats-grid,
  .istva-value-grid {
    grid-template-columns: 1fr;
  }

  .istva-threat-table__head,
  .istva-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istva-threat-table__head span:first-child {
    display: none;
  }

  .istva-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istva-float__icon {
    width: 28px;
    height: 28px;
  }

  .istva-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istva-float__text strong {
    font-size: 11.5px;
  }

  .istva-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istva-risk-grid,
  .istva-service-grid,
  .istva-process {
    grid-template-columns: 1fr;
  }

  .istva-process article::after {
    display: none !important;
  }

  .istva-hero__actions {
    display: grid;
  }

  .istva-btn {
    width: 100%;
  }

  .istva-hero__visual {
    min-height: 320px;
  }

  .istva-illustration {
    width: 330px;
  }

  .istva-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istva-row--fading,
  .istva-row--5,
  .istva-check-mini,
  .istva-shield {
    animation: none;
  }

  .istva-btn,
  .istva-risk,
  .istva-service,
  .istva-stack__item,
  .istva-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Тестирование на проникновение (пентест) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-pentest-security-v1,
#ist-pentest-security-v1 * {
  box-sizing: border-box;
}

#ist-pentest-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-pentest-security-v1 h1,
#ist-pentest-security-v1 h2,
#ist-pentest-security-v1 h3,
#ist-pentest-security-v1 p {
  margin-top: 0;
}

#ist-pentest-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-pentest-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-pentest-security-v1 a {
  text-decoration: none;
}

.istpt-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istpt-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istpt-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istpt-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istpt-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istpt-hero__content,
.istpt-hero__visual {
  position: relative;
  z-index: 2;
}

.istpt-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istpt-kicker--light {
  color: #ffc29b;
}

.istpt-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istpt-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istpt-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istpt-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istpt-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istpt-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istpt-btn:hover {
  transform: translateY(-2px);
}

.istpt-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istpt-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istpt-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istpt-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istpt-hero__visual {
  min-height: 520px;
}

.istpt-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istpt-node {
  opacity: .25;
  transform-box: fill-box;
  transform-origin: center;
}

.istpt-node--1 { animation: istptNodeLight 4.8s ease-in-out infinite; }
.istpt-node--2 { animation: istptNodeLight 4.8s ease-in-out infinite .5s; }
.istpt-node--3 { animation: istptNodeLight 4.8s ease-in-out infinite 1s; }

.istpt-node--4 {
  opacity: 0;
  animation: istptNodeFinal 4.8s ease-in-out infinite;
}

.istpt-link {
  stroke-dasharray: 60;
  stroke-dashoffset: 60;
  opacity: 0;
}

.istpt-link--1 { animation: istptLinkDraw 4.8s ease-in-out infinite .25s; }
.istpt-link--2 { animation: istptLinkDraw 4.8s ease-in-out infinite .75s; }
.istpt-link--3 { animation: istptLinkDraw 4.8s ease-in-out infinite 1.25s; }

.istpt-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istptShieldPulse 3.2s ease-in-out infinite;
}

.istpt-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istpt-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istpt-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istpt-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istpt-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istpt-float--one {
  top: 4px;
  left: 0;
}

.istpt-float--two {
  top: 200px;
  left: -10px;
}

.istpt-float--three {
  bottom: 40px;
  right: -6px;
}

.istpt-float--four {
  bottom: -6px;
  left: 40px;
}

.istpt-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istpt-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istpt-nav a:hover,
.istpt-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istpt-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istpt-section--soft {
  background: var(--s);
}

.istpt-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istpt-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istpt-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istpt-section__head p:last-of-type {
  margin-bottom: 0;
}

.istpt-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istpt-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istpt-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istpt-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istpt-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istpt-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istpt-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istpt-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istpt-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpt-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istpt-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istpt-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istpt-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istpt-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istpt-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istpt-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istpt-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istpt-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istpt-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istpt-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istpt-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istpt-threat-row p:last-child {
  color: var(--m);
}

.istpt-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istpt-reg__intro h2,
.istpt-reg__intro p {
  color: #fff !important;
}

.istpt-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istpt-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istpt-reg__accent strong {
  color: #fff;
}

.istpt-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istpt-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istpt-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istpt-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istpt-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istpt-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istpt-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istpt-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istpt-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istpt-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istpt-process article:nth-child(3)::after,
.istpt-process article:nth-child(6)::after,
.istpt-process article:last-child::after {
  display: none;
}

.istpt-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istpt-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istpt-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istpt-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istpt-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istpt-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istpt-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istpt-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istpt-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istpt-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istpt-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpt-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istpt-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istpt-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istpt-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istpt-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istpt-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istpt-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istpt-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istpt-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpt-result-format {
  margin-top: 24px;
}

.istpt-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpt-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istpt-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istpt-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpt-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istpt-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpt-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istpt-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istpt-compare__row:last-child {
  border-bottom: none;
}

.istpt-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istpt-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istpt-compare__row--head {
  background: var(--b2);
}

.istpt-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istpt-compare__row--head .istpt-compare__label {
  background: transparent;
}

.istpt-compare__row:not(.istpt-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istpt-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istpt-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istpt-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istpt-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istpt-not__item strong {
  color: var(--b);
}

.istpt-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istpt-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istpt-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpt-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istpt-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istpt-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpt-levels {
  display: grid;
  gap: 14px;
}

.istpt-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istpt-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istpt-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istpt-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istpt-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istpt-level__text strong {
  color: var(--b);
}

.istpt-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istpt-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istpt-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istpt-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istpt-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istpt-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istpt-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istpt-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istpt-faq-list {
  display: grid;
  gap: 12px;
}

.istpt-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istpt-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istpt-faq summary::-webkit-details-marker {
  display: none;
}

.istpt-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istpt-faq__toggle::before,
.istpt-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istpt-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istpt-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istpt-faq[open] .istpt-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istpt-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpt-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istpt-service {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: .24s ease;
}

.istpt-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istpt-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istpt-service:hover::before {
  transform: scaleX(1);
}

.istpt-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istpt-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istpt-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istpt-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istpt-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istpt-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istpt-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istpt-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpt-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istpt-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istpt-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istpt-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istpt-checklist li::before {
  content: none;
}

.istpt-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istpt-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-when__action {
  margin-top: 24px;
}

.istpt-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istpt-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istpt-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istpt-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istpt-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istpt-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istpt-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istpt-result > div:first-child > p {
  color: var(--m);
}

.istpt-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istpt-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istpt-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istpt-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istpt-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istpt-case-list {
  display: grid;
  gap: 20px;
}

.istpt-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istpt-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istpt-case__block {
  margin-bottom: 22px;
}

.istpt-case__block:last-of-type {
  margin-bottom: 0;
}

.istpt-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istpt-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istpt-case__block > p:last-child {
  margin-bottom: 0;
}

.istpt-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istpt-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istpt-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istpt-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istpt-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istpt-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istpt-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istpt-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istpt-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istpt-cta__contacts {
  margin-top: 20px;
}

.istpt-cta__contacts a,
.istpt-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istpt-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpt-cta__contacts a:last-child,
.istpt-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istpt-cta__contacts a:hover {
  color: #fff;
}

.istpt-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istptNodeLight {
  0%, 8% { opacity: .25; transform: scale(1); }
  20%, 90% { opacity: 1; transform: scale(1.12); }
  100% { opacity: .25; transform: scale(1); }
}

@keyframes istptLinkDraw {
  0%, 8% { opacity: 0; stroke-dashoffset: 60; }
  20%, 90% { opacity: 1; stroke-dashoffset: 0; }
  100% { opacity: 0; stroke-dashoffset: 60; }
}

@keyframes istptNodeFinal {
  0%, 55% { opacity: 0; transform: scale(.7); }
  75%, 90% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(.7); }
}

@keyframes istptShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istpt-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istpt-hero__visual {
    min-height: 460px;
  }

  .istpt-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istpt-service-grid,
  .istpt-process,
  .istpt-segment-grid,
  .istpt-segment-grid--3,
  .istpt-diff-grid,
  .istpt-treatment-grid,
  .istpt-related-grid,
  .istpt-not-grid,
  .istpt-scope-grid,
  .istpt-formats-grid,
  .istpt-value-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istpt-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istpt-level__bar {
    display: none;
  }

  .istpt-reg,
  .istpt-result,
  .istpt-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istpt-stack__grid,
  .istpt-checklist {
    grid-template-columns: 1fr;
  }

  .istpt-process article:nth-child(3)::after {
    display: block;
  }

  .istpt-process article:nth-child(2n)::after,
  .istpt-process article:last-child::after {
    display: none;
  }

  .istpt-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istpt-hero,
  .istpt-section,
  .istpt-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istpt-hero {
    min-height: 0;
  }

  .istpt-hero h2 {
    font-size: 30px !important;
  }

  .istpt-hero__lead {
    font-size: 16px;
  }

  .istpt-hero__visual {
    min-height: 380px;
  }

  .istpt-illustration {
    width: 400px;
  }

  .istpt-nav {
    top: 58px;
  }

  .istpt-reg__cards,
  .istpt-result__list,
  .istpt-segment-grid,
  .istpt-segment-grid--3,
  .istpt-diff-grid,
  .istpt-prep-grid,
  .istpt-treatment-grid,
  .istpt-related-grid,
  .istpt-not-grid,
  .istpt-scope-grid,
  .istpt-formats-grid,
  .istpt-value-grid {
    grid-template-columns: 1fr;
  }

  .istpt-threat-table__head,
  .istpt-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istpt-threat-table__head span:first-child {
    display: none;
  }

  .istpt-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istpt-float__icon {
    width: 28px;
    height: 28px;
  }

  .istpt-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istpt-float__text strong {
    font-size: 11.5px;
  }

  .istpt-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istpt-risk-grid,
  .istpt-service-grid,
  .istpt-process {
    grid-template-columns: 1fr;
  }

  .istpt-process article::after {
    display: none !important;
  }

  .istpt-hero__actions {
    display: grid;
  }

  .istpt-btn {
    width: 100%;
  }

  .istpt-hero__visual {
    min-height: 320px;
  }

  .istpt-illustration {
    width: 330px;
  }

  .istpt-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istpt-node,
  .istpt-link,
  .istpt-shield {
    animation: none;
    opacity: 1;
  }

  .istpt-btn,
  .istpt-risk,
  .istpt-service,
  .istpt-stack__item,
  .istpt-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Аудит информационной безопасности (раздел) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-auditib-hub-security-v1,
#ist-auditib-hub-security-v1 * {
  box-sizing: border-box;
}

#ist-auditib-hub-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-auditib-hub-security-v1 h1,
#ist-auditib-hub-security-v1 h2,
#ist-auditib-hub-security-v1 h3,
#ist-auditib-hub-security-v1 p {
  margin-top: 0;
}

#ist-auditib-hub-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-auditib-hub-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-auditib-hub-security-v1 a {
  text-decoration: none;
}

.istah-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istah-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istah-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istah-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istah-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istah-hero__content,
.istah-hero__visual {
  position: relative;
  z-index: 2;
}

.istah-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istah-kicker--light {
  color: #ffc29b;
}

.istah-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istah-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istah-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istah-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istah-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istah-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istah-btn:hover {
  transform: translateY(-2px);
}

.istah-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istah-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istah-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istah-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istah-hero__visual {
  min-height: 520px;
}

.istah-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istah-orbit {
  transform-box: view-box;
  transform-origin: 280px 265px;
  animation: istahOrbitSpin 20s linear infinite;
}

.istah-orbit__counter {
  transform-box: fill-box;
  transform-origin: center;
  animation: istahOrbitCounter 20s linear infinite;
}

.istah-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istahShieldPulse 3.2s ease-in-out infinite;
}

.istah-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istah-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istah-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istah-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istah-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istah-float--one {
  top: 4px;
  left: 0;
}

.istah-float--two {
  top: 200px;
  left: -10px;
}

.istah-float--three {
  bottom: 40px;
  right: -6px;
}

.istah-float--four {
  bottom: -6px;
  left: 40px;
}

.istah-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istah-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istah-nav a:hover,
.istah-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istah-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istah-section--soft {
  background: var(--s);
}

.istah-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istah-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istah-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istah-section__head p:last-of-type {
  margin-bottom: 0;
}

.istah-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istah-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istah-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istah-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istah-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istah-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istah-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istah-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istah-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istah-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istah-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istah-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istah-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istah-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istah-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istah-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istah-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istah-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istah-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istah-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istah-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istah-threat-row p:last-child {
  color: var(--m);
}

.istah-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istah-reg__intro h2,
.istah-reg__intro p {
  color: #fff !important;
}

.istah-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istah-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istah-reg__accent strong {
  color: #fff;
}

.istah-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istah-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istah-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istah-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istah-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istah-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istah-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istah-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istah-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istah-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istah-process article:nth-child(3)::after,
.istah-process article:nth-child(6)::after,
.istah-process article:last-child::after {
  display: none;
}

.istah-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istah-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istah-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istah-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istah-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istah-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istah-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istah-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istah-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istah-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istah-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istah-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istah-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istah-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istah-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istah-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istah-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istah-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istah-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istah-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istah-result-format {
  margin-top: 24px;
}

.istah-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istah-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istah-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istah-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istah-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istah-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istah-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istah-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istah-compare__row:last-child {
  border-bottom: none;
}

.istah-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istah-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istah-compare__row--head {
  background: var(--b2);
}

.istah-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istah-compare__row--head .istah-compare__label {
  background: transparent;
}

.istah-compare__row:not(.istah-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istah-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istah-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istah-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istah-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istah-not__item strong {
  color: var(--b);
}

.istah-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istah-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istah-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istah-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istah-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istah-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istah-levels {
  display: grid;
  gap: 14px;
}

.istah-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istah-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istah-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istah-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istah-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istah-level__text strong {
  color: var(--b);
}

.istah-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istah-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istah-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istah-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istah-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istah-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istah-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istah-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istah-faq-list {
  display: grid;
  gap: 12px;
}

.istah-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istah-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istah-faq summary::-webkit-details-marker {
  display: none;
}

.istah-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istah-faq__toggle::before,
.istah-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istah-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istah-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istah-faq[open] .istah-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istah-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istah-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istah-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istah-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istah-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istah-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istah-service--soon {
  opacity: .72;
}

.istah-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istah-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istah-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istah-service:hover::before {
  transform: scaleX(1);
}

.istah-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istah-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istah-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istah-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istah-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istah-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istah-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istah-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istah-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istah-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istah-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istah-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istah-checklist li::before {
  content: none;
}

.istah-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istah-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istah-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istah-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istah-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istah-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istah-navitem--soon {
  opacity: .72;
}

.istah-navigator-note {
  margin-bottom: 20px;
}

.istah-when__action {
  margin-top: 24px;
}

.istah-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istah-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istah-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istah-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istah-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istah-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istah-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istah-result > div:first-child > p {
  color: var(--m);
}

.istah-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istah-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istah-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istah-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istah-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istah-case-list {
  display: grid;
  gap: 20px;
}

.istah-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istah-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istah-case__block {
  margin-bottom: 22px;
}

.istah-case__block:last-of-type {
  margin-bottom: 0;
}

.istah-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istah-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istah-case__block > p:last-child {
  margin-bottom: 0;
}

.istah-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istah-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istah-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istah-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istah-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istah-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istah-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istah-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istah-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istah-cta__contacts {
  margin-top: 20px;
}

.istah-cta__contacts a,
.istah-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istah-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istah-cta__contacts a:last-child,
.istah-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istah-cta__contacts a:hover {
  color: #fff;
}

.istah-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istahOrbitSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes istahOrbitCounter {
  from { transform: rotate(0deg); }
  to { transform: rotate(-360deg); }
}

@keyframes istahShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istah-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istah-hero__visual {
    min-height: 460px;
  }

  .istah-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istah-service-grid,
  .istah-process,
  .istah-segment-grid,
  .istah-segment-grid--3,
  .istah-diff-grid,
  .istah-treatment-grid,
  .istah-related-grid,
  .istah-not-grid,
  .istah-scope-grid,
  .istah-formats-grid,
  .istah-value-grid,
  .istah-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istah-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istah-level__bar {
    display: none;
  }

  .istah-reg,
  .istah-result,
  .istah-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istah-stack__grid,
  .istah-checklist {
    grid-template-columns: 1fr;
  }

  .istah-process article:nth-child(3)::after {
    display: block;
  }

  .istah-process article:nth-child(2n)::after,
  .istah-process article:last-child::after {
    display: none;
  }

  .istah-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istah-hero,
  .istah-section,
  .istah-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istah-hero {
    min-height: 0;
  }

  .istah-hero h2 {
    font-size: 30px !important;
  }

  .istah-hero__lead {
    font-size: 16px;
  }

  .istah-hero__visual {
    min-height: 380px;
  }

  .istah-illustration {
    width: 400px;
  }

  .istah-nav {
    top: 58px;
  }

  .istah-reg__cards,
  .istah-result__list,
  .istah-segment-grid,
  .istah-segment-grid--3,
  .istah-diff-grid,
  .istah-prep-grid,
  .istah-treatment-grid,
  .istah-related-grid,
  .istah-not-grid,
  .istah-scope-grid,
  .istah-formats-grid,
  .istah-value-grid,
  .istah-nav-grid {
    grid-template-columns: 1fr;
  }

  .istah-threat-table__head,
  .istah-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istah-threat-table__head span:first-child {
    display: none;
  }

  .istah-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istah-float__icon {
    width: 28px;
    height: 28px;
  }

  .istah-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istah-float__text strong {
    font-size: 11.5px;
  }

  .istah-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istah-risk-grid,
  .istah-service-grid,
  .istah-process,
  .istah-nav-grid {
    grid-template-columns: 1fr;
  }

  .istah-process article::after {
    display: none !important;
  }

  .istah-hero__actions {
    display: grid;
  }

  .istah-btn {
    width: 100%;
  }

  .istah-hero__visual {
    min-height: 320px;
  }

  .istah-illustration {
    width: 330px;
  }

  .istah-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istah-orbit,
  .istah-orbit__counter,
  .istah-shield {
    animation: none;
  }

  .istah-btn,
  .istah-risk,
  .istah-service,
  .istah-stack__item,
  .istah-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Проектирование PKI/УЦ ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-pki-security-v1,
#ist-pki-security-v1 * {
  box-sizing: border-box;
}

#ist-pki-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-pki-security-v1 h1,
#ist-pki-security-v1 h2,
#ist-pki-security-v1 h3,
#ist-pki-security-v1 p {
  margin-top: 0;
}

#ist-pki-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-pki-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-pki-security-v1 a {
  text-decoration: none;
}

.istpki-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istpki-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istpki-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istpki-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istpki-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istpki-hero__content,
.istpki-hero__visual {
  position: relative;
  z-index: 2;
}

.istpki-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istpki-kicker--light {
  color: #ffc29b;
}

.istpki-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istpki-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istpki-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istpki-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istpki-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istpki-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istpki-btn:hover {
  transform: translateY(-2px);
}

.istpki-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istpki-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istpki-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istpki-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istpki-hero__visual {
  min-height: 520px;
}

.istpki-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istpki-branch {
  stroke-dasharray: 90;
  stroke-dashoffset: 90;
}

.istpki-branch--1 { animation: istpkiBranchDraw 4.4s ease-in-out infinite .2s; }
.istpki-branch--2 { animation: istpkiBranchDraw 4.4s ease-in-out infinite .6s; }

.istpki-pulse {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 0;
}

.istpki-pulse--1 { animation: istpkiPulseRing 4.4s ease-in-out infinite 1.4s; }
.istpki-pulse--2 { animation: istpkiPulseRing 4.4s ease-in-out infinite 1.8s; }

.istpki-hsm {
  transform-box: fill-box;
  transform-origin: center;
  animation: istpkiHsmPulse 3.2s ease-in-out infinite;
}

.istpki-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istpkiShieldPulse 3.2s ease-in-out infinite;
}

.istpki-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istpki-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istpki-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istpki-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istpki-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istpki-float--one {
  top: 4px;
  left: 0;
}

.istpki-float--two {
  top: 200px;
  left: -10px;
}

.istpki-float--three {
  bottom: 40px;
  right: -6px;
}

.istpki-float--four {
  bottom: -6px;
  left: 40px;
}

.istpki-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istpki-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istpki-nav a:hover,
.istpki-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istpki-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istpki-section--soft {
  background: var(--s);
}

.istpki-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istpki-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istpki-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istpki-section__head p:last-of-type {
  margin-bottom: 0;
}

.istpki-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istpki-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istpki-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istpki-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istpki-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istpki-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istpki-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istpki-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istpki-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpki-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istpki-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istpki-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istpki-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istpki-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istpki-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istpki-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istpki-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istpki-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istpki-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istpki-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istpki-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istpki-threat-row p:last-child {
  color: var(--m);
}

.istpki-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istpki-reg__intro h2,
.istpki-reg__intro p {
  color: #fff !important;
}

.istpki-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istpki-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istpki-reg__accent strong {
  color: #fff;
}

.istpki-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istpki-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istpki-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istpki-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istpki-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istpki-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istpki-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istpki-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istpki-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istpki-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istpki-process article:nth-child(3)::after,
.istpki-process article:nth-child(6)::after,
.istpki-process article:last-child::after {
  display: none;
}

.istpki-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istpki-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istpki-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istpki-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istpki-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istpki-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istpki-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istpki-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istpki-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istpki-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istpki-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpki-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istpki-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istpki-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istpki-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istpki-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istpki-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istpki-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istpki-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istpki-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpki-result-format {
  margin-top: 24px;
}

.istpki-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpki-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istpki-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istpki-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpki-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istpki-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpki-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istpki-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istpki-compare__row:last-child {
  border-bottom: none;
}

.istpki-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istpki-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istpki-compare__row--head {
  background: var(--b2);
}

.istpki-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istpki-compare__row--head .istpki-compare__label {
  background: transparent;
}

.istpki-compare__row:not(.istpki-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istpki-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istpki-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istpki-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istpki-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istpki-not__item strong {
  color: var(--b);
}

.istpki-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istpki-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istpki-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpki-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istpki-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istpki-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpki-levels {
  display: grid;
  gap: 14px;
}

.istpki-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istpki-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istpki-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istpki-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istpki-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istpki-level__text strong {
  color: var(--b);
}

.istpki-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istpki-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istpki-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istpki-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istpki-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istpki-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istpki-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istpki-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istpki-faq-list {
  display: grid;
  gap: 12px;
}

.istpki-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istpki-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istpki-faq summary::-webkit-details-marker {
  display: none;
}

.istpki-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istpki-faq__toggle::before,
.istpki-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istpki-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istpki-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istpki-faq[open] .istpki-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istpki-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istpki-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istpki-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istpki-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istpki-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istpki-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istpki-service--soon {
  opacity: .72;
}

.istpki-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istpki-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istpki-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istpki-service:hover::before {
  transform: scaleX(1);
}

.istpki-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istpki-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istpki-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istpki-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istpki-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istpki-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istpki-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istpki-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpki-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istpki-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istpki-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istpki-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istpki-checklist li::before {
  content: none;
}

.istpki-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istpki-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istpki-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istpki-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istpki-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istpki-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istpki-navitem--soon {
  opacity: .72;
}

.istpki-navigator-note {
  margin-bottom: 20px;
}

.istpki-when__action {
  margin-top: 24px;
}

.istpki-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istpki-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istpki-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istpki-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istpki-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istpki-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istpki-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istpki-result > div:first-child > p {
  color: var(--m);
}

.istpki-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istpki-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istpki-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istpki-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istpki-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istpki-case-list {
  display: grid;
  gap: 20px;
}

.istpki-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istpki-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istpki-case__block {
  margin-bottom: 22px;
}

.istpki-case__block:last-of-type {
  margin-bottom: 0;
}

.istpki-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istpki-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istpki-case__block > p:last-child {
  margin-bottom: 0;
}

.istpki-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istpki-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istpki-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istpki-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istpki-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istpki-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istpki-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istpki-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istpki-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istpki-cta__contacts {
  margin-top: 20px;
}

.istpki-cta__contacts a,
.istpki-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istpki-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istpki-cta__contacts a:last-child,
.istpki-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istpki-cta__contacts a:hover {
  color: #fff;
}

.istpki-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istpkiBranchDraw {
  0%, 8% { opacity: 0; stroke-dashoffset: 90; }
  30%, 100% { opacity: 1; stroke-dashoffset: 0; }
}

@keyframes istpkiPulseRing {
  0% { opacity: .8; transform: scale(.7); }
  70%, 100% { opacity: 0; transform: scale(1.3); }
}

@keyframes istpkiHsmPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

@keyframes istpkiShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istpki-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istpki-hero__visual {
    min-height: 460px;
  }

  .istpki-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istpki-service-grid,
  .istpki-process,
  .istpki-segment-grid,
  .istpki-segment-grid--3,
  .istpki-diff-grid,
  .istpki-treatment-grid,
  .istpki-related-grid,
  .istpki-not-grid,
  .istpki-scope-grid,
  .istpki-formats-grid,
  .istpki-value-grid,
  .istpki-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istpki-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istpki-level__bar {
    display: none;
  }

  .istpki-reg,
  .istpki-result,
  .istpki-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istpki-stack__grid,
  .istpki-checklist {
    grid-template-columns: 1fr;
  }

  .istpki-process article:nth-child(3)::after {
    display: block;
  }

  .istpki-process article:nth-child(2n)::after,
  .istpki-process article:last-child::after {
    display: none;
  }

  .istpki-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istpki-hero,
  .istpki-section,
  .istpki-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istpki-hero {
    min-height: 0;
  }

  .istpki-hero h2 {
    font-size: 30px !important;
  }

  .istpki-hero__lead {
    font-size: 16px;
  }

  .istpki-hero__visual {
    min-height: 380px;
  }

  .istpki-illustration {
    width: 400px;
  }

  .istpki-nav {
    top: 58px;
  }

  .istpki-reg__cards,
  .istpki-result__list,
  .istpki-segment-grid,
  .istpki-segment-grid--3,
  .istpki-diff-grid,
  .istpki-prep-grid,
  .istpki-treatment-grid,
  .istpki-related-grid,
  .istpki-not-grid,
  .istpki-scope-grid,
  .istpki-formats-grid,
  .istpki-value-grid,
  .istpki-nav-grid {
    grid-template-columns: 1fr;
  }

  .istpki-threat-table__head,
  .istpki-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istpki-threat-table__head span:first-child {
    display: none;
  }

  .istpki-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istpki-float__icon {
    width: 28px;
    height: 28px;
  }

  .istpki-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istpki-float__text strong {
    font-size: 11.5px;
  }

  .istpki-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istpki-risk-grid,
  .istpki-service-grid,
  .istpki-process,
  .istpki-nav-grid {
    grid-template-columns: 1fr;
  }

  .istpki-process article::after {
    display: none !important;
  }

  .istpki-hero__actions {
    display: grid;
  }

  .istpki-btn {
    width: 100%;
  }

  .istpki-hero__visual {
    min-height: 320px;
  }

  .istpki-illustration {
    width: 330px;
  }

  .istpki-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istpki-branch,
  .istpki-pulse,
  .istpki-hsm,
  .istpki-shield {
    animation: none;
  }

  .istpki-btn,
  .istpki-risk,
  .istpki-service,
  .istpki-stack__item,
  .istpki-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Проектирование SOC-модели ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-soc-security-v1,
#ist-soc-security-v1 * {
  box-sizing: border-box;
}

#ist-soc-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-soc-security-v1 h1,
#ist-soc-security-v1 h2,
#ist-soc-security-v1 h3,
#ist-soc-security-v1 p {
  margin-top: 0;
}

#ist-soc-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-soc-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-soc-security-v1 a {
  text-decoration: none;
}

.istsoc-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istsoc-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istsoc-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istsoc-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istsoc-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istsoc-hero__content,
.istsoc-hero__visual {
  position: relative;
  z-index: 2;
}

.istsoc-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istsoc-kicker--light {
  color: #ffc29b;
}

.istsoc-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istsoc-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istsoc-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istsoc-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istsoc-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istsoc-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istsoc-btn:hover {
  transform: translateY(-2px);
}

.istsoc-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istsoc-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istsoc-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istsoc-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istsoc-hero__visual {
  min-height: 520px;
}

.istsoc-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istsoc-tier {
  transform-box: fill-box;
  transform-origin: left center;
}

.istsoc-tier--1 { animation: istsocTierScale 4.2s ease-in-out infinite; }
.istsoc-tier--2 { animation: istsocTierScale 4.2s ease-in-out infinite 1.4s; }
.istsoc-tier--3 { animation: istsocTierScale 4.2s ease-in-out infinite 2.8s; }

.istsoc-pulse-dot {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 0;
}

.istsoc-pulse-dot--1 { animation: istsocPulseRing 4.2s ease-in-out infinite; }
.istsoc-pulse-dot--2 { animation: istsocPulseRing 4.2s ease-in-out infinite 1.4s; }
.istsoc-pulse-dot--3 { animation: istsocPulseRing 4.2s ease-in-out infinite 2.8s; }

.istsoc-radar {
  transform-box: fill-box;
  transform-origin: center;
}

.istsoc-radar path {
  transform-box: fill-box;
  transform-origin: 330px 322px;
  animation: istsocRadarSweep 3s linear infinite;
}

.istsoc-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istsocShieldPulse 3.2s ease-in-out infinite;
}

.istsoc-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istsoc-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istsoc-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istsoc-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istsoc-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istsoc-float--one {
  top: 4px;
  left: 0;
}

.istsoc-float--two {
  top: 200px;
  left: -10px;
}

.istsoc-float--three {
  bottom: 40px;
  right: -6px;
}

.istsoc-float--four {
  bottom: -6px;
  left: 40px;
}

.istsoc-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istsoc-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istsoc-nav a:hover,
.istsoc-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istsoc-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istsoc-section--soft {
  background: var(--s);
}

.istsoc-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istsoc-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istsoc-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istsoc-section__head p:last-of-type {
  margin-bottom: 0;
}

.istsoc-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istsoc-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istsoc-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istsoc-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istsoc-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istsoc-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istsoc-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istsoc-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istsoc-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsoc-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istsoc-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istsoc-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istsoc-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istsoc-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istsoc-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istsoc-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istsoc-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istsoc-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istsoc-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istsoc-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istsoc-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istsoc-threat-row p:last-child {
  color: var(--m);
}

.istsoc-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istsoc-reg__intro h2,
.istsoc-reg__intro p {
  color: #fff !important;
}

.istsoc-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istsoc-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istsoc-reg__accent strong {
  color: #fff;
}

.istsoc-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istsoc-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istsoc-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istsoc-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istsoc-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istsoc-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istsoc-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istsoc-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istsoc-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istsoc-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istsoc-process article:nth-child(3)::after,
.istsoc-process article:nth-child(6)::after,
.istsoc-process article:last-child::after {
  display: none;
}

.istsoc-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istsoc-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istsoc-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istsoc-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istsoc-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istsoc-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istsoc-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istsoc-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istsoc-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istsoc-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istsoc-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istsoc-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsoc-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istsoc-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istsoc-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istsoc-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istsoc-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istsoc-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istsoc-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istsoc-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istsoc-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsoc-result-format {
  margin-top: 24px;
}

.istsoc-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsoc-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istsoc-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istsoc-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsoc-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istsoc-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsoc-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istsoc-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istsoc-compare__row:last-child {
  border-bottom: none;
}

.istsoc-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istsoc-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istsoc-compare__row--head {
  background: var(--b2);
}

.istsoc-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istsoc-compare__row--head .istsoc-compare__label {
  background: transparent;
}

.istsoc-compare__row:not(.istsoc-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istsoc-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istsoc-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istsoc-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istsoc-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istsoc-not__item strong {
  color: var(--b);
}

.istsoc-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istsoc-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istsoc-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsoc-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istsoc-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istsoc-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsoc-levels {
  display: grid;
  gap: 14px;
}

.istsoc-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istsoc-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istsoc-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istsoc-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istsoc-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istsoc-level__text strong {
  color: var(--b);
}

.istsoc-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istsoc-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istsoc-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istsoc-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istsoc-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istsoc-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istsoc-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istsoc-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istsoc-faq-list {
  display: grid;
  gap: 12px;
}

.istsoc-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istsoc-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istsoc-faq summary::-webkit-details-marker {
  display: none;
}

.istsoc-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istsoc-faq__toggle::before,
.istsoc-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istsoc-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istsoc-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istsoc-faq[open] .istsoc-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istsoc-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsoc-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istsoc-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istsoc-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istsoc-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istsoc-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istsoc-service--soon {
  opacity: .72;
}

.istsoc-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istsoc-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istsoc-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istsoc-service:hover::before {
  transform: scaleX(1);
}

.istsoc-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istsoc-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istsoc-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istsoc-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istsoc-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istsoc-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istsoc-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istsoc-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsoc-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istsoc-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istsoc-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istsoc-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istsoc-checklist li::before {
  content: none;
}

.istsoc-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istsoc-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istsoc-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istsoc-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsoc-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istsoc-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsoc-navitem--soon {
  opacity: .72;
}

.istsoc-navigator-note {
  margin-bottom: 20px;
}

.istsoc-when__action {
  margin-top: 24px;
}

.istsoc-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istsoc-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istsoc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istsoc-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istsoc-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istsoc-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istsoc-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istsoc-result > div:first-child > p {
  color: var(--m);
}

.istsoc-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istsoc-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istsoc-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istsoc-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istsoc-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istsoc-case-list {
  display: grid;
  gap: 20px;
}

.istsoc-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istsoc-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istsoc-case__block {
  margin-bottom: 22px;
}

.istsoc-case__block:last-of-type {
  margin-bottom: 0;
}

.istsoc-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istsoc-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istsoc-case__block > p:last-child {
  margin-bottom: 0;
}

.istsoc-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istsoc-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istsoc-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istsoc-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istsoc-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istsoc-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istsoc-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istsoc-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istsoc-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istsoc-cta__contacts {
  margin-top: 20px;
}

.istsoc-cta__contacts a,
.istsoc-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istsoc-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsoc-cta__contacts a:last-child,
.istsoc-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istsoc-cta__contacts a:hover {
  color: #fff;
}

.istsoc-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istsocTierScale {
  0%, 8% { transform: scaleX(1); }
  20%, 40% { transform: scaleX(1.015); }
  55%, 100% { transform: scaleX(1); }
}

@keyframes istsocPulseRing {
  0% { opacity: .8; transform: scale(.7); }
  70%, 100% { opacity: 0; transform: scale(2.4); }
}

@keyframes istsocRadarSweep {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes istsocShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istsoc-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istsoc-hero__visual {
    min-height: 460px;
  }

  .istsoc-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istsoc-service-grid,
  .istsoc-process,
  .istsoc-segment-grid,
  .istsoc-segment-grid--3,
  .istsoc-diff-grid,
  .istsoc-treatment-grid,
  .istsoc-related-grid,
  .istsoc-not-grid,
  .istsoc-scope-grid,
  .istsoc-formats-grid,
  .istsoc-value-grid,
  .istsoc-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istsoc-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istsoc-level__bar {
    display: none;
  }

  .istsoc-reg,
  .istsoc-result,
  .istsoc-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istsoc-stack__grid,
  .istsoc-checklist {
    grid-template-columns: 1fr;
  }

  .istsoc-process article:nth-child(3)::after {
    display: block;
  }

  .istsoc-process article:nth-child(2n)::after,
  .istsoc-process article:last-child::after {
    display: none;
  }

  .istsoc-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istsoc-hero,
  .istsoc-section,
  .istsoc-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istsoc-hero {
    min-height: 0;
  }

  .istsoc-hero h2 {
    font-size: 30px !important;
  }

  .istsoc-hero__lead {
    font-size: 16px;
  }

  .istsoc-hero__visual {
    min-height: 380px;
  }

  .istsoc-illustration {
    width: 400px;
  }

  .istsoc-nav {
    top: 58px;
  }

  .istsoc-reg__cards,
  .istsoc-result__list,
  .istsoc-segment-grid,
  .istsoc-segment-grid--3,
  .istsoc-diff-grid,
  .istsoc-prep-grid,
  .istsoc-treatment-grid,
  .istsoc-related-grid,
  .istsoc-not-grid,
  .istsoc-scope-grid,
  .istsoc-formats-grid,
  .istsoc-value-grid,
  .istsoc-nav-grid {
    grid-template-columns: 1fr;
  }

  .istsoc-threat-table__head,
  .istsoc-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istsoc-threat-table__head span:first-child {
    display: none;
  }

  .istsoc-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istsoc-float__icon {
    width: 28px;
    height: 28px;
  }

  .istsoc-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istsoc-float__text strong {
    font-size: 11.5px;
  }

  .istsoc-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istsoc-risk-grid,
  .istsoc-service-grid,
  .istsoc-process,
  .istsoc-nav-grid {
    grid-template-columns: 1fr;
  }

  .istsoc-process article::after {
    display: none !important;
  }

  .istsoc-hero__actions {
    display: grid;
  }

  .istsoc-btn {
    width: 100%;
  }

  .istsoc-hero__visual {
    min-height: 320px;
  }

  .istsoc-illustration {
    width: 330px;
  }

  .istsoc-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istsoc-tier,
  .istsoc-pulse-dot,
  .istsoc-radar path,
  .istsoc-shield {
    animation: none;
  }

  .istsoc-btn,
  .istsoc-risk,
  .istsoc-service,
  .istsoc-stack__item,
  .istsoc-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Проектирование процессов ИБ (GRC) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-grc-security-v1,
#ist-grc-security-v1 * {
  box-sizing: border-box;
}

#ist-grc-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-grc-security-v1 h1,
#ist-grc-security-v1 h2,
#ist-grc-security-v1 h3,
#ist-grc-security-v1 p {
  margin-top: 0;
}

#ist-grc-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-grc-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-grc-security-v1 a {
  text-decoration: none;
}

.istgrc-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istgrc-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istgrc-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istgrc-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istgrc-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istgrc-hero__content,
.istgrc-hero__visual {
  position: relative;
  z-index: 2;
}

.istgrc-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istgrc-kicker--light {
  color: #ffc29b;
}

.istgrc-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istgrc-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istgrc-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istgrc-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istgrc-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istgrc-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istgrc-btn:hover {
  transform: translateY(-2px);
}

.istgrc-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istgrc-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istgrc-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istgrc-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istgrc-hero__visual {
  min-height: 520px;
}

.istgrc-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istgrc-node {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istgrc-node--1 { animation: istgrcNodePulse 4.5s ease-in-out infinite; }
.istgrc-node--2 { animation: istgrcNodePulse 4.5s ease-in-out infinite 1.5s; }
.istgrc-node--3 { animation: istgrcNodePulse 4.5s ease-in-out infinite 3s; }

.istgrc-link {
  stroke-dasharray: 6 4;
  stroke-dashoffset: 0;
  opacity: .35;
  animation: istgrcLinkFlow 1.6s linear infinite;
}

.istgrc-link--1 { animation-delay: 0s; }
.istgrc-link--2 { animation-delay: .3s; }
.istgrc-link--3 { animation-delay: .6s; }

.istgrc-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istgrcShieldPulse 3.2s ease-in-out infinite;
}

.istgrc-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istgrc-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istgrc-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istgrc-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istgrc-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istgrc-float--one {
  top: 4px;
  left: 0;
}

.istgrc-float--two {
  top: 200px;
  left: -10px;
}

.istgrc-float--three {
  bottom: 40px;
  right: -6px;
}

.istgrc-float--four {
  bottom: -6px;
  left: 40px;
}

.istgrc-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istgrc-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istgrc-nav a:hover,
.istgrc-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istgrc-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istgrc-section--soft {
  background: var(--s);
}

.istgrc-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istgrc-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istgrc-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istgrc-section__head p:last-of-type {
  margin-bottom: 0;
}

.istgrc-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istgrc-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istgrc-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istgrc-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istgrc-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istgrc-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istgrc-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istgrc-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istgrc-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istgrc-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istgrc-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istgrc-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istgrc-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istgrc-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istgrc-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istgrc-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istgrc-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istgrc-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istgrc-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istgrc-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istgrc-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istgrc-threat-row p:last-child {
  color: var(--m);
}

.istgrc-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istgrc-reg__intro h2,
.istgrc-reg__intro p {
  color: #fff !important;
}

.istgrc-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istgrc-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istgrc-reg__accent strong {
  color: #fff;
}

.istgrc-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istgrc-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istgrc-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istgrc-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istgrc-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istgrc-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istgrc-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istgrc-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istgrc-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istgrc-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istgrc-process article:nth-child(3)::after,
.istgrc-process article:nth-child(6)::after,
.istgrc-process article:last-child::after {
  display: none;
}

.istgrc-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istgrc-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istgrc-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istgrc-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istgrc-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istgrc-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istgrc-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istgrc-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istgrc-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istgrc-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istgrc-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istgrc-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istgrc-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istgrc-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istgrc-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istgrc-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istgrc-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istgrc-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istgrc-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istgrc-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istgrc-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istgrc-result-format {
  margin-top: 24px;
}

.istgrc-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istgrc-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istgrc-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istgrc-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istgrc-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istgrc-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istgrc-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istgrc-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istgrc-compare__row:last-child {
  border-bottom: none;
}

.istgrc-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istgrc-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istgrc-compare__row--head {
  background: var(--b2);
}

.istgrc-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istgrc-compare__row--head .istgrc-compare__label {
  background: transparent;
}

.istgrc-compare__row:not(.istgrc-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istgrc-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istgrc-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istgrc-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istgrc-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istgrc-not__item strong {
  color: var(--b);
}

.istgrc-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istgrc-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istgrc-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istgrc-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istgrc-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istgrc-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istgrc-levels {
  display: grid;
  gap: 14px;
}

.istgrc-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istgrc-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istgrc-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istgrc-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istgrc-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istgrc-level__text strong {
  color: var(--b);
}

.istgrc-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istgrc-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istgrc-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istgrc-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istgrc-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istgrc-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istgrc-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istgrc-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istgrc-faq-list {
  display: grid;
  gap: 12px;
}

.istgrc-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istgrc-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istgrc-faq summary::-webkit-details-marker {
  display: none;
}

.istgrc-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istgrc-faq__toggle::before,
.istgrc-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istgrc-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istgrc-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istgrc-faq[open] .istgrc-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istgrc-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istgrc-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istgrc-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istgrc-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istgrc-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istgrc-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istgrc-service--soon {
  opacity: .72;
}

.istgrc-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istgrc-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istgrc-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istgrc-service:hover::before {
  transform: scaleX(1);
}

.istgrc-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istgrc-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istgrc-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istgrc-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istgrc-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istgrc-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istgrc-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istgrc-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istgrc-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istgrc-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istgrc-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istgrc-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istgrc-checklist li::before {
  content: none;
}

.istgrc-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istgrc-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istgrc-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istgrc-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istgrc-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istgrc-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istgrc-navitem--soon {
  opacity: .72;
}

.istgrc-navigator-note {
  margin-bottom: 20px;
}

.istgrc-when__action {
  margin-top: 24px;
}

.istgrc-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istgrc-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istgrc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istgrc-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istgrc-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istgrc-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istgrc-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istgrc-result > div:first-child > p {
  color: var(--m);
}

.istgrc-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istgrc-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istgrc-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istgrc-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istgrc-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istgrc-case-list {
  display: grid;
  gap: 20px;
}

.istgrc-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istgrc-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istgrc-case__block {
  margin-bottom: 22px;
}

.istgrc-case__block:last-of-type {
  margin-bottom: 0;
}

.istgrc-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istgrc-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istgrc-case__block > p:last-child {
  margin-bottom: 0;
}

.istgrc-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istgrc-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istgrc-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istgrc-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istgrc-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istgrc-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istgrc-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istgrc-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istgrc-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istgrc-cta__contacts {
  margin-top: 20px;
}

.istgrc-cta__contacts a,
.istgrc-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istgrc-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istgrc-cta__contacts a:last-child,
.istgrc-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istgrc-cta__contacts a:hover {
  color: #fff;
}

.istgrc-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istgrcNodePulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes istgrcLinkFlow {
  from { stroke-dashoffset: 20; }
  to { stroke-dashoffset: 0; }
}

@keyframes istgrcShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istgrc-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istgrc-hero__visual {
    min-height: 460px;
  }

  .istgrc-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istgrc-service-grid,
  .istgrc-process,
  .istgrc-segment-grid,
  .istgrc-segment-grid--3,
  .istgrc-diff-grid,
  .istgrc-treatment-grid,
  .istgrc-related-grid,
  .istgrc-not-grid,
  .istgrc-scope-grid,
  .istgrc-formats-grid,
  .istgrc-value-grid,
  .istgrc-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istgrc-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istgrc-level__bar {
    display: none;
  }

  .istgrc-reg,
  .istgrc-result,
  .istgrc-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istgrc-stack__grid,
  .istgrc-checklist {
    grid-template-columns: 1fr;
  }

  .istgrc-process article:nth-child(3)::after {
    display: block;
  }

  .istgrc-process article:nth-child(2n)::after,
  .istgrc-process article:last-child::after {
    display: none;
  }

  .istgrc-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istgrc-hero,
  .istgrc-section,
  .istgrc-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istgrc-hero {
    min-height: 0;
  }

  .istgrc-hero h2 {
    font-size: 30px !important;
  }

  .istgrc-hero__lead {
    font-size: 16px;
  }

  .istgrc-hero__visual {
    min-height: 380px;
  }

  .istgrc-illustration {
    width: 400px;
  }

  .istgrc-nav {
    top: 58px;
  }

  .istgrc-reg__cards,
  .istgrc-result__list,
  .istgrc-segment-grid,
  .istgrc-segment-grid--3,
  .istgrc-diff-grid,
  .istgrc-prep-grid,
  .istgrc-treatment-grid,
  .istgrc-related-grid,
  .istgrc-not-grid,
  .istgrc-scope-grid,
  .istgrc-formats-grid,
  .istgrc-value-grid,
  .istgrc-nav-grid {
    grid-template-columns: 1fr;
  }

  .istgrc-threat-table__head,
  .istgrc-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istgrc-threat-table__head span:first-child {
    display: none;
  }

  .istgrc-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istgrc-float__icon {
    width: 28px;
    height: 28px;
  }

  .istgrc-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istgrc-float__text strong {
    font-size: 11.5px;
  }

  .istgrc-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istgrc-risk-grid,
  .istgrc-service-grid,
  .istgrc-process,
  .istgrc-nav-grid {
    grid-template-columns: 1fr;
  }

  .istgrc-process article::after {
    display: none !important;
  }

  .istgrc-hero__actions {
    display: grid;
  }

  .istgrc-btn {
    width: 100%;
  }

  .istgrc-hero__visual {
    min-height: 320px;
  }

  .istgrc-illustration {
    width: 330px;
  }

  .istgrc-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istgrc-node,
  .istgrc-link,
  .istgrc-shield {
    animation: none;
    opacity: 1;
  }

  .istgrc-btn,
  .istgrc-risk,
  .istgrc-service,
  .istgrc-stack__item,
  .istgrc-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Согласование модели угроз и ТЗ с ФСТЭК ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-mutz-security-v1,
#ist-mutz-security-v1 * {
  box-sizing: border-box;
}

#ist-mutz-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-mutz-security-v1 h1,
#ist-mutz-security-v1 h2,
#ist-mutz-security-v1 h3,
#ist-mutz-security-v1 p {
  margin-top: 0;
}

#ist-mutz-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-mutz-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-mutz-security-v1 a {
  text-decoration: none;
}

.istmutz-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istmutz-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istmutz-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istmutz-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istmutz-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istmutz-hero__content,
.istmutz-hero__visual {
  position: relative;
  z-index: 2;
}

.istmutz-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istmutz-kicker--light {
  color: #ffc29b;
}

.istmutz-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istmutz-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istmutz-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istmutz-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istmutz-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istmutz-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istmutz-btn:hover {
  transform: translateY(-2px);
}

.istmutz-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istmutz-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istmutz-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istmutz-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istmutz-hero__visual {
  min-height: 520px;
}

.istmutz-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istmutz-doc {
  transform-box: fill-box;
  transform-origin: center;
  animation: istmutzDocSettle 5s ease-in-out infinite;
}

.istmutz-stamp {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 0;
  animation: istmutzStampDrop 5s ease-in-out infinite;
}

.istmutz-stamp__check {
  animation: istmutzCheckDraw 5s ease-in-out infinite;
}

.istmutz-arc {
  opacity: .5;
}

.istmutz-arc path {
  animation: istmutzArcFlow 2.4s linear infinite;
}

.istmutz-node--a,
.istmutz-node--b {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istmutz-node--a { animation: istmutzNodePulse 4.5s ease-in-out infinite .5s; }
.istmutz-node--b { animation: istmutzNodePulse 4.5s ease-in-out infinite 2.5s; }

.istmutz-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istmutz-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istmutz-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istmutz-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istmutz-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istmutz-float--one {
  top: 4px;
  left: 0;
}

.istmutz-float--two {
  top: 200px;
  left: -10px;
}

.istmutz-float--three {
  bottom: 40px;
  right: -6px;
}

.istmutz-float--four {
  bottom: -6px;
  left: 40px;
}

.istmutz-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istmutz-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istmutz-nav a:hover,
.istmutz-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istmutz-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istmutz-section--soft {
  background: var(--s);
}

.istmutz-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istmutz-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istmutz-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istmutz-section__head p:last-of-type {
  margin-bottom: 0;
}

.istmutz-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istmutz-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istmutz-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istmutz-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istmutz-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istmutz-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istmutz-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istmutz-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istmutz-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmutz-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istmutz-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istmutz-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istmutz-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istmutz-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istmutz-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istmutz-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istmutz-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istmutz-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istmutz-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istmutz-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istmutz-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istmutz-threat-row p:last-child {
  color: var(--m);
}

.istmutz-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istmutz-reg__intro h2,
.istmutz-reg__intro p {
  color: #fff !important;
}

.istmutz-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istmutz-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istmutz-reg__accent strong {
  color: #fff;
}

.istmutz-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istmutz-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istmutz-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istmutz-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istmutz-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istmutz-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istmutz-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istmutz-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istmutz-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istmutz-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istmutz-process article:nth-child(3)::after,
.istmutz-process article:nth-child(6)::after,
.istmutz-process article:last-child::after {
  display: none;
}

.istmutz-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istmutz-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istmutz-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istmutz-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istmutz-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istmutz-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istmutz-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istmutz-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istmutz-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istmutz-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istmutz-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istmutz-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istmutz-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmutz-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istmutz-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istmutz-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istmutz-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istmutz-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istmutz-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istmutz-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istmutz-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istmutz-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmutz-result-format {
  margin-top: 24px;
}

.istmutz-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmutz-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istmutz-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istmutz-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmutz-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istmutz-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmutz-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istmutz-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istmutz-compare__row:last-child {
  border-bottom: none;
}

.istmutz-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istmutz-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istmutz-compare__row--head {
  background: var(--b2);
}

.istmutz-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istmutz-compare__row--head .istmutz-compare__label {
  background: transparent;
}

.istmutz-compare__row:not(.istmutz-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istmutz-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istmutz-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istmutz-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istmutz-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istmutz-not__item strong {
  color: var(--b);
}

.istmutz-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istmutz-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istmutz-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmutz-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istmutz-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istmutz-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmutz-levels {
  display: grid;
  gap: 14px;
}

.istmutz-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istmutz-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istmutz-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istmutz-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istmutz-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istmutz-level__text strong {
  color: var(--b);
}

.istmutz-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istmutz-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istmutz-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istmutz-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istmutz-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istmutz-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istmutz-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istmutz-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istmutz-faq-list {
  display: grid;
  gap: 12px;
}

.istmutz-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istmutz-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istmutz-faq summary::-webkit-details-marker {
  display: none;
}

.istmutz-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istmutz-faq__toggle::before,
.istmutz-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istmutz-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istmutz-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istmutz-faq[open] .istmutz-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istmutz-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmutz-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istmutz-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istmutz-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istmutz-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istmutz-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istmutz-service--soon {
  opacity: .72;
}

.istmutz-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istmutz-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istmutz-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istmutz-service:hover::before {
  transform: scaleX(1);
}

.istmutz-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istmutz-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istmutz-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istmutz-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istmutz-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istmutz-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istmutz-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istmutz-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmutz-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istmutz-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istmutz-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istmutz-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istmutz-checklist li::before {
  content: none;
}

.istmutz-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istmutz-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istmutz-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istmutz-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmutz-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istmutz-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmutz-navitem--soon {
  opacity: .72;
}

.istmutz-navigator-note {
  margin-bottom: 20px;
}

.istmutz-when__action {
  margin-top: 24px;
}

.istmutz-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istmutz-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istmutz-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istmutz-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istmutz-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istmutz-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istmutz-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istmutz-result > div:first-child > p {
  color: var(--m);
}

.istmutz-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istmutz-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istmutz-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istmutz-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istmutz-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istmutz-case-list {
  display: grid;
  gap: 20px;
}

.istmutz-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istmutz-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istmutz-case__block {
  margin-bottom: 22px;
}

.istmutz-case__block:last-of-type {
  margin-bottom: 0;
}

.istmutz-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istmutz-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istmutz-case__block > p:last-child {
  margin-bottom: 0;
}

.istmutz-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istmutz-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istmutz-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istmutz-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istmutz-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istmutz-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istmutz-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istmutz-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istmutz-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istmutz-cta__contacts {
  margin-top: 20px;
}

.istmutz-cta__contacts a,
.istmutz-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istmutz-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmutz-cta__contacts a:last-child,
.istmutz-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istmutz-cta__contacts a:hover {
  color: #fff;
}

.istmutz-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istmutzNodePulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes istmutzArcFlow {
  from { stroke-dashoffset: 22; }
  to { stroke-dashoffset: 0; }
}

@keyframes istmutzDocSettle {
  0%, 40% { transform: translateY(0); }
  55% { transform: translateY(-4px); }
  100% { transform: translateY(0); }
}

@keyframes istmutzStampDrop {
  0%, 35% { opacity: 0; transform: scale(1.4); }
  50% { opacity: 1; transform: scale(1); }
  95% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(1.4); }
}

@keyframes istmutzCheckDraw {
  0%, 50% { stroke-dashoffset: 60; }
  65%, 92% { stroke-dashoffset: 0; }
  100% { stroke-dashoffset: 60; }
}

@media (max-width: 1050px) {
  .istmutz-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istmutz-hero__visual {
    min-height: 460px;
  }

  .istmutz-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istmutz-service-grid,
  .istmutz-process,
  .istmutz-segment-grid,
  .istmutz-segment-grid--3,
  .istmutz-diff-grid,
  .istmutz-treatment-grid,
  .istmutz-related-grid,
  .istmutz-not-grid,
  .istmutz-scope-grid,
  .istmutz-formats-grid,
  .istmutz-value-grid,
  .istmutz-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istmutz-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istmutz-level__bar {
    display: none;
  }

  .istmutz-reg,
  .istmutz-result,
  .istmutz-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istmutz-stack__grid,
  .istmutz-checklist {
    grid-template-columns: 1fr;
  }

  .istmutz-process article:nth-child(3)::after {
    display: block;
  }

  .istmutz-process article:nth-child(2n)::after,
  .istmutz-process article:last-child::after {
    display: none;
  }

  .istmutz-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istmutz-hero,
  .istmutz-section,
  .istmutz-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istmutz-hero {
    min-height: 0;
  }

  .istmutz-hero h2 {
    font-size: 30px !important;
  }

  .istmutz-hero__lead {
    font-size: 16px;
  }

  .istmutz-hero__visual {
    min-height: 380px;
  }

  .istmutz-illustration {
    width: 400px;
  }

  .istmutz-nav {
    top: 58px;
  }

  .istmutz-reg__cards,
  .istmutz-result__list,
  .istmutz-segment-grid,
  .istmutz-segment-grid--3,
  .istmutz-diff-grid,
  .istmutz-prep-grid,
  .istmutz-treatment-grid,
  .istmutz-related-grid,
  .istmutz-not-grid,
  .istmutz-scope-grid,
  .istmutz-formats-grid,
  .istmutz-value-grid,
  .istmutz-nav-grid {
    grid-template-columns: 1fr;
  }

  .istmutz-threat-table__head,
  .istmutz-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istmutz-threat-table__head span:first-child {
    display: none;
  }

  .istmutz-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istmutz-float__icon {
    width: 28px;
    height: 28px;
  }

  .istmutz-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istmutz-float__text strong {
    font-size: 11.5px;
  }

  .istmutz-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istmutz-risk-grid,
  .istmutz-service-grid,
  .istmutz-process,
  .istmutz-nav-grid {
    grid-template-columns: 1fr;
  }

  .istmutz-process article::after {
    display: none !important;
  }

  .istmutz-hero__actions {
    display: grid;
  }

  .istmutz-btn {
    width: 100%;
  }

  .istmutz-hero__visual {
    min-height: 320px;
  }

  .istmutz-illustration {
    width: 330px;
  }

  .istmutz-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istmutz-doc,
  .istmutz-stamp,
  .istmutz-stamp__check,
  .istmutz-arc path,
  .istmutz-node--a,
  .istmutz-node--b {
    animation: none;
    opacity: 1;
  }

  .istmutz-btn,
  .istmutz-risk,
  .istmutz-service,
  .istmutz-stack__item,
  .istmutz-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Проектирование систем защиты информации (СЗИ) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-szi-security-v1,
#ist-szi-security-v1 * {
  box-sizing: border-box;
}

#ist-szi-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-szi-security-v1 h1,
#ist-szi-security-v1 h2,
#ist-szi-security-v1 h3,
#ist-szi-security-v1 p {
  margin-top: 0;
}

#ist-szi-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-szi-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-szi-security-v1 a {
  text-decoration: none;
}

.istszi-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istszi-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istszi-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istszi-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istszi-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istszi-hero__content,
.istszi-hero__visual {
  position: relative;
  z-index: 2;
}

.istszi-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istszi-kicker--light {
  color: #ffc29b;
}

.istszi-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istszi-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istszi-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istszi-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istszi-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istszi-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istszi-btn:hover {
  transform: translateY(-2px);
}

.istszi-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istszi-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istszi-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istszi-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istszi-hero__visual {
  min-height: 520px;
}

.istszi-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istszi-blueprint {
  opacity: .95;
}

.istszi-block {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istszi-block--1 { animation: istsziBlockPulse 4.5s ease-in-out infinite; }
.istszi-block--2 { animation: istsziBlockPulse 4.5s ease-in-out infinite 1.5s; }
.istszi-block--3 { animation: istsziBlockPulse 4.5s ease-in-out infinite 3s; }

.istszi-connector {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istsziConnectorDraw 1.8s ease-in-out infinite;
}

.istszi-connector--1 { animation-delay: 0s; }
.istszi-connector--2 { animation-delay: .4s; }
.istszi-connector--3 { animation-delay: .8s; }

.istszi-shield {
  transform-box: view-box;
  transform-origin: 478px 475px;
  animation: istsziShieldPulse 3.2s ease-in-out infinite;
}

.istszi-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istszi-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istszi-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istszi-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istszi-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istszi-float--one {
  top: 4px;
  left: 0;
}

.istszi-float--two {
  top: 200px;
  left: -10px;
}

.istszi-float--three {
  bottom: 40px;
  right: -6px;
}

.istszi-float--four {
  bottom: -6px;
  left: 40px;
}

.istszi-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istszi-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istszi-nav a:hover,
.istszi-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istszi-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istszi-section--soft {
  background: var(--s);
}

.istszi-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istszi-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istszi-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istszi-section__head p:last-of-type {
  margin-bottom: 0;
}

.istszi-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istszi-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istszi-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istszi-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istszi-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istszi-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istszi-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istszi-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istszi-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istszi-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istszi-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istszi-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istszi-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istszi-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istszi-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istszi-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istszi-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istszi-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istszi-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istszi-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istszi-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istszi-threat-row p:last-child {
  color: var(--m);
}

.istszi-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istszi-reg__intro h2,
.istszi-reg__intro p {
  color: #fff !important;
}

.istszi-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istszi-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istszi-reg__accent strong {
  color: #fff;
}

.istszi-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istszi-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istszi-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istszi-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istszi-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istszi-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istszi-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istszi-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istszi-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istszi-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istszi-process article:nth-child(3)::after,
.istszi-process article:nth-child(6)::after,
.istszi-process article:last-child::after {
  display: none;
}

.istszi-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istszi-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istszi-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istszi-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istszi-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istszi-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istszi-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istszi-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istszi-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istszi-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istszi-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istszi-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istszi-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istszi-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istszi-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istszi-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istszi-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istszi-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istszi-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istszi-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istszi-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istszi-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istszi-result-format {
  margin-top: 24px;
}

.istszi-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istszi-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istszi-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istszi-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istszi-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istszi-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istszi-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istszi-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istszi-compare__row:last-child {
  border-bottom: none;
}

.istszi-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istszi-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istszi-compare__row--head {
  background: var(--b2);
}

.istszi-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istszi-compare__row--head .istszi-compare__label {
  background: transparent;
}

.istszi-compare__row:not(.istszi-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istszi-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istszi-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istszi-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istszi-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istszi-not__item strong {
  color: var(--b);
}

.istszi-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istszi-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istszi-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istszi-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istszi-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istszi-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istszi-levels {
  display: grid;
  gap: 14px;
}

.istszi-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istszi-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istszi-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istszi-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istszi-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istszi-level__text strong {
  color: var(--b);
}

.istszi-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istszi-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istszi-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istszi-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istszi-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istszi-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istszi-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istszi-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istszi-faq-list {
  display: grid;
  gap: 12px;
}

.istszi-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istszi-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istszi-faq summary::-webkit-details-marker {
  display: none;
}

.istszi-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istszi-faq__toggle::before,
.istszi-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istszi-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istszi-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istszi-faq[open] .istszi-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istszi-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istszi-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istszi-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istszi-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istszi-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istszi-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istszi-service--soon {
  opacity: .72;
}

.istszi-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istszi-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istszi-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istszi-service:hover::before {
  transform: scaleX(1);
}

.istszi-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istszi-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istszi-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istszi-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istszi-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istszi-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istszi-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istszi-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istszi-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istszi-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istszi-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istszi-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istszi-checklist li::before {
  content: none;
}

.istszi-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istszi-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istszi-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istszi-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istszi-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istszi-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istszi-navitem--soon {
  opacity: .72;
}

.istszi-navigator-note {
  margin-bottom: 20px;
}

.istszi-when__action {
  margin-top: 24px;
}

.istszi-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istszi-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istszi-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istszi-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istszi-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istszi-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istszi-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istszi-result > div:first-child > p {
  color: var(--m);
}

.istszi-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istszi-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istszi-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istszi-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istszi-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istszi-case-list {
  display: grid;
  gap: 20px;
}

.istszi-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istszi-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istszi-case__block {
  margin-bottom: 22px;
}

.istszi-case__block:last-of-type {
  margin-bottom: 0;
}

.istszi-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istszi-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istszi-case__block > p:last-child {
  margin-bottom: 0;
}

.istszi-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istszi-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istszi-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istszi-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istszi-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istszi-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istszi-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istszi-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istszi-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istszi-cta__contacts {
  margin-top: 20px;
}

.istszi-cta__contacts a,
.istszi-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istszi-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istszi-cta__contacts a:last-child,
.istszi-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istszi-cta__contacts a:hover {
  color: #fff;
}

.istszi-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istsziBlockPulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes istsziConnectorDraw {
  0%, 100% { stroke-dashoffset: 18; opacity: .25; }
  50% { stroke-dashoffset: 0; opacity: .55; }
}

@keyframes istsziShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istszi-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istszi-hero__visual {
    min-height: 460px;
  }

  .istszi-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istszi-service-grid,
  .istszi-process,
  .istszi-segment-grid,
  .istszi-segment-grid--3,
  .istszi-diff-grid,
  .istszi-treatment-grid,
  .istszi-related-grid,
  .istszi-not-grid,
  .istszi-scope-grid,
  .istszi-formats-grid,
  .istszi-value-grid,
  .istszi-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istszi-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istszi-level__bar {
    display: none;
  }

  .istszi-reg,
  .istszi-result,
  .istszi-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istszi-stack__grid,
  .istszi-checklist {
    grid-template-columns: 1fr;
  }

  .istszi-process article:nth-child(3)::after {
    display: block;
  }

  .istszi-process article:nth-child(2n)::after,
  .istszi-process article:last-child::after {
    display: none;
  }

  .istszi-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istszi-hero,
  .istszi-section,
  .istszi-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istszi-hero {
    min-height: 0;
  }

  .istszi-hero h2 {
    font-size: 30px !important;
  }

  .istszi-hero__lead {
    font-size: 16px;
  }

  .istszi-hero__visual {
    min-height: 380px;
  }

  .istszi-illustration {
    width: 400px;
  }

  .istszi-nav {
    top: 58px;
  }

  .istszi-reg__cards,
  .istszi-result__list,
  .istszi-segment-grid,
  .istszi-segment-grid--3,
  .istszi-diff-grid,
  .istszi-prep-grid,
  .istszi-treatment-grid,
  .istszi-related-grid,
  .istszi-not-grid,
  .istszi-scope-grid,
  .istszi-formats-grid,
  .istszi-value-grid,
  .istszi-nav-grid {
    grid-template-columns: 1fr;
  }

  .istszi-threat-table__head,
  .istszi-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istszi-threat-table__head span:first-child {
    display: none;
  }

  .istszi-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istszi-float__icon {
    width: 28px;
    height: 28px;
  }

  .istszi-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istszi-float__text strong {
    font-size: 11.5px;
  }

  .istszi-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istszi-risk-grid,
  .istszi-service-grid,
  .istszi-process,
  .istszi-nav-grid {
    grid-template-columns: 1fr;
  }

  .istszi-process article::after {
    display: none !important;
  }

  .istszi-hero__actions {
    display: grid;
  }

  .istszi-btn {
    width: 100%;
  }

  .istszi-hero__visual {
    min-height: 320px;
  }

  .istszi-illustration {
    width: 330px;
  }

  .istszi-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istszi-block--1,
  .istszi-block--2,
  .istszi-block--3,
  .istszi-connector,
  .istszi-shield {
    animation: none;
    opacity: 1;
  }

  .istszi-btn,
  .istszi-risk,
  .istszi-service,
  .istszi-stack__item,
  .istszi-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Разработка ОРД (ПДн, ГИС, КИИ) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-ord-security-v1,
#ist-ord-security-v1 * {
  box-sizing: border-box;
}

#ist-ord-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-ord-security-v1 h1,
#ist-ord-security-v1 h2,
#ist-ord-security-v1 h3,
#ist-ord-security-v1 p {
  margin-top: 0;
}

#ist-ord-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-ord-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-ord-security-v1 a {
  text-decoration: none;
}

.istord-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istord-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istord-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istord-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istord-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istord-hero__content,
.istord-hero__visual {
  position: relative;
  z-index: 2;
}

.istord-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istord-kicker--light {
  color: #ffc29b;
}

.istord-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istord-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istord-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istord-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istord-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istord-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istord-btn:hover {
  transform: translateY(-2px);
}

.istord-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istord-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istord-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istord-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istord-hero__visual {
  min-height: 520px;
}

.istord-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istord-doc {
  transform-box: fill-box;
  transform-origin: center;
}

.istord-doc--1 { animation: istordDocSettle 4.5s ease-in-out infinite; }
.istord-doc--2 { animation: istordDocSettle 4.5s ease-in-out infinite 1s; }
.istord-doc--3 { animation: istordDocSettle 4.5s ease-in-out infinite 2s; }

.istord-doc--1 circle,
.istord-doc--1 path:last-child,
.istord-doc--2 circle,
.istord-doc--2 path:last-child,
.istord-doc--3 circle,
.istord-doc--3 path:last-child {
  opacity: 0;
}

.istord-doc--1 circle,
.istord-doc--1 path:last-child { animation: istordCheckAppear 4.5s ease-in-out infinite; }
.istord-doc--2 circle,
.istord-doc--2 path:last-child { animation: istordCheckAppear 4.5s ease-in-out infinite 1s; }
.istord-doc--3 circle,
.istord-doc--3 path:last-child { animation: istordCheckAppear 4.5s ease-in-out infinite 2s; }

.istord-shield {
  transform-box: view-box;
  transform-origin: 335px 445px;
  animation: istordShieldPulse 3.2s ease-in-out infinite;
}

.istord-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istord-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istord-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istord-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istord-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istord-float--one {
  top: 4px;
  left: 0;
}

.istord-float--two {
  top: 200px;
  left: -10px;
}

.istord-float--three {
  bottom: 40px;
  right: -6px;
}

.istord-float--four {
  bottom: -6px;
  left: 40px;
}

.istord-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istord-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istord-nav a:hover,
.istord-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istord-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istord-section--soft {
  background: var(--s);
}

.istord-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istord-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istord-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istord-section__head p:last-of-type {
  margin-bottom: 0;
}

.istord-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istord-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istord-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istord-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istord-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istord-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istord-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istord-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istord-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istord-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istord-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istord-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istord-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istord-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istord-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istord-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istord-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istord-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istord-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istord-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istord-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istord-threat-row p:last-child {
  color: var(--m);
}

.istord-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istord-reg__intro h2,
.istord-reg__intro p {
  color: #fff !important;
}

.istord-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istord-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istord-reg__accent strong {
  color: #fff;
}

.istord-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istord-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istord-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istord-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istord-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istord-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istord-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istord-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istord-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istord-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istord-process article:nth-child(3)::after,
.istord-process article:nth-child(6)::after,
.istord-process article:last-child::after {
  display: none;
}

.istord-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istord-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istord-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istord-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istord-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istord-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istord-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istord-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istord-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istord-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istord-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istord-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istord-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istord-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istord-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istord-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istord-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istord-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istord-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istord-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istord-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istord-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istord-result-format {
  margin-top: 24px;
}

.istord-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istord-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istord-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istord-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istord-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istord-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istord-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istord-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istord-compare__row:last-child {
  border-bottom: none;
}

.istord-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istord-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istord-compare__row--head {
  background: var(--b2);
}

.istord-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istord-compare__row--head .istord-compare__label {
  background: transparent;
}

.istord-compare__row:not(.istord-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istord-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istord-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istord-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istord-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istord-not__item strong {
  color: var(--b);
}

.istord-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istord-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istord-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istord-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istord-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istord-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istord-levels {
  display: grid;
  gap: 14px;
}

.istord-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istord-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istord-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istord-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istord-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istord-level__text strong {
  color: var(--b);
}

.istord-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istord-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istord-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istord-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istord-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istord-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istord-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istord-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istord-faq-list {
  display: grid;
  gap: 12px;
}

.istord-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istord-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istord-faq summary::-webkit-details-marker {
  display: none;
}

.istord-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istord-faq__toggle::before,
.istord-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istord-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istord-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istord-faq[open] .istord-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istord-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istord-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istord-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istord-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istord-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istord-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istord-service--soon {
  opacity: .72;
}

.istord-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istord-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istord-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istord-service:hover::before {
  transform: scaleX(1);
}

.istord-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istord-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istord-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istord-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istord-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istord-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istord-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istord-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istord-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istord-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istord-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istord-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istord-checklist li::before {
  content: none;
}

.istord-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istord-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istord-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istord-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istord-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istord-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istord-navitem--soon {
  opacity: .72;
}

.istord-navigator-note {
  margin-bottom: 20px;
}

.istord-when__action {
  margin-top: 24px;
}

.istord-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istord-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istord-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istord-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istord-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istord-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istord-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istord-result > div:first-child > p {
  color: var(--m);
}

.istord-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istord-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istord-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istord-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istord-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istord-case-list {
  display: grid;
  gap: 20px;
}

.istord-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istord-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istord-case__block {
  margin-bottom: 22px;
}

.istord-case__block:last-of-type {
  margin-bottom: 0;
}

.istord-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istord-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istord-case__block > p:last-child {
  margin-bottom: 0;
}

.istord-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istord-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istord-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istord-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istord-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istord-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istord-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istord-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istord-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istord-cta__contacts {
  margin-top: 20px;
}

.istord-cta__contacts a,
.istord-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istord-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istord-cta__contacts a:last-child,
.istord-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istord-cta__contacts a:hover {
  color: #fff;
}

.istord-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istordDocSettle {
  0%, 30% { transform: translateY(6px); }
  50%, 100% { transform: translateY(0); }
}

@keyframes istordCheckAppear {
  0%, 40% { opacity: 0; }
  55%, 100% { opacity: 1; }
}

@keyframes istordShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istord-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istord-hero__visual {
    min-height: 460px;
  }

  .istord-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istord-service-grid,
  .istord-process,
  .istord-segment-grid,
  .istord-segment-grid--3,
  .istord-diff-grid,
  .istord-treatment-grid,
  .istord-related-grid,
  .istord-not-grid,
  .istord-scope-grid,
  .istord-formats-grid,
  .istord-value-grid,
  .istord-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istord-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istord-level__bar {
    display: none;
  }

  .istord-reg,
  .istord-result,
  .istord-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istord-stack__grid,
  .istord-checklist {
    grid-template-columns: 1fr;
  }

  .istord-process article:nth-child(3)::after {
    display: block;
  }

  .istord-process article:nth-child(2n)::after,
  .istord-process article:last-child::after {
    display: none;
  }

  .istord-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istord-hero,
  .istord-section,
  .istord-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istord-hero {
    min-height: 0;
  }

  .istord-hero h2 {
    font-size: 30px !important;
  }

  .istord-hero__lead {
    font-size: 16px;
  }

  .istord-hero__visual {
    min-height: 380px;
  }

  .istord-illustration {
    width: 400px;
  }

  .istord-nav {
    top: 58px;
  }

  .istord-reg__cards,
  .istord-result__list,
  .istord-segment-grid,
  .istord-segment-grid--3,
  .istord-diff-grid,
  .istord-prep-grid,
  .istord-treatment-grid,
  .istord-related-grid,
  .istord-not-grid,
  .istord-scope-grid,
  .istord-formats-grid,
  .istord-value-grid,
  .istord-nav-grid {
    grid-template-columns: 1fr;
  }

  .istord-threat-table__head,
  .istord-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istord-threat-table__head span:first-child {
    display: none;
  }

  .istord-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istord-float__icon {
    width: 28px;
    height: 28px;
  }

  .istord-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istord-float__text strong {
    font-size: 11.5px;
  }

  .istord-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istord-risk-grid,
  .istord-service-grid,
  .istord-process,
  .istord-nav-grid {
    grid-template-columns: 1fr;
  }

  .istord-process article::after {
    display: none !important;
  }

  .istord-hero__actions {
    display: grid;
  }

  .istord-btn {
    width: 100%;
  }

  .istord-hero__visual {
    min-height: 320px;
  }

  .istord-illustration {
    width: 330px;
  }

  .istord-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istord-doc--1,
  .istord-doc--2,
  .istord-doc--3,
  .istord-doc--1 circle,
  .istord-doc--1 path:last-child,
  .istord-doc--2 circle,
  .istord-doc--2 path:last-child,
  .istord-doc--3 circle,
  .istord-doc--3 path:last-child,
  .istord-shield {
    animation: none;
    opacity: 1;
  }

  .istord-btn,
  .istord-risk,
  .istord-service,
  .istord-stack__item,
  .istord-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Внедрение и интеграция DLP ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-dlp-security-v1,
#ist-dlp-security-v1 * {
  box-sizing: border-box;
}

#ist-dlp-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-dlp-security-v1 h1,
#ist-dlp-security-v1 h2,
#ist-dlp-security-v1 h3,
#ist-dlp-security-v1 p {
  margin-top: 0;
}

#ist-dlp-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-dlp-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-dlp-security-v1 a {
  text-decoration: none;
}

.istdlp-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istdlp-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istdlp-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istdlp-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istdlp-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istdlp-hero__content,
.istdlp-hero__visual {
  position: relative;
  z-index: 2;
}

.istdlp-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istdlp-kicker--light {
  color: #ffc29b;
}

.istdlp-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istdlp-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istdlp-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istdlp-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istdlp-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istdlp-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istdlp-btn:hover {
  transform: translateY(-2px);
}

.istdlp-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istdlp-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istdlp-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istdlp-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istdlp-hero__visual {
  min-height: 520px;
}

.istdlp-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istdlp-core {
  opacity: .95;
}

.istdlp-channel {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istdlp-channel--1 { animation: istdlpChannelPulse 4.8s ease-in-out infinite; }
.istdlp-channel--2 { animation: istdlpChannelPulse 4.8s ease-in-out infinite 1.2s; }
.istdlp-channel--3 { animation: istdlpChannelPulse 4.8s ease-in-out infinite 2.4s; }
.istdlp-channel--4 { animation: istdlpChannelPulse 4.8s ease-in-out infinite 3.6s; }

.istdlp-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .35;
  animation: istdlpBeamFlow 1.4s linear infinite;
}

.istdlp-beam--1 { animation-delay: 0s; }
.istdlp-beam--2 { animation-delay: .3s; }
.istdlp-beam--3 { animation-delay: .6s; }
.istdlp-beam--4 { animation-delay: .9s; }

.istdlp-shield {
  transform-box: view-box;
  transform-origin: 310px 385px;
  animation: istdlpShieldPulse 3.2s ease-in-out infinite;
}

.istdlp-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istdlp-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istdlp-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istdlp-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istdlp-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istdlp-float--one {
  top: 4px;
  left: 0;
}

.istdlp-float--two {
  top: 200px;
  left: -10px;
}

.istdlp-float--three {
  bottom: 40px;
  right: -6px;
}

.istdlp-float--four {
  bottom: -6px;
  left: 40px;
}

.istdlp-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istdlp-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istdlp-nav a:hover,
.istdlp-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istdlp-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istdlp-section--soft {
  background: var(--s);
}

.istdlp-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istdlp-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istdlp-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istdlp-section__head p:last-of-type {
  margin-bottom: 0;
}

.istdlp-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istdlp-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istdlp-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istdlp-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istdlp-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istdlp-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istdlp-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istdlp-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istdlp-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdlp-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istdlp-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istdlp-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istdlp-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istdlp-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istdlp-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istdlp-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istdlp-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istdlp-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istdlp-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istdlp-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istdlp-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istdlp-threat-row p:last-child {
  color: var(--m);
}

.istdlp-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istdlp-reg__intro h2,
.istdlp-reg__intro p {
  color: #fff !important;
}

.istdlp-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istdlp-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istdlp-reg__accent strong {
  color: #fff;
}

.istdlp-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istdlp-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istdlp-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istdlp-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istdlp-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istdlp-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istdlp-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istdlp-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istdlp-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istdlp-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istdlp-process article:nth-child(3)::after,
.istdlp-process article:nth-child(6)::after,
.istdlp-process article:last-child::after {
  display: none;
}

.istdlp-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istdlp-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istdlp-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istdlp-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istdlp-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istdlp-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istdlp-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istdlp-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istdlp-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istdlp-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istdlp-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istdlp-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istdlp-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdlp-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istdlp-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istdlp-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istdlp-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istdlp-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istdlp-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istdlp-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istdlp-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istdlp-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdlp-result-format {
  margin-top: 24px;
}

.istdlp-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdlp-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istdlp-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istdlp-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdlp-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istdlp-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdlp-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istdlp-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istdlp-compare__row:last-child {
  border-bottom: none;
}

.istdlp-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istdlp-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istdlp-compare__row--head {
  background: var(--b2);
}

.istdlp-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istdlp-compare__row--head .istdlp-compare__label {
  background: transparent;
}

.istdlp-compare__row:not(.istdlp-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istdlp-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istdlp-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istdlp-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istdlp-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istdlp-not__item strong {
  color: var(--b);
}

.istdlp-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istdlp-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istdlp-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdlp-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istdlp-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istdlp-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdlp-levels {
  display: grid;
  gap: 14px;
}

.istdlp-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istdlp-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istdlp-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istdlp-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istdlp-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istdlp-level__text strong {
  color: var(--b);
}

.istdlp-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istdlp-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istdlp-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istdlp-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istdlp-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istdlp-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istdlp-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istdlp-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istdlp-faq-list {
  display: grid;
  gap: 12px;
}

.istdlp-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istdlp-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istdlp-faq summary::-webkit-details-marker {
  display: none;
}

.istdlp-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istdlp-faq__toggle::before,
.istdlp-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istdlp-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istdlp-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istdlp-faq[open] .istdlp-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istdlp-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdlp-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istdlp-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istdlp-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istdlp-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istdlp-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istdlp-service--soon {
  opacity: .72;
}

.istdlp-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istdlp-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istdlp-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istdlp-service:hover::before {
  transform: scaleX(1);
}

.istdlp-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istdlp-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istdlp-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istdlp-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istdlp-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istdlp-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istdlp-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istdlp-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdlp-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istdlp-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istdlp-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istdlp-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istdlp-checklist li::before {
  content: none;
}

.istdlp-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istdlp-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istdlp-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istdlp-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdlp-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istdlp-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdlp-navitem--soon {
  opacity: .72;
}

.istdlp-navigator-note {
  margin-bottom: 20px;
}

.istdlp-when__action {
  margin-top: 24px;
}

.istdlp-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istdlp-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istdlp-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istdlp-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istdlp-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istdlp-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istdlp-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istdlp-result > div:first-child > p {
  color: var(--m);
}

.istdlp-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istdlp-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istdlp-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istdlp-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istdlp-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istdlp-case-list {
  display: grid;
  gap: 20px;
}

.istdlp-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istdlp-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istdlp-case__block {
  margin-bottom: 22px;
}

.istdlp-case__block:last-of-type {
  margin-bottom: 0;
}

.istdlp-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istdlp-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istdlp-case__block > p:last-child {
  margin-bottom: 0;
}

.istdlp-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istdlp-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istdlp-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istdlp-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istdlp-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istdlp-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istdlp-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istdlp-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istdlp-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istdlp-cta__contacts {
  margin-top: 20px;
}

.istdlp-cta__contacts a,
.istdlp-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istdlp-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdlp-cta__contacts a:last-child,
.istdlp-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istdlp-cta__contacts a:hover {
  color: #fff;
}

.istdlp-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istdlpChannelPulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.1); }
}

@keyframes istdlpBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istdlpShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istdlp-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istdlp-hero__visual {
    min-height: 460px;
  }

  .istdlp-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istdlp-service-grid,
  .istdlp-process,
  .istdlp-segment-grid,
  .istdlp-segment-grid--3,
  .istdlp-diff-grid,
  .istdlp-treatment-grid,
  .istdlp-related-grid,
  .istdlp-not-grid,
  .istdlp-scope-grid,
  .istdlp-formats-grid,
  .istdlp-value-grid,
  .istdlp-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istdlp-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istdlp-level__bar {
    display: none;
  }

  .istdlp-reg,
  .istdlp-result,
  .istdlp-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istdlp-stack__grid,
  .istdlp-checklist {
    grid-template-columns: 1fr;
  }

  .istdlp-process article:nth-child(3)::after {
    display: block;
  }

  .istdlp-process article:nth-child(2n)::after,
  .istdlp-process article:last-child::after {
    display: none;
  }

  .istdlp-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istdlp-hero,
  .istdlp-section,
  .istdlp-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istdlp-hero {
    min-height: 0;
  }

  .istdlp-hero h2 {
    font-size: 30px !important;
  }

  .istdlp-hero__lead {
    font-size: 16px;
  }

  .istdlp-hero__visual {
    min-height: 380px;
  }

  .istdlp-illustration {
    width: 400px;
  }

  .istdlp-nav {
    top: 58px;
  }

  .istdlp-reg__cards,
  .istdlp-result__list,
  .istdlp-segment-grid,
  .istdlp-segment-grid--3,
  .istdlp-diff-grid,
  .istdlp-prep-grid,
  .istdlp-treatment-grid,
  .istdlp-related-grid,
  .istdlp-not-grid,
  .istdlp-scope-grid,
  .istdlp-formats-grid,
  .istdlp-value-grid,
  .istdlp-nav-grid {
    grid-template-columns: 1fr;
  }

  .istdlp-threat-table__head,
  .istdlp-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istdlp-threat-table__head span:first-child {
    display: none;
  }

  .istdlp-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istdlp-float__icon {
    width: 28px;
    height: 28px;
  }

  .istdlp-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istdlp-float__text strong {
    font-size: 11.5px;
  }

  .istdlp-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istdlp-risk-grid,
  .istdlp-service-grid,
  .istdlp-process,
  .istdlp-nav-grid {
    grid-template-columns: 1fr;
  }

  .istdlp-process article::after {
    display: none !important;
  }

  .istdlp-hero__actions {
    display: grid;
  }

  .istdlp-btn {
    width: 100%;
  }

  .istdlp-hero__visual {
    min-height: 320px;
  }

  .istdlp-illustration {
    width: 330px;
  }

  .istdlp-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istdlp-channel--1,
  .istdlp-channel--2,
  .istdlp-channel--3,
  .istdlp-channel--4,
  .istdlp-beam,
  .istdlp-shield {
    animation: none;
    opacity: 1;
  }

  .istdlp-btn,
  .istdlp-risk,
  .istdlp-service,
  .istdlp-stack__item,
  .istdlp-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Внедрение IAM/PAM ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-iampam-security-v1,
#ist-iampam-security-v1 * {
  box-sizing: border-box;
}

#ist-iampam-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-iampam-security-v1 h1,
#ist-iampam-security-v1 h2,
#ist-iampam-security-v1 h3,
#ist-iampam-security-v1 p {
  margin-top: 0;
}

#ist-iampam-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-iampam-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-iampam-security-v1 a {
  text-decoration: none;
}

.istiampam-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istiampam-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istiampam-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istiampam-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istiampam-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istiampam-hero__content,
.istiampam-hero__visual {
  position: relative;
  z-index: 2;
}

.istiampam-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istiampam-kicker--light {
  color: #ffc29b;
}

.istiampam-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istiampam-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istiampam-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istiampam-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istiampam-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istiampam-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istiampam-btn:hover {
  transform: translateY(-2px);
}

.istiampam-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istiampam-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istiampam-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istiampam-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istiampam-hero__visual {
  min-height: 520px;
}

.istiampam-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istiampam-gate {
  opacity: .95;
}

.istiampam-gate rect:last-of-type {
  transform-box: fill-box;
  transform-origin: center;
  animation: istiampamLockPulse 3.6s ease-in-out infinite;
}

.istiampam-user {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .6;
}

.istiampam-user--1 { animation: istiampamUserPulse 4.5s ease-in-out infinite; }
.istiampam-user--2 { animation: istiampamUserPulse 4.5s ease-in-out infinite 2.2s; }

.istiampam-link {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istiampamLinkFlow 1.6s linear infinite;
}

.istiampam-link--1 { animation-delay: 0s; }
.istiampam-link--2 { animation-delay: .4s; }
.istiampam-link--3 { animation-delay: .8s; }

.istiampam-shield {
  transform-box: view-box;
  transform-origin: 310px 345px;
  animation: istiampamShieldPulse 3.2s ease-in-out infinite;
}

.istiampam-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istiampam-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istiampam-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istiampam-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istiampam-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istiampam-float--one {
  top: 4px;
  left: 0;
}

.istiampam-float--two {
  top: 200px;
  left: -10px;
}

.istiampam-float--three {
  bottom: 40px;
  right: -6px;
}

.istiampam-float--four {
  bottom: -6px;
  left: 40px;
}

.istiampam-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istiampam-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istiampam-nav a:hover,
.istiampam-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istiampam-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istiampam-section--soft {
  background: var(--s);
}

.istiampam-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istiampam-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istiampam-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istiampam-section__head p:last-of-type {
  margin-bottom: 0;
}

.istiampam-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istiampam-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istiampam-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istiampam-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istiampam-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istiampam-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istiampam-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istiampam-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istiampam-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istiampam-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istiampam-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istiampam-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istiampam-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istiampam-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istiampam-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istiampam-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istiampam-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istiampam-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istiampam-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istiampam-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istiampam-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istiampam-threat-row p:last-child {
  color: var(--m);
}

.istiampam-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istiampam-reg__intro h2,
.istiampam-reg__intro p {
  color: #fff !important;
}

.istiampam-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istiampam-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istiampam-reg__accent strong {
  color: #fff;
}

.istiampam-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istiampam-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istiampam-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istiampam-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istiampam-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istiampam-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istiampam-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istiampam-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istiampam-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istiampam-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istiampam-process article:nth-child(3)::after,
.istiampam-process article:nth-child(6)::after,
.istiampam-process article:last-child::after {
  display: none;
}

.istiampam-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istiampam-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istiampam-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istiampam-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istiampam-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istiampam-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istiampam-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istiampam-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istiampam-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istiampam-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istiampam-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istiampam-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istiampam-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istiampam-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istiampam-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istiampam-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istiampam-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istiampam-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istiampam-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istiampam-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istiampam-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istiampam-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istiampam-result-format {
  margin-top: 24px;
}

.istiampam-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istiampam-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istiampam-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istiampam-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istiampam-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istiampam-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istiampam-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istiampam-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istiampam-compare__row:last-child {
  border-bottom: none;
}

.istiampam-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istiampam-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istiampam-compare__row--head {
  background: var(--b2);
}

.istiampam-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istiampam-compare__row--head .istiampam-compare__label {
  background: transparent;
}

.istiampam-compare__row:not(.istiampam-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istiampam-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istiampam-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istiampam-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istiampam-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istiampam-not__item strong {
  color: var(--b);
}

.istiampam-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istiampam-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istiampam-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istiampam-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istiampam-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istiampam-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istiampam-levels {
  display: grid;
  gap: 14px;
}

.istiampam-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istiampam-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istiampam-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istiampam-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istiampam-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istiampam-level__text strong {
  color: var(--b);
}

.istiampam-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istiampam-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istiampam-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istiampam-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istiampam-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istiampam-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istiampam-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istiampam-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istiampam-faq-list {
  display: grid;
  gap: 12px;
}

.istiampam-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istiampam-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istiampam-faq summary::-webkit-details-marker {
  display: none;
}

.istiampam-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istiampam-faq__toggle::before,
.istiampam-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istiampam-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istiampam-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istiampam-faq[open] .istiampam-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istiampam-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istiampam-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istiampam-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istiampam-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istiampam-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istiampam-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istiampam-service--soon {
  opacity: .72;
}

.istiampam-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istiampam-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istiampam-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istiampam-service:hover::before {
  transform: scaleX(1);
}

.istiampam-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istiampam-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istiampam-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istiampam-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istiampam-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istiampam-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istiampam-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istiampam-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istiampam-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istiampam-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istiampam-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istiampam-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istiampam-checklist li::before {
  content: none;
}

.istiampam-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istiampam-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istiampam-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istiampam-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istiampam-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istiampam-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istiampam-navitem--soon {
  opacity: .72;
}

.istiampam-navigator-note {
  margin-bottom: 20px;
}

.istiampam-when__action {
  margin-top: 24px;
}

.istiampam-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istiampam-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istiampam-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istiampam-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istiampam-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istiampam-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istiampam-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istiampam-result > div:first-child > p {
  color: var(--m);
}

.istiampam-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istiampam-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istiampam-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istiampam-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istiampam-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istiampam-case-list {
  display: grid;
  gap: 20px;
}

.istiampam-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istiampam-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istiampam-case__block {
  margin-bottom: 22px;
}

.istiampam-case__block:last-of-type {
  margin-bottom: 0;
}

.istiampam-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istiampam-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istiampam-case__block > p:last-child {
  margin-bottom: 0;
}

.istiampam-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istiampam-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istiampam-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istiampam-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istiampam-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istiampam-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istiampam-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istiampam-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istiampam-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istiampam-cta__contacts {
  margin-top: 20px;
}

.istiampam-cta__contacts a,
.istiampam-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istiampam-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istiampam-cta__contacts a:last-child,
.istiampam-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istiampam-cta__contacts a:hover {
  color: #fff;
}

.istiampam-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istiampamLockPulse {
  0%, 100% { opacity: .7; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.15); }
}

@keyframes istiampamUserPulse {
  0%, 100% { opacity: .6; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes istiampamLinkFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istiampamShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istiampam-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istiampam-hero__visual {
    min-height: 460px;
  }

  .istiampam-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istiampam-service-grid,
  .istiampam-process,
  .istiampam-segment-grid,
  .istiampam-segment-grid--3,
  .istiampam-diff-grid,
  .istiampam-treatment-grid,
  .istiampam-related-grid,
  .istiampam-not-grid,
  .istiampam-scope-grid,
  .istiampam-formats-grid,
  .istiampam-value-grid,
  .istiampam-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istiampam-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istiampam-level__bar {
    display: none;
  }

  .istiampam-reg,
  .istiampam-result,
  .istiampam-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istiampam-stack__grid,
  .istiampam-checklist {
    grid-template-columns: 1fr;
  }

  .istiampam-process article:nth-child(3)::after {
    display: block;
  }

  .istiampam-process article:nth-child(2n)::after,
  .istiampam-process article:last-child::after {
    display: none;
  }

  .istiampam-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istiampam-hero,
  .istiampam-section,
  .istiampam-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istiampam-hero {
    min-height: 0;
  }

  .istiampam-hero h2 {
    font-size: 30px !important;
  }

  .istiampam-hero__lead {
    font-size: 16px;
  }

  .istiampam-hero__visual {
    min-height: 380px;
  }

  .istiampam-illustration {
    width: 400px;
  }

  .istiampam-nav {
    top: 58px;
  }

  .istiampam-reg__cards,
  .istiampam-result__list,
  .istiampam-segment-grid,
  .istiampam-segment-grid--3,
  .istiampam-diff-grid,
  .istiampam-prep-grid,
  .istiampam-treatment-grid,
  .istiampam-related-grid,
  .istiampam-not-grid,
  .istiampam-scope-grid,
  .istiampam-formats-grid,
  .istiampam-value-grid,
  .istiampam-nav-grid {
    grid-template-columns: 1fr;
  }

  .istiampam-threat-table__head,
  .istiampam-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istiampam-threat-table__head span:first-child {
    display: none;
  }

  .istiampam-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istiampam-float__icon {
    width: 28px;
    height: 28px;
  }

  .istiampam-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istiampam-float__text strong {
    font-size: 11.5px;
  }

  .istiampam-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istiampam-risk-grid,
  .istiampam-service-grid,
  .istiampam-process,
  .istiampam-nav-grid {
    grid-template-columns: 1fr;
  }

  .istiampam-process article::after {
    display: none !important;
  }

  .istiampam-hero__actions {
    display: grid;
  }

  .istiampam-btn {
    width: 100%;
  }

  .istiampam-hero__visual {
    min-height: 320px;
  }

  .istiampam-illustration {
    width: 330px;
  }

  .istiampam-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istiampam-gate rect:last-of-type,
  .istiampam-user--1,
  .istiampam-user--2,
  .istiampam-link,
  .istiampam-shield {
    animation: none;
    opacity: 1;
  }

  .istiampam-btn,
  .istiampam-risk,
  .istiampam-service,
  .istiampam-stack__item,
  .istiampam-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Внедрение EDR/NDR ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-edrndr-security-v1,
#ist-edrndr-security-v1 * {
  box-sizing: border-box;
}

#ist-edrndr-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-edrndr-security-v1 h1,
#ist-edrndr-security-v1 h2,
#ist-edrndr-security-v1 h3,
#ist-edrndr-security-v1 p {
  margin-top: 0;
}

#ist-edrndr-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-edrndr-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-edrndr-security-v1 a {
  text-decoration: none;
}

.istedrndr-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istedrndr-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istedrndr-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istedrndr-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istedrndr-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istedrndr-hero__content,
.istedrndr-hero__visual {
  position: relative;
  z-index: 2;
}

.istedrndr-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istedrndr-kicker--light {
  color: #ffc29b;
}

.istedrndr-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istedrndr-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istedrndr-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istedrndr-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istedrndr-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istedrndr-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istedrndr-btn:hover {
  transform: translateY(-2px);
}

.istedrndr-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istedrndr-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istedrndr-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istedrndr-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istedrndr-hero__visual {
  min-height: 520px;
}

.istedrndr-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istedrndr-endpoint {
  transform-box: fill-box;
  transform-origin: center;
  animation: istedrndrEndpointPulse 4s ease-in-out infinite;
}

.istedrndr-net path {
  opacity: .5;
}

.istedrndr-net circle {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .4;
}

.istedrndr-net circle:nth-of-type(1) { animation: istedrndrNodeLight 3.6s ease-in-out infinite; }
.istedrndr-net circle:nth-of-type(2) { animation: istedrndrNodeLight 3.6s ease-in-out infinite 1.2s; }
.istedrndr-net circle:nth-of-type(3) { animation: istedrndrNodeLight 3.6s ease-in-out infinite 2.4s; }

.istedrndr-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istedrndrBeamFlow 1.5s linear infinite;
}

.istedrndr-beam--1 { animation-delay: 0s; }
.istedrndr-beam--2 { animation-delay: .5s; }

.istedrndr-shield {
  transform-box: view-box;
  transform-origin: 280px 445px;
  animation: istedrndrShieldPulse 3.2s ease-in-out infinite;
}

.istedrndr-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istedrndr-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istedrndr-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istedrndr-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istedrndr-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istedrndr-float--one {
  top: 4px;
  left: 0;
}

.istedrndr-float--two {
  top: 200px;
  left: -10px;
}

.istedrndr-float--three {
  bottom: 40px;
  right: -6px;
}

.istedrndr-float--four {
  bottom: -6px;
  left: 40px;
}

.istedrndr-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istedrndr-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istedrndr-nav a:hover,
.istedrndr-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istedrndr-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istedrndr-section--soft {
  background: var(--s);
}

.istedrndr-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istedrndr-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istedrndr-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istedrndr-section__head p:last-of-type {
  margin-bottom: 0;
}

.istedrndr-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istedrndr-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istedrndr-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istedrndr-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istedrndr-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istedrndr-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istedrndr-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istedrndr-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istedrndr-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istedrndr-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istedrndr-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istedrndr-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istedrndr-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istedrndr-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istedrndr-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istedrndr-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istedrndr-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istedrndr-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istedrndr-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istedrndr-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istedrndr-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istedrndr-threat-row p:last-child {
  color: var(--m);
}

.istedrndr-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istedrndr-reg__intro h2,
.istedrndr-reg__intro p {
  color: #fff !important;
}

.istedrndr-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istedrndr-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istedrndr-reg__accent strong {
  color: #fff;
}

.istedrndr-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istedrndr-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istedrndr-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istedrndr-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istedrndr-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istedrndr-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istedrndr-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istedrndr-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istedrndr-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istedrndr-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istedrndr-process article:nth-child(3)::after,
.istedrndr-process article:nth-child(6)::after,
.istedrndr-process article:last-child::after {
  display: none;
}

.istedrndr-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istedrndr-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istedrndr-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istedrndr-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istedrndr-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istedrndr-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istedrndr-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istedrndr-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istedrndr-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istedrndr-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istedrndr-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istedrndr-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istedrndr-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istedrndr-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istedrndr-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istedrndr-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istedrndr-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istedrndr-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istedrndr-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istedrndr-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istedrndr-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istedrndr-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istedrndr-result-format {
  margin-top: 24px;
}

.istedrndr-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istedrndr-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istedrndr-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istedrndr-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istedrndr-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istedrndr-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istedrndr-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istedrndr-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istedrndr-compare__row:last-child {
  border-bottom: none;
}

.istedrndr-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istedrndr-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istedrndr-compare__row--head {
  background: var(--b2);
}

.istedrndr-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istedrndr-compare__row--head .istedrndr-compare__label {
  background: transparent;
}

.istedrndr-compare__row:not(.istedrndr-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istedrndr-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istedrndr-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istedrndr-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istedrndr-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istedrndr-not__item strong {
  color: var(--b);
}

.istedrndr-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istedrndr-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istedrndr-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istedrndr-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istedrndr-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istedrndr-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istedrndr-levels {
  display: grid;
  gap: 14px;
}

.istedrndr-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istedrndr-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istedrndr-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istedrndr-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istedrndr-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istedrndr-level__text strong {
  color: var(--b);
}

.istedrndr-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istedrndr-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istedrndr-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istedrndr-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istedrndr-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istedrndr-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istedrndr-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istedrndr-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istedrndr-faq-list {
  display: grid;
  gap: 12px;
}

.istedrndr-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istedrndr-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istedrndr-faq summary::-webkit-details-marker {
  display: none;
}

.istedrndr-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istedrndr-faq__toggle::before,
.istedrndr-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istedrndr-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istedrndr-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istedrndr-faq[open] .istedrndr-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istedrndr-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istedrndr-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istedrndr-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istedrndr-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istedrndr-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istedrndr-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istedrndr-service--soon {
  opacity: .72;
}

.istedrndr-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istedrndr-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istedrndr-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istedrndr-service:hover::before {
  transform: scaleX(1);
}

.istedrndr-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istedrndr-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istedrndr-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istedrndr-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istedrndr-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istedrndr-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istedrndr-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istedrndr-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istedrndr-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istedrndr-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istedrndr-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istedrndr-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istedrndr-checklist li::before {
  content: none;
}

.istedrndr-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istedrndr-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istedrndr-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istedrndr-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istedrndr-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istedrndr-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istedrndr-navitem--soon {
  opacity: .72;
}

.istedrndr-navigator-note {
  margin-bottom: 20px;
}

.istedrndr-when__action {
  margin-top: 24px;
}

.istedrndr-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istedrndr-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istedrndr-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istedrndr-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istedrndr-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istedrndr-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istedrndr-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istedrndr-result > div:first-child > p {
  color: var(--m);
}

.istedrndr-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istedrndr-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istedrndr-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istedrndr-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istedrndr-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istedrndr-case-list {
  display: grid;
  gap: 20px;
}

.istedrndr-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istedrndr-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istedrndr-case__block {
  margin-bottom: 22px;
}

.istedrndr-case__block:last-of-type {
  margin-bottom: 0;
}

.istedrndr-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istedrndr-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istedrndr-case__block > p:last-child {
  margin-bottom: 0;
}

.istedrndr-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istedrndr-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istedrndr-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istedrndr-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istedrndr-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istedrndr-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istedrndr-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istedrndr-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istedrndr-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istedrndr-cta__contacts {
  margin-top: 20px;
}

.istedrndr-cta__contacts a,
.istedrndr-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istedrndr-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istedrndr-cta__contacts a:last-child,
.istedrndr-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istedrndr-cta__contacts a:hover {
  color: #fff;
}

.istedrndr-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istedrndrEndpointPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.03); }
}

@keyframes istedrndrNodeLight {
  0%, 100% { opacity: .4; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.3); }
}

@keyframes istedrndrBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istedrndrShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istedrndr-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istedrndr-hero__visual {
    min-height: 460px;
  }

  .istedrndr-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istedrndr-service-grid,
  .istedrndr-process,
  .istedrndr-segment-grid,
  .istedrndr-segment-grid--3,
  .istedrndr-diff-grid,
  .istedrndr-treatment-grid,
  .istedrndr-related-grid,
  .istedrndr-not-grid,
  .istedrndr-scope-grid,
  .istedrndr-formats-grid,
  .istedrndr-value-grid,
  .istedrndr-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istedrndr-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istedrndr-level__bar {
    display: none;
  }

  .istedrndr-reg,
  .istedrndr-result,
  .istedrndr-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istedrndr-stack__grid,
  .istedrndr-checklist {
    grid-template-columns: 1fr;
  }

  .istedrndr-process article:nth-child(3)::after {
    display: block;
  }

  .istedrndr-process article:nth-child(2n)::after,
  .istedrndr-process article:last-child::after {
    display: none;
  }

  .istedrndr-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istedrndr-hero,
  .istedrndr-section,
  .istedrndr-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istedrndr-hero {
    min-height: 0;
  }

  .istedrndr-hero h2 {
    font-size: 30px !important;
  }

  .istedrndr-hero__lead {
    font-size: 16px;
  }

  .istedrndr-hero__visual {
    min-height: 380px;
  }

  .istedrndr-illustration {
    width: 400px;
  }

  .istedrndr-nav {
    top: 58px;
  }

  .istedrndr-reg__cards,
  .istedrndr-result__list,
  .istedrndr-segment-grid,
  .istedrndr-segment-grid--3,
  .istedrndr-diff-grid,
  .istedrndr-prep-grid,
  .istedrndr-treatment-grid,
  .istedrndr-related-grid,
  .istedrndr-not-grid,
  .istedrndr-scope-grid,
  .istedrndr-formats-grid,
  .istedrndr-value-grid,
  .istedrndr-nav-grid {
    grid-template-columns: 1fr;
  }

  .istedrndr-threat-table__head,
  .istedrndr-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istedrndr-threat-table__head span:first-child {
    display: none;
  }

  .istedrndr-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istedrndr-float__icon {
    width: 28px;
    height: 28px;
  }

  .istedrndr-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istedrndr-float__text strong {
    font-size: 11.5px;
  }

  .istedrndr-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istedrndr-risk-grid,
  .istedrndr-service-grid,
  .istedrndr-process,
  .istedrndr-nav-grid {
    grid-template-columns: 1fr;
  }

  .istedrndr-process article::after {
    display: none !important;
  }

  .istedrndr-hero__actions {
    display: grid;
  }

  .istedrndr-btn {
    width: 100%;
  }

  .istedrndr-hero__visual {
    min-height: 320px;
  }

  .istedrndr-illustration {
    width: 330px;
  }

  .istedrndr-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istedrndr-endpoint,
  .istedrndr-net circle,
  .istedrndr-beam,
  .istedrndr-shield {
    animation: none;
    opacity: 1;
  }

  .istedrndr-btn,
  .istedrndr-risk,
  .istedrndr-service,
  .istedrndr-stack__item,
  .istedrndr-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Внедрение SIEM/SOAR ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-siemsoar-security-v1,
#ist-siemsoar-security-v1 * {
  box-sizing: border-box;
}

#ist-siemsoar-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-siemsoar-security-v1 h1,
#ist-siemsoar-security-v1 h2,
#ist-siemsoar-security-v1 h3,
#ist-siemsoar-security-v1 p {
  margin-top: 0;
}

#ist-siemsoar-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-siemsoar-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-siemsoar-security-v1 a {
  text-decoration: none;
}

.istsiemsoar-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istsiemsoar-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istsiemsoar-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istsiemsoar-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istsiemsoar-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istsiemsoar-hero__content,
.istsiemsoar-hero__visual {
  position: relative;
  z-index: 2;
}

.istsiemsoar-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istsiemsoar-kicker--light {
  color: #ffc29b;
}

.istsiemsoar-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istsiemsoar-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istsiemsoar-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istsiemsoar-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istsiemsoar-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istsiemsoar-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istsiemsoar-btn:hover {
  transform: translateY(-2px);
}

.istsiemsoar-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istsiemsoar-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istsiemsoar-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istsiemsoar-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istsiemsoar-hero__visual {
  min-height: 520px;
}

.istsiemsoar-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istsiemsoar-source {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .5;
}

.istsiemsoar-source--1 { animation: istsiemsoarSourceLight 3.6s ease-in-out infinite; }
.istsiemsoar-source--2 { animation: istsiemsoarSourceLight 3.6s ease-in-out infinite 1.2s; }
.istsiemsoar-source--3 { animation: istsiemsoarSourceLight 3.6s ease-in-out infinite 2.4s; }

.istsiemsoar-core {
  opacity: .97;
}

.istsiemsoar-core circle,
.istsiemsoar-core path:last-child {
  animation: istsiemsoarCorrelatePulse 3.6s ease-in-out infinite;
}

.istsiemsoar-soar {
  transform-box: fill-box;
  transform-origin: center;
  animation: istsiemsoarSoarPulse 3.2s ease-in-out infinite;
}

.istsiemsoar-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istsiemsoarBeamFlow 1.5s linear infinite;
}

.istsiemsoar-beam--1 { animation-delay: 0s; }
.istsiemsoar-beam--2 { animation-delay: .3s; }
.istsiemsoar-beam--3 { animation-delay: .6s; }
.istsiemsoar-beam--4 { animation-delay: .9s; }

.istsiemsoar-shield {
  transform-box: view-box;
  transform-origin: 325px 445px;
  animation: istsiemsoarShieldPulse 3.2s ease-in-out infinite;
}

.istsiemsoar-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istsiemsoar-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istsiemsoar-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istsiemsoar-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istsiemsoar-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istsiemsoar-float--one {
  top: 4px;
  left: 0;
}

.istsiemsoar-float--two {
  top: 200px;
  left: -10px;
}

.istsiemsoar-float--three {
  bottom: 40px;
  right: -6px;
}

.istsiemsoar-float--four {
  bottom: -6px;
  left: 40px;
}

.istsiemsoar-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istsiemsoar-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istsiemsoar-nav a:hover,
.istsiemsoar-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istsiemsoar-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istsiemsoar-section--soft {
  background: var(--s);
}

.istsiemsoar-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istsiemsoar-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istsiemsoar-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istsiemsoar-section__head p:last-of-type {
  margin-bottom: 0;
}

.istsiemsoar-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istsiemsoar-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istsiemsoar-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istsiemsoar-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istsiemsoar-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istsiemsoar-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istsiemsoar-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istsiemsoar-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istsiemsoar-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsiemsoar-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istsiemsoar-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istsiemsoar-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istsiemsoar-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istsiemsoar-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istsiemsoar-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istsiemsoar-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istsiemsoar-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istsiemsoar-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istsiemsoar-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istsiemsoar-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istsiemsoar-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istsiemsoar-threat-row p:last-child {
  color: var(--m);
}

.istsiemsoar-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istsiemsoar-reg__intro h2,
.istsiemsoar-reg__intro p {
  color: #fff !important;
}

.istsiemsoar-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istsiemsoar-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istsiemsoar-reg__accent strong {
  color: #fff;
}

.istsiemsoar-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istsiemsoar-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istsiemsoar-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istsiemsoar-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istsiemsoar-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istsiemsoar-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istsiemsoar-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istsiemsoar-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istsiemsoar-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istsiemsoar-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istsiemsoar-process article:nth-child(3)::after,
.istsiemsoar-process article:nth-child(6)::after,
.istsiemsoar-process article:last-child::after {
  display: none;
}

.istsiemsoar-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istsiemsoar-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istsiemsoar-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istsiemsoar-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istsiemsoar-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istsiemsoar-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istsiemsoar-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istsiemsoar-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istsiemsoar-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istsiemsoar-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istsiemsoar-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istsiemsoar-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istsiemsoar-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsiemsoar-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istsiemsoar-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istsiemsoar-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istsiemsoar-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istsiemsoar-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istsiemsoar-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istsiemsoar-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istsiemsoar-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istsiemsoar-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsiemsoar-result-format {
  margin-top: 24px;
}

.istsiemsoar-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsiemsoar-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istsiemsoar-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istsiemsoar-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsiemsoar-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istsiemsoar-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsiemsoar-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istsiemsoar-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istsiemsoar-compare__row:last-child {
  border-bottom: none;
}

.istsiemsoar-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istsiemsoar-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istsiemsoar-compare__row--head {
  background: var(--b2);
}

.istsiemsoar-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istsiemsoar-compare__row--head .istsiemsoar-compare__label {
  background: transparent;
}

.istsiemsoar-compare__row:not(.istsiemsoar-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istsiemsoar-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istsiemsoar-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istsiemsoar-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istsiemsoar-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istsiemsoar-not__item strong {
  color: var(--b);
}

.istsiemsoar-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istsiemsoar-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istsiemsoar-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsiemsoar-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istsiemsoar-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istsiemsoar-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsiemsoar-levels {
  display: grid;
  gap: 14px;
}

.istsiemsoar-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istsiemsoar-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istsiemsoar-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istsiemsoar-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istsiemsoar-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istsiemsoar-level__text strong {
  color: var(--b);
}

.istsiemsoar-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istsiemsoar-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istsiemsoar-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istsiemsoar-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istsiemsoar-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istsiemsoar-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istsiemsoar-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istsiemsoar-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istsiemsoar-faq-list {
  display: grid;
  gap: 12px;
}

.istsiemsoar-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istsiemsoar-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istsiemsoar-faq summary::-webkit-details-marker {
  display: none;
}

.istsiemsoar-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istsiemsoar-faq__toggle::before,
.istsiemsoar-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istsiemsoar-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istsiemsoar-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istsiemsoar-faq[open] .istsiemsoar-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istsiemsoar-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istsiemsoar-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istsiemsoar-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istsiemsoar-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istsiemsoar-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istsiemsoar-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istsiemsoar-service--soon {
  opacity: .72;
}

.istsiemsoar-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istsiemsoar-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istsiemsoar-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istsiemsoar-service:hover::before {
  transform: scaleX(1);
}

.istsiemsoar-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istsiemsoar-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istsiemsoar-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istsiemsoar-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istsiemsoar-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istsiemsoar-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istsiemsoar-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istsiemsoar-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsiemsoar-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istsiemsoar-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istsiemsoar-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istsiemsoar-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istsiemsoar-checklist li::before {
  content: none;
}

.istsiemsoar-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istsiemsoar-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istsiemsoar-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istsiemsoar-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istsiemsoar-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istsiemsoar-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istsiemsoar-navitem--soon {
  opacity: .72;
}

.istsiemsoar-navigator-note {
  margin-bottom: 20px;
}

.istsiemsoar-when__action {
  margin-top: 24px;
}

.istsiemsoar-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istsiemsoar-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istsiemsoar-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istsiemsoar-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istsiemsoar-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istsiemsoar-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istsiemsoar-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istsiemsoar-result > div:first-child > p {
  color: var(--m);
}

.istsiemsoar-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istsiemsoar-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istsiemsoar-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istsiemsoar-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istsiemsoar-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istsiemsoar-case-list {
  display: grid;
  gap: 20px;
}

.istsiemsoar-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istsiemsoar-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istsiemsoar-case__block {
  margin-bottom: 22px;
}

.istsiemsoar-case__block:last-of-type {
  margin-bottom: 0;
}

.istsiemsoar-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istsiemsoar-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istsiemsoar-case__block > p:last-child {
  margin-bottom: 0;
}

.istsiemsoar-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istsiemsoar-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istsiemsoar-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istsiemsoar-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istsiemsoar-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istsiemsoar-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istsiemsoar-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istsiemsoar-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istsiemsoar-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istsiemsoar-cta__contacts {
  margin-top: 20px;
}

.istsiemsoar-cta__contacts a,
.istsiemsoar-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istsiemsoar-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istsiemsoar-cta__contacts a:last-child,
.istsiemsoar-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istsiemsoar-cta__contacts a:hover {
  color: #fff;
}

.istsiemsoar-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istsiemsoarSourceLight {
  0%, 100% { opacity: .5; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.15); }
}

@keyframes istsiemsoarCorrelatePulse {
  0%, 100% { opacity: .6; }
  50% { opacity: 1; }
}

@keyframes istsiemsoarSoarPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.04); }
}

@keyframes istsiemsoarBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istsiemsoarShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istsiemsoar-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istsiemsoar-hero__visual {
    min-height: 460px;
  }

  .istsiemsoar-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istsiemsoar-service-grid,
  .istsiemsoar-process,
  .istsiemsoar-segment-grid,
  .istsiemsoar-segment-grid--3,
  .istsiemsoar-diff-grid,
  .istsiemsoar-treatment-grid,
  .istsiemsoar-related-grid,
  .istsiemsoar-not-grid,
  .istsiemsoar-scope-grid,
  .istsiemsoar-formats-grid,
  .istsiemsoar-value-grid,
  .istsiemsoar-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istsiemsoar-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istsiemsoar-level__bar {
    display: none;
  }

  .istsiemsoar-reg,
  .istsiemsoar-result,
  .istsiemsoar-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istsiemsoar-stack__grid,
  .istsiemsoar-checklist {
    grid-template-columns: 1fr;
  }

  .istsiemsoar-process article:nth-child(3)::after {
    display: block;
  }

  .istsiemsoar-process article:nth-child(2n)::after,
  .istsiemsoar-process article:last-child::after {
    display: none;
  }

  .istsiemsoar-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istsiemsoar-hero,
  .istsiemsoar-section,
  .istsiemsoar-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istsiemsoar-hero {
    min-height: 0;
  }

  .istsiemsoar-hero h2 {
    font-size: 30px !important;
  }

  .istsiemsoar-hero__lead {
    font-size: 16px;
  }

  .istsiemsoar-hero__visual {
    min-height: 380px;
  }

  .istsiemsoar-illustration {
    width: 400px;
  }

  .istsiemsoar-nav {
    top: 58px;
  }

  .istsiemsoar-reg__cards,
  .istsiemsoar-result__list,
  .istsiemsoar-segment-grid,
  .istsiemsoar-segment-grid--3,
  .istsiemsoar-diff-grid,
  .istsiemsoar-prep-grid,
  .istsiemsoar-treatment-grid,
  .istsiemsoar-related-grid,
  .istsiemsoar-not-grid,
  .istsiemsoar-scope-grid,
  .istsiemsoar-formats-grid,
  .istsiemsoar-value-grid,
  .istsiemsoar-nav-grid {
    grid-template-columns: 1fr;
  }

  .istsiemsoar-threat-table__head,
  .istsiemsoar-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istsiemsoar-threat-table__head span:first-child {
    display: none;
  }

  .istsiemsoar-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istsiemsoar-float__icon {
    width: 28px;
    height: 28px;
  }

  .istsiemsoar-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istsiemsoar-float__text strong {
    font-size: 11.5px;
  }

  .istsiemsoar-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istsiemsoar-risk-grid,
  .istsiemsoar-service-grid,
  .istsiemsoar-process,
  .istsiemsoar-nav-grid {
    grid-template-columns: 1fr;
  }

  .istsiemsoar-process article::after {
    display: none !important;
  }

  .istsiemsoar-hero__actions {
    display: grid;
  }

  .istsiemsoar-btn {
    width: 100%;
  }

  .istsiemsoar-hero__visual {
    min-height: 320px;
  }

  .istsiemsoar-illustration {
    width: 330px;
  }

  .istsiemsoar-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istsiemsoar-source--1,
  .istsiemsoar-source--2,
  .istsiemsoar-source--3,
  .istsiemsoar-core circle,
  .istsiemsoar-core path:last-child,
  .istsiemsoar-soar,
  .istsiemsoar-beam,
  .istsiemsoar-shield {
    animation: none;
    opacity: 1;
  }

  .istsiemsoar-btn,
  .istsiemsoar-risk,
  .istsiemsoar-service,
  .istsiemsoar-stack__item,
  .istsiemsoar-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Создание и модернизация удостоверяющих центров ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-uc-security-v1,
#ist-uc-security-v1 * {
  box-sizing: border-box;
}

#ist-uc-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-uc-security-v1 h1,
#ist-uc-security-v1 h2,
#ist-uc-security-v1 h3,
#ist-uc-security-v1 p {
  margin-top: 0;
}

#ist-uc-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-uc-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-uc-security-v1 a {
  text-decoration: none;
}

.istuc-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istuc-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istuc-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istuc-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istuc-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istuc-hero__content,
.istuc-hero__visual {
  position: relative;
  z-index: 2;
}

.istuc-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istuc-kicker--light {
  color: #ffc29b;
}

.istuc-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istuc-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istuc-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istuc-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istuc-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istuc-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istuc-btn:hover {
  transform: translateY(-2px);
}

.istuc-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istuc-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istuc-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istuc-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istuc-hero__visual {
  min-height: 520px;
}

.istuc-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istuc-hsm {
  opacity: .97;
}

.istuc-hsm circle,
.istuc-hsm path:last-child {
  animation: istucLockPulse 3.6s ease-in-out infinite;
}

.istuc-cert {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .5;
}

.istuc-cert--1 { animation: istucCertIssue 4.2s ease-in-out infinite; }
.istuc-cert--2 { animation: istucCertIssue 4.2s ease-in-out infinite 1.4s; }
.istuc-cert--3 { animation: istucCertIssue 4.2s ease-in-out infinite 2.8s; }

.istuc-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istucBeamFlow 1.5s linear infinite;
}

.istuc-beam--1 { animation-delay: 0s; }
.istuc-beam--2 { animation-delay: .3s; }
.istuc-beam--3 { animation-delay: .6s; }

.istuc-shield {
  transform-box: view-box;
  transform-origin: 325px 445px;
  animation: istucShieldPulse 3.2s ease-in-out infinite;
}

.istuc-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istuc-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istuc-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istuc-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istuc-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istuc-float--one {
  top: 4px;
  left: 0;
}

.istuc-float--two {
  top: 200px;
  left: -10px;
}

.istuc-float--three {
  bottom: 40px;
  right: -6px;
}

.istuc-float--four {
  bottom: -6px;
  left: 40px;
}

.istuc-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istuc-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istuc-nav a:hover,
.istuc-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istuc-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istuc-section--soft {
  background: var(--s);
}

.istuc-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istuc-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istuc-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istuc-section__head p:last-of-type {
  margin-bottom: 0;
}

.istuc-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istuc-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istuc-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istuc-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istuc-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istuc-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istuc-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istuc-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istuc-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istuc-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istuc-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istuc-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istuc-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istuc-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istuc-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istuc-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istuc-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istuc-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istuc-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istuc-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istuc-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istuc-threat-row p:last-child {
  color: var(--m);
}

.istuc-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istuc-reg__intro h2,
.istuc-reg__intro p {
  color: #fff !important;
}

.istuc-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istuc-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istuc-reg__accent strong {
  color: #fff;
}

.istuc-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istuc-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istuc-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istuc-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istuc-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istuc-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istuc-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istuc-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istuc-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istuc-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istuc-process article:nth-child(3)::after,
.istuc-process article:nth-child(6)::after,
.istuc-process article:last-child::after {
  display: none;
}

.istuc-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istuc-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istuc-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istuc-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istuc-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istuc-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istuc-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istuc-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istuc-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istuc-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istuc-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istuc-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istuc-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istuc-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istuc-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istuc-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istuc-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istuc-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istuc-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istuc-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istuc-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istuc-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istuc-result-format {
  margin-top: 24px;
}

.istuc-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istuc-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istuc-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istuc-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istuc-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istuc-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istuc-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istuc-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istuc-compare__row:last-child {
  border-bottom: none;
}

.istuc-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istuc-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istuc-compare__row--head {
  background: var(--b2);
}

.istuc-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istuc-compare__row--head .istuc-compare__label {
  background: transparent;
}

.istuc-compare__row:not(.istuc-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istuc-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istuc-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istuc-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istuc-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istuc-not__item strong {
  color: var(--b);
}

.istuc-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istuc-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istuc-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istuc-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istuc-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istuc-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istuc-levels {
  display: grid;
  gap: 14px;
}

.istuc-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istuc-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istuc-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istuc-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istuc-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istuc-level__text strong {
  color: var(--b);
}

.istuc-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istuc-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istuc-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istuc-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istuc-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istuc-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istuc-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istuc-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istuc-faq-list {
  display: grid;
  gap: 12px;
}

.istuc-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istuc-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istuc-faq summary::-webkit-details-marker {
  display: none;
}

.istuc-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istuc-faq__toggle::before,
.istuc-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istuc-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istuc-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istuc-faq[open] .istuc-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istuc-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istuc-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istuc-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istuc-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istuc-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istuc-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istuc-service--soon {
  opacity: .72;
}

.istuc-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istuc-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istuc-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istuc-service:hover::before {
  transform: scaleX(1);
}

.istuc-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istuc-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istuc-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istuc-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istuc-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istuc-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istuc-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istuc-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istuc-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istuc-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istuc-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istuc-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istuc-checklist li::before {
  content: none;
}

.istuc-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istuc-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istuc-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istuc-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istuc-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istuc-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istuc-navitem--soon {
  opacity: .72;
}

.istuc-navigator-note {
  margin-bottom: 20px;
}

.istuc-when__action {
  margin-top: 24px;
}

.istuc-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istuc-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istuc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istuc-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istuc-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istuc-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istuc-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istuc-result > div:first-child > p {
  color: var(--m);
}

.istuc-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istuc-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istuc-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istuc-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istuc-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istuc-case-list {
  display: grid;
  gap: 20px;
}

.istuc-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istuc-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istuc-case__block {
  margin-bottom: 22px;
}

.istuc-case__block:last-of-type {
  margin-bottom: 0;
}

.istuc-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istuc-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istuc-case__block > p:last-child {
  margin-bottom: 0;
}

.istuc-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istuc-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istuc-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istuc-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istuc-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istuc-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istuc-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istuc-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istuc-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istuc-cta__contacts {
  margin-top: 20px;
}

.istuc-cta__contacts a,
.istuc-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istuc-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istuc-cta__contacts a:last-child,
.istuc-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istuc-cta__contacts a:hover {
  color: #fff;
}

.istuc-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istucLockPulse {
  0%, 100% { opacity: .7; }
  50% { opacity: 1; }
}

@keyframes istucCertIssue {
  0%, 100% { opacity: .5; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.12); }
}

@keyframes istucBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istucShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istuc-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istuc-hero__visual {
    min-height: 460px;
  }

  .istuc-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istuc-service-grid,
  .istuc-process,
  .istuc-segment-grid,
  .istuc-segment-grid--3,
  .istuc-diff-grid,
  .istuc-treatment-grid,
  .istuc-related-grid,
  .istuc-not-grid,
  .istuc-scope-grid,
  .istuc-formats-grid,
  .istuc-value-grid,
  .istuc-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istuc-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istuc-level__bar {
    display: none;
  }

  .istuc-reg,
  .istuc-result,
  .istuc-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istuc-stack__grid,
  .istuc-checklist {
    grid-template-columns: 1fr;
  }

  .istuc-process article:nth-child(3)::after {
    display: block;
  }

  .istuc-process article:nth-child(2n)::after,
  .istuc-process article:last-child::after {
    display: none;
  }

  .istuc-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istuc-hero,
  .istuc-section,
  .istuc-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istuc-hero {
    min-height: 0;
  }

  .istuc-hero h2 {
    font-size: 30px !important;
  }

  .istuc-hero__lead {
    font-size: 16px;
  }

  .istuc-hero__visual {
    min-height: 380px;
  }

  .istuc-illustration {
    width: 400px;
  }

  .istuc-nav {
    top: 58px;
  }

  .istuc-reg__cards,
  .istuc-result__list,
  .istuc-segment-grid,
  .istuc-segment-grid--3,
  .istuc-diff-grid,
  .istuc-prep-grid,
  .istuc-treatment-grid,
  .istuc-related-grid,
  .istuc-not-grid,
  .istuc-scope-grid,
  .istuc-formats-grid,
  .istuc-value-grid,
  .istuc-nav-grid {
    grid-template-columns: 1fr;
  }

  .istuc-threat-table__head,
  .istuc-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istuc-threat-table__head span:first-child {
    display: none;
  }

  .istuc-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istuc-float__icon {
    width: 28px;
    height: 28px;
  }

  .istuc-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istuc-float__text strong {
    font-size: 11.5px;
  }

  .istuc-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istuc-risk-grid,
  .istuc-service-grid,
  .istuc-process,
  .istuc-nav-grid {
    grid-template-columns: 1fr;
  }

  .istuc-process article::after {
    display: none !important;
  }

  .istuc-hero__actions {
    display: grid;
  }

  .istuc-btn {
    width: 100%;
  }

  .istuc-hero__visual {
    min-height: 320px;
  }

  .istuc-illustration {
    width: 330px;
  }

  .istuc-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istuc-hsm circle,
  .istuc-hsm path:last-child,
  .istuc-cert--1,
  .istuc-cert--2,
  .istuc-cert--3,
  .istuc-beam,
  .istuc-shield {
    animation: none;
    opacity: 1;
  }

  .istuc-btn,
  .istuc-risk,
  .istuc-service,
  .istuc-stack__item,
  .istuc-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Внедрение СКЗИ ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-skzi-security-v1,
#ist-skzi-security-v1 * {
  box-sizing: border-box;
}

#ist-skzi-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-skzi-security-v1 h1,
#ist-skzi-security-v1 h2,
#ist-skzi-security-v1 h3,
#ist-skzi-security-v1 p {
  margin-top: 0;
}

#ist-skzi-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-skzi-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-skzi-security-v1 a {
  text-decoration: none;
}

.istskzi-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istskzi-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istskzi-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istskzi-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istskzi-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istskzi-hero__content,
.istskzi-hero__visual {
  position: relative;
  z-index: 2;
}

.istskzi-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istskzi-kicker--light {
  color: #ffc29b;
}

.istskzi-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istskzi-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istskzi-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istskzi-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istskzi-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istskzi-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istskzi-btn:hover {
  transform: translateY(-2px);
}

.istskzi-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istskzi-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istskzi-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istskzi-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istskzi-hero__visual {
  min-height: 520px;
}

.istskzi-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istskzi-lock {
  opacity: .97;
}

.istskzi-lock rect:nth-of-type(2) {
  animation: istskziLockPulse 3.6s ease-in-out infinite;
}

.istskzi-node {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istskzi-node--a { animation: istskziNodePulse 4.2s ease-in-out infinite; }
.istskzi-node--b { animation: istskziNodePulse 4.2s ease-in-out infinite 2.1s; }

.istskzi-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istskziBeamFlow 1.5s linear infinite;
}

.istskzi-beam--1 { animation-delay: 0s; }
.istskzi-beam--2 { animation-delay: .4s; }
.istskzi-beam--3 { animation-delay: .8s; }

.istskzi-shield {
  transform-box: view-box;
  transform-origin: 315px 485px;
  animation: istskziShieldPulse 3.2s ease-in-out infinite;
}

.istskzi-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istskzi-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istskzi-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istskzi-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istskzi-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istskzi-float--one {
  top: 4px;
  left: 0;
}

.istskzi-float--two {
  top: 200px;
  left: -10px;
}

.istskzi-float--three {
  bottom: 40px;
  right: -6px;
}

.istskzi-float--four {
  bottom: -6px;
  left: 40px;
}

.istskzi-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istskzi-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istskzi-nav a:hover,
.istskzi-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istskzi-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istskzi-section--soft {
  background: var(--s);
}

.istskzi-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istskzi-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istskzi-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istskzi-section__head p:last-of-type {
  margin-bottom: 0;
}

.istskzi-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istskzi-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istskzi-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istskzi-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istskzi-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istskzi-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istskzi-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istskzi-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istskzi-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istskzi-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istskzi-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istskzi-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istskzi-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istskzi-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istskzi-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istskzi-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istskzi-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istskzi-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istskzi-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istskzi-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istskzi-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istskzi-threat-row p:last-child {
  color: var(--m);
}

.istskzi-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istskzi-reg__intro h2,
.istskzi-reg__intro p {
  color: #fff !important;
}

.istskzi-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istskzi-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istskzi-reg__accent strong {
  color: #fff;
}

.istskzi-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istskzi-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istskzi-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istskzi-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istskzi-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istskzi-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istskzi-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istskzi-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istskzi-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istskzi-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istskzi-process article:nth-child(3)::after,
.istskzi-process article:nth-child(6)::after,
.istskzi-process article:last-child::after {
  display: none;
}

.istskzi-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istskzi-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istskzi-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istskzi-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istskzi-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istskzi-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istskzi-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istskzi-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istskzi-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istskzi-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istskzi-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istskzi-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istskzi-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istskzi-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istskzi-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istskzi-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istskzi-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istskzi-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istskzi-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istskzi-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istskzi-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istskzi-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istskzi-result-format {
  margin-top: 24px;
}

.istskzi-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istskzi-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istskzi-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istskzi-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istskzi-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istskzi-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istskzi-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istskzi-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istskzi-compare__row:last-child {
  border-bottom: none;
}

.istskzi-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istskzi-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istskzi-compare__row--head {
  background: var(--b2);
}

.istskzi-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istskzi-compare__row--head .istskzi-compare__label {
  background: transparent;
}

.istskzi-compare__row:not(.istskzi-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istskzi-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istskzi-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istskzi-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istskzi-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istskzi-not__item strong {
  color: var(--b);
}

.istskzi-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istskzi-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istskzi-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istskzi-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istskzi-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istskzi-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istskzi-levels {
  display: grid;
  gap: 14px;
}

.istskzi-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istskzi-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istskzi-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istskzi-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istskzi-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istskzi-level__text strong {
  color: var(--b);
}

.istskzi-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istskzi-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istskzi-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istskzi-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istskzi-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istskzi-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istskzi-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istskzi-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istskzi-faq-list {
  display: grid;
  gap: 12px;
}

.istskzi-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istskzi-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istskzi-faq summary::-webkit-details-marker {
  display: none;
}

.istskzi-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istskzi-faq__toggle::before,
.istskzi-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istskzi-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istskzi-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istskzi-faq[open] .istskzi-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istskzi-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istskzi-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istskzi-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istskzi-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istskzi-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istskzi-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istskzi-service--soon {
  opacity: .72;
}

.istskzi-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istskzi-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istskzi-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istskzi-service:hover::before {
  transform: scaleX(1);
}

.istskzi-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istskzi-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istskzi-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istskzi-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istskzi-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istskzi-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istskzi-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istskzi-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istskzi-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istskzi-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istskzi-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istskzi-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istskzi-checklist li::before {
  content: none;
}

.istskzi-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istskzi-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istskzi-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istskzi-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istskzi-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istskzi-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istskzi-navitem--soon {
  opacity: .72;
}

.istskzi-navigator-note {
  margin-bottom: 20px;
}

.istskzi-when__action {
  margin-top: 24px;
}

.istskzi-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istskzi-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istskzi-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istskzi-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istskzi-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istskzi-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istskzi-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istskzi-result > div:first-child > p {
  color: var(--m);
}

.istskzi-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istskzi-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istskzi-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istskzi-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istskzi-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istskzi-case-list {
  display: grid;
  gap: 20px;
}

.istskzi-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istskzi-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istskzi-case__block {
  margin-bottom: 22px;
}

.istskzi-case__block:last-of-type {
  margin-bottom: 0;
}

.istskzi-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istskzi-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istskzi-case__block > p:last-child {
  margin-bottom: 0;
}

.istskzi-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istskzi-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istskzi-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istskzi-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istskzi-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istskzi-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istskzi-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istskzi-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istskzi-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istskzi-cta__contacts {
  margin-top: 20px;
}

.istskzi-cta__contacts a,
.istskzi-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istskzi-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istskzi-cta__contacts a:last-child,
.istskzi-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istskzi-cta__contacts a:hover {
  color: #fff;
}

.istskzi-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istskziLockPulse {
  0%, 100% { opacity: .7; }
  50% { opacity: 1; }
}

@keyframes istskziNodePulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.1); }
}

@keyframes istskziBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istskziShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istskzi-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istskzi-hero__visual {
    min-height: 460px;
  }

  .istskzi-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istskzi-service-grid,
  .istskzi-process,
  .istskzi-segment-grid,
  .istskzi-segment-grid--3,
  .istskzi-diff-grid,
  .istskzi-treatment-grid,
  .istskzi-related-grid,
  .istskzi-not-grid,
  .istskzi-scope-grid,
  .istskzi-formats-grid,
  .istskzi-value-grid,
  .istskzi-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istskzi-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istskzi-level__bar {
    display: none;
  }

  .istskzi-reg,
  .istskzi-result,
  .istskzi-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istskzi-stack__grid,
  .istskzi-checklist {
    grid-template-columns: 1fr;
  }

  .istskzi-process article:nth-child(3)::after {
    display: block;
  }

  .istskzi-process article:nth-child(2n)::after,
  .istskzi-process article:last-child::after {
    display: none;
  }

  .istskzi-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istskzi-hero,
  .istskzi-section,
  .istskzi-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istskzi-hero {
    min-height: 0;
  }

  .istskzi-hero h2 {
    font-size: 30px !important;
  }

  .istskzi-hero__lead {
    font-size: 16px;
  }

  .istskzi-hero__visual {
    min-height: 380px;
  }

  .istskzi-illustration {
    width: 400px;
  }

  .istskzi-nav {
    top: 58px;
  }

  .istskzi-reg__cards,
  .istskzi-result__list,
  .istskzi-segment-grid,
  .istskzi-segment-grid--3,
  .istskzi-diff-grid,
  .istskzi-prep-grid,
  .istskzi-treatment-grid,
  .istskzi-related-grid,
  .istskzi-not-grid,
  .istskzi-scope-grid,
  .istskzi-formats-grid,
  .istskzi-value-grid,
  .istskzi-nav-grid {
    grid-template-columns: 1fr;
  }

  .istskzi-threat-table__head,
  .istskzi-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istskzi-threat-table__head span:first-child {
    display: none;
  }

  .istskzi-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istskzi-float__icon {
    width: 28px;
    height: 28px;
  }

  .istskzi-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istskzi-float__text strong {
    font-size: 11.5px;
  }

  .istskzi-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istskzi-risk-grid,
  .istskzi-service-grid,
  .istskzi-process,
  .istskzi-nav-grid {
    grid-template-columns: 1fr;
  }

  .istskzi-process article::after {
    display: none !important;
  }

  .istskzi-hero__actions {
    display: grid;
  }

  .istskzi-btn {
    width: 100%;
  }

  .istskzi-hero__visual {
    min-height: 320px;
  }

  .istskzi-illustration {
    width: 330px;
  }

  .istskzi-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istskzi-lock rect:nth-of-type(2),
  .istskzi-node--a,
  .istskzi-node--b,
  .istskzi-beam,
  .istskzi-shield {
    animation: none;
    opacity: 1;
  }

  .istskzi-btn,
  .istskzi-risk,
  .istskzi-service,
  .istskzi-stack__item,
  .istskzi-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Внедрение средств защиты информации (раздел) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-vnedr-hub-security-v1,
#ist-vnedr-hub-security-v1 * {
  box-sizing: border-box;
}

#ist-vnedr-hub-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-vnedr-hub-security-v1 h1,
#ist-vnedr-hub-security-v1 h2,
#ist-vnedr-hub-security-v1 h3,
#ist-vnedr-hub-security-v1 p {
  margin-top: 0;
}

#ist-vnedr-hub-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-vnedr-hub-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-vnedr-hub-security-v1 a {
  text-decoration: none;
}

.istvh-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istvh-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istvh-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istvh-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istvh-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istvh-hero__content,
.istvh-hero__visual {
  position: relative;
  z-index: 2;
}

.istvh-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istvh-kicker--light {
  color: #ffc29b;
}

.istvh-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istvh-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istvh-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istvh-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istvh-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istvh-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istvh-btn:hover {
  transform: translateY(-2px);
}

.istvh-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istvh-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istvh-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istvh-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istvh-hero__visual {
  min-height: 520px;
}

.istvh-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istvh-orbit {
  transform-box: view-box;
  transform-origin: 280px 265px;
  animation: istvhOrbitSpin 20s linear infinite;
}

.istvh-orbit__counter {
  transform-box: fill-box;
  transform-origin: center;
  animation: istvhOrbitCounter 20s linear infinite;
}

.istvh-shield {
  transform-box: view-box;
  transform-origin: 478px 163px;
  animation: istvhShieldPulse 3.2s ease-in-out infinite;
}

.istvh-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istvh-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istvh-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istvh-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istvh-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istvh-float--one {
  top: 4px;
  left: 0;
}

.istvh-float--two {
  top: 200px;
  left: -10px;
}

.istvh-float--three {
  bottom: 40px;
  right: -6px;
}

.istvh-float--four {
  bottom: -6px;
  left: 40px;
}

.istvh-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istvh-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istvh-nav a:hover,
.istvh-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istvh-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istvh-section--soft {
  background: var(--s);
}

.istvh-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istvh-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istvh-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istvh-section__head p:last-of-type {
  margin-bottom: 0;
}

.istvh-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istvh-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvh-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvh-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istvh-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istvh-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istvh-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istvh-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istvh-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvh-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvh-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istvh-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istvh-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istvh-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvh-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istvh-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istvh-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istvh-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istvh-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istvh-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istvh-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istvh-threat-row p:last-child {
  color: var(--m);
}

.istvh-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istvh-reg__intro h2,
.istvh-reg__intro p {
  color: #fff !important;
}

.istvh-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istvh-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istvh-reg__accent strong {
  color: #fff;
}

.istvh-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvh-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvh-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istvh-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istvh-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istvh-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istvh-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istvh-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvh-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvh-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istvh-process article:nth-child(3)::after,
.istvh-process article:nth-child(6)::after,
.istvh-process article:last-child::after {
  display: none;
}

.istvh-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istvh-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istvh-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istvh-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istvh-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istvh-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istvh-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istvh-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istvh-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istvh-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvh-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvh-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvh-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvh-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvh-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istvh-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istvh-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istvh-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvh-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvh-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvh-result-format {
  margin-top: 24px;
}

.istvh-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvh-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istvh-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istvh-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvh-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istvh-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvh-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istvh-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istvh-compare__row:last-child {
  border-bottom: none;
}

.istvh-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istvh-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istvh-compare__row--head {
  background: var(--b2);
}

.istvh-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istvh-compare__row--head .istvh-compare__label {
  background: transparent;
}

.istvh-compare__row:not(.istvh-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istvh-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istvh-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvh-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istvh-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istvh-not__item strong {
  color: var(--b);
}

.istvh-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvh-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istvh-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvh-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istvh-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istvh-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvh-levels {
  display: grid;
  gap: 14px;
}

.istvh-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvh-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istvh-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istvh-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istvh-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istvh-level__text strong {
  color: var(--b);
}

.istvh-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istvh-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istvh-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istvh-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvh-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istvh-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istvh-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvh-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvh-faq-list {
  display: grid;
  gap: 12px;
}

.istvh-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvh-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istvh-faq summary::-webkit-details-marker {
  display: none;
}

.istvh-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istvh-faq__toggle::before,
.istvh-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istvh-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istvh-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istvh-faq[open] .istvh-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istvh-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvh-catalog__group {
  margin: 36px 0 16px;
  font-size: 18px;
  font-weight: 700;
  color: var(--b);
}

.istvh-catalog__group:first-of-type {
  margin-top: 8px;
}

.istvh-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 8px;
}

.istvh-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istvh-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvh-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istvh-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istvh-service--soon {
  opacity: .72;
}

.istvh-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istvh-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istvh-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istvh-service:hover::before {
  transform: scaleX(1);
}

.istvh-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istvh-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istvh-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istvh-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istvh-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvh-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istvh-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istvh-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvh-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istvh-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istvh-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istvh-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istvh-checklist li::before {
  content: none;
}

.istvh-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istvh-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istvh-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istvh-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvh-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istvh-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvh-navitem--soon {
  opacity: .72;
}

.istvh-navigator-note {
  margin-bottom: 20px;
}

.istvh-when__action {
  margin-top: 24px;
}

.istvh-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istvh-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istvh-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istvh-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istvh-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvh-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istvh-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istvh-result > div:first-child > p {
  color: var(--m);
}

.istvh-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvh-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvh-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvh-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istvh-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istvh-case-list {
  display: grid;
  gap: 20px;
}

.istvh-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istvh-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istvh-case__block {
  margin-bottom: 22px;
}

.istvh-case__block:last-of-type {
  margin-bottom: 0;
}

.istvh-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istvh-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istvh-case__block > p:last-child {
  margin-bottom: 0;
}

.istvh-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istvh-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvh-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvh-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istvh-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istvh-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istvh-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istvh-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istvh-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istvh-cta__contacts {
  margin-top: 20px;
}

.istvh-cta__contacts a,
.istvh-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istvh-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvh-cta__contacts a:last-child,
.istvh-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istvh-cta__contacts a:hover {
  color: #fff;
}

.istvh-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istvhOrbitSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes istvhOrbitCounter {
  from { transform: rotate(0deg); }
  to { transform: rotate(-360deg); }
}

@keyframes istvhShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istvh-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istvh-hero__visual {
    min-height: 460px;
  }

  .istvh-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istvh-service-grid,
  .istvh-process,
  .istvh-segment-grid,
  .istvh-segment-grid--3,
  .istvh-diff-grid,
  .istvh-treatment-grid,
  .istvh-related-grid,
  .istvh-not-grid,
  .istvh-scope-grid,
  .istvh-formats-grid,
  .istvh-value-grid,
  .istvh-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istvh-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istvh-level__bar {
    display: none;
  }

  .istvh-reg,
  .istvh-result,
  .istvh-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istvh-stack__grid,
  .istvh-checklist {
    grid-template-columns: 1fr;
  }

  .istvh-process article:nth-child(3)::after {
    display: block;
  }

  .istvh-process article:nth-child(2n)::after,
  .istvh-process article:last-child::after {
    display: none;
  }

  .istvh-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istvh-hero,
  .istvh-section,
  .istvh-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istvh-hero {
    min-height: 0;
  }

  .istvh-hero h2 {
    font-size: 30px !important;
  }

  .istvh-hero__lead {
    font-size: 16px;
  }

  .istvh-hero__visual {
    min-height: 380px;
  }

  .istvh-illustration {
    width: 400px;
  }

  .istvh-nav {
    top: 58px;
  }

  .istvh-reg__cards,
  .istvh-result__list,
  .istvh-segment-grid,
  .istvh-segment-grid--3,
  .istvh-diff-grid,
  .istvh-prep-grid,
  .istvh-treatment-grid,
  .istvh-related-grid,
  .istvh-not-grid,
  .istvh-scope-grid,
  .istvh-formats-grid,
  .istvh-value-grid,
  .istvh-nav-grid {
    grid-template-columns: 1fr;
  }

  .istvh-threat-table__head,
  .istvh-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istvh-threat-table__head span:first-child {
    display: none;
  }

  .istvh-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istvh-float__icon {
    width: 28px;
    height: 28px;
  }

  .istvh-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istvh-float__text strong {
    font-size: 11.5px;
  }

  .istvh-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istvh-risk-grid,
  .istvh-service-grid,
  .istvh-process,
  .istvh-nav-grid {
    grid-template-columns: 1fr;
  }

  .istvh-process article::after {
    display: none !important;
  }

  .istvh-hero__actions {
    display: grid;
  }

  .istvh-btn {
    width: 100%;
  }

  .istvh-hero__visual {
    min-height: 320px;
  }

  .istvh-illustration {
    width: 330px;
  }

  .istvh-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istvh-orbit,
  .istvh-orbit__counter,
  .istvh-shield {
    animation: none;
  }

  .istvh-btn,
  .istvh-risk,
  .istvh-service,
  .istvh-stack__item,
  .istvh-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Аутсорсинг роли CISO / vCISO ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-vciso-security-v1,
#ist-vciso-security-v1 * {
  box-sizing: border-box;
}

#ist-vciso-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-vciso-security-v1 h1,
#ist-vciso-security-v1 h2,
#ist-vciso-security-v1 h3,
#ist-vciso-security-v1 p {
  margin-top: 0;
}

#ist-vciso-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-vciso-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-vciso-security-v1 a {
  text-decoration: none;
}

.istvciso-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istvciso-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istvciso-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istvciso-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istvciso-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istvciso-hero__content,
.istvciso-hero__visual {
  position: relative;
  z-index: 2;
}

.istvciso-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istvciso-kicker--light {
  color: #ffc29b;
}

.istvciso-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istvciso-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istvciso-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istvciso-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istvciso-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istvciso-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istvciso-btn:hover {
  transform: translateY(-2px);
}

.istvciso-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istvciso-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istvciso-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istvciso-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istvciso-hero__visual {
  min-height: 520px;
}

.istvciso-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istvciso-lead {
  transform-box: fill-box;
  transform-origin: center;
  animation: istvcisoLeadPulse 4s ease-in-out infinite;
}

.istvciso-node {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istvciso-node--a { animation: istvcisoNodePulse 4.5s ease-in-out infinite; }
.istvciso-node--b { animation: istvcisoNodePulse 4.5s ease-in-out infinite 1.5s; }
.istvciso-node--c { animation: istvcisoNodePulse 4.5s ease-in-out infinite 3s; }

.istvciso-link {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istvcisoLinkFlow 1.6s linear infinite;
}

.istvciso-link--1 { animation-delay: 0s; }
.istvciso-link--2 { animation-delay: .3s; }
.istvciso-link--3 { animation-delay: .6s; }

.istvciso-shield {
  transform-box: view-box;
  transform-origin: 478px 157px;
  animation: istvcisoShieldPulse 3.2s ease-in-out infinite;
}

.istvciso-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istvciso-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istvciso-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istvciso-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istvciso-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istvciso-float--one {
  top: 4px;
  left: 0;
}

.istvciso-float--two {
  top: 200px;
  left: -10px;
}

.istvciso-float--three {
  bottom: 40px;
  right: -6px;
}

.istvciso-float--four {
  bottom: -6px;
  left: 40px;
}

.istvciso-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istvciso-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istvciso-nav a:hover,
.istvciso-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istvciso-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istvciso-section--soft {
  background: var(--s);
}

.istvciso-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istvciso-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istvciso-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istvciso-section__head p:last-of-type {
  margin-bottom: 0;
}

.istvciso-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istvciso-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvciso-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvciso-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istvciso-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istvciso-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istvciso-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istvciso-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istvciso-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvciso-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvciso-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istvciso-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istvciso-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istvciso-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvciso-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istvciso-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istvciso-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istvciso-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istvciso-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istvciso-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istvciso-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istvciso-threat-row p:last-child {
  color: var(--m);
}

.istvciso-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istvciso-reg__intro h2,
.istvciso-reg__intro p {
  color: #fff !important;
}

.istvciso-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istvciso-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istvciso-reg__accent strong {
  color: #fff;
}

.istvciso-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvciso-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvciso-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istvciso-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istvciso-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istvciso-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istvciso-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istvciso-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvciso-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvciso-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istvciso-process article:nth-child(3)::after,
.istvciso-process article:nth-child(6)::after,
.istvciso-process article:last-child::after {
  display: none;
}

.istvciso-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istvciso-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istvciso-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istvciso-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvciso-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istvciso-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istvciso-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istvciso-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istvciso-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istvciso-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istvciso-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istvciso-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvciso-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvciso-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvciso-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvciso-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvciso-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istvciso-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istvciso-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istvciso-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvciso-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvciso-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvciso-result-format {
  margin-top: 24px;
}

.istvciso-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvciso-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istvciso-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istvciso-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvciso-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istvciso-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvciso-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istvciso-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istvciso-compare__row:last-child {
  border-bottom: none;
}

.istvciso-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istvciso-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istvciso-compare__row--head {
  background: var(--b2);
}

.istvciso-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istvciso-compare__row--head .istvciso-compare__label {
  background: transparent;
}

.istvciso-compare__row:not(.istvciso-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istvciso-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istvciso-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvciso-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istvciso-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istvciso-not__item strong {
  color: var(--b);
}

.istvciso-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvciso-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istvciso-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvciso-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istvciso-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istvciso-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvciso-levels {
  display: grid;
  gap: 14px;
}

.istvciso-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvciso-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istvciso-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istvciso-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istvciso-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istvciso-level__text strong {
  color: var(--b);
}

.istvciso-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istvciso-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istvciso-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istvciso-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvciso-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istvciso-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istvciso-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvciso-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvciso-faq-list {
  display: grid;
  gap: 12px;
}

.istvciso-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvciso-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istvciso-faq summary::-webkit-details-marker {
  display: none;
}

.istvciso-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istvciso-faq__toggle::before,
.istvciso-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istvciso-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istvciso-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istvciso-faq[open] .istvciso-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istvciso-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvciso-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istvciso-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istvciso-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvciso-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istvciso-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istvciso-service--soon {
  opacity: .72;
}

.istvciso-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istvciso-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istvciso-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istvciso-service:hover::before {
  transform: scaleX(1);
}

.istvciso-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istvciso-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istvciso-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istvciso-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istvciso-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvciso-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istvciso-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istvciso-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvciso-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istvciso-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istvciso-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istvciso-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istvciso-checklist li::before {
  content: none;
}

.istvciso-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istvciso-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istvciso-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istvciso-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvciso-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istvciso-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvciso-navitem--soon {
  opacity: .72;
}

.istvciso-navigator-note {
  margin-bottom: 20px;
}

.istvciso-when__action {
  margin-top: 24px;
}

.istvciso-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istvciso-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istvciso-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istvciso-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istvciso-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvciso-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istvciso-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istvciso-result > div:first-child > p {
  color: var(--m);
}

.istvciso-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvciso-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvciso-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvciso-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istvciso-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istvciso-case-list {
  display: grid;
  gap: 20px;
}

.istvciso-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istvciso-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istvciso-case__block {
  margin-bottom: 22px;
}

.istvciso-case__block:last-of-type {
  margin-bottom: 0;
}

.istvciso-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istvciso-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istvciso-case__block > p:last-child {
  margin-bottom: 0;
}

.istvciso-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istvciso-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvciso-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvciso-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istvciso-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istvciso-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istvciso-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istvciso-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istvciso-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istvciso-cta__contacts {
  margin-top: 20px;
}

.istvciso-cta__contacts a,
.istvciso-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istvciso-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvciso-cta__contacts a:last-child,
.istvciso-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istvciso-cta__contacts a:hover {
  color: #fff;
}

.istvciso-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istvcisoLeadPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

@keyframes istvcisoNodePulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.1); }
}

@keyframes istvcisoLinkFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istvcisoShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istvciso-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istvciso-hero__visual {
    min-height: 460px;
  }

  .istvciso-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istvciso-service-grid,
  .istvciso-process,
  .istvciso-segment-grid,
  .istvciso-segment-grid--3,
  .istvciso-diff-grid,
  .istvciso-treatment-grid,
  .istvciso-related-grid,
  .istvciso-not-grid,
  .istvciso-scope-grid,
  .istvciso-formats-grid,
  .istvciso-value-grid,
  .istvciso-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istvciso-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istvciso-level__bar {
    display: none;
  }

  .istvciso-reg,
  .istvciso-result,
  .istvciso-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istvciso-stack__grid,
  .istvciso-checklist {
    grid-template-columns: 1fr;
  }

  .istvciso-process article:nth-child(3)::after {
    display: block;
  }

  .istvciso-process article:nth-child(2n)::after,
  .istvciso-process article:last-child::after {
    display: none;
  }

  .istvciso-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istvciso-hero,
  .istvciso-section,
  .istvciso-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istvciso-hero {
    min-height: 0;
  }

  .istvciso-hero h2 {
    font-size: 30px !important;
  }

  .istvciso-hero__lead {
    font-size: 16px;
  }

  .istvciso-hero__visual {
    min-height: 380px;
  }

  .istvciso-illustration {
    width: 400px;
  }

  .istvciso-nav {
    top: 58px;
  }

  .istvciso-reg__cards,
  .istvciso-result__list,
  .istvciso-segment-grid,
  .istvciso-segment-grid--3,
  .istvciso-diff-grid,
  .istvciso-prep-grid,
  .istvciso-treatment-grid,
  .istvciso-related-grid,
  .istvciso-not-grid,
  .istvciso-scope-grid,
  .istvciso-formats-grid,
  .istvciso-value-grid,
  .istvciso-nav-grid {
    grid-template-columns: 1fr;
  }

  .istvciso-threat-table__head,
  .istvciso-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istvciso-threat-table__head span:first-child {
    display: none;
  }

  .istvciso-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istvciso-float__icon {
    width: 28px;
    height: 28px;
  }

  .istvciso-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istvciso-float__text strong {
    font-size: 11.5px;
  }

  .istvciso-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istvciso-risk-grid,
  .istvciso-service-grid,
  .istvciso-process,
  .istvciso-nav-grid {
    grid-template-columns: 1fr;
  }

  .istvciso-process article::after {
    display: none !important;
  }

  .istvciso-hero__actions {
    display: grid;
  }

  .istvciso-btn {
    width: 100%;
  }

  .istvciso-hero__visual {
    min-height: 320px;
  }

  .istvciso-illustration {
    width: 330px;
  }

  .istvciso-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istvciso-lead,
  .istvciso-node--a,
  .istvciso-node--b,
  .istvciso-node--c,
  .istvciso-link,
  .istvciso-shield {
    animation: none;
    opacity: 1;
  }

  .istvciso-btn,
  .istvciso-risk,
  .istvciso-service,
  .istvciso-stack__item,
  .istvciso-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Ретроспективный анализ и расследование инцидентов ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-retro-security-v1,
#ist-retro-security-v1 * {
  box-sizing: border-box;
}

#ist-retro-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-retro-security-v1 h1,
#ist-retro-security-v1 h2,
#ist-retro-security-v1 h3,
#ist-retro-security-v1 p {
  margin-top: 0;
}

#ist-retro-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-retro-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-retro-security-v1 a {
  text-decoration: none;
}

.istretro-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istretro-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istretro-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istretro-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istretro-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istretro-hero__content,
.istretro-hero__visual {
  position: relative;
  z-index: 2;
}

.istretro-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istretro-kicker--light {
  color: #ffc29b;
}

.istretro-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istretro-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istretro-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istretro-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istretro-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istretro-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istretro-btn:hover {
  transform: translateY(-2px);
}

.istretro-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istretro-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istretro-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istretro-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istretro-hero__visual {
  min-height: 520px;
}

.istretro-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istretro-timeline {
  opacity: .5;
  animation: istretroTimelineFlow 2s linear infinite;
}

.istretro-point {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .55;
}

.istretro-point--1 { animation: istretroPointLight 4.5s ease-in-out infinite; }
.istretro-point--2 { animation: istretroPointLight 4.5s ease-in-out infinite 1.5s; }
.istretro-point--3 { animation: istretroPointLight 4.5s ease-in-out infinite 3s; }

.istretro-magnifier {
  transform-box: fill-box;
  transform-origin: center;
  animation: istretroMagnifierPulse 4.5s ease-in-out infinite 3s;
}

.istretro-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istretroShieldPulse 3.2s ease-in-out infinite;
}

.istretro-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istretro-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istretro-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istretro-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istretro-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istretro-float--one {
  top: 4px;
  left: 0;
}

.istretro-float--two {
  top: 200px;
  left: -10px;
}

.istretro-float--three {
  bottom: 40px;
  right: -6px;
}

.istretro-float--four {
  bottom: -6px;
  left: 40px;
}

.istretro-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istretro-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istretro-nav a:hover,
.istretro-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istretro-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istretro-section--soft {
  background: var(--s);
}

.istretro-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istretro-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istretro-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istretro-section__head p:last-of-type {
  margin-bottom: 0;
}

.istretro-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istretro-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istretro-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istretro-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istretro-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istretro-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istretro-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istretro-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istretro-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istretro-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istretro-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istretro-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istretro-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istretro-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istretro-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istretro-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istretro-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istretro-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istretro-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istretro-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istretro-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istretro-threat-row p:last-child {
  color: var(--m);
}

.istretro-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istretro-reg__intro h2,
.istretro-reg__intro p {
  color: #fff !important;
}

.istretro-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istretro-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istretro-reg__accent strong {
  color: #fff;
}

.istretro-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istretro-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istretro-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istretro-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istretro-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istretro-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istretro-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istretro-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istretro-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istretro-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istretro-process article:nth-child(3)::after,
.istretro-process article:nth-child(6)::after,
.istretro-process article:last-child::after {
  display: none;
}

.istretro-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istretro-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istretro-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istretro-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istretro-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istretro-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istretro-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istretro-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istretro-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istretro-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istretro-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istretro-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istretro-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istretro-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istretro-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istretro-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istretro-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istretro-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istretro-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istretro-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istretro-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istretro-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istretro-result-format {
  margin-top: 24px;
}

.istretro-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istretro-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istretro-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istretro-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istretro-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istretro-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istretro-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istretro-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istretro-compare__row:last-child {
  border-bottom: none;
}

.istretro-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istretro-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istretro-compare__row--head {
  background: var(--b2);
}

.istretro-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istretro-compare__row--head .istretro-compare__label {
  background: transparent;
}

.istretro-compare__row:not(.istretro-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istretro-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istretro-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istretro-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istretro-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istretro-not__item strong {
  color: var(--b);
}

.istretro-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istretro-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istretro-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istretro-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istretro-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istretro-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istretro-levels {
  display: grid;
  gap: 14px;
}

.istretro-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istretro-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istretro-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istretro-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istretro-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istretro-level__text strong {
  color: var(--b);
}

.istretro-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istretro-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istretro-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istretro-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istretro-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istretro-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istretro-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istretro-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istretro-faq-list {
  display: grid;
  gap: 12px;
}

.istretro-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istretro-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istretro-faq summary::-webkit-details-marker {
  display: none;
}

.istretro-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istretro-faq__toggle::before,
.istretro-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istretro-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istretro-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istretro-faq[open] .istretro-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istretro-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istretro-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istretro-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istretro-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istretro-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istretro-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istretro-service--soon {
  opacity: .72;
}

.istretro-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istretro-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istretro-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istretro-service:hover::before {
  transform: scaleX(1);
}

.istretro-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istretro-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istretro-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istretro-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istretro-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istretro-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istretro-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istretro-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istretro-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istretro-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istretro-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istretro-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istretro-checklist li::before {
  content: none;
}

.istretro-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istretro-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istretro-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istretro-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istretro-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istretro-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istretro-navitem--soon {
  opacity: .72;
}

.istretro-navigator-note {
  margin-bottom: 20px;
}

.istretro-when__action {
  margin-top: 24px;
}

.istretro-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istretro-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istretro-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istretro-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istretro-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istretro-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istretro-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istretro-result > div:first-child > p {
  color: var(--m);
}

.istretro-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istretro-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istretro-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istretro-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istretro-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istretro-case-list {
  display: grid;
  gap: 20px;
}

.istretro-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istretro-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istretro-case__block {
  margin-bottom: 22px;
}

.istretro-case__block:last-of-type {
  margin-bottom: 0;
}

.istretro-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istretro-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istretro-case__block > p:last-child {
  margin-bottom: 0;
}

.istretro-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istretro-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istretro-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istretro-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istretro-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istretro-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istretro-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istretro-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istretro-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istretro-cta__contacts {
  margin-top: 20px;
}

.istretro-cta__contacts a,
.istretro-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istretro-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istretro-cta__contacts a:last-child,
.istretro-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istretro-cta__contacts a:hover {
  color: #fff;
}

.istretro-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istretroTimelineFlow {
  from { stroke-dashoffset: 22; }
  to { stroke-dashoffset: 0; }
}

@keyframes istretroPointLight {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.2); }
}

@keyframes istretroMagnifierPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

@keyframes istretroShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istretro-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istretro-hero__visual {
    min-height: 460px;
  }

  .istretro-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istretro-service-grid,
  .istretro-process,
  .istretro-segment-grid,
  .istretro-segment-grid--3,
  .istretro-diff-grid,
  .istretro-treatment-grid,
  .istretro-related-grid,
  .istretro-not-grid,
  .istretro-scope-grid,
  .istretro-formats-grid,
  .istretro-value-grid,
  .istretro-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istretro-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istretro-level__bar {
    display: none;
  }

  .istretro-reg,
  .istretro-result,
  .istretro-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istretro-stack__grid,
  .istretro-checklist {
    grid-template-columns: 1fr;
  }

  .istretro-process article:nth-child(3)::after {
    display: block;
  }

  .istretro-process article:nth-child(2n)::after,
  .istretro-process article:last-child::after {
    display: none;
  }

  .istretro-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istretro-hero,
  .istretro-section,
  .istretro-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istretro-hero {
    min-height: 0;
  }

  .istretro-hero h2 {
    font-size: 30px !important;
  }

  .istretro-hero__lead {
    font-size: 16px;
  }

  .istretro-hero__visual {
    min-height: 380px;
  }

  .istretro-illustration {
    width: 400px;
  }

  .istretro-nav {
    top: 58px;
  }

  .istretro-reg__cards,
  .istretro-result__list,
  .istretro-segment-grid,
  .istretro-segment-grid--3,
  .istretro-diff-grid,
  .istretro-prep-grid,
  .istretro-treatment-grid,
  .istretro-related-grid,
  .istretro-not-grid,
  .istretro-scope-grid,
  .istretro-formats-grid,
  .istretro-value-grid,
  .istretro-nav-grid {
    grid-template-columns: 1fr;
  }

  .istretro-threat-table__head,
  .istretro-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istretro-threat-table__head span:first-child {
    display: none;
  }

  .istretro-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istretro-float__icon {
    width: 28px;
    height: 28px;
  }

  .istretro-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istretro-float__text strong {
    font-size: 11.5px;
  }

  .istretro-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istretro-risk-grid,
  .istretro-service-grid,
  .istretro-process,
  .istretro-nav-grid {
    grid-template-columns: 1fr;
  }

  .istretro-process article::after {
    display: none !important;
  }

  .istretro-hero__actions {
    display: grid;
  }

  .istretro-btn {
    width: 100%;
  }

  .istretro-hero__visual {
    min-height: 320px;
  }

  .istretro-illustration {
    width: 330px;
  }

  .istretro-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istretro-timeline,
  .istretro-point--1,
  .istretro-point--2,
  .istretro-point--3,
  .istretro-magnifier,
  .istretro-shield {
    animation: none;
    opacity: 1;
  }

  .istretro-btn,
  .istretro-risk,
  .istretro-service,
  .istretro-stack__item,
  .istretro-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Проактивный поиск угроз (Threat Hunting) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-hunt-security-v1,
#ist-hunt-security-v1 * {
  box-sizing: border-box;
}

#ist-hunt-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-hunt-security-v1 h1,
#ist-hunt-security-v1 h2,
#ist-hunt-security-v1 h3,
#ist-hunt-security-v1 p {
  margin-top: 0;
}

#ist-hunt-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-hunt-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-hunt-security-v1 a {
  text-decoration: none;
}

.isthunt-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.isthunt-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.isthunt-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.isthunt-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.isthunt-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.isthunt-hero__content,
.isthunt-hero__visual {
  position: relative;
  z-index: 2;
}

.isthunt-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.isthunt-kicker--light {
  color: #ffc29b;
}

.isthunt-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.isthunt-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.isthunt-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.isthunt-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.isthunt-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.isthunt-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.isthunt-btn:hover {
  transform: translateY(-2px);
}

.isthunt-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.isthunt-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.isthunt-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.isthunt-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.isthunt-hero__visual {
  min-height: 520px;
}

.isthunt-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.isthunt-grid-bg circle {
  animation: isthuntDotFade 5s ease-in-out infinite;
}

.isthunt-grid-bg circle:nth-child(1) { animation-delay: 0s; }
.isthunt-grid-bg circle:nth-child(2) { animation-delay: .5s; }
.isthunt-grid-bg circle:nth-child(3) { animation-delay: 1s; }
.isthunt-grid-bg circle:nth-child(4) { animation-delay: 1.5s; }
.isthunt-grid-bg circle:nth-child(5) { animation-delay: 2s; }

.isthunt-target circle {
  transform-box: fill-box;
  transform-origin: center;
  animation: isthuntTargetPulse 2.4s ease-in-out infinite;
}

.isthunt-lens {
  transform-box: fill-box;
  transform-origin: center;
  animation: isthuntLensSweep 4.8s ease-in-out infinite;
}

.isthunt-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: isthuntShieldPulse 3.2s ease-in-out infinite;
}

.isthunt-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.isthunt-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.isthunt-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.isthunt-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.isthunt-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.isthunt-float--one {
  top: 4px;
  left: 0;
}

.isthunt-float--two {
  top: 200px;
  left: -10px;
}

.isthunt-float--three {
  bottom: 40px;
  right: -6px;
}

.isthunt-float--four {
  bottom: -6px;
  left: 40px;
}

.isthunt-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.isthunt-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.isthunt-nav a:hover,
.isthunt-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.isthunt-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.isthunt-section--soft {
  background: var(--s);
}

.isthunt-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.isthunt-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.isthunt-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.isthunt-section__head p:last-of-type {
  margin-bottom: 0;
}

.isthunt-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isthunt-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isthunt-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isthunt-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.isthunt-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.isthunt-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.isthunt-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.isthunt-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.isthunt-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isthunt-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isthunt-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isthunt-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.isthunt-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.isthunt-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isthunt-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.isthunt-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.isthunt-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.isthunt-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.isthunt-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.isthunt-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.isthunt-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.isthunt-threat-row p:last-child {
  color: var(--m);
}

.isthunt-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.isthunt-reg__intro h2,
.isthunt-reg__intro p {
  color: #fff !important;
}

.isthunt-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.isthunt-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.isthunt-reg__accent strong {
  color: #fff;
}

.isthunt-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isthunt-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isthunt-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.isthunt-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.isthunt-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.isthunt-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.isthunt-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.isthunt-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isthunt-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isthunt-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.isthunt-process article:nth-child(3)::after,
.isthunt-process article:nth-child(6)::after,
.isthunt-process article:last-child::after {
  display: none;
}

.isthunt-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isthunt-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.isthunt-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isthunt-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isthunt-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.isthunt-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.isthunt-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.isthunt-table th,
.isthunt-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.isthunt-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.isthunt-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.isthunt-table tbody tr:last-child td {
  border-bottom: 0;
}

.isthunt-table tbody td {
  color: var(--m);
}

.isthunt-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.isthunt-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.isthunt-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.isthunt-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.isthunt-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isthunt-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.isthunt-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isthunt-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isthunt-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isthunt-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isthunt-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isthunt-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.isthunt-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.isthunt-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.isthunt-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isthunt-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.isthunt-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isthunt-result-format {
  margin-top: 24px;
}

.isthunt-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isthunt-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.isthunt-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.isthunt-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isthunt-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.isthunt-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isthunt-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.isthunt-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.isthunt-compare__row:last-child {
  border-bottom: none;
}

.isthunt-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.isthunt-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.isthunt-compare__row--head {
  background: var(--b2);
}

.isthunt-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.isthunt-compare__row--head .isthunt-compare__label {
  background: transparent;
}

.isthunt-compare__row:not(.isthunt-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.isthunt-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.isthunt-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isthunt-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.isthunt-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.isthunt-not__item strong {
  color: var(--b);
}

.isthunt-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isthunt-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.isthunt-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isthunt-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.isthunt-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.isthunt-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isthunt-levels {
  display: grid;
  gap: 14px;
}

.isthunt-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isthunt-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.isthunt-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.isthunt-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.isthunt-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.isthunt-level__text strong {
  color: var(--b);
}

.isthunt-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.isthunt-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isthunt-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.isthunt-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isthunt-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isthunt-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.isthunt-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isthunt-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.isthunt-faq-list {
  display: grid;
  gap: 12px;
}

.isthunt-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isthunt-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.isthunt-faq summary::-webkit-details-marker {
  display: none;
}

.isthunt-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.isthunt-faq__toggle::before,
.isthunt-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.isthunt-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.isthunt-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.isthunt-faq[open] .isthunt-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.isthunt-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isthunt-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isthunt-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.isthunt-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isthunt-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.isthunt-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.isthunt-service--soon {
  opacity: .72;
}

.isthunt-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.isthunt-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.isthunt-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.isthunt-service:hover::before {
  transform: scaleX(1);
}

.isthunt-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.isthunt-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.isthunt-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.isthunt-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.isthunt-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isthunt-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.isthunt-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.isthunt-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isthunt-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.isthunt-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.isthunt-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isthunt-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.isthunt-checklist li::before {
  content: none;
}

.isthunt-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.isthunt-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.isthunt-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.isthunt-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isthunt-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.isthunt-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isthunt-navitem--soon {
  opacity: .72;
}

.isthunt-navigator-note {
  margin-bottom: 20px;
}

.isthunt-when__action {
  margin-top: 24px;
}

.isthunt-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.isthunt-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.isthunt-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.isthunt-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.isthunt-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isthunt-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.isthunt-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.isthunt-result > div:first-child > p {
  color: var(--m);
}

.isthunt-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isthunt-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isthunt-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isthunt-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isthunt-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.isthunt-case-list {
  display: grid;
  gap: 20px;
}

.isthunt-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.isthunt-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.isthunt-case__block {
  margin-bottom: 22px;
}

.isthunt-case__block:last-of-type {
  margin-bottom: 0;
}

.isthunt-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.isthunt-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.isthunt-case__block > p:last-child {
  margin-bottom: 0;
}

.isthunt-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.isthunt-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.isthunt-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isthunt-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.isthunt-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.isthunt-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.isthunt-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.isthunt-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.isthunt-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.isthunt-cta__contacts {
  margin-top: 20px;
}

.isthunt-cta__contacts a,
.isthunt-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.isthunt-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isthunt-cta__contacts a:last-child,
.isthunt-cta__contacts span:last-child {
  margin-bottom: 0;
}

.isthunt-cta__contacts a:hover {
  color: #fff;
}

.isthunt-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes isthuntDotFade {
  0%, 100% { opacity: .25; }
  50% { opacity: .7; }
}

@keyframes isthuntTargetPulse {
  0%, 100% { opacity: .5; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.5); }
}

@keyframes isthuntLensSweep {
  0%, 15% { transform: translate(-90px, 60px); }
  45%, 65% { transform: translate(0, 0); }
  85%, 100% { transform: translate(-90px, 60px); }
}

@keyframes isthuntShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .isthunt-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .isthunt-hero__visual {
    min-height: 460px;
  }

  .isthunt-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .isthunt-service-grid,
  .isthunt-process,
  .isthunt-segment-grid,
  .isthunt-segment-grid--3,
  .isthunt-diff-grid,
  .isthunt-treatment-grid,
  .isthunt-related-grid,
  .isthunt-not-grid,
  .isthunt-scope-grid,
  .isthunt-formats-grid,
  .isthunt-value-grid,
  .isthunt-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .isthunt-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .isthunt-level__bar {
    display: none;
  }

  .isthunt-reg,
  .isthunt-result,
  .isthunt-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .isthunt-stack__grid,
  .isthunt-checklist {
    grid-template-columns: 1fr;
  }

  .isthunt-process article:nth-child(3)::after {
    display: block;
  }

  .isthunt-process article:nth-child(2n)::after,
  .isthunt-process article:last-child::after {
    display: none;
  }

  .isthunt-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .isthunt-hero,
  .isthunt-section,
  .isthunt-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .isthunt-hero {
    min-height: 0;
  }

  .isthunt-hero h2 {
    font-size: 30px !important;
  }

  .isthunt-hero__lead {
    font-size: 16px;
  }

  .isthunt-hero__visual {
    min-height: 380px;
  }

  .isthunt-illustration {
    width: 400px;
  }

  .isthunt-nav {
    top: 58px;
  }

  .isthunt-reg__cards,
  .isthunt-result__list,
  .isthunt-segment-grid,
  .isthunt-segment-grid--3,
  .isthunt-diff-grid,
  .isthunt-prep-grid,
  .isthunt-treatment-grid,
  .isthunt-related-grid,
  .isthunt-not-grid,
  .isthunt-scope-grid,
  .isthunt-formats-grid,
  .isthunt-value-grid,
  .isthunt-nav-grid {
    grid-template-columns: 1fr;
  }

  .isthunt-threat-table__head,
  .isthunt-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .isthunt-threat-table__head span:first-child {
    display: none;
  }

  .isthunt-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .isthunt-float__icon {
    width: 28px;
    height: 28px;
  }

  .isthunt-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .isthunt-float__text strong {
    font-size: 11.5px;
  }

  .isthunt-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .isthunt-risk-grid,
  .isthunt-service-grid,
  .isthunt-process,
  .isthunt-nav-grid {
    grid-template-columns: 1fr;
  }

  .isthunt-process article::after {
    display: none !important;
  }

  .isthunt-hero__actions {
    display: grid;
  }

  .isthunt-btn {
    width: 100%;
  }

  .isthunt-hero__visual {
    min-height: 320px;
  }

  .isthunt-illustration {
    width: 330px;
  }

  .isthunt-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .isthunt-grid-bg circle,
  .isthunt-target circle,
  .isthunt-lens,
  .isthunt-shield {
    animation: none;
    opacity: 1;
  }

  .isthunt-btn,
  .isthunt-risk,
  .isthunt-service,
  .isthunt-stack__item,
  .isthunt-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Managed EDR — эксплуатация защиты конечных точек ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-mdr-security-v1,
#ist-mdr-security-v1 * {
  box-sizing: border-box;
}

#ist-mdr-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-mdr-security-v1 h1,
#ist-mdr-security-v1 h2,
#ist-mdr-security-v1 h3,
#ist-mdr-security-v1 p {
  margin-top: 0;
}

#ist-mdr-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-mdr-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-mdr-security-v1 a {
  text-decoration: none;
}

.istmdr-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istmdr-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istmdr-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istmdr-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istmdr-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istmdr-hero__content,
.istmdr-hero__visual {
  position: relative;
  z-index: 2;
}

.istmdr-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istmdr-kicker--light {
  color: #ffc29b;
}

.istmdr-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istmdr-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istmdr-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istmdr-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istmdr-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istmdr-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istmdr-btn:hover {
  transform: translateY(-2px);
}

.istmdr-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istmdr-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istmdr-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istmdr-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istmdr-hero__visual {
  min-height: 520px;
}

.istmdr-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istmdr-endpoint {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .6;
}

.istmdr-endpoint--a { animation: istmdrEndpointPulse 4.5s ease-in-out infinite; }
.istmdr-endpoint--b { animation: istmdrEndpointPulse 4.5s ease-in-out infinite 2.2s; }

.istmdr-console circle {
  animation: istmdrConsolePulse 2.6s ease-in-out infinite;
}

.istmdr-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: istmdrBeamFlow 1.5s linear infinite;
}

.istmdr-beam--1 { animation-delay: 0s; }
.istmdr-beam--2 { animation-delay: .4s; }

.istmdr-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istmdrShieldPulse 3.2s ease-in-out infinite;
}

.istmdr-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istmdr-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istmdr-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istmdr-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istmdr-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istmdr-float--one {
  top: 4px;
  left: 0;
}

.istmdr-float--two {
  top: 200px;
  left: -10px;
}

.istmdr-float--three {
  bottom: 40px;
  right: -6px;
}

.istmdr-float--four {
  bottom: -6px;
  left: 40px;
}

.istmdr-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istmdr-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istmdr-nav a:hover,
.istmdr-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istmdr-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istmdr-section--soft {
  background: var(--s);
}

.istmdr-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istmdr-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istmdr-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istmdr-section__head p:last-of-type {
  margin-bottom: 0;
}

.istmdr-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istmdr-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istmdr-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istmdr-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istmdr-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istmdr-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istmdr-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istmdr-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istmdr-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmdr-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istmdr-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istmdr-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istmdr-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istmdr-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istmdr-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istmdr-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istmdr-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istmdr-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istmdr-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istmdr-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istmdr-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istmdr-threat-row p:last-child {
  color: var(--m);
}

.istmdr-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istmdr-reg__intro h2,
.istmdr-reg__intro p {
  color: #fff !important;
}

.istmdr-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istmdr-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istmdr-reg__accent strong {
  color: #fff;
}

.istmdr-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istmdr-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istmdr-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istmdr-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istmdr-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istmdr-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istmdr-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istmdr-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istmdr-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istmdr-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istmdr-process article:nth-child(3)::after,
.istmdr-process article:nth-child(6)::after,
.istmdr-process article:last-child::after {
  display: none;
}

.istmdr-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istmdr-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istmdr-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istmdr-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istmdr-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istmdr-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.istmdr-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.istmdr-table th,
.istmdr-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.istmdr-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.istmdr-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.istmdr-table tbody tr:last-child td {
  border-bottom: 0;
}

.istmdr-table tbody td {
  color: var(--m);
}

.istmdr-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istmdr-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istmdr-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istmdr-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istmdr-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istmdr-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istmdr-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istmdr-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmdr-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istmdr-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istmdr-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istmdr-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istmdr-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istmdr-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istmdr-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istmdr-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istmdr-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmdr-result-format {
  margin-top: 24px;
}

.istmdr-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmdr-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istmdr-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istmdr-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmdr-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istmdr-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmdr-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istmdr-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istmdr-compare__row:last-child {
  border-bottom: none;
}

.istmdr-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istmdr-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istmdr-compare__row--head {
  background: var(--b2);
}

.istmdr-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istmdr-compare__row--head .istmdr-compare__label {
  background: transparent;
}

.istmdr-compare__row:not(.istmdr-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istmdr-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istmdr-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istmdr-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istmdr-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istmdr-not__item strong {
  color: var(--b);
}

.istmdr-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istmdr-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istmdr-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmdr-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istmdr-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istmdr-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmdr-levels {
  display: grid;
  gap: 14px;
}

.istmdr-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istmdr-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istmdr-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istmdr-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istmdr-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istmdr-level__text strong {
  color: var(--b);
}

.istmdr-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istmdr-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istmdr-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istmdr-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istmdr-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istmdr-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istmdr-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istmdr-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istmdr-faq-list {
  display: grid;
  gap: 12px;
}

.istmdr-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istmdr-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istmdr-faq summary::-webkit-details-marker {
  display: none;
}

.istmdr-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istmdr-faq__toggle::before,
.istmdr-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istmdr-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istmdr-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istmdr-faq[open] .istmdr-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istmdr-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istmdr-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istmdr-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istmdr-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istmdr-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istmdr-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istmdr-service--soon {
  opacity: .72;
}

.istmdr-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istmdr-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istmdr-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istmdr-service:hover::before {
  transform: scaleX(1);
}

.istmdr-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istmdr-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istmdr-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istmdr-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istmdr-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istmdr-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istmdr-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istmdr-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmdr-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istmdr-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istmdr-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istmdr-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istmdr-checklist li::before {
  content: none;
}

.istmdr-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istmdr-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istmdr-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istmdr-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istmdr-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istmdr-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istmdr-navitem--soon {
  opacity: .72;
}

.istmdr-navigator-note {
  margin-bottom: 20px;
}

.istmdr-when__action {
  margin-top: 24px;
}

.istmdr-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istmdr-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istmdr-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istmdr-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istmdr-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istmdr-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istmdr-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istmdr-result > div:first-child > p {
  color: var(--m);
}

.istmdr-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istmdr-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istmdr-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istmdr-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istmdr-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istmdr-case-list {
  display: grid;
  gap: 20px;
}

.istmdr-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istmdr-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istmdr-case__block {
  margin-bottom: 22px;
}

.istmdr-case__block:last-of-type {
  margin-bottom: 0;
}

.istmdr-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istmdr-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istmdr-case__block > p:last-child {
  margin-bottom: 0;
}

.istmdr-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istmdr-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istmdr-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istmdr-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istmdr-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istmdr-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istmdr-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istmdr-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istmdr-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istmdr-cta__contacts {
  margin-top: 20px;
}

.istmdr-cta__contacts a,
.istmdr-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istmdr-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istmdr-cta__contacts a:last-child,
.istmdr-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istmdr-cta__contacts a:hover {
  color: #fff;
}

.istmdr-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istmdrEndpointPulse {
  0%, 100% { opacity: .6; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.05); }
}

@keyframes istmdrConsolePulse {
  0%, 100% { opacity: .6; }
  50% { opacity: 1; }
}

@keyframes istmdrBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istmdrShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istmdr-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istmdr-hero__visual {
    min-height: 460px;
  }

  .istmdr-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istmdr-service-grid,
  .istmdr-process,
  .istmdr-segment-grid,
  .istmdr-segment-grid--3,
  .istmdr-diff-grid,
  .istmdr-treatment-grid,
  .istmdr-related-grid,
  .istmdr-not-grid,
  .istmdr-scope-grid,
  .istmdr-formats-grid,
  .istmdr-value-grid,
  .istmdr-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istmdr-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istmdr-level__bar {
    display: none;
  }

  .istmdr-reg,
  .istmdr-result,
  .istmdr-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istmdr-stack__grid,
  .istmdr-checklist {
    grid-template-columns: 1fr;
  }

  .istmdr-process article:nth-child(3)::after {
    display: block;
  }

  .istmdr-process article:nth-child(2n)::after,
  .istmdr-process article:last-child::after {
    display: none;
  }

  .istmdr-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istmdr-hero,
  .istmdr-section,
  .istmdr-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istmdr-hero {
    min-height: 0;
  }

  .istmdr-hero h2 {
    font-size: 30px !important;
  }

  .istmdr-hero__lead {
    font-size: 16px;
  }

  .istmdr-hero__visual {
    min-height: 380px;
  }

  .istmdr-illustration {
    width: 400px;
  }

  .istmdr-nav {
    top: 58px;
  }

  .istmdr-reg__cards,
  .istmdr-result__list,
  .istmdr-segment-grid,
  .istmdr-segment-grid--3,
  .istmdr-diff-grid,
  .istmdr-prep-grid,
  .istmdr-treatment-grid,
  .istmdr-related-grid,
  .istmdr-not-grid,
  .istmdr-scope-grid,
  .istmdr-formats-grid,
  .istmdr-value-grid,
  .istmdr-nav-grid {
    grid-template-columns: 1fr;
  }

  .istmdr-threat-table__head,
  .istmdr-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istmdr-threat-table__head span:first-child {
    display: none;
  }

  .istmdr-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istmdr-float__icon {
    width: 28px;
    height: 28px;
  }

  .istmdr-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istmdr-float__text strong {
    font-size: 11.5px;
  }

  .istmdr-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istmdr-risk-grid,
  .istmdr-service-grid,
  .istmdr-process,
  .istmdr-nav-grid {
    grid-template-columns: 1fr;
  }

  .istmdr-process article::after {
    display: none !important;
  }

  .istmdr-hero__actions {
    display: grid;
  }

  .istmdr-btn {
    width: 100%;
  }

  .istmdr-hero__visual {
    min-height: 320px;
  }

  .istmdr-illustration {
    width: 330px;
  }

  .istmdr-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istmdr-endpoint--a,
  .istmdr-endpoint--b,
  .istmdr-console circle,
  .istmdr-beam,
  .istmdr-shield {
    animation: none;
    opacity: 1;
  }

  .istmdr-btn,
  .istmdr-risk,
  .istmdr-service,
  .istmdr-stack__item,
  .istmdr-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Техническое сопровождение средств защиты информации ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-tso-security-v1,
#ist-tso-security-v1 * {
  box-sizing: border-box;
}

#ist-tso-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-tso-security-v1 h1,
#ist-tso-security-v1 h2,
#ist-tso-security-v1 h3,
#ist-tso-security-v1 p {
  margin-top: 0;
}

#ist-tso-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-tso-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-tso-security-v1 a {
  text-decoration: none;
}

.isttso-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.isttso-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.isttso-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.isttso-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.isttso-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.isttso-hero__content,
.isttso-hero__visual {
  position: relative;
  z-index: 2;
}

.isttso-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.isttso-kicker--light {
  color: #ffc29b;
}

.isttso-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.isttso-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.isttso-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.isttso-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.isttso-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.isttso-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.isttso-btn:hover {
  transform: translateY(-2px);
}

.isttso-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.isttso-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.isttso-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.isttso-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.isttso-hero__visual {
  min-height: 520px;
}

.isttso-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.isttso-endpoint {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .6;
}

.isttso-endpoint--a { animation: isttsoEndpointPulse 4.5s ease-in-out infinite; }
.isttso-endpoint--b { animation: isttsoEndpointPulse 4.5s ease-in-out infinite 2.2s; }

.isttso-console circle {
  animation: isttsoConsolePulse 2.6s ease-in-out infinite;
}

.isttso-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .4;
  animation: isttsoBeamFlow 1.5s linear infinite;
}

.isttso-beam--1 { animation-delay: 0s; }
.isttso-beam--2 { animation-delay: .4s; }

.isttso-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: isttsoShieldPulse 3.2s ease-in-out infinite;
}

.isttso-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.isttso-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.isttso-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.isttso-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.isttso-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.isttso-float--one {
  top: 4px;
  left: 0;
}

.isttso-float--two {
  top: 200px;
  left: -10px;
}

.isttso-float--three {
  bottom: 40px;
  right: -6px;
}

.isttso-float--four {
  bottom: -6px;
  left: 40px;
}

.isttso-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.isttso-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.isttso-nav a:hover,
.isttso-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.isttso-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.isttso-section--soft {
  background: var(--s);
}

.isttso-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.isttso-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.isttso-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.isttso-section__head p:last-of-type {
  margin-bottom: 0;
}

.isttso-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isttso-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isttso-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isttso-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.isttso-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.isttso-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.isttso-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.isttso-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.isttso-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttso-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isttso-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isttso-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.isttso-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.isttso-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isttso-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.isttso-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.isttso-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.isttso-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.isttso-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.isttso-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.isttso-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.isttso-threat-row p:last-child {
  color: var(--m);
}

.isttso-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.isttso-reg__intro h2,
.isttso-reg__intro p {
  color: #fff !important;
}

.isttso-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.isttso-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.isttso-reg__accent strong {
  color: #fff;
}

.isttso-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isttso-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isttso-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.isttso-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.isttso-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.isttso-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.isttso-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.isttso-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isttso-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isttso-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.isttso-process article:nth-child(3)::after,
.isttso-process article:nth-child(6)::after,
.isttso-process article:last-child::after {
  display: none;
}

.isttso-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isttso-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.isttso-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isttso-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isttso-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.isttso-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.isttso-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.isttso-table th,
.isttso-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.isttso-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.isttso-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.isttso-table tbody tr:last-child td {
  border-bottom: 0;
}

.isttso-table tbody td {
  color: var(--m);
}

.isttso-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.isttso-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.isttso-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.isttso-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.isttso-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isttso-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.isttso-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isttso-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttso-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isttso-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isttso-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isttso-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.isttso-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.isttso-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.isttso-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isttso-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.isttso-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttso-result-format {
  margin-top: 24px;
}

.isttso-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttso-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.isttso-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.isttso-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttso-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.isttso-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttso-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.isttso-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.isttso-compare__row:last-child {
  border-bottom: none;
}

.isttso-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.isttso-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.isttso-compare__row--head {
  background: var(--b2);
}

.isttso-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.isttso-compare__row--head .isttso-compare__label {
  background: transparent;
}

.isttso-compare__row:not(.isttso-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.isttso-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.isttso-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isttso-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.isttso-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.isttso-not__item strong {
  color: var(--b);
}

.isttso-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isttso-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.isttso-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttso-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.isttso-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.isttso-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttso-levels {
  display: grid;
  gap: 14px;
}

.isttso-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isttso-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.isttso-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.isttso-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.isttso-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.isttso-level__text strong {
  color: var(--b);
}

.isttso-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.isttso-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isttso-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.isttso-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isttso-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isttso-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.isttso-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isttso-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.isttso-faq-list {
  display: grid;
  gap: 12px;
}

.isttso-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isttso-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.isttso-faq summary::-webkit-details-marker {
  display: none;
}

.isttso-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.isttso-faq__toggle::before,
.isttso-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.isttso-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.isttso-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.isttso-faq[open] .isttso-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.isttso-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttso-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isttso-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.isttso-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isttso-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.isttso-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.isttso-service--soon {
  opacity: .72;
}

.isttso-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.isttso-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.isttso-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.isttso-service:hover::before {
  transform: scaleX(1);
}

.isttso-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.isttso-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.isttso-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.isttso-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.isttso-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isttso-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.isttso-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.isttso-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttso-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.isttso-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.isttso-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isttso-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.isttso-checklist li::before {
  content: none;
}

.isttso-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.isttso-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.isttso-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.isttso-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttso-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.isttso-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttso-navitem--soon {
  opacity: .72;
}

.isttso-navigator-note {
  margin-bottom: 20px;
}

.isttso-when__action {
  margin-top: 24px;
}

.isttso-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.isttso-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.isttso-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.isttso-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.isttso-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isttso-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.isttso-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.isttso-result > div:first-child > p {
  color: var(--m);
}

.isttso-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isttso-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isttso-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isttso-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isttso-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.isttso-case-list {
  display: grid;
  gap: 20px;
}

.isttso-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.isttso-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.isttso-case__block {
  margin-bottom: 22px;
}

.isttso-case__block:last-of-type {
  margin-bottom: 0;
}

.isttso-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.isttso-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.isttso-case__block > p:last-child {
  margin-bottom: 0;
}

.isttso-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.isttso-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.isttso-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isttso-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.isttso-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.isttso-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.isttso-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.isttso-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.isttso-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.isttso-cta__contacts {
  margin-top: 20px;
}

.isttso-cta__contacts a,
.isttso-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.isttso-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttso-cta__contacts a:last-child,
.isttso-cta__contacts span:last-child {
  margin-bottom: 0;
}

.isttso-cta__contacts a:hover {
  color: #fff;
}

.isttso-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes isttsoEndpointPulse {
  0%, 100% { opacity: .6; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.05); }
}

@keyframes isttsoConsolePulse {
  0%, 100% { opacity: .6; }
  50% { opacity: 1; }
}

@keyframes isttsoBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes isttsoShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .isttso-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .isttso-hero__visual {
    min-height: 460px;
  }

  .isttso-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .isttso-service-grid,
  .isttso-process,
  .isttso-segment-grid,
  .isttso-segment-grid--3,
  .isttso-diff-grid,
  .isttso-treatment-grid,
  .isttso-related-grid,
  .isttso-not-grid,
  .isttso-scope-grid,
  .isttso-formats-grid,
  .isttso-value-grid,
  .isttso-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .isttso-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .isttso-level__bar {
    display: none;
  }

  .isttso-reg,
  .isttso-result,
  .isttso-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .isttso-stack__grid,
  .isttso-checklist {
    grid-template-columns: 1fr;
  }

  .isttso-process article:nth-child(3)::after {
    display: block;
  }

  .isttso-process article:nth-child(2n)::after,
  .isttso-process article:last-child::after {
    display: none;
  }

  .isttso-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .isttso-hero,
  .isttso-section,
  .isttso-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .isttso-hero {
    min-height: 0;
  }

  .isttso-hero h2 {
    font-size: 30px !important;
  }

  .isttso-hero__lead {
    font-size: 16px;
  }

  .isttso-hero__visual {
    min-height: 380px;
  }

  .isttso-illustration {
    width: 400px;
  }

  .isttso-nav {
    top: 58px;
  }

  .isttso-reg__cards,
  .isttso-result__list,
  .isttso-segment-grid,
  .isttso-segment-grid--3,
  .isttso-diff-grid,
  .isttso-prep-grid,
  .isttso-treatment-grid,
  .isttso-related-grid,
  .isttso-not-grid,
  .isttso-scope-grid,
  .isttso-formats-grid,
  .isttso-value-grid,
  .isttso-nav-grid {
    grid-template-columns: 1fr;
  }

  .isttso-threat-table__head,
  .isttso-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .isttso-threat-table__head span:first-child {
    display: none;
  }

  .isttso-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .isttso-float__icon {
    width: 28px;
    height: 28px;
  }

  .isttso-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .isttso-float__text strong {
    font-size: 11.5px;
  }

  .isttso-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .isttso-risk-grid,
  .isttso-service-grid,
  .isttso-process,
  .isttso-nav-grid {
    grid-template-columns: 1fr;
  }

  .isttso-process article::after {
    display: none !important;
  }

  .isttso-hero__actions {
    display: grid;
  }

  .isttso-btn {
    width: 100%;
  }

  .isttso-hero__visual {
    min-height: 320px;
  }

  .isttso-illustration {
    width: 330px;
  }

  .isttso-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .isttso-endpoint--a,
  .isttso-endpoint--b,
  .isttso-console circle,
  .isttso-beam,
  .isttso-shield {
    animation: none;
    opacity: 1;
  }

  .isttso-btn,
  .isttso-risk,
  .isttso-service,
  .isttso-stack__item,
  .isttso-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Управление уязвимостями (istvm-) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-vulnman-security-v1,
#ist-vulnman-security-v1 * {
  box-sizing: border-box;
}

#ist-vulnman-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-vulnman-security-v1 h1,
#ist-vulnman-security-v1 h2,
#ist-vulnman-security-v1 h3,
#ist-vulnman-security-v1 p {
  margin-top: 0;
}

#ist-vulnman-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-vulnman-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-vulnman-security-v1 a {
  text-decoration: none;
}

.istvm-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istvm-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istvm-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istvm-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istvm-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istvm-hero__content,
.istvm-hero__visual {
  position: relative;
  z-index: 2;
}

.istvm-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istvm-kicker--light {
  color: #ffc29b;
}

.istvm-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istvm-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istvm-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istvm-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 13px;
  line-height: 1.55;
}

.istvm-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istvm-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istvm-btn:hover {
  transform: translateY(-2px);
}

.istvm-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istvm-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istvm-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istvm-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istvm-hero__visual {
  min-height: 520px;
}

.istvm-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istvm-radar {
  transform-box: view-box;
  transform-origin: 185px 245px;
}

.istvm-radar__sweep {
  transform-box: view-box;
  transform-origin: 185px 245px;
  animation: istvmRadarSpin 4s linear infinite;
}

.istvm-radar__blip {
  animation: istvmBlipPulse 2.6s ease-in-out infinite;
}

.istvm-radar__blip--1 { animation-delay: 0s; }
.istvm-radar__blip--2 { animation-delay: .9s; }
.istvm-radar__blip--3 { animation-delay: 1.8s; }

.istvm-beam {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .45;
  animation: istvmBeamFlow 1.5s linear infinite;
}

.istvm-row__fill {
  transform-box: fill-box;
  transform-origin: 0% 50%;
  transform: scaleX(0);
  animation: istvmRowFill 4.5s ease-in-out infinite;
}

.istvm-row--1 .istvm-row__fill { animation-delay: 0s; }
.istvm-row--2 .istvm-row__fill { animation-delay: 1.5s; }
.istvm-row--3 .istvm-row__fill { animation-delay: 3s; }

.istvm-row__check {
  opacity: 0;
  animation: istvmRowCheck 4.5s ease-in-out infinite;
}

.istvm-row--1 .istvm-row__check { animation-delay: 0s; }
.istvm-row--2 .istvm-row__check { animation-delay: 1.5s; }
.istvm-row--3 .istvm-row__check { animation-delay: 3s; }

.istvm-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istvmShieldPulse 3.2s ease-in-out infinite;
}

.istvm-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istvm-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istvm-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istvm-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istvm-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istvm-float--one {
  top: 0;
  left: 0;
}

.istvm-float--two {
  top: 0;
  right: -6px;
}

.istvm-float--three {
  top: 300px;
  right: -6px;
}

.istvm-float--four {
  bottom: -6px;
  left: 40px;
}

.istvm-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istvm-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istvm-nav a:hover,
.istvm-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istvm-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istvm-section--soft {
  background: var(--s);
}

.istvm-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istvm-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istvm-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istvm-section__head p:last-of-type {
  margin-bottom: 0;
}

.istvm-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istvm-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvm-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvm-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istvm-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istvm-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istvm-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istvm-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istvm-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvm-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvm-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istvm-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istvm-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istvm-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvm-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istvm-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istvm-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istvm-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istvm-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istvm-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istvm-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istvm-threat-row p:last-child {
  color: var(--m);
}

.istvm-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istvm-reg__intro h2,
.istvm-reg__intro p {
  color: #fff !important;
}

.istvm-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istvm-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istvm-reg__accent strong {
  color: #fff;
}

.istvm-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvm-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvm-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istvm-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istvm-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istvm-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istvm-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istvm-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvm-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvm-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istvm-process article:nth-child(3)::after,
.istvm-process article:nth-child(6)::after,
.istvm-process article:last-child::after {
  display: none;
}

.istvm-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istvm-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istvm-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istvm-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvm-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istvm-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.istvm-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.istvm-table th,
.istvm-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.istvm-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.istvm-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.istvm-table tbody tr:last-child td {
  border-bottom: 0;
}

.istvm-table tbody td {
  color: var(--m);
}

.istvm-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istvm-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istvm-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istvm-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istvm-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istvm-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istvm-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvm-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvm-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvm-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvm-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvm-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istvm-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istvm-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istvm-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvm-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvm-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvm-result-format {
  margin-top: 24px;
}

.istvm-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvm-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istvm-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istvm-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvm-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istvm-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvm-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istvm-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istvm-compare__row:last-child {
  border-bottom: none;
}

.istvm-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istvm-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istvm-compare__row--head {
  background: var(--b2);
}

.istvm-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istvm-compare__row--head .istvm-compare__label {
  background: transparent;
}

.istvm-compare__row:not(.istvm-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istvm-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istvm-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvm-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istvm-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istvm-not__item strong {
  color: var(--b);
}

.istvm-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istvm-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istvm-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvm-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istvm-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istvm-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvm-levels {
  display: grid;
  gap: 14px;
}

.istvm-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvm-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istvm-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istvm-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istvm-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istvm-level__text strong {
  color: var(--b);
}

.istvm-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istvm-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istvm-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istvm-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvm-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istvm-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istvm-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istvm-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvm-faq-list {
  display: grid;
  gap: 12px;
}

.istvm-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istvm-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istvm-faq summary::-webkit-details-marker {
  display: none;
}

.istvm-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istvm-faq__toggle::before,
.istvm-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istvm-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istvm-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istvm-faq[open] .istvm-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istvm-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istvm-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istvm-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istvm-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istvm-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istvm-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istvm-service--soon {
  opacity: .72;
}

.istvm-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istvm-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istvm-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istvm-service:hover::before {
  transform: scaleX(1);
}

.istvm-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istvm-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istvm-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istvm-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istvm-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvm-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istvm-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istvm-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvm-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istvm-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istvm-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istvm-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istvm-checklist li::before {
  content: none;
}

.istvm-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istvm-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istvm-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istvm-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istvm-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istvm-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istvm-navitem--soon {
  opacity: .72;
}

.istvm-navigator-note {
  margin-bottom: 20px;
}

.istvm-when__action {
  margin-top: 24px;
}

.istvm-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istvm-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istvm-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istvm-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istvm-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istvm-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istvm-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istvm-result > div:first-child > p {
  color: var(--m);
}

.istvm-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istvm-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istvm-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istvm-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istvm-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istvm-case-list {
  display: grid;
  gap: 20px;
}

.istvm-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istvm-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istvm-case__block {
  margin-bottom: 22px;
}

.istvm-case__block:last-of-type {
  margin-bottom: 0;
}

.istvm-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istvm-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istvm-case__block > p:last-child {
  margin-bottom: 0;
}

.istvm-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istvm-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istvm-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istvm-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istvm-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istvm-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istvm-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istvm-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istvm-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istvm-cta__contacts {
  margin-top: 20px;
}

.istvm-cta__contacts a,
.istvm-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istvm-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istvm-cta__contacts a:last-child,
.istvm-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istvm-cta__contacts a:hover {
  color: #fff;
}

.istvm-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istvmRadarSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes istvmBlipPulse {
  0%, 100% { opacity: .35; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.4); }
}

@keyframes istvmBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istvmRowFill {
  0% { transform: scaleX(0); }
  28% { transform: scaleX(1); }
  40% { transform: scaleX(1); }
  46%, 100% { transform: scaleX(0); }
}

@keyframes istvmRowCheck {
  0%, 30% { opacity: 0; }
  36%, 42% { opacity: 1; }
  48%, 100% { opacity: 0; }
}

@keyframes istvmShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istvm-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istvm-hero__visual {
    min-height: 460px;
  }

  .istvm-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istvm-service-grid,
  .istvm-process,
  .istvm-segment-grid,
  .istvm-segment-grid--3,
  .istvm-diff-grid,
  .istvm-treatment-grid,
  .istvm-related-grid,
  .istvm-not-grid,
  .istvm-scope-grid,
  .istvm-formats-grid,
  .istvm-value-grid,
  .istvm-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istvm-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istvm-level__bar {
    display: none;
  }

  .istvm-reg,
  .istvm-result,
  .istvm-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istvm-stack__grid,
  .istvm-checklist {
    grid-template-columns: 1fr;
  }

  .istvm-process article:nth-child(3)::after {
    display: block;
  }

  .istvm-process article:nth-child(2n)::after,
  .istvm-process article:last-child::after {
    display: none;
  }

  .istvm-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istvm-hero,
  .istvm-section,
  .istvm-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istvm-hero {
    min-height: 0;
  }

  .istvm-hero h2 {
    font-size: 30px !important;
  }

  .istvm-hero__lead {
    font-size: 16px;
  }

  .istvm-hero__visual {
    min-height: 380px;
  }

  .istvm-illustration {
    width: 400px;
  }

  .istvm-nav {
    top: 58px;
  }

  .istvm-reg__cards,
  .istvm-result__list,
  .istvm-segment-grid,
  .istvm-segment-grid--3,
  .istvm-diff-grid,
  .istvm-prep-grid,
  .istvm-treatment-grid,
  .istvm-related-grid,
  .istvm-not-grid,
  .istvm-scope-grid,
  .istvm-formats-grid,
  .istvm-value-grid,
  .istvm-nav-grid {
    grid-template-columns: 1fr;
  }

  .istvm-threat-table__head,
  .istvm-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istvm-threat-table__head span:first-child {
    display: none;
  }

  .istvm-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istvm-float__icon {
    width: 28px;
    height: 28px;
  }

  .istvm-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istvm-float__text strong {
    font-size: 11.5px;
  }

  .istvm-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istvm-risk-grid,
  .istvm-service-grid,
  .istvm-process,
  .istvm-nav-grid {
    grid-template-columns: 1fr;
  }

  .istvm-process article::after {
    display: none !important;
  }

  .istvm-hero__actions {
    display: grid;
  }

  .istvm-btn {
    width: 100%;
  }

  .istvm-hero__visual {
    min-height: 320px;
  }

  .istvm-illustration {
    width: 330px;
  }

  .istvm-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istvm-radar__sweep,
  .istvm-radar__blip,
  .istvm-beam,
  .istvm-row__fill,
  .istvm-row__check,
  .istvm-shield {
    animation: none;
    opacity: 1;
  }

  .istvm-row__fill {
    transform: scaleX(0);
  }

  .istvm-row__check {
    opacity: 0;
  }

  .istvm-btn,
  .istvm-risk,
  .istvm-service,
  .istvm-stack__item,
  .istvm-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Реагирование на инциденты (DFIR, 24/7) (istdfir-) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-dfir-security-v1,
#ist-dfir-security-v1 * {
  box-sizing: border-box;
}

#ist-dfir-security-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-dfir-security-v1 h1,
#ist-dfir-security-v1 h2,
#ist-dfir-security-v1 h3,
#ist-dfir-security-v1 p {
  margin-top: 0;
}

#ist-dfir-security-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-dfir-security-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-dfir-security-v1 a {
  text-decoration: none;
}

.istdfir-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istdfir-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istdfir-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istdfir-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istdfir-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istdfir-hero__content,
.istdfir-hero__visual {
  position: relative;
  z-index: 2;
}

.istdfir-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istdfir-kicker--light {
  color: #ffc29b;
}

.istdfir-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istdfir-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istdfir-alert {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  max-width: 700px;
  margin-bottom: 22px;
  padding: 18px 20px;
  border: 1.5px solid rgba(255,90,90,.35);
  border-radius: 14px;
  background: rgba(255,90,90,.07);
}

.istdfir-alert__icon {
  display: flex;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ff5a5a;
}

.istdfir-alert__icon svg {
  width: 16px;
  height: 16px;
  fill: #fff;
}

.istdfir-alert__text {
  color: var(--t);
  font-size: 14.5px;
  line-height: 1.55;
}

.istdfir-alert__text strong {
  display: block;
  margin-bottom: 4px;
  color: #d8341f;
  font-size: 15.5px;
}

.istdfir-alert__text a {
  color: #d8341f;
  text-decoration: underline;
}

.istdfir-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istdfir-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 14px;
  line-height: 1.55;
}

.istdfir-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istdfir-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istdfir-btn:hover {
  transform: translateY(-2px);
}

.istdfir-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istdfir-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istdfir-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istdfir-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istdfir-btn--ghost-light {
  border-color: rgba(255,255,255,.32);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.istdfir-btn--ghost-light:hover {
  border-color: rgba(255,255,255,.6);
  background: rgba(255,255,255,.16);
}

.istdfir-hero__visual {
  min-height: 520px;
}

.istdfir-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istdfir-ring {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: 0;
  animation: istdfirRingContain 3.6s ease-in infinite;
}

.istdfir-ring--1 { animation-delay: 0s; }
.istdfir-ring--2 { animation-delay: 1.2s; }
.istdfir-ring--3 { animation-delay: 2.4s; }

.istdfir-core-mark {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istdfirCorePulse 1.8s ease-in-out infinite;
}

.istdfir-line {
  stroke-dasharray: 5 4;
  stroke-dashoffset: 0;
  opacity: .45;
  animation: istdfirBeamFlow 1.5s linear infinite;
}

.istdfir-phone__pulse {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istdfirPhonePulse 2.2s ease-out infinite;
}

.istdfir-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istdfirShieldPulse 3.2s ease-in-out infinite;
}

.istdfir-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istdfir-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istdfir-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istdfir-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istdfir-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istdfir-float--one {
  top: 0;
  left: 0;
}

.istdfir-float--two {
  top: 0;
  right: -6px;
}

.istdfir-float--three {
  top: 315px;
  right: -6px;
}

.istdfir-float--four {
  bottom: -6px;
  left: 40px;
}

.istdfir-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istdfir-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istdfir-nav a:hover,
.istdfir-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istdfir-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istdfir-section--soft {
  background: var(--s);
}

.istdfir-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istdfir-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istdfir-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istdfir-section__head p:last-of-type {
  margin-bottom: 0;
}

.istdfir-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istdfir-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istdfir-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istdfir-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istdfir-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istdfir-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istdfir-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istdfir-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istdfir-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdfir-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istdfir-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istdfir-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istdfir-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istdfir-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istdfir-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istdfir-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istdfir-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istdfir-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istdfir-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istdfir-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istdfir-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istdfir-threat-row p:last-child {
  color: var(--m);
}

.istdfir-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istdfir-reg__intro h2,
.istdfir-reg__intro p {
  color: #fff !important;
}

.istdfir-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istdfir-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istdfir-reg__accent strong {
  color: #fff;
}

.istdfir-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istdfir-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istdfir-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istdfir-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istdfir-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istdfir-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istdfir-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istdfir-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istdfir-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istdfir-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istdfir-process article:nth-child(3)::after,
.istdfir-process article:nth-child(6)::after,
.istdfir-process article:last-child::after {
  display: none;
}

.istdfir-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istdfir-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istdfir-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istdfir-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istdfir-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istdfir-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.istdfir-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.istdfir-table th,
.istdfir-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.istdfir-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.istdfir-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.istdfir-table tbody tr:last-child td {
  border-bottom: 0;
}

.istdfir-table tbody td {
  color: var(--m);
}

.istdfir-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istdfir-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istdfir-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istdfir-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istdfir-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istdfir-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istdfir-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istdfir-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdfir-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istdfir-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istdfir-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istdfir-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istdfir-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istdfir-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istdfir-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istdfir-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istdfir-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdfir-result-format {
  margin-top: 24px;
}

.istdfir-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdfir-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istdfir-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istdfir-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdfir-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istdfir-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdfir-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istdfir-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istdfir-compare__row:last-child {
  border-bottom: none;
}

.istdfir-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istdfir-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istdfir-compare__row--head {
  background: var(--b2);
}

.istdfir-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istdfir-compare__row--head .istdfir-compare__label {
  background: transparent;
}

.istdfir-compare__row:not(.istdfir-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istdfir-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istdfir-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istdfir-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istdfir-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istdfir-not__item strong {
  color: var(--b);
}

.istdfir-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istdfir-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istdfir-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdfir-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istdfir-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istdfir-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdfir-levels {
  display: grid;
  gap: 14px;
}

.istdfir-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istdfir-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istdfir-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istdfir-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istdfir-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istdfir-level__text strong {
  color: var(--b);
}

.istdfir-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istdfir-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istdfir-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istdfir-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istdfir-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istdfir-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istdfir-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istdfir-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istdfir-faq-list {
  display: grid;
  gap: 12px;
}

.istdfir-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istdfir-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istdfir-faq summary::-webkit-details-marker {
  display: none;
}

.istdfir-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istdfir-faq__toggle::before,
.istdfir-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istdfir-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istdfir-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istdfir-faq[open] .istdfir-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istdfir-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istdfir-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istdfir-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istdfir-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istdfir-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istdfir-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istdfir-service--soon {
  opacity: .72;
}

.istdfir-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istdfir-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istdfir-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istdfir-service:hover::before {
  transform: scaleX(1);
}

.istdfir-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istdfir-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istdfir-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istdfir-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istdfir-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istdfir-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istdfir-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istdfir-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdfir-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istdfir-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istdfir-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istdfir-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istdfir-checklist li::before {
  content: none;
}

.istdfir-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istdfir-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istdfir-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istdfir-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istdfir-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istdfir-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istdfir-navitem--soon {
  opacity: .72;
}

.istdfir-navigator-note {
  margin-bottom: 20px;
}

.istdfir-when__action {
  margin-top: 24px;
}

.istdfir-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istdfir-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istdfir-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istdfir-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istdfir-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istdfir-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istdfir-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istdfir-result > div:first-child > p {
  color: var(--m);
}

.istdfir-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istdfir-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istdfir-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istdfir-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istdfir-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istdfir-case-list {
  display: grid;
  gap: 20px;
}

.istdfir-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istdfir-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istdfir-case__block {
  margin-bottom: 22px;
}

.istdfir-case__block:last-of-type {
  margin-bottom: 0;
}

.istdfir-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istdfir-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istdfir-case__block > p:last-child {
  margin-bottom: 0;
}

.istdfir-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istdfir-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istdfir-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istdfir-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istdfir-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istdfir-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istdfir-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istdfir-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istdfir-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istdfir-cta__contacts {
  margin-top: 20px;
}

.istdfir-cta__contacts a,
.istdfir-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istdfir-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istdfir-cta__contacts a:last-child,
.istdfir-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istdfir-cta__contacts a:hover {
  color: #fff;
}

.istdfir-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istdfirRingContain {
  0% { transform: scale(1.55); opacity: 0; }
  15% { opacity: .8; }
  85% { opacity: .35; }
  100% { transform: scale(1); opacity: 0; }
}

@keyframes istdfirCorePulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

@keyframes istdfirBeamFlow {
  from { stroke-dashoffset: 18; }
  to { stroke-dashoffset: 0; }
}

@keyframes istdfirPhonePulse {
  0% { transform: scale(.7); opacity: .8; }
  100% { transform: scale(1.6); opacity: 0; }
}

@keyframes istdfirShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istdfir-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istdfir-hero__visual {
    min-height: 460px;
  }

  .istdfir-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istdfir-service-grid,
  .istdfir-process,
  .istdfir-segment-grid,
  .istdfir-segment-grid--3,
  .istdfir-diff-grid,
  .istdfir-treatment-grid,
  .istdfir-related-grid,
  .istdfir-not-grid,
  .istdfir-scope-grid,
  .istdfir-formats-grid,
  .istdfir-value-grid,
  .istdfir-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istdfir-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istdfir-level__bar {
    display: none;
  }

  .istdfir-reg,
  .istdfir-result,
  .istdfir-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istdfir-stack__grid,
  .istdfir-checklist {
    grid-template-columns: 1fr;
  }

  .istdfir-process article:nth-child(3)::after {
    display: block;
  }

  .istdfir-process article:nth-child(2n)::after,
  .istdfir-process article:last-child::after {
    display: none;
  }

  .istdfir-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istdfir-hero,
  .istdfir-section,
  .istdfir-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istdfir-hero {
    min-height: 0;
  }

  .istdfir-hero h2 {
    font-size: 30px !important;
  }

  .istdfir-hero__lead {
    font-size: 16px;
  }

  .istdfir-hero__visual {
    min-height: 380px;
  }

  .istdfir-illustration {
    width: 400px;
  }

  .istdfir-nav {
    top: 58px;
  }

  .istdfir-reg__cards,
  .istdfir-result__list,
  .istdfir-segment-grid,
  .istdfir-segment-grid--3,
  .istdfir-diff-grid,
  .istdfir-prep-grid,
  .istdfir-treatment-grid,
  .istdfir-related-grid,
  .istdfir-not-grid,
  .istdfir-scope-grid,
  .istdfir-formats-grid,
  .istdfir-value-grid,
  .istdfir-nav-grid {
    grid-template-columns: 1fr;
  }

  .istdfir-threat-table__head,
  .istdfir-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istdfir-threat-table__head span:first-child {
    display: none;
  }

  .istdfir-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istdfir-float__icon {
    width: 28px;
    height: 28px;
  }

  .istdfir-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istdfir-float__text strong {
    font-size: 11.5px;
  }

  .istdfir-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istdfir-risk-grid,
  .istdfir-service-grid,
  .istdfir-process,
  .istdfir-nav-grid {
    grid-template-columns: 1fr;
  }

  .istdfir-process article::after {
    display: none !important;
  }

  .istdfir-hero__actions {
    display: grid;
  }

  .istdfir-btn {
    width: 100%;
  }

  .istdfir-hero__visual {
    min-height: 320px;
  }

  .istdfir-illustration {
    width: 330px;
  }

  .istdfir-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istdfir-ring,
  .istdfir-core-mark,
  .istdfir-line,
  .istdfir-phone__pulse,
  .istdfir-shield {
    animation: none;
  }

  .istdfir-ring {
    opacity: .5;
    transform: scale(1);
  }

  .istdfir-phone__pulse {
    opacity: 0;
  }

  .istdfir-btn,
  .istdfir-risk,
  .istdfir-service,
  .istdfir-stack__item,
  .istdfir-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Подготовка к получению лицензий ФСТЭК и ФСБ (istlic-) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-license-prep-v1,
#ist-license-prep-v1 * {
  box-sizing: border-box;
}

#ist-license-prep-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-license-prep-v1 h1,
#ist-license-prep-v1 h2,
#ist-license-prep-v1 h3,
#ist-license-prep-v1 p {
  margin-top: 0;
}

#ist-license-prep-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-license-prep-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-license-prep-v1 a {
  text-decoration: none;
}

.istlic-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istlic-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istlic-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istlic-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istlic-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istlic-hero__content,
.istlic-hero__visual {
  position: relative;
  z-index: 2;
}

.istlic-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istlic-kicker--light {
  color: #ffc29b;
}

.istlic-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istlic-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istlic-alert {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  max-width: 700px;
  margin-bottom: 22px;
  padding: 18px 20px;
  border: 1.5px solid rgba(255,90,90,.35);
  border-radius: 14px;
  background: rgba(255,90,90,.07);
}

.istlic-alert__icon {
  display: flex;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ff5a5a;
}

.istlic-alert__icon svg {
  width: 16px;
  height: 16px;
  fill: #fff;
}

.istlic-alert__text {
  color: var(--t);
  font-size: 14.5px;
  line-height: 1.55;
}

.istlic-alert__text strong {
  display: block;
  margin-bottom: 4px;
  color: #d8341f;
  font-size: 15.5px;
}

.istlic-alert__text a {
  color: #d8341f;
  text-decoration: underline;
}

.istlic-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istlic-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 14px;
  line-height: 1.55;
}

.istlic-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istlic-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istlic-btn:hover {
  transform: translateY(-2px);
}

.istlic-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istlic-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istlic-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istlic-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istlic-btn--ghost-light {
  border-color: rgba(255,255,255,.32);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.istlic-btn--ghost-light:hover {
  border-color: rgba(255,255,255,.6);
  background: rgba(255,255,255,.16);
}

.istlic-hero__visual {
  min-height: 520px;
}

.istlic-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istlic-check-row {
  opacity: 0;
  transform: translateX(-6px);
  animation: istlicRowReveal 4.8s ease-in-out infinite;
}

.istlic-check-row--1 { animation-delay: 0s; }
.istlic-check-row--2 { animation-delay: .5s; }
.istlic-check-row--3 { animation-delay: 1s; }
.istlic-check-row--4 { animation-delay: 1.5s; }

.istlic-stamp {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istlicStampSettle 4.8s ease-in-out infinite;
}

.istlic-stamp-ring {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istlicStampRing 4.8s ease-in-out infinite;
}

.istlic-doc-glow {
  animation: istlicDocGlow 4.8s ease-in-out infinite;
}

.istlic-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istlicShieldPulse 3.2s ease-in-out infinite;
}

.istlic-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istlic-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istlic-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istlic-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istlic-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istlic-float--one {
  top: 0;
  left: 0;
}

.istlic-float--two {
  top: 0;
  right: -6px;
}

.istlic-float--three {
  top: 315px;
  right: -6px;
}

.istlic-float--four {
  bottom: -6px;
  left: 40px;
}

.istlic-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istlic-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istlic-nav a:hover,
.istlic-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istlic-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istlic-section--soft {
  background: var(--s);
}

.istlic-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istlic-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istlic-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istlic-section__head p:last-of-type {
  margin-bottom: 0;
}

.istlic-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istlic-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istlic-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istlic-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istlic-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istlic-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istlic-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istlic-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istlic-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istlic-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istlic-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istlic-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istlic-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istlic-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istlic-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istlic-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istlic-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istlic-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istlic-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istlic-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istlic-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istlic-threat-row p:last-child {
  color: var(--m);
}

.istlic-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istlic-reg__intro h2,
.istlic-reg__intro p {
  color: #fff !important;
}

.istlic-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istlic-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istlic-reg__accent strong {
  color: #fff;
}

.istlic-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istlic-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istlic-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istlic-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istlic-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istlic-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istlic-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istlic-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istlic-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istlic-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istlic-process article:nth-child(3)::after,
.istlic-process article:nth-child(6)::after,
.istlic-process article:last-child::after {
  display: none;
}

.istlic-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istlic-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istlic-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istlic-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istlic-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istlic-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.istlic-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.istlic-table th,
.istlic-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.istlic-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.istlic-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.istlic-table tbody tr:last-child td {
  border-bottom: 0;
}

.istlic-table tbody td {
  color: var(--m);
}

.istlic-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istlic-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istlic-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istlic-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istlic-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istlic-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istlic-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istlic-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istlic-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istlic-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istlic-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istlic-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istlic-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istlic-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istlic-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istlic-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istlic-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istlic-result-format {
  margin-top: 24px;
}

.istlic-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istlic-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istlic-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istlic-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istlic-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istlic-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istlic-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istlic-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istlic-compare__row:last-child {
  border-bottom: none;
}

.istlic-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istlic-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istlic-compare__row--head {
  background: var(--b2);
}

.istlic-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istlic-compare__row--head .istlic-compare__label {
  background: transparent;
}

.istlic-compare__row:not(.istlic-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istlic-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istlic-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istlic-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istlic-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istlic-not__item strong {
  color: var(--b);
}

.istlic-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istlic-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istlic-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istlic-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istlic-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istlic-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istlic-levels {
  display: grid;
  gap: 14px;
}

.istlic-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istlic-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istlic-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istlic-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istlic-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istlic-level__text strong {
  color: var(--b);
}

.istlic-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istlic-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istlic-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istlic-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istlic-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istlic-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istlic-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istlic-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istlic-faq-list {
  display: grid;
  gap: 12px;
}

.istlic-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istlic-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istlic-faq summary::-webkit-details-marker {
  display: none;
}

.istlic-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istlic-faq__toggle::before,
.istlic-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istlic-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istlic-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istlic-faq[open] .istlic-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istlic-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istlic-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istlic-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istlic-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istlic-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istlic-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istlic-service--soon {
  opacity: .72;
}

.istlic-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istlic-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istlic-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istlic-service:hover::before {
  transform: scaleX(1);
}

.istlic-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istlic-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istlic-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istlic-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istlic-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istlic-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istlic-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istlic-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istlic-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istlic-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istlic-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istlic-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istlic-checklist li::before {
  content: none;
}

.istlic-checklist li strong,
.istlic-diff-note strong {
  display: inline;
  width: auto;
  float: none;
}

.istlic-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istlic-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istlic-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istlic-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istlic-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istlic-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istlic-navitem--soon {
  opacity: .72;
}

.istlic-navigator-note {
  margin-bottom: 20px;
}

.istlic-when__action {
  margin-top: 24px;
}

.istlic-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istlic-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istlic-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istlic-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istlic-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istlic-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istlic-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istlic-result > div:first-child > p {
  color: var(--m);
}

.istlic-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istlic-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istlic-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istlic-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istlic-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istlic-case-list {
  display: grid;
  gap: 20px;
}

.istlic-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istlic-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istlic-case__block {
  margin-bottom: 22px;
}

.istlic-case__block:last-of-type {
  margin-bottom: 0;
}

.istlic-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istlic-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istlic-case__block > p:last-child {
  margin-bottom: 0;
}

.istlic-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istlic-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istlic-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istlic-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istlic-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istlic-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istlic-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istlic-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istlic-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istlic-cta__contacts {
  margin-top: 20px;
}

.istlic-cta__contacts a,
.istlic-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istlic-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istlic-cta__contacts a:last-child,
.istlic-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istlic-cta__contacts a:hover {
  color: #fff;
}

.istlic-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istlicRowReveal {
  0% { opacity: 0; transform: translateX(-6px); }
  8% { opacity: 1; transform: translateX(0); }
  70% { opacity: 1; transform: translateX(0); }
  85% { opacity: .35; }
  100% { opacity: 0; transform: translateX(-6px); }
}

@keyframes istlicStampSettle {
  0%, 55% { transform: scale(1.6) rotate(-14deg); opacity: 0; }
  72% { transform: scale(.92) rotate(-14deg); opacity: 1; }
  80% { transform: scale(1.04) rotate(-14deg); }
  88%, 100% { transform: scale(1) rotate(-14deg); opacity: 1; }
}

@keyframes istlicStampRing {
  0%, 65% { opacity: 0; transform: scale(1.4); }
  75% { opacity: .9; transform: scale(1); }
  100% { opacity: 0; transform: scale(1); }
}

@keyframes istlicDocGlow {
  0%, 60% { opacity: .12; }
  85% { opacity: .3; }
  100% { opacity: .12; }
}

@keyframes istlicShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istlic-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istlic-hero__visual {
    min-height: 460px;
  }

  .istlic-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istlic-service-grid,
  .istlic-process,
  .istlic-segment-grid,
  .istlic-segment-grid--3,
  .istlic-diff-grid,
  .istlic-treatment-grid,
  .istlic-related-grid,
  .istlic-not-grid,
  .istlic-scope-grid,
  .istlic-formats-grid,
  .istlic-value-grid,
  .istlic-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istlic-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istlic-level__bar {
    display: none;
  }

  .istlic-reg,
  .istlic-result,
  .istlic-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istlic-stack__grid,
  .istlic-checklist {
    grid-template-columns: 1fr;
  }

  .istlic-process article:nth-child(3)::after {
    display: block;
  }

  .istlic-process article:nth-child(2n)::after,
  .istlic-process article:last-child::after {
    display: none;
  }

  .istlic-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istlic-hero,
  .istlic-section,
  .istlic-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istlic-hero {
    min-height: 0;
  }

  .istlic-hero h2 {
    font-size: 30px !important;
  }

  .istlic-hero__lead {
    font-size: 16px;
  }

  .istlic-hero__visual {
    min-height: 380px;
  }

  .istlic-illustration {
    width: 400px;
  }

  .istlic-nav {
    top: 58px;
  }

  .istlic-reg__cards,
  .istlic-result__list,
  .istlic-segment-grid,
  .istlic-segment-grid--3,
  .istlic-diff-grid,
  .istlic-prep-grid,
  .istlic-treatment-grid,
  .istlic-related-grid,
  .istlic-not-grid,
  .istlic-scope-grid,
  .istlic-formats-grid,
  .istlic-value-grid,
  .istlic-nav-grid {
    grid-template-columns: 1fr;
  }

  .istlic-threat-table__head,
  .istlic-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istlic-threat-table__head span:first-child {
    display: none;
  }

  .istlic-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istlic-float__icon {
    width: 28px;
    height: 28px;
  }

  .istlic-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istlic-float__text strong {
    font-size: 11.5px;
  }

  .istlic-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istlic-risk-grid,
  .istlic-service-grid,
  .istlic-process,
  .istlic-nav-grid {
    grid-template-columns: 1fr;
  }

  .istlic-process article::after {
    display: none !important;
  }

  .istlic-hero__actions {
    display: grid;
  }

  .istlic-btn {
    width: 100%;
  }

  .istlic-hero__visual {
    min-height: 320px;
  }

  .istlic-illustration {
    width: 330px;
  }

  .istlic-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istlic-check-row,
  .istlic-stamp,
  .istlic-stamp-ring,
  .istlic-doc-glow,
  .istlic-shield {
    animation: none;
  }

  .istlic-check-row {
    opacity: 1;
    transform: translateX(0);
  }

  .istlic-stamp {
    opacity: 1;
    transform: scale(1) rotate(-14deg);
  }

  .istlic-stamp-ring {
    opacity: 0;
  }

  .istlic-btn,
  .istlic-risk,
  .istlic-service,
  .istlic-stack__item,
  .istlic-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Аттестация объектов информатизации (istatt-) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-attest-v1,
#ist-attest-v1 * {
  box-sizing: border-box;
}

#ist-attest-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-attest-v1 h1,
#ist-attest-v1 h2,
#ist-attest-v1 h3,
#ist-attest-v1 p {
  margin-top: 0;
}

#ist-attest-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-attest-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-attest-v1 a {
  text-decoration: none;
}

.istatt-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istatt-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istatt-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istatt-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istatt-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istatt-hero__content,
.istatt-hero__visual {
  position: relative;
  z-index: 2;
}

.istatt-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istatt-kicker--light {
  color: #ffc29b;
}

.istatt-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istatt-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istatt-alert {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  max-width: 700px;
  margin-bottom: 22px;
  padding: 18px 20px;
  border: 1.5px solid rgba(255,90,90,.35);
  border-radius: 14px;
  background: rgba(255,90,90,.07);
}

.istatt-alert__icon {
  display: flex;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ff5a5a;
}

.istatt-alert__icon svg {
  width: 16px;
  height: 16px;
  fill: #fff;
}

.istatt-alert__text {
  color: var(--t);
  font-size: 14.5px;
  line-height: 1.55;
}

.istatt-alert__text strong {
  display: block;
  margin-bottom: 4px;
  color: #d8341f;
  font-size: 15.5px;
}

.istatt-alert__text a {
  color: #d8341f;
  text-decoration: underline;
}

.istatt-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istatt-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 14px;
  line-height: 1.55;
}

.istatt-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istatt-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istatt-btn:hover {
  transform: translateY(-2px);
}

.istatt-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istatt-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istatt-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istatt-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istatt-btn--ghost-light {
  border-color: rgba(255,255,255,.32);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.istatt-btn--ghost-light:hover {
  border-color: rgba(255,255,255,.6);
  background: rgba(255,255,255,.16);
}

.istatt-hero__visual {
  min-height: 520px;
}

.istatt-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istatt-check-row {
  opacity: 0;
  transform: translateX(-6px);
  animation: istattRowReveal 4.8s ease-in-out infinite;
}

.istatt-check-row--1 { animation-delay: 0s; }
.istatt-check-row--2 { animation-delay: .5s; }
.istatt-check-row--3 { animation-delay: 1s; }
.istatt-check-row--4 { animation-delay: 1.5s; }

.istatt-stamp {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istattStampSettle 4.8s ease-in-out infinite;
}

.istatt-stamp-ring {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istattStampRing 4.8s ease-in-out infinite;
}

.istatt-doc-glow {
  animation: istattDocGlow 4.8s ease-in-out infinite;
}

.istatt-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istattShieldPulse 3.2s ease-in-out infinite;
}

.istatt-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istatt-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istatt-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istatt-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istatt-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istatt-float--one {
  top: 0;
  left: 0;
}

.istatt-float--two {
  top: 0;
  right: -6px;
}

.istatt-float--three {
  top: 315px;
  right: -6px;
}

.istatt-float--four {
  bottom: -6px;
  left: 40px;
}

.istatt-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istatt-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istatt-nav a:hover,
.istatt-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istatt-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istatt-section--soft {
  background: var(--s);
}

.istatt-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istatt-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istatt-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istatt-section__head p:last-of-type {
  margin-bottom: 0;
}

.istatt-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istatt-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istatt-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istatt-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istatt-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istatt-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istatt-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istatt-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istatt-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istatt-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istatt-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istatt-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istatt-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istatt-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istatt-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istatt-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istatt-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istatt-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istatt-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istatt-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istatt-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istatt-threat-row p:last-child {
  color: var(--m);
}

.istatt-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istatt-reg__intro h2,
.istatt-reg__intro p {
  color: #fff !important;
}

.istatt-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istatt-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istatt-reg__accent strong {
  color: #fff;
}

.istatt-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istatt-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istatt-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istatt-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istatt-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istatt-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istatt-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istatt-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istatt-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istatt-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istatt-process article:nth-child(3)::after,
.istatt-process article:nth-child(6)::after,
.istatt-process article:last-child::after {
  display: none;
}

.istatt-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istatt-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istatt-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istatt-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istatt-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istatt-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.istatt-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.istatt-table th,
.istatt-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.istatt-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.istatt-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.istatt-table tbody tr:last-child td {
  border-bottom: 0;
}

.istatt-table tbody td {
  color: var(--m);
}

.istatt-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istatt-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istatt-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istatt-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istatt-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istatt-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istatt-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istatt-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istatt-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istatt-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istatt-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istatt-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istatt-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istatt-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istatt-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istatt-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istatt-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istatt-result-format {
  margin-top: 24px;
}

.istatt-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istatt-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istatt-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istatt-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istatt-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istatt-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istatt-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istatt-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istatt-compare__row:last-child {
  border-bottom: none;
}

.istatt-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istatt-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istatt-compare__row--head {
  background: var(--b2);
}

.istatt-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istatt-compare__row--head .istatt-compare__label {
  background: transparent;
}

.istatt-compare__row:not(.istatt-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istatt-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istatt-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istatt-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istatt-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istatt-not__item strong {
  color: var(--b);
}

.istatt-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istatt-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istatt-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istatt-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istatt-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istatt-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istatt-levels {
  display: grid;
  gap: 14px;
}

.istatt-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istatt-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istatt-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istatt-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istatt-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istatt-level__text strong {
  color: var(--b);
}

.istatt-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istatt-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istatt-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istatt-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istatt-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istatt-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istatt-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istatt-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istatt-faq-list {
  display: grid;
  gap: 12px;
}

.istatt-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istatt-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istatt-faq summary::-webkit-details-marker {
  display: none;
}

.istatt-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istatt-faq__toggle::before,
.istatt-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istatt-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istatt-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istatt-faq[open] .istatt-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istatt-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istatt-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istatt-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istatt-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istatt-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istatt-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istatt-service--soon {
  opacity: .72;
}

.istatt-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istatt-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istatt-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istatt-service:hover::before {
  transform: scaleX(1);
}

.istatt-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istatt-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istatt-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istatt-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istatt-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istatt-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istatt-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istatt-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istatt-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istatt-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istatt-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istatt-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istatt-checklist li::before {
  content: none;
}

.istatt-checklist li strong,
.istatt-diff-note strong {
  display: inline;
  width: auto;
  float: none;
}

.istatt-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istatt-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istatt-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istatt-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istatt-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istatt-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istatt-navitem--soon {
  opacity: .72;
}

.istatt-navigator-note {
  margin-bottom: 20px;
}

.istatt-when__action {
  margin-top: 24px;
}

.istatt-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istatt-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istatt-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istatt-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istatt-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istatt-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istatt-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istatt-result > div:first-child > p {
  color: var(--m);
}

.istatt-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istatt-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istatt-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istatt-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istatt-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istatt-case-list {
  display: grid;
  gap: 20px;
}

.istatt-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istatt-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istatt-case__block {
  margin-bottom: 22px;
}

.istatt-case__block:last-of-type {
  margin-bottom: 0;
}

.istatt-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istatt-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istatt-case__block > p:last-child {
  margin-bottom: 0;
}

.istatt-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istatt-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istatt-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istatt-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istatt-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istatt-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istatt-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istatt-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istatt-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istatt-cta__contacts {
  margin-top: 20px;
}

.istatt-cta__contacts a,
.istatt-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istatt-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istatt-cta__contacts a:last-child,
.istatt-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istatt-cta__contacts a:hover {
  color: #fff;
}

.istatt-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istattRowReveal {
  0% { opacity: 0; transform: translateX(-6px); }
  8% { opacity: 1; transform: translateX(0); }
  70% { opacity: 1; transform: translateX(0); }
  85% { opacity: .35; }
  100% { opacity: 0; transform: translateX(-6px); }
}

@keyframes istattStampSettle {
  0%, 55% { transform: scale(1.6) rotate(-14deg); opacity: 0; }
  72% { transform: scale(.92) rotate(-14deg); opacity: 1; }
  80% { transform: scale(1.04) rotate(-14deg); }
  88%, 100% { transform: scale(1) rotate(-14deg); opacity: 1; }
}

@keyframes istattStampRing {
  0%, 65% { opacity: 0; transform: scale(1.4); }
  75% { opacity: .9; transform: scale(1); }
  100% { opacity: 0; transform: scale(1); }
}

@keyframes istattDocGlow {
  0%, 60% { opacity: .12; }
  85% { opacity: .3; }
  100% { opacity: .12; }
}

@keyframes istattShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istatt-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istatt-hero__visual {
    min-height: 460px;
  }

  .istatt-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istatt-service-grid,
  .istatt-process,
  .istatt-segment-grid,
  .istatt-segment-grid--3,
  .istatt-diff-grid,
  .istatt-treatment-grid,
  .istatt-related-grid,
  .istatt-not-grid,
  .istatt-scope-grid,
  .istatt-formats-grid,
  .istatt-value-grid,
  .istatt-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istatt-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istatt-level__bar {
    display: none;
  }

  .istatt-reg,
  .istatt-result,
  .istatt-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istatt-stack__grid,
  .istatt-checklist {
    grid-template-columns: 1fr;
  }

  .istatt-process article:nth-child(3)::after {
    display: block;
  }

  .istatt-process article:nth-child(2n)::after,
  .istatt-process article:last-child::after {
    display: none;
  }

  .istatt-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istatt-hero,
  .istatt-section,
  .istatt-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istatt-hero {
    min-height: 0;
  }

  .istatt-hero h2 {
    font-size: 30px !important;
  }

  .istatt-hero__lead {
    font-size: 16px;
  }

  .istatt-hero__visual {
    min-height: 380px;
  }

  .istatt-illustration {
    width: 400px;
  }

  .istatt-nav {
    top: 58px;
  }

  .istatt-reg__cards,
  .istatt-result__list,
  .istatt-segment-grid,
  .istatt-segment-grid--3,
  .istatt-diff-grid,
  .istatt-prep-grid,
  .istatt-treatment-grid,
  .istatt-related-grid,
  .istatt-not-grid,
  .istatt-scope-grid,
  .istatt-formats-grid,
  .istatt-value-grid,
  .istatt-nav-grid {
    grid-template-columns: 1fr;
  }

  .istatt-threat-table__head,
  .istatt-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istatt-threat-table__head span:first-child {
    display: none;
  }

  .istatt-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istatt-float__icon {
    width: 28px;
    height: 28px;
  }

  .istatt-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istatt-float__text strong {
    font-size: 11.5px;
  }

  .istatt-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istatt-risk-grid,
  .istatt-service-grid,
  .istatt-process,
  .istatt-nav-grid {
    grid-template-columns: 1fr;
  }

  .istatt-process article::after {
    display: none !important;
  }

  .istatt-hero__actions {
    display: grid;
  }

  .istatt-btn {
    width: 100%;
  }

  .istatt-hero__visual {
    min-height: 320px;
  }

  .istatt-illustration {
    width: 330px;
  }

  .istatt-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istatt-check-row,
  .istatt-stamp,
  .istatt-stamp-ring,
  .istatt-doc-glow,
  .istatt-shield {
    animation: none;
  }

  .istatt-check-row {
    opacity: 1;
    transform: translateX(0);
  }

  .istatt-stamp {
    opacity: 1;
    transform: scale(1) rotate(-14deg);
  }

  .istatt-stamp-ring {
    opacity: 0;
  }

  .istatt-btn,
  .istatt-risk,
  .istatt-service,
  .istatt-stack__item,
  .istatt-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Киберучения и учения по реагированию (istce-) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-cyberex-v1,
#ist-cyberex-v1 * {
  box-sizing: border-box;
}

#ist-cyberex-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-cyberex-v1 h1,
#ist-cyberex-v1 h2,
#ist-cyberex-v1 h3,
#ist-cyberex-v1 p {
  margin-top: 0;
}

#ist-cyberex-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-cyberex-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-cyberex-v1 a {
  text-decoration: none;
}

.istce-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.istce-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.istce-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.istce-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.istce-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.istce-hero__content,
.istce-hero__visual {
  position: relative;
  z-index: 2;
}

.istce-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.istce-kicker--light {
  color: #ffc29b;
}

.istce-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.istce-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.istce-alert {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  max-width: 700px;
  margin-bottom: 22px;
  padding: 18px 20px;
  border: 1.5px solid rgba(255,90,90,.35);
  border-radius: 14px;
  background: rgba(255,90,90,.07);
}

.istce-alert__icon {
  display: flex;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ff5a5a;
}

.istce-alert__icon svg {
  width: 16px;
  height: 16px;
  fill: #fff;
}

.istce-alert__text {
  color: var(--t);
  font-size: 14.5px;
  line-height: 1.55;
}

.istce-alert__text strong {
  display: block;
  margin-bottom: 4px;
  color: #d8341f;
  font-size: 15.5px;
}

.istce-alert__text a {
  color: #d8341f;
  text-decoration: underline;
}

.istce-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.istce-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 14px;
  line-height: 1.55;
}

.istce-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.istce-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.istce-btn:hover {
  transform: translateY(-2px);
}

.istce-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.istce-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.istce-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.istce-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.istce-btn--ghost-light {
  border-color: rgba(255,255,255,.32);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.istce-btn--ghost-light:hover {
  border-color: rgba(255,255,255,.6);
  background: rgba(255,255,255,.16);
}

.istce-hero__visual {
  min-height: 520px;
}

.istce-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.istce-branch-line {
  stroke-dasharray: 220;
  stroke-dashoffset: 220;
  animation: istceBranchDraw 5.4s ease-in-out infinite;
}

.istce-branch-line--b { animation-delay: .5s; }
.istce-branch-line--c { animation-delay: 1s; }

.istce-node {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: .35;
  animation: istceNodeLight 5.4s ease-in-out infinite;
}

.istce-node--1 { animation-delay: .2s; }
.istce-node--2 { animation-delay: 1.1s; }
.istce-node--3 { animation-delay: 1.7s; }
.istce-node--4 { animation-delay: 2.3s; }

.istce-clock-hand {
  transform-box: fill-box;
  transform-origin: 50% 100%;
  animation: istceClockSweep 5.4s linear infinite;
}

.istce-clock-pulse {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: istceClockPulse 1.8s ease-in-out infinite;
}

.istce-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: istceShieldPulse 3.2s ease-in-out infinite;
}

.istce-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.istce-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.istce-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.istce-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.istce-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.istce-float--one {
  top: 0;
  left: 0;
}

.istce-float--two {
  top: 0;
  right: -6px;
}

.istce-float--three {
  top: 315px;
  right: -6px;
}

.istce-float--four {
  bottom: -6px;
  left: 40px;
}

.istce-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.istce-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.istce-nav a:hover,
.istce-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.istce-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.istce-section--soft {
  background: var(--s);
}

.istce-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.istce-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.istce-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.istce-section__head p:last-of-type {
  margin-bottom: 0;
}

.istce-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istce-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istce-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istce-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.istce-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.istce-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.istce-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.istce-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.istce-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istce-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istce-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istce-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.istce-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.istce-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istce-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.istce-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.istce-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.istce-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.istce-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.istce-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.istce-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.istce-threat-row p:last-child {
  color: var(--m);
}

.istce-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.istce-reg__intro h2,
.istce-reg__intro p {
  color: #fff !important;
}

.istce-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.istce-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.istce-reg__accent strong {
  color: #fff;
}

.istce-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istce-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istce-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.istce-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.istce-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.istce-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.istce-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.istce-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istce-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istce-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.istce-process article:nth-child(3)::after,
.istce-process article:nth-child(6)::after,
.istce-process article:last-child::after {
  display: none;
}

.istce-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istce-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.istce-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.istce-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istce-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.istce-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.istce-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.istce-table th,
.istce-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.istce-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.istce-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.istce-table tbody tr:last-child td {
  border-bottom: 0;
}

.istce-table tbody td {
  color: var(--m);
}

.istce-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.istce-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.istce-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.istce-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.istce-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istce-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istce-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istce-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istce-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istce-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istce-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istce-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istce-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.istce-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istce-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istce-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istce-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istce-result-format {
  margin-top: 24px;
}

.istce-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istce-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.istce-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.istce-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istce-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istce-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istce-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.istce-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.istce-compare__row:last-child {
  border-bottom: none;
}

.istce-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.istce-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.istce-compare__row--head {
  background: var(--b2);
}

.istce-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.istce-compare__row--head .istce-compare__label {
  background: transparent;
}

.istce-compare__row:not(.istce-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.istce-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istce-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istce-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.istce-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.istce-not__item strong {
  color: var(--b);
}

.istce-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.istce-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.istce-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istce-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.istce-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.istce-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istce-levels {
  display: grid;
  gap: 14px;
}

.istce-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istce-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.istce-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.istce-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.istce-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.istce-level__text strong {
  color: var(--b);
}

.istce-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.istce-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.istce-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.istce-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istce-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istce-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.istce-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.istce-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.istce-faq-list {
  display: grid;
  gap: 12px;
}

.istce-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.istce-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.istce-faq summary::-webkit-details-marker {
  display: none;
}

.istce-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.istce-faq__toggle::before,
.istce-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.istce-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.istce-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.istce-faq[open] .istce-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.istce-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.istce-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.istce-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.istce-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.istce-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.istce-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.istce-service--soon {
  opacity: .72;
}

.istce-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.istce-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.istce-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.istce-service:hover::before {
  transform: scaleX(1);
}

.istce-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.istce-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.istce-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.istce-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.istce-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istce-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.istce-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.istce-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istce-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.istce-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.istce-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.istce-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.istce-checklist li::before {
  content: none;
}

.istce-checklist li strong,
.istce-diff-note strong {
  display: inline;
  width: auto;
  float: none;
}

.istce-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.istce-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.istce-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.istce-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.istce-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.istce-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.istce-navitem--soon {
  opacity: .72;
}

.istce-navigator-note {
  margin-bottom: 20px;
}

.istce-when__action {
  margin-top: 24px;
}

.istce-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.istce-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.istce-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.istce-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.istce-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.istce-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.istce-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.istce-result > div:first-child > p {
  color: var(--m);
}

.istce-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.istce-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.istce-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.istce-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.istce-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.istce-case-list {
  display: grid;
  gap: 20px;
}

.istce-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.istce-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.istce-case__block {
  margin-bottom: 22px;
}

.istce-case__block:last-of-type {
  margin-bottom: 0;
}

.istce-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.istce-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.istce-case__block > p:last-child {
  margin-bottom: 0;
}

.istce-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.istce-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.istce-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.istce-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.istce-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.istce-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.istce-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.istce-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.istce-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.istce-cta__contacts {
  margin-top: 20px;
}

.istce-cta__contacts a,
.istce-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.istce-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.istce-cta__contacts a:last-child,
.istce-cta__contacts span:last-child {
  margin-bottom: 0;
}

.istce-cta__contacts a:hover {
  color: #fff;
}

.istce-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes istceBranchDraw {
  0%, 10% { stroke-dashoffset: 220; }
  55%, 100% { stroke-dashoffset: 0; }
}

@keyframes istceNodeLight {
  0%, 100% { opacity: .35; transform: scale(1); }
  15% { opacity: 1; transform: scale(1.25); }
  30% { opacity: 1; transform: scale(1); }
}

@keyframes istceClockSweep {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes istceClockPulse {
  0%, 100% { opacity: .5; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.12); }
}

@keyframes istceShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .istce-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .istce-hero__visual {
    min-height: 460px;
  }

  .istce-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .istce-service-grid,
  .istce-process,
  .istce-segment-grid,
  .istce-segment-grid--3,
  .istce-diff-grid,
  .istce-treatment-grid,
  .istce-related-grid,
  .istce-not-grid,
  .istce-scope-grid,
  .istce-formats-grid,
  .istce-value-grid,
  .istce-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .istce-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .istce-level__bar {
    display: none;
  }

  .istce-reg,
  .istce-result,
  .istce-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .istce-stack__grid,
  .istce-checklist {
    grid-template-columns: 1fr;
  }

  .istce-process article:nth-child(3)::after {
    display: block;
  }

  .istce-process article:nth-child(2n)::after,
  .istce-process article:last-child::after {
    display: none;
  }

  .istce-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .istce-hero,
  .istce-section,
  .istce-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .istce-hero {
    min-height: 0;
  }

  .istce-hero h2 {
    font-size: 30px !important;
  }

  .istce-hero__lead {
    font-size: 16px;
  }

  .istce-hero__visual {
    min-height: 380px;
  }

  .istce-illustration {
    width: 400px;
  }

  .istce-nav {
    top: 58px;
  }

  .istce-reg__cards,
  .istce-result__list,
  .istce-segment-grid,
  .istce-segment-grid--3,
  .istce-diff-grid,
  .istce-prep-grid,
  .istce-treatment-grid,
  .istce-related-grid,
  .istce-not-grid,
  .istce-scope-grid,
  .istce-formats-grid,
  .istce-value-grid,
  .istce-nav-grid {
    grid-template-columns: 1fr;
  }

  .istce-threat-table__head,
  .istce-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .istce-threat-table__head span:first-child {
    display: none;
  }

  .istce-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .istce-float__icon {
    width: 28px;
    height: 28px;
  }

  .istce-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .istce-float__text strong {
    font-size: 11.5px;
  }

  .istce-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .istce-risk-grid,
  .istce-service-grid,
  .istce-process,
  .istce-nav-grid {
    grid-template-columns: 1fr;
  }

  .istce-process article::after {
    display: none !important;
  }

  .istce-hero__actions {
    display: grid;
  }

  .istce-btn {
    width: 100%;
  }

  .istce-hero__visual {
    min-height: 320px;
  }

  .istce-illustration {
    width: 330px;
  }

  .istce-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .istce-branch-line,
  .istce-node,
  .istce-clock-hand,
  .istce-clock-pulse,
  .istce-shield {
    animation: none;
  }

  .istce-branch-line {
    stroke-dashoffset: 0;
  }

  .istce-node {
    opacity: 1;
    transform: scale(1);
  }

  .istce-clock-pulse {
    opacity: .5;
  }

  .istce-btn,
  .istce-risk,
  .istce-service,
  .istce-stack__item,
  .istce-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: Обучение персонала по информационной безопасности (isttr-) ===== */
/* Сайтовый фикс .switcher-title уже задеплоен глобально на странице
   istk- (телеком) — здесь не дублируется, см. CLAUDE.md п.3.6. */
#ist-trainstaff-v1,
#ist-trainstaff-v1 * {
  box-sizing: border-box;
}

#ist-trainstaff-v1 {
  --b: #15375b;
  --b2: #0d2742;
  --b3: #244f79;
  --o: #ee7633;
  --o2: #d95f1c;
  --t: #39495d;
  --m: #6c7889;
  --l: #dfe7ef;
  --s: #f4f8fc;
  --w: #fff;
  max-width: 1200px;
  margin: 0 auto;
  color: var(--t);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
}

#ist-trainstaff-v1 h1,
#ist-trainstaff-v1 h2,
#ist-trainstaff-v1 h3,
#ist-trainstaff-v1 p {
  margin-top: 0;
}

#ist-trainstaff-v1 h2 {
  margin-bottom: 18px;
  color: var(--b);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

#ist-trainstaff-v1 h3 {
  margin-bottom: 9px;
  color: var(--b);
  font-size: 19px;
  line-height: 1.3;
  font-weight: 750;
}

#ist-trainstaff-v1 a {
  text-decoration: none;
}

.isttr-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: 34px;
  align-items: center;
  overflow: hidden;
  min-height: 640px;
  margin: 12px 0 24px;
  padding: 64px;
  border-radius: 30px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(247,250,253,.95)),
    var(--w);
  box-shadow: 0 30px 85px rgba(21,55,91,.12);
  border: 1px solid rgba(21,55,91,.10);
}

.isttr-hero__grid {
  position: absolute;
  inset: 0;
  opacity: .24;
  background-image:
    linear-gradient(rgba(21,55,91,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,55,91,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(90deg, transparent 0, #000 56%, #000 100%);
}

.isttr-hero__glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(5px);
}

.isttr-hero__glow--one {
  top: -160px;
  right: -110px;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(238,118,51,.19), transparent 67%);
}

.isttr-hero__glow--two {
  right: 250px;
  bottom: -200px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(21,55,91,.14), transparent 68%);
}

.isttr-hero__content,
.isttr-hero__visual {
  position: relative;
  z-index: 2;
}

.isttr-kicker {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 19px;
  color: var(--o2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.isttr-kicker--light {
  color: #ffc29b;
}

.isttr-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--o);
  box-shadow: 0 0 0 6px rgba(238,118,51,.12);
}

.isttr-hero h2 {
  max-width: 690px;
  font-size: clamp(34px, 4vw, 52px) !important;
}

.isttr-alert {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  max-width: 700px;
  margin-bottom: 22px;
  padding: 18px 20px;
  border: 1.5px solid rgba(255,90,90,.35);
  border-radius: 14px;
  background: rgba(255,90,90,.07);
}

.isttr-alert__icon {
  display: flex;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ff5a5a;
}

.isttr-alert__icon svg {
  width: 16px;
  height: 16px;
  fill: #fff;
}

.isttr-alert__text {
  color: var(--t);
  font-size: 14.5px;
  line-height: 1.55;
}

.isttr-alert__text strong {
  display: block;
  margin-bottom: 4px;
  color: #d8341f;
  font-size: 15.5px;
}

.isttr-alert__text a {
  color: #d8341f;
  text-decoration: underline;
}

.isttr-hero__lead {
  max-width: 700px;
  margin-bottom: 14px;
  color: #506074;
  font-size: 18px;
  line-height: 1.65;
}

.isttr-hero__note {
  max-width: 700px;
  margin-bottom: 26px;
  color: var(--m);
  font-size: 14px;
  line-height: 1.55;
}

.isttr-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.isttr-btn {
  display: inline-flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 25px;
  border: 2px solid transparent;
  border-radius: 11px;
  font: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
  transition: .22s ease;
}

.isttr-btn:hover {
  transform: translateY(-2px);
}

.isttr-btn--orange {
  border-color: var(--o);
  background: var(--o);
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(238,118,51,.24);
}

.isttr-btn--orange:hover {
  border-color: var(--o2);
  background: var(--o2);
}

.isttr-btn--ghost {
  border-color: rgba(21,55,91,.22);
  background: rgba(255,255,255,.70);
  color: var(--b) !important;
}

.isttr-btn--ghost:hover {
  border-color: var(--b);
  background: var(--b);
  color: #fff !important;
}

.isttr-btn--ghost-light {
  border-color: rgba(255,255,255,.32);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.isttr-btn--ghost-light:hover {
  border-color: rgba(255,255,255,.6);
  background: rgba(255,255,255,.16);
}

.isttr-hero__visual {
  min-height: 520px;
}

.isttr-illustration {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: 105%;
  transform: translate(-50%, -50%);
}

.isttr-envelope {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: isttrEnvelopeCatch 5.2s ease-in-out infinite;
}

.isttr-envelope-flag {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: 0;
  animation: isttrFlagWarn 5.2s ease-in-out infinite;
}

.isttr-envelope-check {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: 0;
  animation: isttrCheckRise 5.2s ease-in-out infinite;
}

.isttr-people-dot {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: .3;
  animation: isttrPeopleLight 5.2s ease-in-out infinite;
}

.isttr-people-dot--1 { animation-delay: .3s; }
.isttr-people-dot--2 { animation-delay: .9s; }
.isttr-people-dot--3 { animation-delay: 1.5s; }

.isttr-shield {
  transform-box: view-box;
  transform-origin: 478px 445px;
  animation: isttrShieldPulse 3.2s ease-in-out infinite;
}

.isttr-float {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 200px;
  max-width: 230px;
  padding: 12px 16px;
  border: 1px solid rgba(21,55,91,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(21,55,91,.15);
}

.isttr-float__icon {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(238,118,51,.12);
}

.isttr-float__icon svg {
  width: 18px;
  height: 18px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-float__text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.isttr-float__text strong {
  color: var(--b);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.25;
}

.isttr-float__text small {
  color: var(--m);
  font-size: 11px;
  line-height: 1.3;
}

.isttr-float--one {
  top: 0;
  left: 0;
}

.isttr-float--two {
  top: 0;
  right: -6px;
}

.isttr-float--three {
  top: 315px;
  right: -6px;
}

.isttr-float--four {
  bottom: -6px;
  left: 40px;
}

.isttr-nav {
  position: sticky;
  z-index: 15;
  top: 70px;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 28px;
  padding: 9px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 12px 30px rgba(21,55,91,.08);
  backdrop-filter: blur(12px);
}

.isttr-nav a {
  flex: 0 0 auto;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--b);
  font-size: 13px;
  font-weight: 700;
}

.isttr-nav a:hover,
.isttr-nav a.is-active {
  background: var(--b);
  color: #fff;
}

.isttr-section {
  scroll-margin-top: 145px;
  margin-bottom: 28px;
  padding: 58px;
  border: 1px solid var(--l);
  border-radius: 26px;
  background: #fff;
}

.isttr-section--soft {
  background: var(--s);
}

.isttr-section--blue {
  overflow: hidden;
  border: 0;
  background:
    radial-gradient(circle at 88% 10%, rgba(238,118,51,.20), transparent 26%),
    linear-gradient(135deg, var(--b2), var(--b3));
}

.isttr-section__head {
  max-width: 840px;
  margin-bottom: 34px;
}

.isttr-section__head p {
  max-width: 760px;
  margin-bottom: 14px;
  color: var(--m);
  font-size: 17px;
}

.isttr-section__head p:last-of-type {
  margin-bottom: 0;
}

.isttr-segment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isttr-segment-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isttr-segment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isttr-segment {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: var(--s);
}

.isttr-segment__list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.isttr-segment__list > div {
  padding-top: 14px;
  border-top: 1px solid var(--l);
}

.isttr-segment__list > div:first-child {
  padding-top: 0;
  border-top: none;
}

.isttr-segment__list strong {
  display: block;
  margin-bottom: 3px;
  color: var(--b);
  font-size: 14px;
}

.isttr-segment__list span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttr-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isttr-risk {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isttr-risk::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -30px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: rgba(238,118,51,.07);
}

.isttr-risk:hover {
  transform: translateY(-4px);
  border-color: rgba(238,118,51,.45);
  box-shadow: 0 18px 38px rgba(21,55,91,.10);
}

.isttr-risk__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 19px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isttr-risk__icon svg {
  width: 28px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-risk p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 14px;
}

.isttr-threat-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: var(--l);
}

.isttr-threat-table__head {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 16px 25px;
  background: var(--s);
}

.isttr-threat-table__head span {
  color: var(--b);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.isttr-threat-row {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px 25px;
  background: #fff;
}

.isttr-threat-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

.isttr-threat-row p:first-child {
  color: var(--b);
  font-weight: 700;
}

.isttr-threat-row p:last-child {
  color: var(--m);
}

.isttr-reg {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
  gap: 46px;
  align-items: start;
}

.isttr-reg__intro h2,
.isttr-reg__intro p {
  color: #fff !important;
}

.isttr-reg__intro p {
  color: rgba(255,255,255,.76) !important;
}

.isttr-reg__accent {
  margin-top: 24px;
  padding: 18px;
  border-left: 4px solid var(--o);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.86);
  font-size: 13px;
  line-height: 1.6;
}

.isttr-reg__accent strong {
  color: #fff;
}

.isttr-reg__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isttr-reg__cards > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isttr-reg__cards div {
  padding: 19px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 15px;
  background: rgba(255,255,255,.07);
  transition: .22s ease;
}

.isttr-reg__cards div:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.11);
}

.isttr-reg__cards strong {
  display: block;
  margin-bottom: 5px;
  color: #ff9c60;
  font-size: 16px;
}

.isttr-reg__cards span {
  color: rgba(255,255,255,.77);
  font-size: 12px;
  line-height: 1.4;
}

.isttr-reg__cards--text p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.isttr-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isttr-process article {
  position: relative;
  min-height: 190px;
  padding: 24px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isttr-process article::after {
  content: "→";
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(21,55,91,.18);
  font-size: 25px;
}

.isttr-process article:nth-child(3)::after,
.isttr-process article:nth-child(6)::after,
.isttr-process article:last-child::after {
  display: none;
}

.isttr-process span {
  display: inline-block;
  margin-bottom: 24px;
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isttr-process p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13px;
}

.isttr-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.isttr-diff-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isttr-diff-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.isttr-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 16px;
  margin-bottom: 20px;
}

.isttr-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 14px;
}

.isttr-table th,
.isttr-table td {
  padding: 16px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--l);
}

.isttr-table thead th {
  background: var(--s);
  color: var(--b);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.isttr-table tbody td:first-child {
  font-weight: 700;
  color: var(--b);
  white-space: nowrap;
}

.isttr-table tbody tr:last-child td {
  border-bottom: 0;
}

.isttr-table tbody td {
  color: var(--m);
}

.isttr-diff {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: #fff;
}

.isttr-diff__label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 5px 13px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 13px;
  font-weight: 800;
}

.isttr-diff p {
  margin-bottom: 16px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.6;
}

.isttr-diff__who {
  padding-top: 14px;
  border-top: 1px solid var(--l);
  color: var(--m);
  font-size: 13px;
  font-weight: 700;
}

.isttr-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isttr-list li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.isttr-list li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isttr-diff-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttr-prep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isttr-prep-grid > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isttr-prep-grid div {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isttr-prep-grid p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.isttr-treatment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.isttr-treatment {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.isttr-treatment__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isttr-treatment__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-treatment p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.isttr-treatment-note {
  max-width: 840px;
  margin: 22px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttr-result-format {
  margin-top: 24px;
}

.isttr-section__foot {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttr-related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.isttr-related__item {
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  transition: .22s ease;
}

.isttr-related__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttr-related__item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.isttr-related__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttr-compare {
  overflow-x: auto;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
}

.isttr-compare__row {
  display: grid;
  grid-template-columns: 150px repeat(3, minmax(180px, 1fr));
  min-width: 760px;
  border-bottom: 1px solid var(--l);
}

.isttr-compare__row:last-child {
  border-bottom: none;
}

.isttr-compare__row > div {
  padding: 16px 18px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.5;
}

.isttr-compare__label {
  color: var(--b);
  font-weight: 700;
  background: var(--s);
}

.isttr-compare__row--head {
  background: var(--b2);
}

.isttr-compare__row--head > div {
  color: #fff;
  font-weight: 800;
  font-size: 13px;
}

.isttr-compare__row--head .isttr-compare__label {
  background: transparent;
}

.isttr-compare__row:not(.isttr-compare__row--head) > div:nth-child(2) {
  background: rgba(238,118,51,.06);
  font-weight: 600;
}

.isttr-not-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.isttr-not__item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isttr-not__icon {
  display: flex;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(217,60,60,.10);
}

.isttr-not__icon svg {
  width: 20px;
  fill: none;
  stroke: #b23a3a;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-not__item p {
  margin: 0;
  color: var(--t);
  font-size: 14px;
  line-height: 1.55;
}

.isttr-not__item strong {
  color: var(--b);
}

.isttr-scope-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.isttr-scope__item {
  padding: 22px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
  transition: .22s ease;
}

.isttr-scope__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttr-scope__item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(21,55,91,.28);
  font-size: 12px;
  font-weight: 850;
}

.isttr-scope__item strong {
  display: block;
  margin-bottom: 6px;
  color: var(--b);
  font-size: 14.5px;
}

.isttr-scope__item p {
  margin: 0;
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttr-levels {
  display: grid;
  gap: 14px;
}

.isttr-level {
  display: grid;
  grid-template-columns: 34px 130px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 20px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isttr-level__num {
  display: flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--b2);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.isttr-level__bar {
  overflow: hidden;
  height: 8px;
  border-radius: 5px;
  background: var(--l);
}

.isttr-level__bar span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--o), #ffb078);
}

.isttr-level__text {
  color: var(--t);
  font-size: 14px;
  line-height: 1.5;
}

.isttr-level__text strong {
  color: var(--b);
}

.isttr-formats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.isttr-format {
  padding: 26px;
  border: 1px solid var(--l);
  border-radius: 18px;
  background: #fff;
  transition: .22s ease;
}

.isttr-format:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 16px 34px rgba(21,55,91,.09);
}

.isttr-format p {
  margin: 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isttr-value-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isttr-value {
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.isttr-value__icon {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 13px;
  background: rgba(238,118,51,.10);
}

.isttr-value__icon svg {
  width: 26px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-value p {
  margin-bottom: 0;
  color: var(--m);
  font-size: 13.5px;
  line-height: 1.55;
}

.isttr-faq-list {
  display: grid;
  gap: 12px;
}

.isttr-faq {
  padding: 22px 26px;
  border: 1px solid var(--l);
  border-radius: 16px;
  background: #fff;
}

.isttr-faq summary {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
  list-style: none;
}

.isttr-faq summary::-webkit-details-marker {
  display: none;
}

.isttr-faq__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

.isttr-faq__toggle::before,
.isttr-faq__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--o);
  transform: translate(-50%, -50%);
}

.isttr-faq__toggle::before {
  width: 14px;
  height: 2px;
}

.isttr-faq__toggle::after {
  width: 2px;
  height: 14px;
  transition: transform .2s ease;
}

.isttr-faq[open] .isttr-faq__toggle::after {
  transform: translate(-50%, -50%) scaleY(0);
}

.isttr-faq p {
  margin: 14px 0 0;
  color: var(--m);
  font-size: 14px;
  line-height: 1.65;
}

.isttr-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.isttr-service {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--l);
  border-radius: 19px;
  background: linear-gradient(180deg, #fff, #fbfdff);
  color: inherit;
  text-decoration: none;
  transition: .24s ease;
}

.isttr-service p {
  color: var(--m);
  font-size: 14px;
  line-height: 1.6;
}

.isttr-service__q {
  color: var(--b) !important;
  font-weight: 650;
}

.isttr-service__link {
  display: inline-block;
  margin-top: 6px;
  color: var(--o2);
  font-size: 13px;
  font-weight: 750;
}

.isttr-service--soon {
  opacity: .72;
}

.isttr-service__link--soon {
  color: var(--m);
  font-weight: 650;
}

.isttr-service::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--o), #ffb078);
  transition: transform .24s ease;
}

.isttr-service:hover {
  transform: translateY(-5px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 20px 42px rgba(21,55,91,.11);
}

.isttr-service:hover::before {
  transform: scaleX(1);
}

.isttr-service__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.isttr-service__top > span {
  color: rgba(21,55,91,.26);
  font-size: 12px;
  font-weight: 850;
}

.isttr-service__top svg {
  width: 38px;
  fill: none;
  stroke: var(--o);
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-service ul {
  display: grid;
  gap: 8px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.isttr-service li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13px;
}

.isttr-service li::before {
  content: "";
  position: absolute;
  top: .68em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isttr-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.isttr-stack__item {
  padding: 18px 19px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
  transition: .22s ease;
}

.isttr-stack__item:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttr-stack__item strong {
  display: block;
  margin-bottom: 4px;
  color: var(--b);
  font-size: 14px;
}

.isttr-stack__item span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.4;
}

.isttr-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.isttr-checklist li {
  display: flex;
  min-width: 0;
  gap: 11px;
  align-items: flex-start;
  padding: 15px 16px;
  border: 1px solid var(--l);
  border-radius: 13px;
  background: #fff;
  color: var(--t);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: break-word;
}

.isttr-checklist li::before {
  content: none;
}

.isttr-checklist li strong,
.isttr-diff-note strong {
  display: inline;
  width: auto;
  float: none;
}

.isttr-checklist li > span {
  min-width: 0;
  overflow-wrap: break-word;
}

.isttr-checklist svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  stroke: var(--o);
  fill: none;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-nav-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.isttr-navitem {
  display: block;
  padding: 20px 22px;
  border: 1px solid var(--l);
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

a.isttr-navitem:hover {
  transform: translateY(-3px);
  border-color: rgba(238,118,51,.36);
  box-shadow: 0 14px 30px rgba(21,55,91,.09);
}

.isttr-navitem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--b);
  font-size: 15px;
}

.isttr-navitem span {
  color: var(--m);
  font-size: 13px;
  line-height: 1.5;
}

.isttr-navitem--soon {
  opacity: .72;
}

.isttr-navigator-note {
  margin-bottom: 20px;
}

.isttr-when__action {
  margin-top: 24px;
}

.isttr-chips-block {
  margin-top: 34px;
  padding-top: 30px;
  border-top: 1px solid var(--l);
}

.isttr-chips-title {
  margin-bottom: 14px;
  color: var(--b);
  font-size: 14px;
  font-weight: 750;
}

.isttr-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.isttr-chip {
  max-width: 100%;
  padding: 8px 15px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: var(--s);
  color: var(--t);
  font-size: 13px;
  line-height: 1.4;
}

.isttr-formats-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.isttr-hero__foot {
  margin-top: 22px;
  padding-top: 18px;
  color: var(--m);
  font-size: 13px;
}

.isttr-result {
  display: grid;
  grid-template-columns: minmax(280px, .84fr) minmax(0, 1.16fr);
  gap: 42px;
  align-items: start;
}

.isttr-result > div:first-child > p {
  color: var(--m);
}

.isttr-result__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.isttr-result__list > div:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.isttr-result__list div {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 17px;
  border: 1px solid var(--l);
  border-radius: 14px;
  background: #fff;
}

.isttr-result__list span {
  color: var(--o);
  font-size: 12px;
  font-weight: 850;
}

.isttr-result__list p {
  margin: 0;
  color: var(--t);
  font-size: 13px;
}

.isttr-case-list {
  display: grid;
  gap: 20px;
}

.isttr-case {
  padding: 34px;
  border: 1px solid var(--l);
  border-radius: 20px;
  background: #fff;
}

.isttr-case h3 {
  max-width: 760px;
  margin-bottom: 22px;
}

.isttr-case__block {
  margin-bottom: 22px;
}

.isttr-case__block:last-of-type {
  margin-bottom: 0;
}

.isttr-case__label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 11px;
  border-radius: 20px;
  background: rgba(238,118,51,.12);
  color: var(--o2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.isttr-case__block > p {
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--t);
  font-size: 14px;
  line-height: 1.65;
}

.isttr-case__block > p:last-child {
  margin-bottom: 0;
}

.isttr-case__block > ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  max-width: 800px;
  padding: 0;
  list-style: none;
}

.isttr-case__block > ul > li {
  position: relative;
  padding-left: 17px;
  color: var(--t);
  font-size: 13.5px;
  line-height: 1.55;
}

.isttr-case__block > ul > li::before {
  content: "";
  position: absolute;
  top: .62em;
  left: 0;
  width: 7px;
  height: 2px;
  background: var(--o);
}

.isttr-case__disclaimer {
  margin: 18px 0 0;
  color: var(--m);
  font-size: 12px;
  font-style: italic;
}

.isttr-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 44px;
  align-items: center;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 50px 56px;
  border-radius: 26px;
  background: linear-gradient(135deg, var(--b2), var(--b3));
  box-shadow: 0 26px 70px rgba(21,55,91,.18);
}

.isttr-cta__glow {
  position: absolute;
  top: -180px;
  right: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(238,118,51,.24), transparent 67%);
}

.isttr-cta__content {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.isttr-cta h2 {
  max-width: 760px;
  margin-bottom: 12px !important;
  color: #fff !important;
  font-size: clamp(29px, 3.6vw, 46px) !important;
}

.isttr-cta p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255,255,255,.75);
}

.isttr-cta__contacts {
  margin-top: 20px;
}

.isttr-cta__contacts a,
.isttr-cta__contacts span {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 8px;
  color: rgba(255,255,255,.86);
  font-size: 14px;
}

.isttr-cta__contacts svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  stroke: #ffb078;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.isttr-cta__contacts a:last-child,
.isttr-cta__contacts span:last-child {
  margin-bottom: 0;
}

.isttr-cta__contacts a:hover {
  color: #fff;
}

.isttr-cta__action {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  min-width: 220px;
  text-align: center;
}

@keyframes isttrEnvelopeCatch {
  0%, 45% { transform: translateY(0) rotate(0deg); opacity: 1; }
  62% { transform: translateY(-6px) rotate(-3deg); opacity: 1; }
  78%, 100% { transform: translateY(-6px) rotate(-3deg); opacity: 0; }
}

@keyframes isttrFlagWarn {
  0%, 40% { opacity: 0; transform: scale(.6); }
  50% { opacity: 1; transform: scale(1.15); }
  62%, 100% { opacity: 0; transform: scale(1); }
}

@keyframes isttrCheckRise {
  0%, 70% { opacity: 0; transform: scale(.7) translateY(6px); }
  85% { opacity: 1; transform: scale(1.1) translateY(0); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}

@keyframes isttrPeopleLight {
  0%, 100% { opacity: .3; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.2); }
}

@keyframes isttrShieldPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

@media (max-width: 1050px) {
  .isttr-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .isttr-hero__visual {
    min-height: 460px;
  }

  .isttr-risk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .isttr-service-grid,
  .isttr-process,
  .isttr-segment-grid,
  .isttr-segment-grid--3,
  .isttr-diff-grid,
  .isttr-treatment-grid,
  .isttr-related-grid,
  .isttr-not-grid,
  .isttr-scope-grid,
  .isttr-formats-grid,
  .isttr-value-grid,
  .isttr-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .isttr-level {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .isttr-level__bar {
    display: none;
  }

  .isttr-reg,
  .isttr-result,
  .isttr-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .isttr-stack__grid,
  .isttr-checklist {
    grid-template-columns: 1fr;
  }

  .isttr-process article:nth-child(3)::after {
    display: block;
  }

  .isttr-process article:nth-child(2n)::after,
  .isttr-process article:last-child::after {
    display: none;
  }

  .isttr-cta__action {
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .isttr-hero,
  .isttr-section,
  .isttr-cta {
    padding: 30px 21px;
    border-radius: 19px;
  }

  .isttr-hero {
    min-height: 0;
  }

  .isttr-hero h2 {
    font-size: 30px !important;
  }

  .isttr-hero__lead {
    font-size: 16px;
  }

  .isttr-hero__visual {
    min-height: 380px;
  }

  .isttr-illustration {
    width: 400px;
  }

  .isttr-nav {
    top: 58px;
  }

  .isttr-reg__cards,
  .isttr-result__list,
  .isttr-segment-grid,
  .isttr-segment-grid--3,
  .isttr-diff-grid,
  .isttr-prep-grid,
  .isttr-treatment-grid,
  .isttr-related-grid,
  .isttr-not-grid,
  .isttr-scope-grid,
  .isttr-formats-grid,
  .isttr-value-grid,
  .isttr-nav-grid {
    grid-template-columns: 1fr;
  }

  .isttr-threat-table__head,
  .isttr-threat-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .isttr-threat-table__head span:first-child {
    display: none;
  }

  .isttr-float {
    min-width: 0;
    max-width: 190px;
    padding: 9px 12px;
    gap: 9px;
  }

  .isttr-float__icon {
    width: 28px;
    height: 28px;
  }

  .isttr-float__icon svg {
    width: 15px;
    height: 15px;
  }

  .isttr-float__text strong {
    font-size: 11.5px;
  }

  .isttr-float__text small {
    font-size: 10px;
  }
}

@media (max-width: 560px) {
  .isttr-risk-grid,
  .isttr-service-grid,
  .isttr-process,
  .isttr-nav-grid {
    grid-template-columns: 1fr;
  }

  .isttr-process article::after {
    display: none !important;
  }

  .isttr-hero__actions {
    display: grid;
  }

  .isttr-btn {
    width: 100%;
  }

  .isttr-hero__visual {
    min-height: 320px;
  }

  .isttr-illustration {
    width: 330px;
  }

  .isttr-float {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .isttr-envelope,
  .isttr-envelope-flag,
  .isttr-envelope-check,
  .isttr-people-dot,
  .isttr-shield {
    animation: none;
  }

  .isttr-envelope {
    opacity: 1;
    transform: translateY(0) rotate(0deg);
  }

  .isttr-envelope-flag {
    opacity: 0;
  }

  .isttr-envelope-check {
    opacity: 1;
    transform: scale(1) translateY(0);
  }

  .isttr-people-dot {
    opacity: 1;
    transform: scale(1);
  }

  .isttr-btn,
  .isttr-risk,
  .isttr-service,
  .isttr-stack__item,
  .isttr-reg__cards div {
    transition: none;
  }
}

/* ===== СТРАНИЦА: ИБ в электронной коммерции — блок "Отраслевые сегменты" (#iste-segments), карточки в стиле .iste-risk ===== */
.iste-segment-group {
  margin-bottom: 30px;
}

.iste-segment-group:last-child {
  margin-bottom: 0;
}

.iste-segment-group__title {
  margin-bottom: 16px;
  padding-left: 16px;
  border-left: 3px solid var(--o);
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
}

.iste-risk-grid--segments {
  margin-bottom: 0;
}

/* ===== УНИВЕРСАЛЬНЫЕ ХЕЛПЕРЫ: блок "Сегменты" (группы-заголовки с оранжевой полосой-акцентом) — переиспользуются на всех страницах /services/ поверх локального класса карточки .XXXX-risk каждой страницы, не завязаны на конкретный префикс ===== */
.services-segment-group {
  margin-bottom: 30px;
}

.services-segment-group:last-child {
  margin-bottom: 0;
}

.services-segment-group__title {
  margin-bottom: 16px;
  padding-left: 16px;
  border-left: 3px solid var(--o);
  color: var(--b);
  font-size: 16px;
  font-weight: 750;
}

/* ===== ГЛОБАЛЬНЫЙ БЛОК: сетка ссылок-карточек ".industries" (используется в поле "Текст перед списком" на страницах-каталогах /services/tekhnologii/, /services/informatsionnaya-bezopasnost-v-finansovykh-organizatsiyakh/ и т.п.) — не завязан на scoped-переменные конкретной страницы услуги, поэтому цвета заданы абсолютными значениями фирменной палитры ===== */
.industries {
  margin-bottom: 24px;
}

.industries__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

a.industry {
  display: block;
  padding: 14px 18px;
  border: 1px solid #e6e8ee;
  border-radius: 12px;
  background: #fff;
  color: #15375b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  transition: .2s ease;
}

a.industry:hover {
  border-color: rgba(254,93,28,.4);
  background: #fff8f4;
  color: #fe5d1c;
  box-shadow: 0 10px 24px rgba(21,55,91,.08);
  transform: translateY(-2px);
}

@media (max-width: 767px) {
  .industries__list {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 479px) {
  .industries__list {
    grid-template-columns: 1fr;
  }
}

/* ===== ТЕХПОДДЕРЖКА: кнопка в шапке (desktop + mobile), 2026-09-15 =====
   Эталон — та же кнопка на старом сайте zaschita-it.ru (класс .tech-support-btn).
   Вставлена через custom.css/custom.js (не через файлы темы aspro-priority2),
   т.к. шапка Aspro:Priority2 полностью компонентная — свободного include-слота
   под произвольную кнопку нет (см. .header__top-part / .mobileheader). */
.tech-support-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: 14px;
  padding: 0 14px;
  height: 34px;
  background: #FE5D1C;
  color: #fff !important;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .4px;
  border-radius: 3px;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background .2s ease;
  vertical-align: middle;
}
.tech-support-btn:hover {
  background: #fe733a;
  color: #fff !important;
}
.tech-support-btn__icon {
  flex: none;
  display: inline-block;
  fill: #fff;
}
.tech-support-btn__label {
  display: inline-block;
}
.tech-support-btn_mobile {
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  justify-content: center;
}
.tech-support-btn_mobile .tech-support-btn__label {
  display: none;
}
