.events-page{padding:2rem 0 4rem;min-height:80vh}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));grid-gap:2rem;gap:2rem;margin-bottom:4rem}.no-events{text-align:center;padding:4rem 2rem;background:var(--card-background);border-radius:12px;margin-bottom:3rem;box-shadow:0 4px 6px var(--shadow)}.no-events-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.5}.no-events h3{color:var(--primary-green);margin-bottom:1rem;font-size:1.5rem}.no-events p{color:var(--gray-medium);margin-bottom:2rem;line-height:1.6;max-width:500px;margin-left:auto;margin-right:auto}.events-info{margin-top:4rem}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:2rem;gap:2rem}.info-card{background:var(--card-background);border-radius:12px;padding:2rem;box-shadow:0 4px 6px var(--shadow);border:1px solid var(--border-color)}.info-card h3{color:var(--primary-green);margin-bottom:1.5rem;font-size:1.25rem}.info-card ul{list-style:none;padding:0;margin:0}.info-card li{position:relative;padding:.5rem 0 .5rem 1.5rem;color:var(--foreground);line-height:1.5}.info-card li:before{content:"•";position:absolute;left:0;color:var(--accent-green);font-weight:700}.event-card.loading{background:var(--card-background);border-radius:12px;overflow:hidden;box-shadow:0 4px 6px var(--shadow);border:1px solid var(--border-color);pointer-events:none}.event-card.loading .event-image-placeholder{height:200px;background:var(--gray-light);animation:pulse 1.5s ease-in-out infinite}.event-card.loading .event-content{padding:1.5rem}.loading-text{height:1rem;background:var(--gray-light);border-radius:4px;margin-bottom:.5rem;animation:pulse 1.5s ease-in-out infinite}.loading-text.short{width:60%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.events-page{padding:1rem 0 3rem}.events-grid{grid-template-columns:1fr;gap:1.5rem}.no-events{padding:3rem 1.5rem}.no-events-icon{font-size:3rem}.info-cards{grid-template-columns:1fr;gap:1.5rem}.info-card{padding:1.5rem}}@media (max-width:480px){.no-events{padding:2rem 1rem}.no-events h3{font-size:1.25rem}.info-card{padding:1rem}}