.events-page{display:flex;padding:1.5rem;background-color:var(--background,#000);color:var(--foreground,#fff);min-height:100vh;position:relative}.semester-indices{position:fixed;top:30svh;left:1.5rem;gap:1rem;z-index:1}.semester-index,.semester-indices{display:flex;flex-direction:column}.semester-index{position:relative;color:var(--foreground-200,#999);transition:color .3s ease;width:max-content;font-family:var(--font-mono,monospace)}.semester-index-highlighter{width:100%;height:1.5px;background-color:var(--foreground,#fff);transform:scaleX(0);transform-origin:left}.semester-index.active{color:var(--foreground,#fff)}.semester-index.semester-index-var-1{margin-left:0}.semester-index.semester-index-var-2{margin-left:2rem}.semester-index.semester-index-var-3{margin-left:1rem}.events-sidebar{flex:1}.events-main{flex:3;margin:17.5svh 0 5svh}.events-container{margin-bottom:7.5rem}.events-month-container{margin-bottom:3rem}.events-month{position:relative;transform:translateY(0);z-index:1;font-family:var(--font-gambarino,serif);font-size:clamp(3rem,8vw,8rem);color:var(--foreground,#fff);font-weight:400;margin:0}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.events-item{display:flex;flex-direction:column;margin-bottom:.5rem;text-decoration:none;color:inherit;transition:opacity .3s ease}.events-item:hover{opacity:.8}.events-item-img{aspect-ratio:5/3;overflow:hidden;margin-bottom:.75rem;position:relative}.events-item-img img{width:100%;height:100%;object-fit:cover}.events-item-info{display:flex;flex-direction:column;gap:.25rem}.events-item-title{font-family:var(--font-gambarino,serif);font-size:1.25rem;color:var(--foreground,#fff);margin:0}.events-item-date{text-transform:none}.events-item-date,.events-item-location{font-family:var(--font-mono,monospace);font-size:.875rem;color:var(--foreground-200,#999);margin:0}.events-item-location{text-transform:capitalize}@media (max-width:1000px){.events-grid{grid-template-columns:1fr}.events-month-container{margin-bottom:2rem}.semester-indices{top:12.5svh;gap:.5rem}}@media (max-width:768px){.events-page{padding:1rem}.events-main{margin:10svh 0 5svh}.events-container{margin-bottom:4rem}}