/* Красивый блок цитаты для Joomla */
blockquote {
    position: relative;
    margin: 25px 0;
    padding: 25px 30px 25px 70px;
    background: #f4f8ff;
    border-left: 5px solid #3b82f6;
    border-radius: 14px;
    font-size: 18px;
    line-height: 1.7;
    color: #1f2937;
    font-style: italic;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
}

/* Большая кавычка */
blockquote::before {
    content: "“";
    position: absolute;
    left: 20px;
    top: 10px;
    font-size: 64px;
    line-height: 1;
    color: #3b82f6;
    opacity: 0.25;
    font-family: Georgia, serif;
}

/* Текст внутри */
blockquote p {
    margin: 0;
}

/* Автор цитаты */
blockquote cite {
    display: block;
    margin-top: 15px;
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    color: #2563eb;
}

/* Адаптация под мобильные */
@media (max-width: 768px) {
    blockquote {
        padding: 20px 20px 20px 55px;
        font-size: 16px;
    }

    blockquote::before {
        font-size: 48px;
        left: 15px;
    }
}
/* Десктопные стили для заголовков (мин. ширина 1024px) */
@media (min-width: 1024px) {
  
  /* Общий стиль заголовков */
  h1, h2, h3, h4, h5, h6 {
    font-family: 'Inter', 'Roboto', sans-serif;
    color: #1a1a1a;
    line-height: 1.3;
    margin-top: 1em;
    margin-bottom: 0.5em;
  }

  /* Заголовок H1 — основной заголовок страницы */
  h1 {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.5px;
    text-shadow: 0 1px 2px rgba(0,0,0,0.05);
  }

  /* Заголовок H2 — секции */
  h2 {
    font-size: 24px;
    font-weight: 600;
    padding-bottom: 6px;
    margin-top: 1.5em;
  }

  /* Заголовок H3 — подразделы */
  h3 {
    font-size: 20px;
    font-weight: 600;
    color: #333;
    margin-top: 1.2em;
  }

  /* Заголовок H4 — мелкие подзаголовки в списках/таблицах */
  h4 {
    font-size: 18px;
    font-weight: 600;
    color: #555;
  }
  
  /* H5 и H6 на случай их использования */
  h5 {
    font-size: 14px;
    font-weight: 500;
  }
  
  h6 {
    font-size: 13px;
    font-weight: 500;
  }
}

/* Мобильные стили — теперь заголовки будут выглядеть как обычный текст */
/* Вы можете либо оставить их без изменений, либо задать свои значения */
@media (max-width: 1023px) {
  h1, h2, h3, h4, h5, h6 {
    /* На мобильных заголовки выглядят как обычный текст */
    /* Уберите комментарий, если хотите вернуть базовые размеры */
    /* font-size: inherit; */
  }
}






.stil-smotrite-takge {
	border: none;
	width: 98%;
	/*height: 50px;*/
	 padding: 10px;
	 margin-bottom: 2em;
}
.stil-smotrite-takge a {
	text-align: left;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 18px;
    color: #6399CB;
    font-weight: 500;
}

TABLE{
	
	border-color: inherit;
	border-collapse: collapse;
	border-width: 1px;
	background: #ffffff;
	max-width: 100%;
	margin: 0 0 9px;
}
TD{
	border-width: 1px;
	border-color: #C0C0C0;
	padding: 8px 5px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-style: solid;
}
TH{
	
	background: #F2F2F2;
	padding: 2px 5px;
	}
tr:hover { background-color: #EFEFEF; }
TABLE.tb_portf{background:none;}
TABLE.tb_portf TD{background:none;padding:5px 15px;}

.prosmotr {
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 25px;
}



.navbar-brand a {
    text-decoration: none;
}
/*.mrg-tag {     position: relative;
               z-index: 2147483644 !important;
}*/

.card {
  border: none;
}


[data-ad-player="2283853"] {position: relative;

  z-index: 2147483346 !important;}

.csr-uniq289 {
    
    z-index: 147483643 !important;
   
}

.sticky-top {
    z-index: 1;}


/* Универсальные стили для карточек онлайн-школ подготовки к ЕГЭ и ОГЭ */
.exam-schools-container {
    background: linear-gradient(to bottom right, #f9fafb, #f3f4f6);
    padding: 40px 15px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.exam-schools-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}

.exam-schools-title {
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 10px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    padding: 0 10px;
}

.exam-schools-subtitle {
    font-size: 18px;
    color: #555;
    margin-bottom: 40px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.5;
    padding: 0 15px;
}

/* Сетка для 2 колонок на десктопе */
.exam-schools-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    margin-top: 20px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 10px;
}

/* Для очень широких экранов */
@media (min-width: 1400px) {
    .exam-schools-grid {
        max-width: 1100px;
        padding: 0 15px;
    }
}

/* Для узких экранов (планшеты) */
@media (max-width: 992px) {
    .exam-schools-grid {
        gap: 20px;
        padding: 0 12px;
    }
}

/* Для мобильных - 1 колонка */
@media (max-width: 768px) {
    .exam-schools-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 8px;
    }
    
    .exam-school-card {
        max-width: 100%;
        margin: 0 auto;
    }
}

/* Одинаковая высота всех карточек ТОЛЬКО на десктопе */
.exam-school-card {
    background: white;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid #f0f0f0;
    height: auto; /* Изменено: автоматическая высота по умолчанию */
}

