.programs-page{--catalog-deep:#061c42;--catalog-navy:#092a59;--catalog-yellow:#ffdc22;--catalog-ink:#153354;--catalog-muted:#536b81;--catalog-line:#dce5ec;color:var(--catalog-ink);background:#f5f8fc}.programs-page *{box-sizing:border-box}.programs-page :is(a,button,input,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #e3ad00}.programs-page .programs-header{z-index:10;border-bottom:0;position:relative}.programs-page .programs-header-inner{max-width:1300px}.programs-page .programs-nav a{font-size:14px;font-weight:750}.programs-page .programs-nav a.active{border-bottom-color:var(--catalog-yellow)}.programs-page .programs-hero{background:var(--catalog-deep);height:495px}.programs-page .programs-hero:after{content:"";z-index:2;background:linear-gradient(90deg, var(--catalog-yellow) 0 54%, #229453 54% 75%, #168ec0 75%);width:100%;height:7px;position:absolute;bottom:0;left:0}.programs-page .programs-hero>img{object-position:center 46%}.programs-page .programs-hero-overlay{background:linear-gradient(90deg,#061c42f5 0%,#061c42df 31%,#061c4290 58%,#061c423d 100%),linear-gradient(#0000 35%,#061c4270)}.programs-page .programs-hero-content{max-width:1300px;padding:54px 30px 76px}.programs-page .programs-hero-content>div:first-child{z-index:1;max-width:680px;position:relative}.programs-page .programs-eyebrow{color:var(--catalog-yellow);letter-spacing:.17em;text-transform:uppercase;font-size:11px;font-weight:900}.programs-page .programs-hero h1{letter-spacing:-.063em;max-width:680px;margin:17px 0 20px;font-size:clamp(48px,5.3vw,76px);line-height:.99}.programs-page .programs-hero h1 strong{color:var(--catalog-yellow);font-weight:800}.programs-page .programs-hero p{color:#d5e0ed;max-width:565px;font-size:15px;line-height:1.6}.programs-page .hero-slogan{border-left:5px solid var(--catalog-yellow);letter-spacing:.1em;background:#061c42bb;flex:none;align-self:end;gap:4px;margin:0 0 12px;padding:16px 22px;font-size:15px;font-style:normal;font-weight:900;line-height:1.15;transform:none}.programs-page .hero-slogan span:last-of-type{color:var(--catalog-yellow)}.programs-page .hero-slogan i{display:none}.programs-page .catalog-filters{max-width:1260px;margin-top:-36px;padding:0 20px}.programs-page .catalog-filter-row{border:1px solid var(--catalog-line);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:17px;box-shadow:0 15px 35px #112e521a}.programs-page .catalog-filter-row label{background:#f7f9fb;border:1px solid #e2eaf0;border-radius:7px;gap:11px;height:56px;padding:0 13px}.programs-page .catalog-filter-row label:focus-within{border-color:#1788ad;box-shadow:0 0 0 3px #1788ad20}.programs-page .catalog-filter-row label>span{color:#2d6683;background:#eaf2f7;border-radius:7px;flex:0 0 33px;place-items:center;width:33px;height:33px;font-size:18px;display:grid}.programs-page .catalog-filter-row label:first-child>span{font-size:0}.programs-page .catalog-filter-row label:first-child>span:before{content:"";background:#2d6683;width:18px;height:18px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a8 8 0 0 0-8 8c0 5.5 8 12 8 12s8-6.5 8-12a8 8 0 0 0-8-8Zm0 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a8 8 0 0 0-8 8c0 5.5 8 12 8 12s8-6.5 8-12a8 8 0 0 0-8-8Zm0 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E") 50%/contain no-repeat}.programs-page .catalog-filter-row label:nth-child(2)>span{font-size:0}.programs-page .catalog-filter-row label:nth-child(2)>span:before{content:"";background:linear-gradient(#2d6683,#2d6683) 0 4px/100% 2px no-repeat,radial-gradient(circle,#2d6683 1.5px,#0000 2px) 2px 8px/6px 6px;border:2px solid #2d6683;border-radius:3px;width:18px;height:18px}.programs-page .catalog-filter-row label:nth-child(3)>span{font-size:17px}.programs-page .catalog-filter-row label:nth-child(4)>span{font-size:0}.programs-page .catalog-filter-row label:nth-child(4)>span:before{content:"";background:linear-gradient(90deg,#0000 43%,#2d6683 43% 56%,#0000 56%),linear-gradient(#0000 43%,#2d6683 43% 56%,#0000 56%);border:2px solid #2d6683;border-radius:50%;width:18px;height:18px}.programs-page .catalog-filter-row select{color:var(--catalog-ink);font-size:13px;font-weight:750}.programs-page .catalog-filter-hint{color:#6f8397;grid-column:1/-1;justify-content:flex-start;min-height:0;margin:-2px 0 0 2px;font-size:11px;font-weight:650}.programs-page .catalog-filter-hint:before{content:"";background:#27995e;border-radius:50%;width:6px;height:6px;margin-right:8px}.programs-page .programs-section{max-width:1440px;padding:35px 30px 72px}.programs-page .programs-section-heading{gap:20px;margin-bottom:20px}.programs-page .programs-section-heading h2{color:var(--catalog-ink);letter-spacing:-.035em;font-size:34px}.programs-page .catalog-view-controls{border:1px solid var(--catalog-line);background:#fff;border-radius:8px;gap:5px;padding:4px}.programs-page .catalog-view-controls button{min-height:35px;color:var(--catalog-muted);background:0 0;border:0;border-radius:5px;padding:8px 12px}.programs-page .catalog-view-controls button.active{background:var(--catalog-navy);color:#fff}.programs-page .catalog-program-card{border-color:var(--catalog-line);transition:box-shadow .18s;box-shadow:0 7px 20px #112e520c}.programs-page .catalog-program-card:hover{box-shadow:0 13px 27px #112e5217}.programs-page .catalog-card-image{height:185px}.programs-page .catalog-card-content{min-height:175px;padding-top:17px}.programs-page .catalog-date{color:var(--catalog-ink)}.programs-page .catalog-program-info h3{color:var(--catalog-ink);font-size:18px;line-height:1.2}.programs-page .catalog-program-info p{color:var(--catalog-muted);line-height:1.45}.programs-page .catalog-program-info li{color:var(--catalog-muted);font-size:12px}.programs-page .catalog-card-actions{padding-bottom:15px}.programs-page .catalog-card-actions button,.programs-page .catalog-card-actions a{border-radius:7px;min-height:43px;font-size:12px}.programs-page .register-button{background:var(--catalog-yellow);color:var(--catalog-deep)}.programs-page .register-button:hover:not(:disabled){background:#ffe766}.programs-page .more-info-button{border:1px solid var(--catalog-line);color:var(--catalog-ink);background:#f5f8fb}.programs-page .more-info-button:hover{background:#f0f5f8}.programs-page .catalog-empty{border-color:var(--catalog-line);background:#fff}.programs-page .catalog-view-list .catalog-card-image{height:154px;min-height:0}.programs-page .catalog-view-list .catalog-card-content{min-height:0;padding:16px 15px}.programs-page .catalog-calendar{border-color:var(--catalog-line);border-radius:12px;box-shadow:0 12px 29px #112e520b}.programs-page .catalog-calendar-header h3,.programs-page .catalog-calendar-results h3{color:var(--catalog-ink)}.programs-page .catalog-calendar-event{border-left-color:#248b53}.programs-page .catalog-modal{border-color:var(--catalog-line);border-radius:13px}.programs-page .modal-primary{background:var(--catalog-yellow);color:var(--catalog-deep)}.programs-page .modal-primary:hover:not(:disabled){background:#ffe766}.programs-page .selection-choice:hover,.programs-page .selection-choice.selected{background:#fffdf0;border-color:#d5b21a}.programs-page .catalog-modal:not(.info-modal){width:min(100%,720px);max-height:min(830px,100dvh - 32px);padding:32px}.programs-page .catalog-modal:not(.info-modal) h2{color:var(--catalog-deep);letter-spacing:-.04em;margin:5px 44px 9px 0;font-size:clamp(25px,4vw,34px)}.programs-page .catalog-modal:not(.info-modal) .registration-intro{color:var(--catalog-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.programs-page .registration-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 24px;padding:0;list-style:none;display:grid}.programs-page .registration-steps li{color:#718498;border-top:3px solid #e2e9ef;align-items:center;gap:7px;min-width:0;padding:10px;font-size:11px;font-weight:800;line-height:1.2;display:flex}.programs-page .registration-steps li span{background:#f4f7fa;border:1px solid #d6e0e8;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.programs-page .registration-steps li.current{border-color:var(--catalog-yellow);color:var(--catalog-deep)}.programs-page .registration-steps li.current span{border-color:var(--catalog-yellow);background:var(--catalog-yellow)}.programs-page .registration-steps li.complete{color:var(--catalog-ink);border-color:#21915b}.programs-page .registration-steps li.complete span{color:#147344;background:#e4f7ee;border-color:#21915b}.programs-page .registration-session-choice{text-align:left;cursor:pointer;align-items:flex-start;gap:14px;width:100%;padding:18px;transition:border-color .16s,background .16s;display:flex}.programs-page .registration-session-choice:hover,.programs-page .registration-session-choice.selected{background:#fffdf1;border-color:#dab812}.programs-page .registration-session-radio{background:#fff;border:2px solid #96a9ba;border-radius:50%;flex:none;width:20px;height:20px;margin-top:2px}.programs-page .registration-session-choice.selected .registration-session-radio{border:6px solid #0d386b}.programs-page .registration-session-choice .registration-session-heading{flex:1;margin:0}.programs-page .registration-session-choice .registration-session-heading strong{color:var(--catalog-deep);font-size:17px;display:block}.programs-page .registration-session-choice .registration-session-heading small{color:var(--catalog-muted);margin-top:6px;line-height:1.4;display:block}.programs-page .registration-session-choice .registration-session-heading b{color:var(--catalog-deep);white-space:nowrap}.programs-page .registration-options-list{gap:10px;display:grid}.programs-page .registration-option{border:1px solid var(--catalog-line);background:#fff;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:17px 18px;display:grid}.programs-page .registration-option strong{color:var(--catalog-deep);font-size:16px}.programs-page .registration-option p{color:var(--catalog-muted);margin:5px 0;font-size:13px}.programs-page .registration-option small{color:var(--catalog-muted);font-size:12px}.programs-page .registration-option>b{color:var(--catalog-deep);font-size:17px}.programs-page .registration-option-quantity{color:var(--catalog-muted);text-transform:uppercase;border-top:1px solid #edf1f5;grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:12px;font-size:12px;font-weight:800;display:flex}.programs-page .registration-option-quantity .quantity-control{width:132px}.programs-page .registration-extras{gap:16px;display:grid}.programs-page .catalog-modal:has(.registration-extras) .registration-extras{flex:auto;min-height:0;padding:2px 4px 18px 0;overflow-y:auto}.programs-page .registration-extras .merchandise-list{flex:none;min-height:auto;padding:0;overflow:visible}.programs-page .registration-selected-summary{color:var(--catalog-deep);background:#eff5fa;border-radius:7px;margin:0;padding:10px 13px;font-size:13px;font-weight:750}.programs-page .registration-addon-group{gap:8px;display:grid}.programs-page .registration-addon-group h3,.programs-page .registration-extras-heading{color:var(--catalog-deep);margin:0;font-size:16px}.programs-page .registration-extras-heading small{color:var(--catalog-muted);margin-left:7px;font-size:11px;font-weight:600}.programs-page .registration-addon{border:1px solid var(--catalog-line);cursor:pointer;border-radius:9px;align-items:flex-start;gap:12px;padding:13px;display:flex}.programs-page .registration-addon input{accent-color:#0c4b87;flex:none;width:18px;height:18px;margin:1px 0 0}.programs-page .registration-addon span{flex:1}.programs-page .registration-addon strong,.programs-page .registration-addon small,.programs-page .registration-addon em{display:block}.programs-page .registration-addon strong{font-size:14px}.programs-page .registration-addon small{color:var(--catalog-muted);margin-top:3px;font-size:12px;font-style:normal}.programs-page .registration-addon em{color:#18764b;margin-top:4px;font-size:11px;font-style:normal;font-weight:750}.programs-page .registration-addon b{color:var(--catalog-deep);white-space:nowrap}.programs-page .registration-addon b small{display:inline}.programs-page .registration-empty-extras{color:var(--catalog-muted);text-align:center;border:1px dashed #bdcbd8;border-radius:9px;margin:0;padding:24px}.programs-page .catalog-modal:not(.info-modal) .catalog-modal-actions{border-top:1px solid var(--catalog-line);flex-wrap:wrap;align-items:center;padding-top:16px}.programs-page .registration-total{color:var(--catalog-muted);text-transform:uppercase;flex-direction:column;gap:3px;margin:0 auto 0 0;font-size:11px;font-weight:750;display:flex}.programs-page .registration-total strong{color:var(--catalog-deep);font-size:20px}.programs-page .catalog-modal-actions .registration-error{flex-basis:100%}@media (max-width:600px){.programs-page .catalog-modal:not(.info-modal){max-height:calc(100dvh - 16px);padding:22px 18px}.programs-page .registration-steps li{flex-direction:column;align-items:flex-start;padding:7px 3px;font-size:10px}.programs-page .registration-session-choice{padding:13px}.programs-page .registration-session-choice .registration-session-heading{flex-direction:column;gap:7px}.programs-page .catalog-modal:not(.info-modal) .catalog-modal-actions{flex-direction:row}.programs-page .catalog-modal:not(.info-modal) .catalog-modal-actions button{flex:1;width:auto}.programs-page .registration-total{flex-basis:100%}}@media (max-width:1050px){.programs-page .programs-hero{height:470px}.programs-page .hero-slogan{display:none}}@media (max-width:720px){.programs-page .programs-hero{height:535px}.programs-page .programs-hero>img{object-position:57% center}.programs-page .programs-hero-overlay{background:linear-gradient(#061c426e 0%,#061c42e8 63%,#061c42 100%)}.programs-page .programs-hero-content{align-items:end;padding:38px 22px 73px}.programs-page .programs-hero h1{margin:13px 0 17px;font-size:clamp(39px,9vw,54px)}.programs-page .programs-hero p{max-width:450px;font-size:13px;line-height:1.5}.programs-page .catalog-filters{margin-top:-30px;padding:0 14px}.programs-page .catalog-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px}.programs-page .catalog-filter-row label{height:51px;padding:0 9px}.programs-page .catalog-filter-row label>span{flex-basis:28px;width:28px;height:28px}.programs-page .catalog-filter-row select{font-size:11px}.programs-page .programs-section{padding:34px 14px 55px}.programs-page .programs-section-heading h2{font-size:28px}.programs-page .catalog-view-controls span{display:inline}.programs-page .catalog-view-controls button{font-size:11px}.programs-page .catalog-card-image{height:215px}.programs-page .catalog-view-list .catalog-card-image{height:180px}}@media (max-width:440px){.programs-page .programs-hero{height:548px}.programs-page .programs-hero h1{font-size:42px}.programs-page .programs-section-heading{flex-direction:column;align-items:flex-start;gap:17px}.programs-page .catalog-view-controls{justify-content:space-between;align-self:stretch}.programs-page .catalog-view-controls button{flex:1}.programs-page .catalog-calendar{padding:14px}}
