/* Общие сбросы */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Основной контейнер — светлая тема */
.article-cover {
  font-family: 'Helvetica Neue', Arial, sans-serif;
  max-width: 1400px;
  margin: 0 auto;
  padding: 50px 40px;
  background: #fbfaf7; /* тёплый белый */
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: 0.05em;
 
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Верхняя линия с автором и фотографом */
.byline {
  font-size: 13px;
  font-weight: 700;
  color: #888888;
  border-top: 3px solid #d4a017; /* золотистый акцент */
  padding-top: 18px;
  margin-bottom: 50px;
  text-align: left;
  letter-spacing: 0.12em;
}

.byline span {
  color: #1a1a1a;
}

/* Основной заголовок */
.main-title {
  font-size: clamp(42px, 10vw, 90px);
  font-weight: 900;
  line-height: 1;
  margin: 0 0 8px 0;
  color: #1a1a1a;
  letter-spacing: -0.02em;
}

.sub-title {
  font-size: clamp(32px, 7vw, 65px);
  font-weight: 900;
  line-height: 1;
  margin: 0 0 35px 0;
  color: #b8860b; /* тёмно-золотой */
  letter-spacing: 0.1em;
}

/* Блок с именем атлета */
.athlete-name {
  font-size: clamp(16px, 2vw, 22px);
  font-weight: 800;
  color: #b8860b;
  margin-bottom: 10px;
  letter-spacing: 0.12em;
}

/* Основной текст описания */
.description {
  font-size: clamp(16px, 1.6vw, 20px);
  font-weight: 400;
  line-height: 1.7;
  color: #2c2c2c;
  text-transform: none;
  max-width: 780px;
  border-left: 5px solid #d4a017;
  padding-left: 28px;
  margin-top: 18px;
}

.description strong {
  color: #000000;
  font-weight: 700;
}

/* Акцент на "ЧЕМПИОН США" */
.highlight {
  color: #b8860b;
  font-weight: 800;
  background: rgba(212, 160, 23, 0.10);
  padding: 2px 6px;
  border-radius: 4px;
}

/* Нижняя плашка */
.footer-note {
  margin-top: 55px;
  font-size: 12px;
  color: #aaaaaa;
  border-top: 1px solid #e0ddd5;
  padding-top: 22px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

/* ===== АДАПТИВНОСТЬ ===== */

/* Планшеты и маленькие ноутбуки */
@media (max-width: 820px) {
  .article-cover {
    padding: 35px 28px;
  }

  .byline {
    font-size: 11px;
    padding-top: 14px;
    margin-bottom: 35px;
  }

  .description {
    max-width: 100%;
    padding-left: 20px;
  }
}

/* Мобильные телефоны */
@media (max-width: 480px) {
  .article-cover {
    padding: 25px 18px;
    min-height: auto;
    justify-content: flex-start;
    padding-top: 40px;
  }

  .byline {
    font-size: 10px;
    padding-top: 12px;
    margin-bottom: 28px;
    border-top-width: 2px;
    letter-spacing: 0.08em;
  }

  .main-title {
    font-size: clamp(32px, 14vw, 42px);
  }

  .sub-title {
    font-size: clamp(26px, 10vw, 34px);
    margin-bottom: 25px;
  }

  .athlete-name {
    font-size: clamp(14px, 4vw, 17px);
  }

  .description {
    font-size: clamp(14px, 3.8vw, 16px);
    line-height: 1.6;
    padding-left: 16px;
    border-left-width: 4px;
    margin-top: 12px;
  }

  .footer-note {
    margin-top: 35px;
    font-size: 10px;
    padding-top: 16px;
  }

  .highlight {
    padding: 1px 4px;
  }
}

/* Очень маленькие экраны (до 360px) */
@media (max-width: 360px) {
  .article-cover {
    padding: 18px 12px;
  }

  .main-title {
    font-size: 28px;
  }

  .sub-title {
    font-size: 22px;
  }

  .description {
    font-size: 13px;
    padding-left: 12px;
  }
}

.article-body {
  font-family: 'Helvetica Neue', Arial, sans-serif;
  max-width: 1400px;
  margin: 0 auto;
  padding: 50px 20px;
  background: #fbfaf7;
  color: #1a1a1a;
  line-height: 1.8;
  text-transform: none; /* ← ОБЫЧНЫЙ РЕГИСТР (НЕ ЗАГЛАВНЫЕ) */
}

/* ===== ВЕРХНЯЯ ПЛАШКА С АВТОРОМ ===== */
.byline {
  font-size: 13px;
  font-weight: 700;
  color: #888888;
  border-top: 3px solid #d4a017;
  padding-top: 18px;
  margin-bottom: 40px;
  letter-spacing: 0.05em;
  text-transform: uppercase; /* здесь оставлены заглавные для стиля */
}

.byline span {
  color: #1a1a1a;
}

/* ===== ПЕРВЫЙ АБЗАЦ — ВВОДНАЯ ЦИТАТА ===== */
.lead-quote {
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 700;
  color: #b8860b;
  line-height: 1.6;
  margin-bottom: 30px;
  padding-left: 20px;
  border-left: 5px solid #d4a017;
}

/* ===== ОСНОВНОЙ ТЕКСТ ===== */
.body-text {
  font-size: clamp(16px, 1.5vw, 19px);
  font-weight: 400;
  color: #2c2c2c;
  margin-bottom: 24px;
  text-align: justify;
}

.body-text strong {
  color: #000000;
  font-weight: 700;
}

/* ===== БЛОК ЦИТАТЫ (ПРЯМАЯ РЕЧЬ) ===== */
.quote-block {
  background: #f5f2eb;
  padding: 28px 32px;
  margin: 30px 0 30px 0;
  border-radius: 8px;
  border-left: 6px solid #d4a017;
}

.quote-block p {
  font-size: clamp(16px, 1.5vw, 19px);
  line-height: 1.8;
  color: #1a1a1a;
  margin-bottom: 0;
}

.quote-block p + p {
  margin-top: 16px;
}

.quote-block .quote-author {
  display: block;
  margin-top: 12px;
  font-weight: 700;
  color: #b8860b;
  font-size: 14px;
  letter-spacing: 0.05em;
}

/* ===== ВЫДЕЛЕННАЯ ФИНАЛЬНАЯ ФРАЗА ===== */
.final-tagline {
  font-size: clamp(20px, 2.5vw, 30px);
  font-weight: 900;
  color: #b8860b;
  text-align: center;
  margin-top: 45px;
  padding-top: 30px;
  border-top: 2px solid #e0ddd5;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.final-tagline span {
  color: #1a1a1a;
}

/* ===== АДАПТИВНОСТЬ ===== */

/* Планшеты */
@media (max-width: 820px) {
  .article-body {
    padding: 35px 18px;
  }

  .byline {
    font-size: 11px;
    padding-top: 14px;
    margin-bottom: 30px;
  }

  .quote-block {
    padding: 22px 24px;
    margin: 25px 0;
  }
}
.exercise-note {
      background: #faf8f3;
      padding: 20px 28px;
      margin: 25px 0 25px 0;
      border-radius: 6px;
      border-left: 5px solid #d4a017;
      font-size: clamp(16px, 1.5vw, 19px);
      color: #2c2c2c;
    }

    .exercise-note strong {
      color: #b8860b;
      font-weight: 700;
    }

 .body-text {
      font-size: clamp(16px, 1.5vw, 19px);
      font-weight: 400;
      color: #2c2c2c;
      margin-bottom: 22px;
      text-align: justify;
    }

    .body-text strong {
      color: #000000;
      font-weight: 700;
    }

    /* ===== БЛОК ЦИТАТЫ ===== */
    .quote-block {
      background: #f5f2eb;
      padding: 28px 32px;
      margin: 25px 0;
      border-radius: 8px;
      border-left: 6px solid #d4a017;
    }

    .quote-block p {
      font-size: clamp(16px, 1.5vw, 19px);
      line-height: 1.8;
      color: #1a1a1a;
      margin-bottom: 0;
    }

    .quote-block p + p {
      margin-top: 16px;
    }

    .quote-block .quote-author {
      display: block;
      margin-top: 12px;
      font-weight: 700;
      color: #b8860b;
      font-size: 14px;
      letter-spacing: 0.05em;
    }

    /* ===== БЛОК С УПРАЖНЕНИЕМ ===== */
    .exercise-note {
      background: #faf8f3;
      padding: 20px 28px;
      margin: 20px 0 25px 0;
      border-radius: 6px;
      border-left: 5px solid #d4a017;
      font-size: clamp(16px, 1.5vw, 19px);
      color: #2c2c2c;
    }

    .exercise-note strong {
      color: #b8860b;
      font-weight: 700;
    }

    /* ===== ИНФОРМАЦИОННАЯ КАРТОЧКА ===== */
    .info-card {
      background: #f5f2eb;
      padding: 28px 32px;
      margin: 35px 0 25px 0;
      border-radius: 8px;
      border-left: 6px solid #b8860b;
    }

    .info-card .card-title {
      font-size: 18px;
      font-weight: 900;
      color: #b8860b;
      letter-spacing: 0.15em;
      margin-bottom: 18px;
      text-transform: uppercase;
    }

    .info-card .info-row {
      display: flex;
      flex-wrap: wrap;
      padding: 6px 0;
      border-bottom: 1px solid #e8e4db;
      font-size: clamp(14px, 1.2vw, 16px);
    }

    .info-card .info-row:last-child {
      border-bottom: none;
    }

    .info-card .info-label {
      font-weight: 700;
      color: #1a1a1a;
      min-width: 180px;
      flex-shrink: 0;
    }

    .info-card .info-value {
      color: #2c2c2c;
    }

    .info-card .info-value a {
      color: #b8860b;
      text-decoration: none;
    }

    .info-card .info-value a:hover {
      text-decoration: underline;
    }
.section-title {
      font-size: clamp(28px, 5vw, 48px);
      font-weight: 900;
      color: #b8860b;
      margin: 35px 0 15px 0;
      letter-spacing: 0.03em;
      border-bottom: 3px solid #d4a017;
      padding-bottom: 10px;
    }

    .section-title:first-of-type {
      margin-top: 0;
    }

 .schedule {
      background: #f5f2eb;
      padding: 25px 20px;
      margin: 20px 0 25px 0;
      border-radius: 8px;
      border-left: 6px solid #b8860b;
    }

    .schedule .schedule-title {
      font-size: 20px;
      font-weight: 900;
      color: #b8860b;
      text-align: center;
      margin-bottom: 15px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .schedule .schedule-row {
      display: flex;
      justify-content: space-between;
      padding: 8px 0;
      border-bottom: 1px solid #e8e4db;
      font-size: clamp(15px, 1.3vw, 17px);
    }

    .schedule .schedule-row:last-child {
      border-bottom: none;
    }

    .schedule .schedule-day {
      font-weight: 700;
      color: #1a1a1a;
      min-width: 100px;
    }

    .schedule .schedule-workout {
      color: #2c2c2c;
      text-align: right;
    }

    .schedule .schedule-note {
      font-size: clamp(13px, 1vw, 15px);
      color: #888888;
      margin-top: 12px;
      font-style: italic;
    }

    /* ===== БЛОК С УПРАЖНЕНИЕМ ===== */
    .exercise-note {
      background: #faf8f3;
      padding: 20px 28px;
      margin: 20px 0 25px 0;
      border-radius: 6px;
      border-left: 5px solid #d4a017;
      font-size: clamp(16px, 1.5vw, 19px);
      color: #2c2c2c;
    }

    .exercise-note strong {
      color: #b8860b;
      font-weight: 700;
    }

  .workout-table-wrap {
      background: #f5f2eb;
      padding: 25px 10px;
      margin: 20px 0 25px 0;
      border-radius: 8px;
      border-left: 6px solid #b8860b;
    }

    .workout-table-wrap .table-title {
      font-size: 20px;
      font-weight: 900;
      color: #b8860b;
      text-align: center;
      margin-bottom: 15px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .workout-table {
      width: 100%;
      border-collapse: collapse;
      font-size: clamp(15px, 1.3vw, 17px);
    }

    .workout-table thead th {
      background: #d4a017;
      color: #ffffff;
      padding: 12px 10px;
      text-align: left;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    .workout-table thead th:last-child {
      text-align: center;
    }

    .workout-table tbody td {
      padding: 10px 16px;
      border-bottom: 1px solid #e0ddd5;
      color: #2c2c2c;
    }

    .workout-table tbody td:last-child {
      text-align: center;
    }

    .workout-table tbody tr:last-child td {
      border-bottom: none;
    }

    .workout-table tbody tr:nth-child(even) {
      background: #faf8f3;
    }

    .workout-table tbody tr:last-child td:first-child {
      padding-left: 32px;
      color: #888888;
      font-style: italic;
    }


  @media (max-width: 820px) {
      .article-body {
        padding: 35px 18px;
      }

      .info-card {
        padding: 22px 24px;
      }

      .info-card .info-label {
        min-width: 140px;
      }

      .schedule {
        padding: 20px 22px;
      }

      .workout-table-wrap {
        padding: 20px 10px;
      }

      .workout-table thead th,
      .workout-table tbody td {
        padding: 8px 12px;
      }
    }

    @media (max-width: 600px) {
      .info-card .info-row {
        flex-direction: column;
        padding: 8px 0;
      }

      .info-card .info-label {
        min-width: auto;
        margin-bottom: 2px;
      }

      .schedule .schedule-row {
        flex-direction: column;
        align-items: flex-start;
        padding: 6px 0;
      }

      .schedule .schedule-workout {
        text-align: left;
        padding-left: 4px;
      }

      .workout-table thead th,
      .workout-table tbody td {
        padding: 6px 10px;
        font-size: 13px;
      }

      .workout-table tbody tr:last-child td:first-child {
        padding-left: 10px;
      }
    }