/* Только на десктопе делаем фиксированную минимальную высоту */
@media (min-width: 769px) {
    .exam-school-card {
        min-height: 570px;
        height: 100%; /* На десктопе занимаем всю высоту */
    }
}

.exam-school-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.12);
}

.exam-school-header {
    color: white;
    padding: 20px 18px;
    position: relative;
    overflow: hidden;
    flex-shrink: 0; /* Не сжимаем шапку */
}

.exam-school-header:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: rgba(255,255,255,0.3);
}

/* Цвета для школ */
.exam-school-header.school-1 { background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%); }
.exam-school-header.school-2 { background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); }
.exam-school-header.school-3 { background: linear-gradient(135deg, #60a5fa 0%, #2563eb 100%); }
.exam-school-header.school-4 { background: linear-gradient(135deg, #f43f5e 0%, #e11d48 100%); }
.exam-school-header.school-5 { background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%); }
.exam-school-header.school-6 { background: linear-gradient(135deg, #10b981 0%, #059669 100%); }
.exam-school-header.school-7 { background: linear-gradient(135deg, #f97316 0%, #ea580c 100%); }

.exam-school-name {
    font-size: 22px;
    margin: 0;
    font-weight: 700;
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
    text-align: left;
}

.exam-school-content {
    padding: 20px 18px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    min-height: 0; /* Важно для flex-контейнера */
}

.exam-school-description {
    margin-bottom: 15px;
    line-height: 1.6;
    color: #444;
    font-size: 15px;
    text-align: left;
    flex-shrink: 0; /* Не сжимаем описание */
}

.exam-school-features {
    list-style: none;
    padding-left: 0;
    color: #333;
    margin-bottom: 18px;
    text-align: left;
    flex-grow: 1; /* Список занимает доступное пространство */
    min-height: 0;
    overflow: hidden; /* Предотвращаем выход за границы */
}

.exam-school-features li {
    margin-bottom: 8px;
    padding-left: 24px;
    position: relative;
    line-height: 1.5;
    font-size: 14.5px;
}

.exam-school-features li:before {
    content: "✓";
    position: absolute;
    left: 0;
    font-weight: bold;
    color: #3b82f6;
    font-size: 16px;
}

.exam-school-promo {
    font-weight: 700;
    margin-top: auto; /* Прижимаем к низу контента */
    padding: 10px 12px;
    border-radius: 10px;
    background-color: #f8fafc;
    font-size: 14.5px;
    border-left: 4px solid;
    text-align: left;
    flex-shrink: 0; /* Не сжимаем промо-блок */
}

/* Цвета промо-блоков */
.exam-school-promo.school-1 { color: #d97706; border-left-color: #f59e0b; }
.exam-school-promo.school-2 { color: #1d4ed8; border-left-color: #3b82f6; }
.exam-school-promo.school-3 { color: #2563eb; border-left-color: #60a5fa; }
.exam-school-promo.school-4 { color: #e11d48; border-left-color: #f43f5e; }
.exam-school-promo.school-5 { color: #7c3aed; border-left-color: #8b5cf6; }
.exam-school-promo.school-6 { color: #059669; border-left-color: #10b981; }
.exam-school-promo.school-7 { color: #ea580c; border-left-color: #f97316; }

.exam-school-footer {
    padding: 0 18px 20px;
    flex-shrink: 0; /* Не сжимаем футер */
}

.exam-school-button {
    display: block;
    text-align: center;
    color: white;
    padding: 13px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    font-size: 15.5px;
    letter-spacing: 0.3px;
    width: 100%;
}

.exam-school-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    color: white;
}

/* Цвета кнопок */
.exam-school-button.school-1 { background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%); }
.exam-school-button.school-2 { background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); }
.exam-school-button.school-3 { background: linear-gradient(135deg, #60a5fa 0%, #2563eb 100%); }
.exam-school-button.school-4 { background: linear-gradient(135deg, #f43f5e 0%, #e11d48 100%); }
.exam-school-button.school-5 { background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%); }
.exam-school-button.school-6 { background: linear-gradient(135deg, #10b981 0%, #059669 100%); }
.exam-school-button.school-7 { background: linear-gradient(135deg, #f97316 0%, #ea580c 100%); }

.exam-school-tip {
    text-align: center;
    margin-top: 50px;
    color: #555;
    font-size: 16px;
    padding: 18px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-radius: 12px;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #bae6fd;
    position: relative;
    overflow: hidden;
}

.exam-school-tip:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 6px;
    height: 100%;
    background: linear-gradient(to bottom, #3b82f6, #60a5fa);
}

.exam-school-tip strong {
    color: #1e40af;
}

.exam-school-tip-content {
    position: relative;
    z-index: 1;
}

.exam-year-badge {
    display: inline-block;
    background: linear-gradient(135deg, #f59e0b, #d97706);
    color: white;
    padding: 5px 14px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
    margin-top: 10px;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}

/* Мобильная версия - убираем фиксированную высоту */
@media (max-width: 768px) {
    .exam-schools-container {
        padding: 30px 12px;
    }
    
    .exam-schools-title {
        font-size: 30px;
        padding: 0 8px;
    }
    
    .exam-schools-subtitle {
        font-size: 16px;
        padding: 0 10px;
        margin-bottom: 30px;
    }
    
    .exam-school-tip {
        margin-top: 35px;
        font-size: 15px;
        padding: 15px;
        margin-left: 8px;
        margin-right: 8px;
    }
    
    .exam-school-header {
        padding: 18px 15px;
    }
    
    .exam-school-content {
        padding: 18px 15px;
    }
    
    .exam-school-footer {
        padding: 0 15px 18px;
    }
    
    /* На мобильных делаем контент более компактным */
    .exam-school-description {
        margin-bottom: 12px;
        font-size: 14.5px;
        line-height: 1.5;
    }
    
    .exam-school-features {
        margin-bottom: 15px;
    }
    
    .exam-school-features li {
        margin-bottom: 6px;
        padding-left: 22px;
        font-size: 14px;
        line-height: 1.4;
    }
    
    .exam-school-promo {
        padding: 9px 10px;
        font-size: 14px;
        margin-top: 10px;
    }
}

@media (max-width: 480px) {
    .exam-schools-title {
        font-size: 26px;
        padding: 0 5px;
    }
    
    .exam-school-name {
        font-size: 20px;
    }
    
    .exam-school-content {
        padding: 16px 14px;
    }
    
    .exam-school-footer {
        padding: 0 14px 16px;
    }
    
    .exam-schools-grid {
        gap: 18px;
        padding: 0 6px;
    }
    
    .exam-school-header {
        padding: 16px 14px;
    }
    
    .exam-school-features li {
        padding-left: 20px;
        font-size: 13.5px;
        margin-bottom: 5px;
    }
    
    .exam-school-promo {
        padding: 8px 10px;
        font-size: 13.5px;
    }
    
    .exam-school-button {
        padding: 12px;
        font-size: 15px;
    }
    
    .exam-school-description {
        font-size: 14px;
    }
}

/* Для очень маленьких экранов */
@media (max-width: 360px) {
    .exam-schools-grid {
        padding: 0 4px;
        gap: 15px;
    }
    
    .exam-school-content {
        padding: 15px 12px;
    }
    
    .exam-school-header {
        padding: 15px 12px;
    }
    
    .exam-school-footer {
        padding: 0 12px 15px;
    }
    
    .exam-school-features li {
        padding-left: 18px;
        font-size: 13px;
    }
    
    .exam-school-promo {
        padding: 7px 9px;
        font-size: 13px;
    }
}

/* Гарантируем, что карточки не будут слишком высокими на мобильных */
.exam-school-card {
    max-height: none; /* Убираем ограничение максимальной высоты */
}

/* Исправление для очень длинного контента */
.exam-school-features {
    max-height: none; /* Убираем ограничение высоты списка */
}




/* === БЛОК ПАРТНЕРКИ === */
.course-affiliate-box{
  margin:15px 0;
  padding:16px;
  background:#f8f9fb;
  border-radius:12px;
  border:1px solid #e6eaf0;
}

/* === ВЕРХ (заголовок + бейдж) === */
.course-affiliate-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  margin-bottom:12px;
}

/* Заголовок */
.course-affiliate-title{
  font-size:15px;
  font-weight:600;
  color:#222;
  line-height:1.4;
}

/* Бейдж */
.course-affiliate-badge{
  background:#ff4757;
  color:#fff;
  font-size:11px;
  padding:4px 8px;
  border-radius:6px;
  font-weight:600;
  white-space:nowrap;
}

/* === КНОПКА === */
.course-affiliate-btn{
  display:inline-block;
  padding:10px 16px;
  background:#2b7cff;
  color:#fff;
  border-radius:8px;
  text-decoration:none;
  font-weight:600;
  transition:all 0.2s ease;
}

/* visited */
.course-affiliate-btn:visited{
  color:#fff;
}

/* hover */
.course-affiliate-btn:hover{
  background:#1f66e5;
  color:#fff !important;
  text-decoration:none !important;
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(0,0,0,0.15);
}

/* active */
.course-affiliate-btn:active{
  transform:translateY(0);
  box-shadow:0 2px 6px rgba(0,0,0,0.1);
}

/* === МОБИЛКА === */
@media (max-width: 480px){
  .course-affiliate-header{
    flex-direction:column;
    align-items:flex-start;
  }

  .course-affiliate-btn{
    width:100%;
    text-align:center;
  }
}
.course-affiliate-desc{
  font-size:13px;
  color:#555;
  margin-bottom:12px;
  line-height:1.5;
}








/* Контейнер скролла */
.compare-table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 20px 0;
}

/* Таблица */
.compare-table {
    min-width: 650px;
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    background: #fff;
}

/* Заголовки */
.compare-table th {
    text-align: left;
    padding: 12px;
    background: #f5f7fb;
    font-weight: 600;
    border-bottom: 1px solid #e5e7eb;
}

/* Ячейки */
.compare-table td {
    padding: 12px;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
}

/* Ховер */
.compare-table tr:hover {
    background: #fafafa;
}

/* Название школы */
.compare-table .school-name {
    font-weight: 600;
}

/* Кнопка */
.compare-table .go-btn {
    display: inline-block;
    padding: 7px 12px;
    background: #2b7cff;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
}

.compare-table .go-btn:hover {
    opacity: 0.9;
}

/* Бейджи */
.badge {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    margin-left: 6px;
    vertical-align: middle;
}

.badge-top { background: #ffe58f; color: #8a6d00; }
.badge-fast { background: #d6f5e8; color: #0f7a4b; }
.badge-easy { background: #e3f0ff; color: #1d4ed8; }
.badge-pro { background: #f3e8ff; color: #7e22ce; }

/* Фикс ширины колонок */
.compare-table th:nth-child(1) { width: 30%; }
.compare-table th:nth-child(2) { width: 30%; }
.compare-table th:nth-child(3) { width: 25%; }
.compare-table th:nth-child(4) { width: 15%; }

.compare-table-wrapper {
    width: 100%;        /* контейнер под размер экрана */
    max-width: 652px;   /* твоя текущая ширина блока */
    overflow-x: auto;   /* горизонтальный скролл */
    -webkit-overflow-scrolling: touch;
    margin: 20px auto;  /* по центру */
}

.compare-table {
    min-width: 650px; /* таблица может быть шире, появится скролл */
}

.go-btn {
    padding: 4px 8px;      /* меньше внутренние отступы */
    font-size: 12px;       /* меньше шрифт */
    white-space: normal;   /* перенос текста на две строки */
}


.table-wrap{
overflow-x:auto;
margin:20px 0;
}

.ege-table{
width:100%;
min-width:620px;
border-collapse:collapse;
font-size:14px;
background:#fff;
border-radius:12px;
overflow:hidden;
}

.ege-table th{
text-align:left;
padding:12px;
background:#f5f7fb;
font-size:13px;
font-weight:600;
}

.ege-table td{
padding:12px;
border-top:1px solid #eef1f4;
vertical-align:middle;
}

.ege-table tr:hover{
background:#fafbff;
}

/* кнопка */
.btn-go{
display:inline-block;
padding:6px 10px;
background:#2f80ed;
color:#fff;
text-decoration:none;
border-radius:8px;
font-size:12px;
white-space:nowrap;
}

.btn-go:hover{
background:#1c60c7;
}

/* бейджи */
.badge{
display:inline-block;
margin-left:6px;
padding:2px 6px;
font-size:10px;
border-radius:6px;
font-weight:600;
vertical-align:middle;
}

/* цвета */
.badge.best{background:#e8f2ff;color:#2f80ed;}
.badge.easy{background:#eafaf1;color:#27ae60;}
.badge.pro{background:#fff4e5;color:#f2994a;}
.badge.system{background:#f3e8ff;color:#9b51e0;}
.badge.fast{background:#ffeef0;color:#eb5757;}
.badge.personal{background:#e6f7ff;color:#2d9cdb;}
.badge.essay{background:#fff0f6;color:#d63384;}
.badge.calm{background:#f4f4f4;color:#666;}
.badge.point{background:#eef7ff;color:#3a86ff;}
.badge.control{background:#fff3cd;color:#b7791f;}
.badge.multi{background:#e9fff5;color:#219653;}








.faq-block{
margin-top:20px;
}

.faq-item{
padding:14px;
border-radius:10px;
background:#f8f9fb;
margin-bottom:10px;
}

.faq-item h3{
font-size:15px;
margin-bottom:6px;
}

.faq-item p{
font-size:14px;
color:#444;
line-height:1.5;
}




/* скролл */
.table-scroll{
overflow-x:auto;
margin:20px 0;
}

/* таблица */
.course-table{
width:100%;
border-collapse:collapse;
min-width:600px;
font-size:14px;
}

.course-table th{
text-align:left;
padding:12px;
background:#f3f5f9;
font-weight:600;
}

.course-table td{
padding:12px;
border-top:1px solid #eee;
vertical-align:top;
}

/* кнопка */
.go-btn{
display:inline-block;
padding:8px 12px;
background:#4CAF50;
color:#fff;
border-radius:6px;
font-size:13px;
text-decoration:none;
white-space:nowrap;
}

/* бейджи */
.badge{
display:inline-block;
padding:3px 8px;
font-size:12px;
border-radius:6px;
margin-top:5px;
}

.badge.blue{
background:#e3f0ff;
color:#2b6cb0;
}

.badge.green{
background:#e6f7ec;
color:#2e7d32;
}







.choose-block{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:16px;
margin-top:18px;
}

.choose-item{
background:#f8f9fb;
border-radius:14px;
padding:16px;
position:relative;
transition:0.25s;
border:1px solid #eef0f3;
}

.choose-item:hover{
transform:translateY(-4px);
box-shadow:0 10px 24px rgba(0,0,0,0.08);
}

.choose-item h3{
font-size:16px;
margin-bottom:8px;
}

.choose-item p{
font-size:13px;
margin-bottom:12px;
color:#333;
line-height:1.5;
}

/* бейджи */
.choose-badge{
display:inline-block;
font-size:11px;
padding:4px 8px;
border-radius:8px;
margin-bottom:8px;
font-weight:600;
}

.choose-badge.red{
background:#ffe5e5;
color:#d93025;
}

.choose-badge.green{
background:#e6f4ea;
color:#188038;
}

.choose-badge.blue{
background:#e8f0fe;
color:#1a73e8;
}

/* выделение карточек */
.choose-item.recommended{
border:1px solid #dbeafe;
background:#f5f9ff;
}

/* кнопка */
.go-btn{
display:inline-block;
font-size:13px;
padding:8px 12px;
border-radius:8px;
background:#2b7cff;
color:#fff;
text-decoration:none;
transition:0.2s;
}

.go-btn:hover{
background:#1f5ed6;
}






.top-choice{
background:linear-gradient(135deg,#f5f9ff,#eef4ff);
border:1px solid #dbeafe;
border-radius:16px;
padding:20px;
margin:24px 0;
position:relative;
}

.top-label{
display:inline-block;
background:#2b7cff;
color:#fff;
font-size:12px;
padding:5px 10px;
border-radius:8px;
margin-bottom:10px;
font-weight:600;
}

.top-choice h2{
font-size:20px;
margin-bottom:8px;
}

.top-subtitle{
font-size:14px;
margin-bottom:12px;
color:#333;
}

.top-features{
margin:12px 0;
padding-left:18px;
}

.top-features li{
margin-bottom:6px;
font-size:13px;
}

.top-btn{
display:inline-block;
margin-top:10px;
padding:10px 16px;
background:#2b7cff;
color:#fff;
border-radius:10px;
text-decoration:none;
font-weight:600;
transition:0.2s;
}

.top-btn:hover{
background:#1f5ed6;
}
.top-choice.alt{
background:#ffffff;
border:1px solid #eef0f3;
}

.top-label.green{
background:#e6f4ea;
color:#188038;
}

.top-label.red{
background:#ffe5e5;
color:#d93025;
}





/* Топ школы */
.sidebar-right.card._top {
    border-radius:14px;
    box-shadow:0 6px 18px rgba(0,0,0,0.06);
    border:1px solid #eef0f3;
   width:300px; /* фиксированная ширина на десктопе */
}

/* Заголовок */
.sidebar-right .card-body h4 {
    font-size:16px;
    font-weight:700;
    margin-bottom:12px;
}

/* Список */
.sidebar-right ol {
    list-style:none;
    padding:0;
    margin:0;
    counter-reset:toplist;
}

/* Элемент */
.sidebar-right ol li {
    counter-increment:toplist;
    margin-bottom:8px;
}

/* Ссылка */
.sidebar-right ol li a {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 12px;
    border-radius:10px;
    background:#f8f9fb;
    text-decoration:none;
    color:#222;
    font-size:14px;
    transition:all 0.2s ease;
    position:relative;
}

/* Номер */
.sidebar-right ol li a::before {
    content:counter(toplist);
    min-width:22px;
    height:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#e3e7ee;
    color:#333;
    font-size:12px;
    font-weight:600;
    border-radius:50%;
}

/* Hover */
.sidebar-right ol li a:hover {
    background:#eef3ff;
    transform:translateX(3px);
}

/* ТОП-3 выделение */
.sidebar-right ol li:nth-child(1) a {
    background:#fff5e6;
    font-weight:600;
}
.sidebar-right ol li:nth-child(1) a::before {
    background:#ffb84d;
    color:#fff;
}

.sidebar-right ol li:nth-child(2) a::before {
    background:#c0c6d4;
    color:#fff;
}

.sidebar-right ol li:nth-child(3) a::before {
    background:#d6a77a;
    color:#fff;
}

/* Стрелка */
.sidebar-right ol li a::after {
    content:"→";
    font-size:13px;
    opacity:0.5;
    transition:0.2s;
}

.sidebar-right ol li a:hover::after {
    transform:translateX(3px);
    opacity:1;
}
/* Конец Топ школы */



/* Курсы ОГЭ за месяц 100балльный */
.oge-landing {
    font-family: Arial, sans-serif;
    color: #222;
    line-height: 1.5;
}

/* Hero */
.oge-hero {
    background: linear-gradient(180deg,#f5f7fa,#ffffff);
    padding: 20px;
    border-radius: 14px;
    border:1px solid #e6e8eb;
    margin-bottom:20px;
}
.oge-hero h1 {
    font-size: 22px;
    margin-bottom:10px;
}
.oge-hero p {
    font-size:14px;
    color:#555;
}

/* CTA кнопка */
.oge-btn {
    display:inline-block;
    margin-top:12px;
    padding:12px 16px;
    background:#2b7cff;
    color:#fff;
    border-radius:8px;
    text-decoration:none;
    font-weight:700;
    transition:.2s;
}
.oge-btn:hover {
    background:#1f66e5;
}

/* Быстрый ответ */
.oge-quick {
    background:#f5f7fa;
    border:1px solid #e6e8eb;
    padding:15px;
    border-radius:10px;
    margin-bottom:20px;
}

/* Курсы */
.oge-course {
    border:1px solid #e6e8eb;
    border-radius:12px;
    padding:15px;
    margin-bottom:12px;
    background:#fff;
    transition:.2s;
}
.oge-course:hover {
    box-shadow:0 6px 16px rgba(0,0,0,0.06);
}

.oge-course-title {
    font-weight:700;
    font-size:15px;
    margin-bottom:6px;
}

.oge-badge {
    display:inline-block;
    background:#fff7e6;
    color:#b26a00;
    padding:3px 6px;
    border-radius:6px;
    font-size:11px;
    margin-left:6px;
}

.oge-course p {
    font-size:13px;
    color:#555;
}

.oge-course a {
    display:inline-block;
    margin-top:10px;
    font-size:13px;
    color:#2b7cff;
    text-decoration:none;
    font-weight:600;
}

/* Блок доверия */
.oge-trust {
    background:#f0f6ff;
    border:1px solid #d6e4ff;
    padding:15px;
    border-radius:10px;
    margin:20px 0;
}

/* Финальный CTA */
.oge-final {
    text-align:center;
    padding:20px;
    border-radius:12px;
    background:#fff7e6;
    border:1px solid #ffe0b3;
}

/* Мобилка */
@media (max-width:768px){
    .oge-hero h1 {font-size:18px;}
}
/* Курсы ОГЭ за месяц 100балльный конец */





/* ===== СТИЛИ ТОЛЬКО ДЛЯ КАРТОЧЕК И ИХ КОНТЕЙНЕРОВ ===== */
/* (без сброса margin/padding для всех элементов, без вмешательства в body, h2, p, ul, li) */

/* Сетка карточек */
.cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1.75rem;
    margin: 2rem 0;
}

/* Общий стиль карточки */
.course-card {
    background: #ffffff;
    border-radius: 1.5rem;
    border: 1px solid #e2e8f0;
    padding: 1.5rem;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
}

.course-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -12px rgba(0,0,0,0.1);
    border-color: #cbd5e1;
}

/* Бейдж (место/метка) */
.card-badge {
    display: inline-block;
    background: #fef3c7;
    color: #b45309;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.75rem;
    border-radius: 2rem;
    margin-bottom: 1rem;
    width: fit-content;
}

/* Заголовок школы (переопределяем только внутри карточки) */
.course-card .card-title {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0 0 0.75rem 0;
    letter-spacing: -0.02em;
    color: #0f172a;
}

/* Статистика (выпускники, баллы) */
.course-card .card-stats {
    font-size: 0.95rem;
    color: #334155;
    margin: 0 0 1rem 0;
    border-left: 3px solid #3b82f6;
    padding-left: 0.75rem;
    background: #f8fafc;
    border-radius: 0 0.5rem 0.5rem 0;
}

/* Цена */
.course-card .card-price {
    font-size: 1.5rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0.75rem 0;
}

.course-card .price-note {
    font-size: 0.85rem;
    font-weight: 400;
    color: #64748b;
}

/* Список преимуществ (очищаем от стандартных маркеров, но не ломаем другие списки вне карточки) */
.course-card .card-features {
    list-style: none;
    margin: 1rem 0 1.5rem 0;
    padding: 0;
    flex-grow: 1;
}

.course-card .card-features li {
    font-size: 0.9rem;
    padding: 0.35rem 0;
    padding-left: 1.5rem;
    position: relative;
    color: #1e293b;
    margin: 0;
}

.course-card .card-features li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #10b981;
    font-weight: bold;
}

/* Кнопки */
.course-card .card-button {
    display: inline-block;
    background: #3b82f6;
    color: white;
    text-align: center;
    padding: 0.75rem 1rem;
    border-radius: 2rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s;
    margin-top: 0.5rem;
    font-size: 0.95rem;
    border: none;
    cursor: pointer;
}

.course-card .card-button:hover {
    background: #2563eb;
}

.course-card .card-button.small {
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    background: #f1f5f9;
    color: #1e40af;
    border: 1px solid #cbd5e1;
}

.course-card .card-button.small:hover {
    background: #e2e8f0;
}

/* Компактные карточки (для второй таблицы) */
.course-card.compact {
    padding: 1.25rem;
}

.course-card.compact .card-title {
    font-size: 1.3rem;
    margin-bottom: 0.5rem;
}

.course-card.compact .card-stats {
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
}

.course-card.compact .card-price {
    font-size: 1.2rem;
    margin: 0.5rem 0;
}

/* Дисклеймер под карточками */
.price-disclaimer {
    font-size: 0.85rem;
    color: #64748b;
    text-align: center;
    margin: -0.5rem 0 1.5rem 0;
}

/* Адаптивность только для сетки карточек */
@media (max-width: 768px) {
    .cards-grid {
        gap: 1rem;
    }
    .course-card .card-title {
        font-size: 1.4rem;
    }
}

/* ===== ДОПОЛНИТЕЛЬНЫЕ СТИЛИ ДЛЯ ЛЕТНИХ КУРСОВ ===== */

/* Цветные бейджи для карточек */
.card-badge.green {
    background: #d1fae5;
    color: #065f46;
}

.card-badge.blue {
    background: #dbeafe;
    color: #1e40af;
}

.card-badge.purple {
    background: #f3e8ff;
    color: #6b21a5;
}

/* Сетка FAQ (2 колонки на десктопе) */
.faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    margin: 2rem 0;
}

.faq-card {
    background: #f8fafc;
    border-radius: 1rem;
    padding: 1.25rem 1.5rem;
    border: 1px solid #e2e8f0;
    transition: all 0.2s ease;
}

.faq-card:hover {
    border-color: #cbd5e1;
    background: #ffffff;
}

.faq-card h3 {
    font-size: 1.15rem;
    font-weight: 600;
    margin: 0 0 0.75rem 0;
    color: #0f172a;
}

.faq-card p {
    margin: 0;
    color: #334155;
    line-height: 1.5;
}


/* Адаптив для FAQ */
@media (max-width: 768px) {
    .faq-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}




/* ===== НОВЫЕ СТИЛИ ДЛЯ ДОПОЛНИТЕЛЬНЫХ БЛОКОВ ===== */

/* Мини-карточки для блоков "Кому подойдёт" */
.cards-grid.mini {
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1rem;
}

/* Компактное сравнение */
.compare-compact {
    background: #f8fafc;
    border-radius: 1rem;
    overflow: hidden;
    margin: 1.5rem 0;
    border: 1px solid #e2e8f0;
}

.compare-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #e2e8f0;
}

.compare-row.header {
    background: #e2e8f0;
    font-weight: 700;
    color: #0f172a;
}

.compare-row:last-child {
    border-bottom: none;
}

.compare-row div:first-child {
    font-weight: 600;
    color: #1e293b;
}

/* Чеклист */
.checklist {
    list-style: none;
    padding: 0;
    margin: 1.5rem 0;
}

.checklist li {
    padding: 0.5rem 0 0.5rem 1.8rem;
    position: relative;
    margin: 0;
}

.checklist li::before {
    content: "✅";
    position: absolute;
    left: 0;
    top: 0.5rem;
}

/* Сетка ошибок */
.mistakes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin: 1.5rem 0;
}

.mistake-card {
    background: #fff5f0;
    border-left: 4px solid #f97316;
    padding: 1rem;
    border-radius: 0.75rem;
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
}

.mistake-icon {
    font-size: 1.5rem;
}

.mistake-card p {
    margin: 0;
    font-size: 0.9rem;
}

/* Вывод / заключение */
.conclusion-block {
    background: #f0fdf4;
    border-radius: 1rem;
    padding: 1.5rem;
    margin: 1.5rem 0;
    border: 1px solid #bbf7d0;
}

.conclusion-cta {
    background: #166534;
    color: white;
    padding: 0.75rem 1rem;
    border-radius: 0.75rem;
    text-align: center;
    font-weight: 600;
    margin: 1rem 0 0 0;
}

/* Адаптив для сравнения */
@media (max-width: 768px) {
    .compare-row {
        grid-template-columns: 1fr;
        gap: 0.25rem;
    }
    .compare-row.header {
        display: none;
    }
    .compare-row div {
        padding: 0.25rem 0;
    }
    .compare-row div:first-child {
        font-weight: 700;
        color: #0f172a;
    }
}


/* ===== ДОПОЛНИТЕЛЬНЫЕ СТИЛИ ДЛЯ СТРАНИЦЫ АКЦИЙ ===== */

/* Шаги применения промокода */
.steps-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    margin: 2rem 0;
}

.step-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 1rem;
    padding: 1.5rem 1rem;
    text-align: center;
    transition: all 0.2s ease;
}

.step-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.05);
    border-color: #cbd5e1;
}

.step-number {
    width: 2.5rem;
    height: 2.5rem;
    background: #3b82f6;
    color: white;
    font-weight: 700;
    font-size: 1.25rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem auto;
}

.step-card h3 {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 0.5rem 0;
    color: #0f172a;
}

.step-card p {
    font-size: 0.85rem;
    color: #334155;
    margin: 0;
    line-height: 1.4;
}

/* Адаптив для шагов */
@media (max-width: 768px) {
    .steps-wrapper {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .step-card {
        display: flex;
        align-items: center;
        text-align: left;
        gap: 1rem;
        padding: 1rem;
    }
    .step-number {
        margin: 0;
        flex-shrink: 0;
    }
    .step-card h3 {
        margin: 0 0 0.25rem 0;
    }
}

/* ===== ИСПРАВЛЕННАЯ ТАБЛИЦА ДЛЯ МОБИЛЬНЫХ (с подписями) ===== */

.compare-compact {
    background: #f8fafc;
    border-radius: 1rem;
    overflow: hidden;
    margin: 1.5rem 0;
    border: 1px solid #e2e8f0;
}

.compare-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #e2e8f0;
    gap: 0.5rem;
}

.compare-row.header {
    background: #e2e8f0;
    font-weight: 700;
    color: #0f172a;
}

.compare-row:last-child {
    border-bottom: none;
}

.compare-row div:first-child {
    font-weight: 600;
    color: #1e293b;
}




/* ===== СВОДКА ГЛАВНЫХ СВЯЗОК ЕГЭ (ПЛИТКА) ===== */

.summary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.25rem;
    margin: 2rem 0;
}

.summary-card {
    background: #ffffff;
    border-radius: 1rem;
    border: 1px solid #e2e8f0;
    padding: 1.25rem;
    transition: all 0.2s ease;
    text-align: center;
}

.summary-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 20px -12px rgba(0, 0, 0, 0.15);
    border-color: #cbd5e1;
}

.summary-icon {
    font-size: 2.5rem;
    margin-bottom: 0.75rem;
}

.summary-title {
    font-size: 1.2rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.5rem;
    background: #f1f5f9;
    display: inline-block;
    padding: 0.2rem 1rem;
    border-radius: 2rem;
}

.summary-subjects {
    font-size: 1rem;
    font-weight: 600;
    color: #1e40af;
    background: #eff6ff;
    padding: 0.5rem 0.75rem;
    border-radius: 0.75rem;
    margin: 0.75rem 0;
    line-height: 1.4;
}

.summary-note {
    font-size: 0.8rem;
    color: #64748b;
    line-height: 1.4;
}

/* Адаптив для мобильных */
@media (max-width: 640px) {
    .summary-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .summary-card {
        text-align: left;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.75rem;
    }
    .summary-icon {
        font-size: 2rem;
        margin-bottom: 0;
        flex-shrink: 0;
    }
    .summary-content {
        flex: 1;
    }
    .summary-title {
        font-size: 1rem;
        display: inline-block;
        margin-bottom: 0.25rem;
    }
    .summary-subjects {
        font-size: 0.9rem;
        margin: 0.5rem 0;
    }
}



/* ===== СРАВНЕНИЕ ШКОЛ В ВИДЕ КАРТОЧЕК (ДЛЯ МОБИЛЬНЫХ) ===== */

.compare-cards {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 1.5rem 0;
}

.compare-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 1rem;
    overflow: hidden;
    transition: all 0.2s ease;
}

.compare-card:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.compare-card-header {
    background: #f8fafc;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.school-name {
    font-size: 1.2rem;
    font-weight: 700;
    color: #0f172a;
}

.school-price {
    font-size: 1rem;
    font-weight: 600;
    color: #3b82f6;
    background: #eff6ff;
    padding: 0.25rem 0.75rem;
    border-radius: 2rem;
}

.compare-card-details {
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.compare-row-item {
    font-size: 0.9rem;
    color: #334155;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.25rem 0;
    border-bottom: 1px dashed #f1f5f9;
}

.compare-row-item:last-child {
    border-bottom: none;
}

.compare-label {
    font-weight: 600;
    color: #1e293b;
    min-width: 120px;
}

/* На десктопах — горизонтальная сетка */
@media (min-width: 768px) {
    .compare-cards {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }
}

@media (min-width: 1024px) {
    .compare-cards {
        grid-template-columns: repeat(4, 1fr);
    }
    .compare-row-item {
        flex-direction: column;
        gap: 0.25rem;
    }
    .compare-label {
        min-width: auto;
    }
}



/* ===== ДОПОЛНИТЕЛЬНЫЕ СТИЛИ ДЛЯ СТАТЬИ ПРО УМСКУЛ ===== */

/* Цветные бейджи */
.card-badge.yellow {
    background: #fef9c3;
    color: #854d0e;
}

.card-badge.red {
    background: #fee2e2;
    color: #b91c1c;
}

.card-badge.orange {
    background: #ffedd5;
    color: #c2410c;
}

.card-badge.cyan {
    background: #cffafe;
    color: #0e7490;
}

/* Выделенная карточка (featured) */
.course-card.featured {
    background: linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);
    border: 2px solid #3b82f6;
    box-shadow: 0 8px 20px rgba(59,130,246,0.15);
}

.course-card.featured:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 30px -12px rgba(59,130,246,0.25);
}

/* Тег в карточке (например, результат) */
.card-tag {
    font-size: 0.8rem;
    color: #3b82f6;
    background: #eff6ff;
    padding: 0.25rem 0.75rem;
    border-radius: 2rem;
    display: inline-block;
    margin: 0.5rem 0;
    text-align: center;
    width: fit-content;
    font-weight: 500;
}

/* Маленькая кнопка (уже была, но добавим поддержку) */
.course-card .card-button.small {
    padding: 0.5rem 1rem;
    font-size: 0.85rem;
    background: #f1f5f9;
    color: #1e40af;
    border: 1px solid #cbd5e1;
}

.course-card .card-button.small:hover {
    background: #e2e8f0;
}

/* ===== СТИЛИ ТОЛЬКО ДЛЯ КАРТОЧЕК И ИХ КОНТЕЙНЕРОВ конец ===== */









/* ===== Предбанник===== */

.predbannik-widget {
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid #ff6b00;
    box-shadow: 0 3px 12px rgba(0,0,0,0.07);
    background: linear-gradient(180deg,#fff 0%,#fff7f1 100%);
    margin-bottom: 16px;
}

.predbannik-widget .card-body {
    padding: 14px;
}

.predbannik-title {
    font-size: 19px;
    font-weight: 800;
    line-height: 1.25;
    color: #222;
    margin-bottom: 10px;
    text-align: center;
}

.predbannik-title span {
    color: #ff6b00;
}

.predbannik-subtitle {
    text-align: center;
    font-size: 13px;
    color: #666;
    margin-bottom: 12px;
}

.predbannik-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.predbannik-list li {
    background: #fff;
    border-radius: 8px;
    padding: 7px 10px;
    margin-bottom: 7px;
    font-size: 14px;
    line-height: 1.35;
    border-left: 3px solid #ff6b00;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.predbannik-date {
    font-weight: 700;
    color: #ff6b00;
    display: inline-block;
    margin-right: 6px;
}

.predbannik-btn {
    display: block;
    text-align: center;
    background: linear-gradient(90deg,#ff6b00,#ff8c00);
    color: #fff !important;
    text-decoration: none;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    margin-top: 12px;
    transition: 0.2s ease;
}

.predbannik-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(255,107,0,0.2);
    text-decoration: none;
}

.predbannik-note {
    margin-top: 8px;
    text-align: center;
    font-size: 12px;
    color: #777;
}

/* ===== Предбанник конец===== */
