.px-calendar{min-height:65vh;padding-top:48px;padding-bottom:100px}.px-calendar>.px-kicker{margin-top:38px;display:block}.px-calendar h1{margin:14px 0 22px;font-size:clamp(52px,7vw,100px);line-height:1.15}.px-calendar h1 em{color:var(--aqua);font-style:normal}.cal-toolbar{border-top:1px solid var(--line);margin:45px 0 24px;padding-top:24px}.cal-week,.cal-filters{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.cal-week h2{font-size:24px}.px-calendar button,.px-calendar select{color:var(--ink);font:inherit;background:#101c35;border:1px solid #486172;border-radius:0;padding:12px 16px}.px-calendar button:hover{background:#24465c}.cal-filters{margin-top:24px}.cal-filters label{gap:8px;font-size:14px;display:grid}.cal-notice{background:#10213b;border:1px solid #486172;margin:24px 0;padding:26px}.cal-notice h2{margin-bottom:14px;font-size:25px}.cal-notice button,.cal-notice a{margin:16px 16px 0 0;display:inline-block}.cal-notice a{color:var(--aqua);text-decoration:underline}.cal-legend{color:#aebdd8;font-size:14px;margin-bottom:20px!important}.cal-grid{border-left:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.cal-day>header{border-bottom:2px solid var(--aqua);text-transform:uppercase;background:#142949;gap:4px;padding:16px 12px;font-size:14px;display:grid}.cal-day>header strong{font-family:Oswald,sans-serif;font-size:26px}.cal-session{overflow-wrap:anywhere;border-bottom:1px solid #365366;padding:20px 12px}.cal-session time{color:var(--aqua);font-size:14px}.cal-session h3{margin:12px 0;font-size:23px;line-height:1.25}.cal-session p{color:#c4d2e6;font-size:14px}.cal-count{margin-top:22px;font-size:14px}.cal-count strong{color:var(--aqua);font-size:25px}.cal-session meter{accent-color:#9edbd8;width:100%;height:8px;margin:10px 0;display:block}.cal-availability{color:var(--aqua);font-size:13px}.cal-empty{color:#aebdd8;padding:25px 12px;font-size:14px}@media (width<=1100px){.cal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.cal-grid{grid-template-columns:1fr}.cal-day>header{grid-template-columns:1fr auto;align-items:center}.cal-week{gap:8px}.cal-week h2{font-size:20px}.cal-filters label,.cal-filters select{width:100%}}.px-calendar h1{font-size:clamp(42px,5vw,70px)}.cal-agenda-scroll{color:#273739;background:#fafbf9;border:1px solid #dce3e5;border-radius:14px;max-height:850px;margin-top:22px;overflow:auto}.cal-agenda{min-width:1120px}.cal-agenda-head,.cal-hour-row{grid-template-columns:60px repeat(7,minmax(0,1fr));display:grid}.cal-agenda-head{z-index:2;background:#f7f9f6;border-bottom:1px solid #d9e0dd;position:sticky;top:0}.cal-agenda-head>div{text-transform:capitalize;justify-content:center;align-items:center;gap:10px;padding:20px 8px;display:flex}.cal-agenda-head strong{font-size:24px;font-weight:500}.cal-agenda-head>span{text-align:center;align-self:center;font-size:12px}.cal-hour-row{min-height:72px}.cal-hour-label{color:#657674;border-top:1px solid #e3e8e4;padding:10px 6px;font-size:12px}.cal-hour-cell{border-top:1px solid #e3e8e4;border-left:1px solid #e3e8e4;flex-direction:column;gap:5px;padding:5px;display:flex}.px-calendar .cal-event{text-align:left;color:#233a38;background:#d7ebe5;border:0;border-left:3px solid #97bdb7;border-radius:6px;flex-direction:column;gap:4px;width:100%;padding:10px;font-size:13px;line-height:1.35;transition:box-shadow .15s,filter .15s;display:flex}.px-calendar .cal-event:hover{filter:brightness(.96);background:#d7ebe5;box-shadow:0 3px 9px #233a3818}.cal-event strong{font-size:14px;font-weight:600}.cal-event-time{font-size:12px}.px-calendar .cal-tone-1,.px-calendar .cal-tone-1:hover{background:#f1dcd7;border-color:#d5a39a}.px-calendar .cal-tone-2,.px-calendar .cal-tone-2:hover{background:#e1dfee;border-color:#b1a5c8}.px-calendar .cal-tone-3,.px-calendar .cal-tone-3:hover{background:#f2e6c9;border-color:#d5bc85}.px-calendar .cal-tone-4,.px-calendar .cal-tone-4:hover{background:#d8e6ed;border-color:#9abccc}.cal-grid-help{color:#aebdd8;font-size:14px;margin-top:18px!important}.cal-course-dialog{z-index:60;border:1px solid #dce3e5;border-radius:14px;font-family:Archivo,Arial,sans-serif;color:#273739!important;background:#fafbf9!important}.cal-course-dialog h2{color:#203b39;font-size:26px}.cal-course-dialog p{color:#536966;font-size:16px}.cal-course-dialog dl>div{border-bottom:1px solid #dce3e5;justify-content:space-between;gap:18px;padding:13px 0;display:flex}.cal-course-dialog dt{color:#536966}.cal-course-dialog dd{text-align:right;font-weight:600}.cal-course-dialog .cal-dialog-note{font-size:14px}.cal-child-choice{color:#536966;gap:8px;font-size:14px;display:grid}.cal-child-choice select{color:#203b39;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #b8c9c6;border-radius:6px;padding:0 12px}.cal-course-dialog .cal-booking-button{color:#f4ffff;background:#203b39;border:1px solid #203b39;border-radius:6px;justify-content:center;align-items:center;width:100%;min-height:54px;margin-top:6px;font:600 15px Archivo,Arial,sans-serif;text-decoration:none;display:flex}.cal-course-dialog .cal-booking-button:hover{background:#315a56}.cal-course-dialog .cal-booking-button:disabled{cursor:wait;opacity:.55}.cal-course-dialog .cal-booking-success,.cal-course-dialog .cal-booking-error{border-radius:5px;margin:0;padding:12px 14px;font-size:14px}.cal-course-dialog .cal-booking-success{color:#245247;background:#e0f0e9}.cal-course-dialog .cal-booking-error{color:#7e3027;background:#f5dfdc}@media (width<=760px){.cal-agenda{min-width:1080px}.cal-agenda-scroll{max-height:75vh}.cal-agenda-head>span,.cal-hour-label{z-index:1;background:#f7f9f6;position:sticky;left:0}}
