/* SecureDreams catalog styles */
.container { max-width:1200px; margin:0 auto; padding:2.5rem 5% 4rem; }
h1 { font-size:2.8rem; margin-bottom:0.5rem; text-align:center; }
.intro { text-align:center; font-size:1.1rem; opacity:0.9; max-width:760px; margin:0 auto 2.5rem; }
.grid { display:grid; gap:2rem; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }
.card { background:rgba(255,255,255,0.13); padding:1.8rem; border-radius:16px; backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.25); transition:.3s; position:relative; display:flex; flex-direction:column; }
.card:hover { transform:translateY(-6px); box-shadow:0 12px 30px rgba(0,0,0,0.35); }
.dates { font-size:.85rem; opacity:.85; margin-bottom:.6rem; }
.status-badge { position:absolute; top:14px; right:14px; background:#fff; color:#667eea; padding:.4rem .7rem; font-size:.75rem; font-weight:600; border-radius:20px; }
.closed { background:#ffebee; color:#d32f2f; }
.capacity { font-size:.85rem; margin-top:auto; opacity:.85; }
.btn { display:inline-block; margin-top:1rem; padding:.7rem 1.2rem; background:#fff; color:#667eea; border-radius:30px; font-weight:600; font-size:.9rem; text-decoration:none; transition:.3s; }
.btn:hover { transform:translateY(-3px); box-shadow:0 6px 18px rgba(0,0,0,.3); }
.empty { text-align:center; opacity:.85; padding:3rem 1rem; }
.curriculum-link { display:inline-block; margin-top:.6rem; font-size:.85rem; text-decoration:none;color: navajowhite; }
