:root{--ink:#14120f;--paper:#fff;--paper-tint:#faf8f4;--rule:#14120f;--rule-soft:#d9d3c6;--muted:#55524a;--gold:#be830e;--gold-tint:#f5edde;--serif:Georgia, "Iowan Old Style", "Palatino Linotype", "Book Antiqua", serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}body{font-family:var(--sans);color:var(--ink);background:var(--paper-tint);margin:0;padding:0;line-height:1.6}main{max-width:72rem;margin:0 auto;padding:2.5rem 1.5rem 4rem}a{color:var(--ink)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}nav[aria-label=site]{background:var(--paper);border-bottom:2px solid var(--rule);align-items:center;gap:2rem;padding:1.15rem 1.5rem;display:flex}nav[aria-label=site] a{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid #0000;padding-block-end:.2rem;font-size:.85rem;font-weight:600;text-decoration:none}nav[aria-label=site] a:hover,nav[aria-label=site] a:focus-visible,nav[aria-label=site] a[aria-current=page]{border-bottom-color:var(--gold)}h1{font-family:var(--serif);letter-spacing:-.01em;margin-block:.1rem .4rem;font-size:clamp(1.8rem,1.4rem + 1.6vw,2.6rem);font-weight:600}h2{font-family:var(--serif)}.tagline{color:var(--muted);max-width:42rem;margin-block:0 2rem;font-size:1.05rem}.tagline a{color:var(--ink);text-decoration-color:var(--gold);text-decoration-thickness:2px}.filters{border-bottom:1px solid var(--rule-soft);flex-direction:column;gap:.9rem;margin-block-end:2.5rem;padding-block-end:1.75rem;display:flex}.filter-row{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.filter-row a{border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:999px;padding:.4rem 1rem;font-size:.88rem;text-decoration:none;display:inline-block}.filter-row a:hover,.filter-row a:focus-visible{border-color:var(--gold)}.filter-row a[aria-current=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.week-strip{margin-block-end:2.25rem}.week-strip-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 .75rem;font-size:1rem;font-weight:700}.week-strip-row{grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.week-day-tile{border:1px solid var(--rule);background:var(--paper);color:var(--ink);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;padding:.7rem .5rem;text-decoration:none;display:flex}.week-day-tile:hover,.week-day-tile:focus-visible{border-color:var(--gold)}.week-day-tile[aria-current=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.week-day-name{font-size:.85rem;font-weight:700}.week-day-date{color:var(--muted);font-size:.72rem}.week-day-tile[aria-current=true] .week-day-date{color:var(--paper-tint)}.week-day-count{letter-spacing:.02em;color:var(--gold);font-size:.7rem}.week-day-tile[aria-current=true] .week-day-count{color:var(--gold)}.event-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.75rem;margin:0;padding:0;list-style:none;display:grid}.event-card{background:var(--paper);border:1px solid var(--rule-soft);flex-direction:column;transition:border-color .15s;display:flex;position:relative;overflow:hidden}.event-card:hover,.event-card:focus-within{border-color:var(--ink)}.event-card-link{z-index:1;position:absolute;inset:0}.event-card-media{aspect-ratio:5/3;border-bottom:1px solid var(--rule-soft);overflow:hidden}.event-card-media img{object-fit:cover;width:100%;height:100%;display:block}.event-card-body{z-index:2;pointer-events:none;flex-direction:column;gap:.35rem;padding:1.1rem 1.25rem 1.25rem;display:flex;position:relative}.event-card-body .save-form{pointer-events:auto}.event-college{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.event-intent{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.intent-grid{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.intent-tile{background:var(--paper);border:1px solid var(--rule);min-height:6.5rem;color:var(--ink);font-family:var(--serif);text-align:center;justify-content:center;align-items:center;padding:1.25rem;font-size:1.1rem;font-weight:600;text-decoration:none;display:flex}.intent-tile:hover,.intent-tile:focus-visible{background:var(--gold-tint);border-color:var(--gold)}.event-card h2{margin:.15rem 0 0;font-size:1.15rem;font-weight:600;line-height:1.3}.event-when,.event-location{color:var(--muted);margin:0;font-size:.88rem}.event-description{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.35rem 0 0;font-size:.92rem;display:-webkit-box;overflow:hidden}.empty-state{color:var(--muted);padding:2rem 0}.save-form{margin-block-start:.5rem}.save-form button{border:1px solid var(--ink);background:var(--gold);color:var(--ink);cursor:pointer;border-radius:999px;padding:.4rem 1.1rem;font-size:.85rem;font-weight:600}.save-form button:hover,.save-form button:focus-visible{background:var(--ink);color:var(--paper)}.event-card .saved-badge,.saved-badge{color:var(--ink);margin-block-start:.5rem;font-size:.85rem;font-weight:600}.saved-badge:before{content:"✓";color:var(--gold)}.event-detail-main{max-width:46rem}.back-link{color:var(--muted);margin-block-end:1.5rem;font-size:.9rem;text-decoration:none;display:inline-block}.back-link:hover,.back-link:focus-visible{color:var(--ink);text-decoration:underline}.event-detail{background:var(--paper);border:1px solid var(--rule-soft)}.event-detail-image{aspect-ratio:5/3;object-fit:cover;border-bottom:2px solid var(--gold);width:100%;height:auto;display:block}.event-detail-body{padding:1.75rem 2rem 2.25rem}.event-detail-body h1{margin-block:.2rem .3rem}.event-meta{border-block:1px solid var(--rule-soft);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem;margin:1.5rem 0;padding-block:1.25rem;display:grid}.event-meta div{margin:0}.event-meta dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.event-meta dd{margin:.2rem 0 0;font-size:1rem}.event-detail-description{max-width:38rem;font-size:1.02rem}.official-block{border-block-start:1px solid var(--rule-soft);margin-block-start:1.75rem;padding-block-start:1.5rem}.official-link{border:1px solid var(--ink);color:var(--ink);padding:.55rem 1.3rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.official-link:hover,.official-link:focus-visible{background:var(--ink);color:var(--paper)}.official-note{color:var(--muted);max-width:34rem;margin:.75rem 0 0;font-size:.85rem}form{flex-wrap:wrap;align-items:center;gap:.5rem;margin-block:1.5rem;display:flex}input{min-width:12rem;font:inherit;flex:1;padding:.4rem .6rem}button{font:inherit;padding:.4rem 1rem}
