/* Club descriptions share the article type scale and the site's own palette. */
.club-page .page-head { padding-top: 28px; padding-bottom: 32px; }
.club-page .page-head h1 { max-width: 900px; font-size: clamp(2rem, 3.4vw, 2.875rem); line-height: 1.16; letter-spacing: -.025em; color: var(--text-on-mint); text-wrap: pretty; margin: 0; }
.club-page .crumbs { max-width: 900px; line-height: 1.7; margin-bottom: 24px; }
.gurtok-cover { max-width: 1160px; margin: 0 auto 40px; padding: 0 24px; }
.gurtok-cover img { width: 100%; height: auto; max-height: 420px; object-fit: cover; border-radius: 24px; }
.gurtok-body { margin: 0 auto; }
.club-team { max-width: 714px; margin: 0 auto 48px; padding-bottom: 32px; border-bottom: 1px solid var(--border); }
.club-team > h2 { font-family: Nunito, sans-serif; color: var(--text-on-mint); font-size: 1.75rem; font-weight: 800; line-height: 1.3; margin: 0 0 24px; }
.club-team .teacher { padding: 20px 16px; border-radius: 12px; }
.club-team .teacher h3 { font-family: Nunito, sans-serif; font-size: 1rem; font-weight: 800; line-height: 1.4; }
.club-teacher-role { color: var(--text-soft); font-size: .9375rem; line-height: 1.5; margin: 8px 0 0; }
.club-team-note { color: var(--text-soft); font-size: 1rem; line-height: 1.65; margin: 20px 0 0; }
.club-page .gurtok-body .club-age { display: table; margin: 0 0 24px; padding: 8px 14px; border-radius: 8px; background: #E6F1E4; color: var(--text-on-mint); font-size: 1rem; font-weight: 800; }
.club-section > .club-age { margin-top: 4px; }
.club-definitions { margin: 20px 0 28px; }
.club-definitions > div { padding: 18px 0; border-bottom: 1px solid var(--border); }
.club-definitions > div:first-child { padding-top: 0; }
.club-definitions dt { font-size: 1.125rem; font-weight: 800; line-height: 1.5; color: var(--text-on-mint); margin-bottom: 6px; }
.club-definitions dd { margin: 0; }
.gurtok-body .club-skills { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px 32px; }
.gurtok-body .club-skills li { margin: 0; }
.gurtok-body .club-person { color: var(--text-soft); font-size: 1rem; margin: 8px 0 18px; }
.gurtok-body .club-days { font-weight: 800; color: var(--text-on-mint); margin: 28px 0 12px; }
.gurtok-body .club-schedule { list-style: none; padding: 0; border-top: 1px solid var(--border); margin-top: 0; }
.club-schedule li { margin: 0; padding: 12px 0; border-bottom: 1px solid var(--border); }
.club-schedule strong { font-variant-numeric: tabular-nums; color: var(--text-on-mint); }
.gurtok-body .club-invitation { font-size: 1.1875rem; line-height: 1.6; font-weight: 700; color: var(--text-on-mint); margin-top: 32px; }
.club-contact { padding: 24px; margin: 28px 0; border-radius: 12px; background: #E6F1E4; color: var(--text-on-mint); }
.club-contact p { margin: 0 0 8px; }
.club-contact > :last-child { margin-bottom: 0; }
.club-phone { font-size: 1.1875rem; font-weight: 800; }
.club-phone a { display: inline-flex; min-height: 44px; align-items: center; text-underline-offset: .2em; }
.club-resource { display: inline-flex; align-items: center; min-height: 44px; font-weight: 800; color: var(--red-deep); }
.club-back { max-width: 1160px; padding: 0 24px 56px; margin: 0 auto; }
.club-back a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 800; color: var(--red-deep); }
.contact-strip { max-width: 714px; margin: 32px auto 0; padding: 24px; background: #E6F1E4; border-radius: 12px; color: var(--text-on-mint); line-height: 1.7; }
.contact-strip a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 800; }
@media (max-width: 560px) {
  .club-page .page-head { padding: 24px 20px; }
  .club-page .crumbs { margin-bottom: 18px; font-size: .8125rem; }
  .club-page section.block { padding-right: 20px; padding-left: 20px; }
  .gurtok-cover { padding: 0 20px; margin-bottom: 32px; }
  .gurtok-cover img { max-height: 320px; border-radius: 16px; }
  .club-team { margin-bottom: 32px; padding-bottom: 28px; }
  .club-team > h2 { font-size: 1.5rem; }
  .club-team .teacher { display: grid; grid-template-columns: 60px minmax(0,1fr); gap: 4px 14px; text-align: left; align-items: center; padding: 16px; }
  .club-team .avatar { grid-column: 1; grid-row: 1 / span 2; width: 60px; height: 60px; margin: 0; }
  .club-team .teacher h3 { grid-column: 2; align-self: end; }
  .club-team .teacher h3:last-child { grid-row: 1 / span 2; align-self: center; }
  .club-teacher-role { grid-column: 2; align-self: start; font-size: .875rem; margin: 0; }
  .gurtok-body .club-skills { grid-template-columns: 1fr; gap: 8px; }
  .club-contact { padding: 20px; }
  .club-phone { font-size: 1.0625rem; }
  .club-back { padding: 0 20px 40px; }
}
@media print {
  .club-back { display: none; }
  .club-page .article-body { font-size: 11pt; }
  .club-contact, .club-team .teacher { break-inside: avoid; }
}
