#schoolCalendarMain{color:#1d1761;background:#fff;padding-top:96px}#schoolCalendarMain .cal-wrap{max-width:1100px;margin:0 auto;padding:0 64px}#schoolCalendarMain .cal-hero{padding:56px 0 28px;text-align:left}#schoolCalendarMain h1{font-size:56px;line-height:1.05;font-weight:400;margin:0 0 16px;color:#1d1761}#schoolCalendarMain .cal-intro{font-size:20px;line-height:1.55;max-width:720px;margin:0;color:#4a4a68}#schoolCalendarMain .cal-subscribe{padding:16px 0 40px}#schoolCalendarMain .cal-card{background:#f4f5fa;border-left:5px solid #f0102a;border-radius:0 10px 10px 0;padding:32px 36px}#schoolCalendarMain .cal-card h2{font-size:26px;line-height:1.25;font-weight:600;margin:0 0 8px;color:#1d1761}#schoolCalendarMain .cal-card p{margin:0 0 20px;font-size:17px;line-height:1.55;color:#4a4a68}#schoolCalendarMain .cal-actions{display:flex;flex-wrap:wrap;gap:12px}#schoolCalendarMain .cal-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;border:2px solid #1d1761;background:#fff;color:#1d1761;font:inherit;font-size:16px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}#schoolCalendarMain .cal-btn:hover,#schoolCalendarMain .cal-btn:focus-visible{background:#1d1761;color:#fff}#schoolCalendarMain .cal-btn--main{background:#f0102a;border-color:#f0102a;color:#fff}#schoolCalendarMain .cal-btn--main:hover,#schoolCalendarMain .cal-btn--main:focus-visible{background:#c80d22;border-color:#c80d22}#schoolCalendarMain .cal-help{margin-top:18px;font-size:15px}#schoolCalendarMain .cal-help summary{cursor:pointer;font-weight:600;color:#1d1761}#schoolCalendarMain .cal-help ul{margin:12px 0 0;padding-left:20px}#schoolCalendarMain .cal-help li{margin-bottom:6px;color:#4a4a68}#schoolCalendarMain .cal-h2{font-size:36px;font-weight:400;margin:0 0 20px;color:#1d1761}#schoolCalendarMain .cal-upcoming{padding:20px 0 24px}#schoolCalendarMain .cal-expand{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}#schoolCalendarMain .cal-months{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}#schoolCalendarMain .cal-months a{padding:8px 16px;border:1px solid #d6d8e6;border-radius:999px;font-size:15px;font-weight:600;color:#1d1761;text-decoration:none;background:#fff}#schoolCalendarMain .cal-months a:hover{border-color:#1d1761}#schoolCalendarMain .cal-expand:not(:checked)~.cal-months .cal-extra,#schoolCalendarMain .cal-expand:not(:checked)~.cal-list .cal-extra{display:none}#schoolCalendarMain .cal-month{scroll-margin-top:110px}#schoolCalendarMain .cal-month h3{font-size:24px;font-weight:600;margin:36px 0 8px;padding:14px 20px;background:#f4f5fa;border-left:5px solid #f0102a;border-radius:0 6px 6px 0;text-transform:uppercase;letter-spacing:.06em;font-size:18px;color:#1d1761}#schoolCalendarMain .cal-event{display:flex;gap:20px;padding:18px 4px;border-bottom:1px solid #e1e2ec}#schoolCalendarMain .cal-date{flex:0 0 64px;text-align:center;border:1px solid #d6d8e6;border-radius:10px;padding:8px 0;align-self:flex-start;background:#fff}#schoolCalendarMain .cal-date span{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#f0102a}#schoolCalendarMain .cal-date b{display:block;font-size:28px;line-height:1.1;font-weight:600;color:#1d1761}#schoolCalendarMain .cal-body{min-width:0;flex:1}#schoolCalendarMain .cal-body h4{font-size:19px;line-height:1.35;font-weight:600;margin:0 0 4px;color:#1d1761}#schoolCalendarMain .cal-meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;font-size:15px;color:#4a4a68}#schoolCalendarMain .cal-desc{margin:8px 0 0;font-size:15px;line-height:1.55;color:#4a4a68;overflow-wrap:anywhere}#schoolCalendarMain .cal-desc a{color:#f0102a}#schoolCalendarMain .cal-more{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:28px;padding:0 28px;border:2px solid #1d1761;border-radius:999px;font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;color:#1d1761}#schoolCalendarMain .cal-more:hover{background:#1d1761;color:#fff}#schoolCalendarMain .cal-more-close{display:none}#schoolCalendarMain .cal-expand:checked~.cal-more .cal-more-open{display:none}#schoolCalendarMain .cal-expand:checked~.cal-more .cal-more-close{display:inline}#schoolCalendarMain .cal-expand:focus-visible~.cal-more{outline:2px solid #1d1761;outline-offset:3px}#schoolCalendarMain .cal-empty{font-size:17px;color:#4a4a68}#schoolCalendarMain .cal-full{padding:16px 0 24px}#schoolCalendarMain .cal-full__box{border:1px solid #d6d8e6;border-radius:10px;padding:0 24px}#schoolCalendarMain .cal-full__box summary{cursor:pointer;padding:20px 0;font-size:18px;font-weight:600;color:#1d1761}#schoolCalendarMain .cal-frame{height:640px;margin-bottom:12px}#schoolCalendarMain .cal-frame iframe{width:100%;height:100%;border:0;border-radius:6px}#schoolCalendarMain .cal-full__link{margin:0 0 20px;font-size:15px}#schoolCalendarMain .cal-full__link a,#schoolCalendarMain .cal-next a{color:#f0102a;font-weight:600}#schoolCalendarMain .cal-next{padding:12px 0 72px}#schoolCalendarMain .cal-next p{margin:0;font-size:17px;color:#4a4a68}@media(max-width:1024px){#schoolCalendarMain .cal-wrap{padding:0 30px}}@media(max-width:767px){#schoolCalendarMain{padding-top:72px}#schoolCalendarMain .cal-wrap{padding:0 16px}#schoolCalendarMain .cal-hero{padding:32px 0 16px}#schoolCalendarMain h1{font-size:38px}#schoolCalendarMain .cal-intro{font-size:17px}#schoolCalendarMain .cal-card{padding:22px 18px}#schoolCalendarMain .cal-card h2{font-size:21px}#schoolCalendarMain .cal-actions{flex-direction:column}#schoolCalendarMain .cal-btn{width:100%}#schoolCalendarMain .cal-h2{font-size:28px}#schoolCalendarMain .cal-months{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}#schoolCalendarMain .cal-months a{white-space:nowrap}#schoolCalendarMain .cal-month h3{font-size:16px;padding:12px 14px;margin-top:28px}#schoolCalendarMain .cal-event{gap:14px;padding:16px 0}#schoolCalendarMain .cal-date{flex-basis:54px}#schoolCalendarMain .cal-date b{font-size:24px}#schoolCalendarMain .cal-body h4{font-size:17px}#schoolCalendarMain .cal-more{width:100%}#schoolCalendarMain .cal-full__box{padding:0 14px}#schoolCalendarMain .cal-frame{height:520px}}#schoolCalendarMain .cal-pdf{margin:22px 0 0}#schoolCalendarMain .cal-btn--pdf{gap:10px}@media(max-width:767px){#schoolCalendarMain .cal-pdf .cal-btn{width:100%}}