.ev-status{text-align:center;color:var(--gray-400);padding:3rem 0;font-size:1.05rem}.events-intro{margin-bottom:2.5rem}.upcoming-list{flex-direction:column;gap:1.25rem}.upcoming-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;gap:0;transition:box-shadow .2s,transform .2s}.upcoming-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.uc-thumb{width:180px;flex-shrink:0;overflow:hidden;position:relative}.uc-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.uc-thumb--clickable{cursor:pointer}.uc-thumb--clickable:hover img,.uc-thumb--clickable:focus img{transform:scale(1.04)}.uc-thumb--clickable:focus{outline:3px solid var(--gold);outline-offset:-3px}.uc-thumb-zoom{position:absolute;bottom:8px;right:8px;background:#0000008c;color:#fff;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;pointer-events:none}.uc-thumb--clickable:hover .uc-thumb-zoom,.uc-thumb--clickable:focus .uc-thumb-zoom{opacity:1}.ev-lightbox{position:fixed;inset:0;z-index:9999;background:#000000e0;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:lb-fade .18s ease}@keyframes lb-fade{0%{opacity:0}to{opacity:1}}.ev-lightbox-inner{position:relative;max-width:min(92vw,900px);max-height:90vh;display:flex;align-items:center;justify-content:center}.ev-lightbox-img{max-width:100%;max-height:88vh;border-radius:8px;box-shadow:0 24px 80px #0009;display:block}.ev-lightbox-close{position:fixed;top:1.25rem;right:1.5rem;background:#ffffff1f;border:none;color:#fff;font-size:2rem;line-height:1;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:10000}.ev-lightbox-close:hover{background:#ffffff40}.ev-lightbox-close:focus{outline:2px solid var(--gold)}.uc-body{padding:1.5rem 2rem;flex:1}.uc-date{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem}.uc-title{font-size:1.25rem;color:var(--navy);margin-bottom:.5rem}.uc-desc{font-size:.9rem;color:var(--gray-500);line-height:1.6;max-width:60ch;margin:0}.traditions-details{border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-sm);overflow:hidden}.traditions-summary{display:flex;align-items:center;justify-content:space-between;padding:2rem 2.5rem;cursor:pointer;list-style:none;gap:1rem}.traditions-summary::-webkit-details-marker{display:none}.traditions-summary:hover{background:var(--gray-100)}.trad-chevron{flex-shrink:0;color:var(--navy);transition:transform .2s}details[open] .trad-chevron{transform:rotate(180deg)}.trad-lead{padding:1.5rem 2.5rem;color:var(--gray-500);font-size:.95rem;max-width:60ch;border-top:1px solid var(--gray-200)}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;padding:0 2rem 2rem}.event-card{background:var(--gray-100);border-radius:var(--radius);border:1px solid var(--gray-200);overflow:hidden;display:flex;transition:box-shadow .2s}.event-card:hover{box-shadow:var(--shadow-sm)}.ec-month{writing-mode:vertical-rl;text-orientation:mixed;background:var(--navy);color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:1.25rem .65rem;text-align:center;min-width:42px;flex-shrink:0}.ec-body{padding:1.25rem 1.5rem}.ec-body h3{font-size:1rem;margin-bottom:.4rem}.ec-body p{font-size:.82rem;color:var(--gray-500);line-height:1.55;max-width:none}.cal-section{padding:3rem 0}.cal-img-wrap{margin-top:1.5rem}.cal-img{max-width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--gray-200)}@media(max-width:900px){.events-grid{grid-template-columns:repeat(2,1fr)}.uc-thumb{width:130px}}@media(max-width:580px){.events-grid{grid-template-columns:1fr;padding:0 1rem 1.5rem}.traditions-summary{padding:1.5rem}.trad-lead{padding:1rem 1.5rem}.upcoming-card{flex-direction:column}.uc-thumb{width:100%;height:180px}.uc-body{padding:1.25rem}}
