.page-intro{padding-top:80px;padding-bottom:35px;max-width:1100px}.page-intro h1{font-size:clamp(2.7rem,6vw,5rem);line-height:1.06;margin:15px 0 24px}.page-intro p{max-width:760px}.calendar-section{padding-top:20px}.calendar-controls{display:flex;gap:22px;flex-wrap:wrap;padding:24px;background:#ede9df;border-radius:12px}.calendar-controls label{display:grid;gap:8px;font-size:.8rem;font-weight:700;flex:1;min-width:175px}.calendar-controls input,.calendar-controls select{width:100%;min-height:48px;background:#fffdf8;color:#17323a;border:1px solid #babcb4;border-radius:5px;padding:12px;font:inherit}.month-controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:26px 0}.month-controls h2{font-size:1.8rem;margin:0 auto 0 0}.month-controls button{border:1px solid #89948b;padding:10px 15px;border-radius:5px;background:#fffdf8;min-height:44px}#calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:25px}.weekday{text-align:center;padding:10px;font-weight:700;font-size:.8rem}.calendar-day{display:flex;flex-direction:column;gap:15px;min-height:90px;background:#fffdf8;border:1px solid #d7d9d0;border-radius:5px;padding:12px;text-align:left;color:#17323a}.calendar-day span{font-size:.7rem}.calendar-day.today{border:2px solid #9b7544}.calendar-day.selected{background:#17323a;color:white}.calendar-day:hover{box-shadow:inset 0 0 0 2px #b58a50}.event-card{display:flex;gap:26px;align-items:start;border-top:1px solid #ccd0c5;padding:30px 0}.event-date{width:74px;flex-shrink:0;display:grid;text-align:center;border:1px solid #c9b490;border-radius:7px;overflow:hidden}.event-date span{text-transform:uppercase;font-size:.75rem;font-weight:700;background:#17323a;color:#fff;padding:7px}.event-date b{font-family:Fraunces,serif;font-size:2rem;padding:7px}.event-details{flex:1}.event-details h3{font-size:1.5rem;margin:4px 0 10px}.event-details p{margin:6px 0}.event-when{font-weight:700}.event-source,.calendar-note{font-size:.8rem;color:#58665c}.event-price{font-size:.9rem}.event-link{margin-top:30px;white-space:nowrap}.calendar-sources{border-radius:12px;background:#e9e5d9;padding:26px;margin-top:35px;display:flex;gap:25px;flex-wrap:wrap;align-items:center}.calendar-sources h3{width:100%;margin:0}.calendar-empty{padding:35px;background:#ede9df;border-radius:9px}.cancelled h3{text-decoration:line-through}[hidden]{display:none!important}@media(max-width:650px){.page-intro{padding-top:45px}.calendar-controls{gap:15px;padding:18px}.event-card{gap:15px;flex-wrap:wrap}.event-date{width:54px}.event-details{min-width:calc(100% - 70px)}.event-link{margin:0 0 0 69px}.calendar-day{padding:7px;min-height:72px;gap:9px}.calendar-day span{font-size:.6rem}.month-controls{gap:8px}.month-controls h2{font-size:1.3rem}.calendar-sources{display:grid;gap:15px}}
