.calendar-page{padding-top:54px}.calendar-page .calendar-eyebrow{letter-spacing:.14em;text-transform:uppercase;font-size:13px;font-weight:700}.calendar-intro{justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px;display:flex}.calendar-page h1{margin:18px 0 16px;font-size:clamp(60px,7vw,82px)}.calendar-intro>div>p:last-child{max-width:440px;color:var(--muted);margin-bottom:0}.calendar-subscribe{border:1px solid var(--line);justify-content:center;align-items:center;min-height:44px;padding:11px 16px;font-size:16px;text-decoration:none;display:inline-flex}.calendar-next{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 16px;display:grid}.calendar-page .next-card{background:var(--paper);min-width:0;color:var(--ink);border-top:5px solid var(--orange);padding:24px}.calendar-page .next-card.wakefield{border-color:var(--gold)}.calendar-page .next-card.is-selected{outline:2px solid var(--orange);outline-offset:3px}.calendar-page .next-card.wakefield.is-selected{outline-color:var(--gold)}.calendar-page .next-card .calendar-eyebrow{margin:0;font-size:12px}.calendar-page .next-card h2{margin:14px 0 18px;font-size:54px}.calendar-page .next-date{font:34px/1.15 var(--display);margin:0 0 10px}.calendar-page .next-hours{margin:0;font-size:21px;font-weight:600}.next-card a{border-top:1px solid #15141133;align-items:center;min-height:44px;margin-top:20px;padding-top:13px;font-weight:600;text-decoration:none;display:flex}.next-card a:focus-visible{outline-color:var(--ink)}.calendar-page .next-empty{margin-bottom:10px;font-size:20px}.calendar-page .calendar-fellowship{color:var(--muted);margin:0 0 32px;font-size:16px}.calendar-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.calendar-range,.calendar-filters{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.calendar-range>p{margin:0 8px;font-size:16px}.calendar-range>a,.range-disabled{border:1px solid var(--line);justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:28px;line-height:1;text-decoration:none;display:flex}.range-disabled{opacity:.35}.calendar-filters>a{border:1px solid var(--line);justify-content:center;align-items:center;min-height:44px;padding:8px 13px;font-size:16px;text-decoration:none;display:inline-flex}.calendar-filters>[aria-current=page]{background:var(--paper);color:var(--ink)}.circle-dot{background:var(--orange);width:9px;height:9px;margin-right:8px;display:inline-block}.circle-dot.wakefield{background:var(--gold)}.calendar-week-head{letter-spacing:.08em;text-transform:uppercase;text-align:center;grid-template-columns:88px repeat(7,minmax(0,1fr));gap:4px;margin-bottom:12px;font-size:12px;display:grid}.calendar-week-head>span:first-child{text-align:left}.calendar-weeks{margin:0;padding:0;list-style:none}.calendar-week{grid-template-columns:88px minmax(0,1fr);gap:4px;margin-bottom:5px;display:grid}.calendar-page .calendar-week-label{font:14px/1.4 var(--font);letter-spacing:0;color:var(--muted);margin:0;padding:15px 6px 8px 0}.calendar-week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;min-width:0;display:grid}.calendar-day{background:#26231d;gap:4px;min-width:0;min-height:76px;display:grid}.calendar-empty-dot{text-align:center;color:#766d5d;align-self:center}.calendar-event{background:var(--paper);color:var(--ink);overflow-wrap:anywhere;flex-direction:column;gap:3px;min-height:76px;padding:10px;text-decoration:none;display:flex}.calendar-event.ottawa{background:var(--orange)}.calendar-event.wakefield{background:var(--gold)}.calendar-event>strong{font:28px/1 var(--display)}.calendar-event>span{font-size:13px;font-weight:600;line-height:1.25}.calendar-event.is-selected{box-shadow:inset 0 0 0 3px var(--paper)}.calendar-event.other.is-selected{box-shadow:inset 0 0 0 3px var(--orange)}.calendar-event.is-cancelled{color:var(--ink);background:#b9afa0}.calendar-event.is-cancelled>strong{text-decoration:line-through}.calendar-event .calendar-cancelled-label{font-weight:700}.calendar-mobile-day{display:none}.calendar-page .calendar-week-empty{color:var(--muted);background:#211f19;grid-column:1/-1;align-items:center;min-height:76px;margin:0;padding:15px;font-size:15px;display:flex}.calendar-page .calendar-empty{border:1px solid var(--line);padding:30px}.calendar-details{border-top:5px solid var(--orange);background:#28241b;grid-template-columns:.9fr 1.3fr 1fr;align-items:center;gap:28px;margin-top:26px;padding:26px;scroll-margin-top:20px;display:grid}.calendar-details.wakefield{border-color:var(--gold)}.calendar-detail-date>strong{color:var(--orange);font:66px/1 var(--display);display:block}.wakefield .calendar-detail-date>strong{color:var(--gold)}.calendar-page .calendar-detail-date>p{margin:8px 0 0;font-size:15px;font-weight:600}.calendar-page .calendar-details h2{margin:0 0 13px;font-size:39px}.calendar-page .calendar-detail-hours{margin:0 0 9px;font-size:23px;font-weight:600}.calendar-page .calendar-details p{overflow-wrap:anywhere;font-size:17px}.calendar-page .calendar-detail-intro{color:var(--muted);margin:14px 0 0;font-size:16px}.calendar-details a{align-items:center;min-height:44px;font-size:17px;font-weight:600;text-decoration:none;display:inline-flex}.calendar-cancelled-notice{color:var(--gold);font-weight:700}.calendar-theme{margin-bottom:0}@media (width<=700px){.calendar-page{padding-top:32px}.calendar-intro{display:block}.calendar-intro>div>p:last-child{margin-bottom:23px;font-size:17px}.calendar-next{gap:10px}.calendar-page .next-card{padding:16px 12px}.calendar-page .next-card .calendar-eyebrow{letter-spacing:.07em;font-size:10px}.calendar-page .next-card h2{margin:12px 0 14px;font-size:clamp(27px,8.5vw,35px)}.calendar-page .next-date{font-size:26px}.calendar-page .next-hours{font-size:17px}.next-card a{margin-top:13px;padding-top:11px;font-size:14px}.calendar-page .next-empty{font-size:17px}.calendar-page .calendar-fellowship{margin-bottom:26px;font-size:14px}.calendar-controls{gap:16px}.calendar-range>p{margin:0 3px;font-size:14px}.calendar-filters>a{padding:8px 10px;font-size:14px}.calendar-week-head{display:none}.calendar-week{grid-template-columns:59px minmax(0,1fr);gap:6px;margin-bottom:7px}.calendar-page .calendar-week-label{padding-top:14px;font-size:12px}.calendar-week-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.calendar-day.is-empty{display:none}.calendar-day{min-height:83px}.calendar-event{min-height:83px;padding:10px}.calendar-event>strong{font-size:28px}.calendar-event>span{font-size:12px}.calendar-mobile-day{text-transform:uppercase;display:block}.calendar-page .calendar-week-empty{min-height:60px;font-size:14px}.calendar-details{grid-template-columns:1fr;gap:20px;padding:23px 19px}.calendar-page .calendar-details h2{font-size:39px}}.calendar-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.calendar-page .calendar-details .calendar-detail-hours{font-size:23px}.calendar-subscription{flex-wrap:wrap;align-items:start;gap:8px;max-width:100%;display:flex;position:relative}.calendar-google-open,.calendar-other>summary{min-height:44px;font:16px/1.4 var(--font);cursor:pointer;justify-content:center;align-items:center;padding:11px 15px;display:inline-flex}.calendar-google-open{background:var(--paper);color:var(--ink);border:1px solid var(--paper)}.calendar-google-mark{color:var(--orange);margin-right:8px;font-weight:700}.calendar-other>summary{border:1px solid var(--line);list-style:none}.calendar-other>summary::-webkit-details-marker{display:none}.calendar-other>summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.calendar-other-panel{z-index:5;background:var(--paper);width:min(390px,100vw - 44px);color:var(--ink);border-top:4px solid var(--gold);padding:22px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 12px 36px #0005}.calendar-page .calendar-other-panel p{margin-bottom:12px;font-size:16px}.calendar-page .calendar-google-dialog{background:var(--paper);color:var(--ink);border:0;border-top:5px solid var(--orange);max-width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);padding:28px;overflow:auto}.calendar-google-dialog::backdrop{background:#000b}.calendar-page .calendar-google-dialog h2{margin:0 0 17px;font-size:42px}.calendar-page .calendar-google-dialog p,.calendar-google-dialog li{font-size:17px;line-height:1.5}.calendar-google-dialog ol{margin:18px 0;padding-left:24px}.calendar-google-dialog li{margin-bottom:10px}.calendar-subscription label{margin-bottom:8px;font-size:16px;font-weight:600;display:block}.calendar-subscription input{width:100%;min-width:0;color:var(--ink);font:16px/1.4 var(--font);background:#fffaf0;border:1px solid #15141166;border-radius:0;margin-bottom:12px;padding:11px;display:block}.calendar-action,.calendar-dialog-close{background:var(--ink);min-height:44px;color:var(--paper);border:1px solid var(--ink);font:16px/1.4 var(--font);justify-content:center;align-items:center;padding:10px 16px;display:inline-flex}.calendar-subscription [role=status]{min-height:1.5em;margin:10px 0 16px}.calendar-subscription input:focus-visible,.calendar-action:focus-visible,.calendar-dialog-close:focus-visible{outline-color:var(--orange)}.calendar-page .calendar-subscription-note,.calendar-page .calendar-download-note{color:#514a3c;font-size:15px}.calendar-subscription noscript p{font-size:16px}@media (width<=700px){.calendar-subscription{width:100%}.calendar-google-open,.calendar-other>summary{padding:10px 12px;font-size:14px}.calendar-page .calendar-google-dialog{padding:23px}.calendar-page .calendar-google-dialog h2{font-size:37px}}.calendar-details.other{border-color:var(--paper)}.calendar-details.other .calendar-detail-date>strong{color:var(--paper)}#calendar-view{scroll-margin-top:24px}.calendar-range>.calendar-today{padding:0 12px;font-size:15px}.calendar-page .calendar-legend{color:var(--muted);font-size:14px}.calendar-phone-only,.month-short-label{display:none}.calendar-month-head,.calendar-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar-month-head{text-align:center;text-transform:uppercase;margin-bottom:10px;font-size:13px}.calendar-month{margin:0;padding:0;list-style:none}.month-day{background:#26231d;min-width:0;min-height:120px;padding:7px}.month-day>time{margin-bottom:8px;font-size:16px;display:block}.month-day.outside-month{background:#1c1a16}.month-day.outside-month>time{color:var(--muted)}.month-day.is-today>time{color:var(--gold);font-weight:700;text-decoration:underline}.calendar-month .calendar-event{min-height:44px;margin-bottom:5px;padding:9px 7px}.calendar-month .calendar-event:hover,.calendar-list-event:hover{box-shadow:inset 0 0 0 2px var(--paper)}.calendar-event-list{margin:0;padding:0;list-style:none}.calendar-list-event{border-left:5px solid var(--paper);background:#26231d;grid-template-columns:1fr 1.5fr 1fr;gap:20px;margin-bottom:7px;padding:22px;text-decoration:none;display:grid}.calendar-list-event.ottawa{border-color:var(--orange)}.calendar-list-event.wakefield{border-color:var(--gold)}.calendar-list-event>span>strong{font:28px/1.2 var(--display);margin-bottom:8px;display:block}.calendar-list-event>span>span{display:block}.calendar-list-event.is-cancelled strong{text-decoration:line-through}.calendar-inline-details{border-top:4px solid var(--orange);background:#28241b;margin-top:28px;padding:28px}.calendar-inline-details:focus{outline:2px solid var(--gold);outline-offset:5px}.calendar-event-actions{flex-wrap:wrap;gap:12px;margin:24px 0;display:flex}.calendar-page .calendar-detail-content h2{margin:16px 0;font-size:42px}.calendar-page .calendar-detail-content p{overflow-wrap:anywhere;font-size:17px}.calendar-page #calendar-event-dialog{overscroll-behavior:contain;border:0;border-top:4px solid var(--orange);background:var(--paper);width:min(620px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--ink);padding:28px;overflow-y:auto}#calendar-event-dialog::backdrop{background:#000b}.calendar-secondary{color:var(--paper);cursor:pointer;background:#302c24;border:1px solid #302c24}#calendar-event-dialog .calendar-secondary:hover,#calendar-event-dialog .calendar-secondary:active{color:var(--paper);background:#151411}#calendar-event-dialog :focus-visible{outline-offset:3px;outline:3px solid #a93700}.calendar-close-x{width:44px;min-height:44px;font:28px/1 var(--font);margin-left:auto;display:block}@media (width<=700px){.calendar-month-head,.calendar-month{gap:2px}.month-day{min-height:85px;padding:3px}.month-day>time{margin-bottom:4px;font-size:12px}.calendar-month .calendar-event{justify-content:center;align-items:center;min-height:44px;padding:5px 2px}.month-full-label{display:none}.calendar-month .month-short-label{font-size:13px;display:block}.calendar-phone-only{display:initial}.calendar-month-head{font-size:11px}.calendar-list-event{grid-template-columns:1fr;gap:12px;padding:17px}.calendar-page #calendar-event-dialog{padding:20px}.calendar-page .calendar-detail-content h2{font-size:36px}.calendar-event-actions .button{padding:14px 18px;font-size:16px}}.calendar-page .calendar-next .next-card{padding:0}.calendar-page .calendar-next .next-card-link{border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 16px;margin:0;padding:12px 16px;display:grid}.calendar-page .calendar-next .next-card h2{margin:3px 0 0;font-size:28px;line-height:1.05}.calendar-page .calendar-next .next-card .calendar-eyebrow{font-size:10px;line-height:1.2}.calendar-page .calendar-next .next-date{margin:0 0 3px;font-size:24px;line-height:1.1}.calendar-page .calendar-next .next-hours{margin:0;font-size:16px;line-height:1.2}.next-card-action{border-top:1px solid #15141133;grid-column:1/-1;padding-top:6px;font-size:14px;line-height:1.2}.next-card-unavailable{padding:12px 16px}.calendar-page .calendar-next .next-empty{margin:8px 0 0;font-size:16px;line-height:1.3}@media (width<=700px){.calendar-page .calendar-next .next-card-link{grid-template-columns:minmax(0,1fr);gap:3px;padding:7px 9px}.calendar-page .calendar-next .next-card h2{margin:0;font-size:24px;line-height:1.05}.calendar-next .next-card-heading .calendar-eyebrow{display:none}.calendar-page .calendar-next .next-date{margin:0 0 2px;font-size:18px;line-height:1.1}.calendar-page .calendar-next .next-hours{font-size:14px;line-height:1.2}.next-card-action{padding-top:4px;font-size:13px;line-height:1.1}.next-card-unavailable{padding:9px}.calendar-page .calendar-next .next-empty{font-size:14px}}
