.events-hub{--calendar-gap:28px}.events-hub [hidden]{display:none!important}.calendar-introduction{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;padding:54px var(--page) 64px;align-items:center}.calendar-welcome>.eyebrow{margin-bottom:24px}.calendar-welcome h1{font-size:clamp(39px,4vw,62px);max-width:15ch;line-height:1.1;margin-bottom:28px}.calendar-welcome>p{max-width:47ch}.calendar-welcome .button-row{margin-top:30px}.calendar-zone{font-size:14px;margin-top:23px;color:var(--olive)}.calendar-featured{border:1px solid var(--sand);background:var(--sand)}.schedule-flyer{aspect-ratio:3/2;display:block}.schedule-flyer img{width:100%;height:100%;object-fit:contain}.calendar-featured>div{padding:23px 27px}.calendar-featured .eyebrow{font-size:11px;margin-bottom:10px}.calendar-featured h2{font-size:30px;margin-bottom:12px}.calendar-featured h2 a{display:flex;align-items:center;justify-content:space-between;gap:20px}.calendar-featured p{font-size:15px}.calendar-views{display:flex;margin:0 var(--page);border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);gap:0}.calendar-views>a{flex:1 1 0;min-width:0;padding:23px 25px;border-right:1px solid var(--sand);font-family:var(--display);font-size:27px;line-height:1.2;min-height:90px}.calendar-views>a:last-child{border-right:0}.calendar-views>a>span{display:block;font-family:var(--body);font-size:13px;line-height:1.5;margin-top:6px}.calendar-views>a[aria-current=page]{background:var(--olive);color:var(--eggshell)}.calendar-view{padding:64px var(--page)}.calendar-section-heading{display:flex;gap:40px;justify-content:space-between;align-items:end;margin-bottom:38px}.calendar-section-heading>div{max-width:600px}.calendar-section-heading .eyebrow{margin-bottom:18px}.calendar-section-heading h2{font-size:clamp(34px,3.5vw,47px)}.calendar-section-heading>p{max-width:40ch;font-size:16px}.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px var(--calendar-gap)}.schedule-card{border:1px solid var(--sand);min-width:0}.schedule-copy{padding:25px}.schedule-copy>.eyebrow{font-size:10px;margin-bottom:14px}.schedule-date{font-size:14px;line-height:1.6;margin-bottom:19px}.schedule-date>span{display:block;color:var(--olive)}.schedule-copy h3{font-size:28px;margin-bottom:17px}.schedule-copy h3 a{display:flex;justify-content:space-between;gap:18px}.schedule-copy>p{font-size:16px}.schedule-copy .schedule-offer{font-size:14px;margin-top:10px}.schedule-copy .button-row{margin-top:25px;gap:12px}.schedule-copy .button{font-size:14px;padding:12px 16px;gap:12px}.schedule-copy .text-link{font-size:14px;min-height:44px}.calendar-share{border-top:1px solid var(--sand);margin-top:23px;padding-top:15px}.calendar-share>summary{font-size:14px;cursor:pointer;min-height:44px;padding-top:12px}.calendar-share p,.calendar-share a{font-size:14px}.calendar-share p{margin-top:10px}.calendar-save-links{display:flex;flex-wrap:wrap;gap:5px 15px}.calendar-save-links a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline}.calendar-more{margin:40px auto 0;display:flex}.calendar-empty{padding:25px;border:1px solid var(--sand)}.weekly-day{display:grid;grid-template-columns:.3fr 1fr;gap:40px;padding:30px 0;border-top:1px solid var(--sand)}.weekly-day>h3{font-size:32px;padding-top:15px}.weekly-program{padding:20px 0;display:flex;align-items:start;gap:30px;justify-content:space-between}.weekly-program+.weekly-program{border-top:1px solid var(--sand);margin-top:15px;padding-top:30px}.weekly-program .eyebrow{font-size:11px;margin-bottom:10px}.weekly-program h4{font-family:var(--display);font-size:27px;font-weight:400;margin:0 0 14px}.weekly-program p{font-size:16px}.weekly-program .weekly-offer{margin-top:7px;font-size:14px}.weekly-program>.text-link{font-size:14px;flex-shrink:0;gap:15px}.calendar-month-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:15px}.calendar-month-controls>p{font-family:var(--display);font-size:30px}.calendar-month-controls .button{min-width:50px;justify-content:center;padding:10px}.calendar-month{margin-bottom:36px}.month-table{width:100%;table-layout:fixed;border-collapse:collapse}.month-table caption{text-align:left;font-size:20px;padding:12px 0}.month-table th{text-align:left;padding:14px 12px;font-size:13px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--sand);background:var(--sand)}.month-table abbr{text-decoration:none}.month-table td{border:1px solid var(--sand);padding:0;vertical-align:top;height:105px}.month-table td>a{display:flex;flex-direction:column;padding:13px 12px;min-height:105px;gap:15px}.month-table td>a:hover,.month-table td>a[data-selected=true]{background:var(--olive);color:var(--eggshell)}.calendar-date-number{display:block;padding:13px 12px;color:var(--olive)}.outside-month .calendar-date-number{opacity:.35}.calendar-today>a{box-shadow:inset 0 0 0 2px var(--olive)}.calendar-count{font-size:12px;line-height:1.3}.calendar-day-panel{border-top:1px solid var(--sand);padding:28px 0}.calendar-day-panel h3{font-size:28px;margin-bottom:20px;scroll-margin-top:180px}.calendar-day-panel ul{padding:0;margin:0;list-style:none}.calendar-day-panel li{display:flex;align-items:center;flex-wrap:wrap;gap:15px 30px;padding:17px 0;border-bottom:1px solid var(--sand)}.calendar-day-panel li .eyebrow{font-size:11px;min-width:145px;margin:0}.calendar-day-panel li>a{font-family:var(--display);font-size:23px;display:flex;align-items:center;gap:25px;min-height:44px}.calendar-day-panel li>span:last-child{font-size:13px;color:var(--olive);margin-left:auto}.calendar-day-panel p{font-size:16px}.calendar-subscribe{background:var(--olive);color:var(--eggshell);padding:65px var(--page);display:grid;grid-template-columns:1.15fr .85fr;gap:75px;scroll-margin-top:170px}.calendar-subscribe .eyebrow{color:var(--saffron);font-size:12px;margin-bottom:25px}.calendar-subscribe h2{font-size:clamp(35px,4vw,53px);margin-bottom:30px}.calendar-subscribe p{font-size:16px;line-height:1.6;margin-bottom:15px}.calendar-subscribe .button-row{margin:25px 0}.calendar-subscribe .button{font-size:15px;padding:13px 16px;gap:16px}.calendar-subscribe .feed-label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-top:30px}.calendar-feed-url{width:100%;border:1px solid var(--sand);background:var(--eggshell);color:var(--mud);padding:13px;font:14px var(--body);margin:0 0 15px;min-height:48px}.calendar-subscribe a:not(.button){text-decoration:underline}.calendar-instructions{border-left:1px solid var(--sand);padding-left:40px}.calendar-instructions h3{font-size:29px;margin-bottom:20px}.calendar-instructions details{border-bottom:1px solid var(--sand);padding:12px 0}.calendar-instructions summary{cursor:pointer;font-size:19px;line-height:1.4;min-height:48px;display:list-item;padding-top:12px}.calendar-instructions details p{margin:15px 0}.calendar-instructions details a{display:inline-flex;min-height:44px;align-items:center;font-size:16px}.calendar-closing{padding:60px var(--page);display:flex;justify-content:space-between;gap:35px;align-items:center}.calendar-closing .eyebrow{font-size:11px;margin-bottom:18px}.calendar-closing h2{font-size:37px}.calendar-closing .button-row{gap:20px}.copy-feedback{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--mud);color:var(--eggshell);padding:12px 22px;max-width:90vw;z-index:50;font-size:15px}.copy-feedback:empty{display:none}
@media(max-width:1050px){.calendar-introduction{gap:30px}.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-subscribe{gap:35px}.calendar-instructions{padding-left:25px}.calendar-closing{align-items:start;flex-direction:column}.weekly-day{grid-template-columns:.3fr 1fr;gap:20px}.weekly-program{flex-direction:column;gap:15px}}
@media(max-width:700px){.calendar-introduction{grid-template-columns:1fr;padding:35px var(--page) 38px;gap:35px}.calendar-welcome h1{font-size:40px;max-width:17ch}.calendar-welcome>p{font-size:17px}.calendar-welcome .eyebrow{font-size:11px}.calendar-welcome .button-row{gap:18px}.calendar-featured h2{font-size:29px}.calendar-featured p{font-size:14px}.calendar-views>a{padding:18px 8px;font-size:clamp(18px,5vw,22px);min-height:80px}.calendar-views>a>span{font-size:11px;max-width:10ch}.calendar-view{padding:40px var(--page)}.calendar-section-heading{display:block;margin-bottom:30px}.calendar-section-heading h2{font-size:35px}.calendar-section-heading>p{margin-top:22px;font-size:16px}.calendar-section-heading .eyebrow{font-size:11px}.schedule-grid{grid-template-columns:1fr;gap:30px}.schedule-copy{padding:24px}.schedule-copy h3{font-size:29px}.weekly-day{grid-template-columns:1fr;gap:8px;padding:22px 0}.weekly-day>h3{font-size:30px}.weekly-program{padding:20px 0}.calendar-month-controls>p{font-size:25px}.month-table th{font-size:10px;padding:12px 4px;text-align:center;letter-spacing:0}.month-table td,.month-table td>a{height:78px;min-height:78px}.month-table td>a{padding:10px 5px;gap:13px;font-size:16px;text-align:center;align-items:center}.calendar-date-number{padding:10px 5px;text-align:center;font-size:15px}.calendar-count{font-size:12px}.calendar-count .count-word{display:none}.calendar-day-panel h3{font-size:26px}.calendar-day-panel li{display:block;padding:18px 0}.calendar-day-panel li .eyebrow{display:block;margin-bottom:7px}.calendar-day-panel li>a{font-size:24px;justify-content:space-between}.calendar-day-panel li>span:last-child{display:block;margin-top:8px}.calendar-subscribe{grid-template-columns:1fr;padding:45px var(--page);gap:35px}.calendar-subscribe h2{font-size:39px}.calendar-instructions{padding:30px 0 0;border-left:0;border-top:1px solid var(--sand)}.calendar-feed-url{font-size:12px}.calendar-subscribe .button-row{gap:12px}.calendar-closing{padding:45px var(--page)}.calendar-closing h2{font-size:34px}.copy-feedback{bottom:80px;width:max-content;text-align:center}.calendar-zone{font-size:13px!important}}
@media(prefers-reduced-motion:reduce){.events-hub *{scroll-behavior:auto!important}}
