@charset "UTF-8";
/**
 * Program Card Component - Карточка программы обучения
 * SDC компонент на основе дизайн-системы
 */
.program-card {
  max-width: 100%;
  margin: 0;
  padding: 0;
  background: var(--color-white, #ffffff);
}
.program-card__header {
  margin-bottom: var(--spacing-32, 32px);
}
.program-card__title {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-700, 700);
  font-size: var(--font-size-32, 36px);
  line-height: 1;
  color: var(--color-black, #1f2937);
  margin: 0;
}
.program-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-24, 24px);
}
.program-card__item {
  max-width: 1440px;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, 0.1));
  transition: all 0.3s ease;
}
.program-card__item:hover {
  transform: scale(1.01);
  transition: transform 0.3s ease;
}
.program-card__header-section {
  background: #a8d85f;
  padding: var(--spacing-16, 16px) var(--spacing-24, 24px);
  display: flex;
  align-items: center;
  gap: var(--spacing-20, 20px);
}
@media (max-width: 768px) {
  .program-card__header-section {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-16, 16px);
    padding: var(--spacing-20, 20px);
  }
}
@media (max-width: 480px) {
  .program-card__header-section {
    padding: var(--spacing-16, 16px);
  }
}
.program-card__icon {
  width: 70px;
  height: 70px;
  background: transparent;
  border-radius: var(--radius-8, 8px);
  display: flex;
  align-items: center;
  justify-content: center;
}
.program-card__icon-container {
  flex-shrink: 0;
}
.program-card__icon-img {
  width: 70px;
  height: 70px;
  filter: brightness(0);
}
@media (max-width: 480px) {
  .program-card__icon {
    width: 40px;
    height: 40px;
  }
  .program-card__icon-img {
    width: 40px;
    height: 40px;
  }
}
.program-card__title-section {
  flex: 1;
}
.program-card__program-title {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-700, 700);
  font-size: var(--font-size-20, 20px);
  line-height: 1;
  color: var(--color-black, #1f2937);
  margin: 0;
}
@media (max-width: 768px) {
  .program-card__program-title {
    font-size: var(--font-size-16, 16px);
  }
}
@media (max-width: 480px) {
  .program-card__program-title {
    font-size: var(--font-size-14, 14px);
  }
}
.program-card__price-section {
  display: flex;
  align-items: center;
  gap: var(--spacing-12, 12px);
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .program-card__price-section {
    align-self: flex-end;
  }
}
@media (max-width: 480px) {
  .program-card__price-section {
    align-self: flex-start;
  }
}
.program-card__price, .program-card__currency, .program-card__duration, .program-card__period {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-size: var(--font-size-32, 36px);
  line-height: 1;
  color: var(--color-black, #1f2937);
}
@media (max-width: 480px) {
  .program-card__price, .program-card__currency, .program-card__duration, .program-card__period {
    font-size: var(--font-size-24, 24px);
  }
}
.program-card__price, .program-card__duration {
  font-weight: var(--font-weight-500, 500);
}
.program-card__currency, .program-card__period {
  font-weight: var(--font-weight-300, 400);
}
.program-card__arrow-icon {
  filter: brightness(0);
  transition: transform var(--duration-normal, 0.3s) ease;
}
.program-card__content-section {
  background: rgba(232, 250, 253, 0.3);
  padding: 0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.3s ease;
  display: none;
}
.program-card__content-section--expanded {
  display: block;
  padding: var(--spacing-24, 24px);
  max-height: none;
  opacity: 1;
}
@media (max-width: 768px) {
  .program-card__content-section--expanded {
    padding: var(--spacing-20, 20px);
  }
}
@media (max-width: 480px) {
  .program-card__content-section--expanded {
    padding: var(--spacing-16, 16px);
  }
}
.program-card__details {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16, 16px);
  margin-bottom: var(--spacing-20, 20px);
}
.program-card__detail-item {
  display: flex;
  flex-direction: row;
  gap: var(--spacing-8, 8px);
  align-items: baseline;
}
.program-card__detail-label {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-700, 700);
  font-size: var(--font-size-20, 20px);
  line-height: 1.4;
  color: var(--color-black, #1f2937);
}
.program-card__detail-value {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-400, 400);
  font-size: var(--font-size-20, 20px);
  line-height: 1.4;
  color: var(--color-black, #1f2937);
}
.program-card__description {
  margin-bottom: var(--spacing-24, 24px);
}
.program-card__description .long-description {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-400, 400);
  font-size: var(--font-size-20, 20px);
  line-height: 1.4;
  color: var(--color-black, #1f2937);
  margin: 0;
}
@media (max-width: 480px) {
  .program-card__description .long-description {
    font-size: var(--font-size-14, 14px);
  }
}
.program-card__curriculum {
  margin-top: var(--spacing-24, 24px);
}
.program-card__curriculum-title {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-700, 700);
  font-size: var(--font-size-20, 20px);
  line-height: 1.4;
  color: var(--color-black, #1f2937);
  margin: 0 0 var(--spacing-16, 16px) 0;
}
@media (max-width: 768px) {
  .program-card__curriculum-title {
    font-size: var(--font-size-16, 16px);
  }
}
@media (max-width: 480px) {
  .program-card__curriculum-title {
    font-size: var(--font-size-14, 14px);
  }
}
.program-card__curriculum-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16, 16px);
}
.program-card__curriculum-item {
  font-family: var(--font-family-primary, Inter, sans-serif);
  font-weight: var(--font-weight-400, 400);
  font-size: var(--font-size-20, 20px);
  line-height: 1.4;
  color: var(--color-black, #1f2937);
  position: relative;
  padding-left: var(--spacing-20, 20px);
}
.program-card__curriculum-item::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--color-black, #1f2937);
  font-weight: var(--font-weight-700, 700);
  font-size: var(--font-size-18, 18px);
}
@media (max-width: 768px) {
  .program-card__curriculum-item {
    font-size: var(--font-size-14, 14px);
  }
}
@media (max-width: 480px) {
  .program-card__curriculum-item {
    font-size: 13px;
  }
}
@media (max-width: 768px) {
  .program-card__title {
    font-size: var(--font-size-24, 24px);
  }
}
@media (max-width: 480px) {
  .program-card__title {
    font-size: var(--font-size-20, 20px);
  }
}

div.program-card__expand-button {
  background: #E8FAFD;
  border: none;
  cursor: pointer;
  padding: var(--spacing-16);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-4, 4px);
  transition: var(--transition-fast, all 0.2s ease-in-out);
}
div.program-card__expand-button:hover {
  transform: scale(1.01);
  transition: transform 0.3s ease;
}
div.program-card__expand-button[aria-expanded=true] .program-card__arrow-icon {
  transform: rotate(180deg);
}
@media (max-width: 480px) {
  div.program-card__expand-button {
    margin-left: auto;
  }
}

button.program-card__expand-button {
  background: none;
  border: none;
  cursor: pointer;
  padding: var(--spacing-4, 4px);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-4, 4px);
  transition: var(--transition-fast, all 0.2s ease-in-out);
}
button.program-card__expand-button:hover {
  background: rgba(255, 255, 255, 0.1);
  transform: scale(1.01);
  transition: transform 0.3s ease;
}
button.program-card__expand-button[aria-expanded=true] .program-card__arrow-icon {
  transform: rotate(180deg);
}
@media (max-width: 480px) {
  button.program-card__expand-button {
    margin-left: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .program-card__content-section,
  .program-card__arrow-icon {
    transition: none;
  }
}
/*# sourceMappingURL=maps/program-card.css.map */
