/* prog — generado por refactor modular (verbatim de styles.css) */

.prog { background: #121212; padding: 80px 0 90px; }
.prog__title { font-weight: 800; font-size: 44px; text-align: center; margin-bottom: 46px; color: var(--white); }
.prog__title-accent { color: var(--accent); font-weight: 800; }
.prog__acc { border: 1px solid rgba(199, 154, 58, 0.4); border-radius: 16px; overflow: hidden; }
.prog-item { border-bottom: 1px solid rgba(199, 154, 58, 0.25); }
.prog-item:last-child { border-bottom: none; }
.prog-item__head {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 40px;
  align-items: center;
  gap: 24px;
  padding: 24px 28px;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
}
.prog-item__id { display: flex; flex-direction: column; gap: 4px; }
.prog-item__etapa { font-family: var(--font-sora); font-weight: 700; font-size: 15px; color: var(--accent); }
.prog-item__name { font-family: var(--font-sora); font-weight: 600; font-size: 16px; color: var(--white); line-height: 1.3; }
.prog-item__short { font-family: var(--font-mont); font-weight: 600; font-size: 15px; color: var(--white); line-height: 1.4; }
.prog-item__icon { font-size: 26px; color: var(--accent); text-align: center; line-height: 1; }
.prog-item__full { display: none; padding: 0 28px 26px; }
.prog-item__full p { font-family: var(--font-mont); font-size: 15px; line-height: 1.65; }
.prog-item--open { background: #eef2f7; }
.prog-item--open .prog-item__head { grid-template-columns: 1fr 40px; }
.prog-item--open .prog-item__name { color: var(--dark-text); }
.prog-item--open .prog-item__icon { color: var(--accent); }
.prog-item--open .prog-item__short { display: none; }
.prog-item--open .prog-item__full { display: block; }
.prog-item--open .prog-item__full p { color: var(--dark-text); }
@media (max-width: 900px) {
  .prog-item__head { grid-template-columns: 1fr 40px; }
  .prog-item__short { display: none; }
}
@media (max-width: 600px) {
  .prog {
    padding: 34px 0 44px;
    background-position: center top;
  }
  .prog .wrap {
    padding-left: 14px;
    padding-right: 14px;
  }
  .prog__title {
    margin-bottom: 28px;
    text-align: center;
    font-size: 28px;
    line-height: 1.1;
  }
  .prog__acc {
    border: 1px solid var(--accent);
    border-radius: 9px;
    overflow: hidden;
    background: rgba(20, 15, 5, 0.72);
  }
  .prog-item {
    border-bottom: 1px solid rgba(199, 154, 58, 0.28);
  }
  .prog-item__head {
    grid-template-columns: minmax(0, 1fr) 32px;
    gap: 12px;
    padding: 17px 14px;
  }
  .prog-item__id {
    gap: 8px;
    min-width: 0;
  }
  .prog-item__etapa {
    font-size: 13px;
    line-height: 1;
  }
  .prog-item__name {
    font-size: 14px;
    line-height: 1.18;
    font-weight: 700;
    text-transform: uppercase;
  }
  .prog-item__icon {
    font-size: 34px;
    line-height: 0.8;
  }
  .prog-item__full {
    padding: 0 14px 20px;
  }
  .prog-item__full p {
    font-size: 14px;
    line-height: 1.55;
  }
  .prog-item--open {
    background: #eef2f7;
  }
  .prog-item--open .prog-item__head {
    grid-template-columns: minmax(0, 1fr) 32px;
    padding-bottom: 8px;
  }
  .prog-item--open .prog-item__etapa {
    color: var(--accent);
  }
  .prog-item--open .prog-item__name {
    color: var(--dark-text);
  }
  .prog-item--open .prog-item__icon {
    color: var(--accent);
  }
  .prog-item--open .prog-item__full p {
    color: var(--dark-text);
  }
}
