/* /classes — plain, easy layout (owner, 2026-11-04): text and lists, no decorative cards. */
.cl-section { padding: var(--space-2xl) 0 0; max-width: 880px; }
#main-content > .cl-section:first-child { padding-top: var(--space-xl); }
.cl-section h2 { margin: 0 0 var(--space-xs); }
.cl-sub { color: var(--text-secondary); margin: 0 0 var(--space-md); max-width: 65ch; }

.cl-prices { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color); }
.cl-price { padding: var(--space-lg) var(--space-lg) var(--space-lg) 0; }
.cl-price + .cl-price { padding-left: var(--space-lg); border-left: 1px solid var(--border-color); }
.cl-price h3 { margin: 0; font-size: var(--font-size-md); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.cl-save { font-size: var(--font-size-xs); font-weight: 600; color: var(--color-brass-deep, #8a6a1c); }
.cl-amount { font-size: 1.9rem; font-weight: 800; color: var(--color-primary); margin: 6px 0; line-height: 1.1; }
.cl-amount span { font-size: var(--font-size-md); font-weight: 600; color: var(--text-secondary); }
.cl-price p:last-child { margin: 0; color: var(--text-secondary); font-size: var(--font-size-sm); }

.cl-ticks { list-style: none; padding: 0; margin: var(--space-md) 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: 6px var(--space-lg); color: var(--text-secondary); font-size: var(--font-size-sm); }
.cl-ticks li::before { content: "✓"; color: var(--color-primary); font-weight: 700; margin-right: 8px; }

.cl-list { margin: 0; border-top: 1px solid var(--border-color); }
.cl-list > div { display: grid; grid-template-columns: 190px 1fr; gap: 4px var(--space-lg); padding: 14px 0; border-bottom: 1px solid var(--border-color); scroll-margin-top: 90px; }
.cl-list dt { font-weight: 700; color: var(--color-primary); }
.cl-list dd { margin: 0; color: var(--text-secondary); }
.cl-who { display: block; margin-top: 2px; font-size: var(--font-size-sm); color: var(--text-muted); }
.cl-who::before { content: "Teacher: "; }
.cl-hours { margin-bottom: var(--space-md); }

.cl-tags { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 10px 28px; }
.cl-tags li { font-size: 1.15rem; font-weight: 700; color: var(--color-primary); }

#register { padding-bottom: var(--space-2xl); }

@media (max-width: 640px) {
  .cl-prices { grid-template-columns: 1fr; }
  .cl-price, .cl-price + .cl-price { padding: var(--space-md) 0; border-left: 0; }
  .cl-price + .cl-price { border-top: 1px solid var(--border-color); }
  .cl-ticks { grid-template-columns: 1fr; }
  .cl-list > div { grid-template-columns: 1fr; }
  .cl-tags { gap: 8px 22px; }
}
.class-register { margin: 0; max-width: 880px; box-shadow: none; padding: var(--space-xl); }
.class-register h2, .class-register .form-sub { text-align: left; }
@media (max-width: 640px) { .class-register { padding: var(--space-lg) var(--space-md); } }
