
/* Gallery uses the existing Fortes Academy visual language. */
.gallery-page{padding:125px 24px 70px;background:#f8fafc;min-height:100vh}
.gallery-container{max-width:1400px;margin:0 auto}
.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px}
.gallery-heading .section-tag{display:inline-flex;align-items:center;gap:8px;color:var(--primary-color);background:rgba(1,39,88,.06);border:1px solid rgba(1,39,88,.1);padding:7px 13px;border-radius:50px;font-size:12px;font-weight:700;letter-spacing:.5px}
.gallery-heading h1{font-size:42px;color:#1e293b;margin:14px 0 8px;line-height:1.15}
.gallery-heading p{color:#64748b;max-width:700px;line-height:1.7;margin:0}
.gallery-count{font-size:13px;font-weight:600;color:var(--primary-color);background:#fff;border:1px solid #e2e8f0;padding:9px 14px;border-radius:50px;white-space:nowrap}
.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.event-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition)}
.event-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.event-cover{display:block;height:235px;position:relative;overflow:hidden;background:#eef3f8}
.event-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:var(--transition)}
.event-card:hover .event-cover img{transform:scale(1.04)}
.cover-placeholder{height:100%;display:grid;place-items:center;color:var(--primary-color);font-size:52px;background:linear-gradient(135deg,rgba(1,39,88,.06),rgba(250,165,31,.12))}
.view-badge{position:absolute;right:14px;bottom:14px;background:var(--primary-color);color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:600;box-shadow:0 4px 12px rgba(1,39,88,.2)}
.event-card-body{padding:20px}
.event-date{font-size:12px;color:#64748b;font-weight:600;margin-bottom:9px}.event-date i{color:var(--secondary-color);margin-right:4px}
.event-card h2{font-size:21px;color:#1e293b;margin:0 0 9px}.event-card p{font-size:14px;color:#64748b;line-height:1.65;margin:0 0 16px}
.read-more,.event-link{color:var(--primary-color);text-decoration:none;font-size:14px;font-weight:700}.read-more i{font-size:11px;margin-left:4px}
.empty-gallery{text-align:center;padding:75px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:var(--shadow-sm)}
.empty-gallery i{font-size:50px;color:var(--secondary-color);margin-bottom:15px}.empty-gallery h2{color:#1e293b;margin:0 0 8px}.empty-gallery p{color:#64748b}
.detail-page{padding:125px 24px 80px;background:#f8fafc;min-height:100vh}.detail-container{max-width:1400px;margin:auto}.detail-back{display:inline-flex;align-items:center;gap:7px;color:var(--primary-color);font-size:14px;font-weight:600;text-decoration:none;margin-bottom:24px}.detail-meta{display:flex;gap:18px;flex-wrap:wrap;color:#64748b;font-size:13px;font-weight:600}.detail-meta i{color:var(--secondary-color);margin-right:5px}.event-detail h1{font-size:42px;line-height:1.15;color:#1e293b;margin:12px 0 18px}.event-description{max-width:900px;color:#64748b;font-size:16px;line-height:1.8;margin-bottom:22px}.event-link{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #e2e8f0;padding:10px 15px;border-radius:7px;margin-bottom:30px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.photo-grid a{display:block;overflow:hidden;border-radius:12px;background:#eef3f8;border:1px solid #e2e8f0}.photo-grid img{width:100%;height:270px;object-fit:cover;display:block;transition:var(--transition)}.photo-grid a:hover img{transform:scale(1.03)}
@media(max-width:991px){.gallery-page,.detail-page{padding-top:105px}.event-grid{grid-template-columns:repeat(2,1fr)}.photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.gallery-page,.detail-page{padding:105px 16px 50px}.gallery-heading{align-items:flex-start;flex-direction:column}.gallery-heading h1,.event-detail h1{font-size:31px}.event-grid,.photo-grid{grid-template-columns:1fr}.event-cover{height:220px}.photo-grid img{height:240px}}
