.page-hero{padding:calc(var(--header-height) + var(--space-4xl)) 0 var(--space-4xl);background:var(--color-surface);text-align:center}.page-hero h1{margin:var(--space-md) 0}.page-hero-text{font-size:var(--text-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.category-tabs{justify-content:flex-start;gap:var(--space-sm);margin-bottom:var(--space-3xl);padding:var(--space-sm);background:var(--color-surface);border-radius:var(--radius-full)}.category-tab{padding:var(--space-sm) var(--space-xl);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);white-space:normal;text-align:center;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;min-height:48px;font-weight:500;line-height:1.25;display:inline-flex}.category-tab:hover{color:var(--color-text-primary)}.category-tab.active{background:var(--color-surface-elevated);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.category-content{animation:fadeIn var(--transition-base) ease}.category-header{text-align:center;margin-bottom:var(--space-3xl)}.category-header h2{margin-bottom:var(--space-sm);font-size:var(--text-3xl)}.category-header p{font-size:var(--text-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.programs-grid{gap:var(--space-xl);grid-template-columns:repeat(2,1fr);display:grid}.program-card{background:var(--color-surface-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-xl);transition:all var(--transition-base)}.program-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-accent-light);transform:translateY(-4px)}.program-icon{background:var(--color-surface);border-radius:var(--radius-md);width:48px;height:48px;color:var(--color-accent);margin-bottom:var(--space-lg);justify-content:center;align-items:center;display:flex}.program-card h3{font-family:var(--font-heading);font-size:var(--text-xl);margin-bottom:var(--space-sm);color:var(--color-text-primary)}.program-card p,.program-full-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.7}.program-card{cursor:pointer}.program-short{margin-bottom:var(--space-md)}.program-expand-hint{font-size:var(--text-xs);color:var(--color-accent);margin-top:var(--space-sm);font-weight:500;display:block}.program-card.expanded{border-color:var(--color-accent);box-shadow:var(--shadow-lg);background:var(--color-surface)}.program-full-description{padding-top:var(--space-md);border-top:1px solid var(--color-border-light);margin-top:var(--space-md);animation:fadeIn var(--transition-fast) ease}.program-full-description p{font-size:var(--text-base);color:var(--color-text-primary);line-height:1.8}.programs-loading{text-align:center;padding:var(--space-4xl);color:var(--color-text-muted)}.loading-spinner{border:3px solid var(--color-border-light);border-top-color:var(--color-primary);width:40px;height:40px;margin:0 auto var(--space-md);border-radius:50%;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.info-banner{padding:var(--space-3xl) 0}.info-content{align-items:center;gap:var(--space-xl);background:var(--color-surface-elevated);padding:var(--space-xl);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);display:flex}.info-icon{background:var(--color-accent-light);border-radius:var(--radius-full);width:64px;height:64px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.info-text{flex:1}.info-text h3{font-size:var(--text-lg);margin-bottom:var(--space-sm)}.info-text p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.cta-content{max-width:600px;margin:0 auto}.cta-content h2{margin-bottom:var(--space-md)}.cta-content p{font-size:var(--text-lg);margin-bottom:var(--space-xl)}@media (max-width:1024px){.programs-grid{grid-template-columns:1fr}}@media (max-width:768px){.category-tabs{border-radius:var(--radius-lg)}.category-tab{padding:var(--space-sm) var(--space-lg);font-size:var(--text-xs)}.info-content{text-align:center;flex-direction:column}.info-content .btn{width:100%}}
