.magazine-article {
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      line-height: 1.6;
      color: #333;
      max-width: 1200px;
      margin: 40px auto;
      padding: 30px;
      background: #fff;
      box-shadow: 0 4px 20px rgba(0,0,0,0.12);
    }

    /* Заголовки */
    .magazine-article h1 {
      font-size: 2.8em;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 1.5px;
      color: #d32f2f;
      border-bottom: 3px solid #d32f2f;
      padding-bottom: 12px;
      margin-bottom: 15px;
      text-align: center;
    }

    .magazine-article h2 {
      font-size: 1.8em;
      font-weight: 700;
      color: #2e7d32;
      margin-top: 35px;
      margin-bottom: 15px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }

    .magazine-article h3 {
      font-size: 1.3em;
      font-weight: 600;
      color: #1976d2;
      margin-top: 25px;
      margin-bottom: 12px;
    }

    .subtitle {
      font-size: 0.95em;
      font-weight: 600;
      color: #666;
      text-align: center;
      margin-bottom: 25px;
      text-transform: uppercase;
      letter-spacing: 2px;
    }

    /* Вступление */
    .intro {
      font-size: 1.1em;
      font-style: italic;
      padding: 18px;
      background: #f9f9f9;
      border-left: 5px solid #d32f2f;
      margin: 25px 0;
      border-radius: 0 8px 8px 0;
    }

    /* Списки */
    .features {
      list-style-type: none;
      padding-left: 0;
      margin: 20px 0 25px;
    }

    .features li {
      margin-bottom: 16px;
      padding-left: 24px;
      position: relative;
      font-size: 1.02em;
    }

    .features li:before {
      content: "•";
      color: #d32f2f;
      font-weight: bold;
      font-size: 1.4em;
      position: absolute;
      left: 0;
      top: -2px;
    }

    .features li strong {
      color: #d32f2f;
    }

    /* Инструкции */
    .instructions {
      font-weight: 600;
      background: #fffde7;
      padding: 14px;
      border-left: 4px solid #ffc107;
      margin: 20px 0;
      border-radius: 0 6px 6px 0;
      font-size: 0.95em;
      color: #555;
    }

    /* Таблицы упражнений */
    .exercise-table {
      width: 100%;
      border-collapse: collapse;
      margin: 20px 0 25px;
      background: #fafafa;
      border: 1px solid #e0e0e0;
      font-size: 0.95em;
    }

    .exercise-table th,
    .exercise-table td {
      padding: 12px 10px;
      text-align: center;
      border: 1px solid #ddd;
    }

    .exercise-table th {
      background: #e3f2fd;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      color: #1976d2;
    }

    .exercise-table tr:nth-child(even) {
      background: #f9f9f9;
    }

    .exercise-table tr:hover {
      background: #f0f7ff;
    }

    /* Примечания */
    .note {
      font-size: 0.9em;
      color: #555;
      background: #f3e5f5;
      padding: 14px;
      border-radius: 6px;
      margin: 20px 0;
      font-style: italic;
      border-left: 3px solid #9c27b0;
    }

    /* Блоки с техникой */
    .technique-box {
      background: #e8f5e9;
      border: 2px solid #81c784;
      padding: 20px;
      margin: 30px 0;
      border-radius: 8px;
    }

    .technique-box h3 {
      margin-top: 0;
      color: #2e7d32;
    }

    /* Колонки на больших экранах */
    @media (min-width: 992px) {
      .magazine-article {
        column-count: 2;
        column-gap: 45px;
        column-rule: 1px solid #eee;
      }

      /* Запрет разрыва элементов в колонках */
      .intro,
      .section,
      .exercises-section,
      .technique-box,
      .exercise-table,
      h1,
      h2,
      .subtitle {
        break-inside: avoid;
        page-break-inside: avoid;
      }
    }

    /* Адаптивность */
    @media (max-width: 768px) {
      .magazine-article {
        padding: 20px;
        font-size: 15px;
      }

      .magazine-article h1 {
        font-size: 2.2em;
      }

      .exercise-table {
        font-size: 14px;
      }

      .exercise-table th,
      .exercise-table td {
        padding: 10px 6px;
      }
    }