.catalog-hero{background:#f1f5fb;padding:46px 0 42px;border-bottom:1px solid #e6ecf5}
.catalog-hero>.wrap{display:flex;align-items:end;justify-content:space-between;gap:36px}
.catalog-breadcrumb{display:block;width:fit-content;color:#657792;font-size:13px;margin-bottom:24px}
.catalog-hero .eyebrow{display:block;color:#1248ce}
.catalog-hero h1{font-size:clamp(30px,4vw,46px);line-height:1.15;letter-spacing:-1.5px;color:#152e50;margin:12px 0 18px}
.catalog-hero p{font-size:16px;max-width:670px;line-height:1.7;color:#5d6e84;margin:0}
.catalog-register{border:1px solid #1248ce;border-radius:7px;padding:15px 20px;white-space:nowrap;color:#1248ce;font-size:14px;font-weight:700}
.catalog-register:hover{background:#1248ce;color:#fff}
.catalog-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:30px;padding-top:40px;padding-bottom:70px;align-items:start}
.catalog-sidebar{border:1px solid #dee6f1;border-radius:12px;padding:22px;background:#fff}
.catalog-filter-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:10px}
.catalog-filter-heading h2{font-family:inherit;font-size:16px;font-weight:700;line-height:1.3;margin:0}
.catalog-filter-heading button{border:0;background:none;color:#1248ce;font-size:13px;padding:4px}
.catalog-field{display:flex;flex-direction:column;gap:8px;margin:0 0 19px;font-size:14px;font-weight:600;color:#243b5a}
.catalog-field input,.catalog-field select{width:100%;min-width:0;font-family:inherit;font-size:14px;font-weight:400;line-height:1.4;background:#fff;border:1px solid #cdd8e6;border-radius:6px;padding:11px;color:#344d6e;min-height:44px}
.catalog-sidebar fieldset{margin:0 0 20px;padding:0;border:0}
.catalog-sidebar legend{font-size:14px;font-weight:600;margin-bottom:8px;float:none;width:auto}
.catalog-check{display:flex;align-items:center;gap:9px;font-size:14px;margin:9px 0;color:#4b607b}
.catalog-check input{width:16px;height:16px;accent-color:#1248ce}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.catalog-toolbar p{margin:0;font-size:14px;color:#556a85}
.catalog-view{display:flex;border:1px solid #d6e0ef;border-radius:7px;overflow:hidden}
.catalog-view button{padding:10px 15px;border:0;background:#fff;color:#1248ce;font-size:13px;min-height:42px}
.catalog-view button[aria-pressed=true]{background:#1248ce;color:white}
.catalog-course{display:grid;grid-template-columns:130px minmax(0,1fr) 125px;align-items:center;gap:20px;padding:20px;border:1px solid #dce5f1;border-radius:13px;margin-bottom:17px;background:#fff;transition:border-color .2s,box-shadow .2s}
.catalog-course:hover{border-color:#a5bdeb;box-shadow:0 6px 22px #143c7809}
.catalog-course>img{width:130px;height:115px;object-fit:contain;background:#f1f5fa;border-radius:8px}
.catalog-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}
.catalog-tags span{font-size:11px;line-height:1.5;padding:3px 7px;border-radius:4px;color:#164697;background:#eaf0ff}
.catalog-tags span:nth-child(2){background:#e7f6ef;color:#007556}.catalog-tags span:nth-child(3){background:#f1f3f7;color:#536178}
.catalog-course h2{font-size:19px;line-height:1.4;letter-spacing:-.3px;margin:0 0 8px;color:#163254}
.catalog-course p{font-size:13px;line-height:1.65;margin:3px 0;color:#61728a}
.catalog-course-actions{display:flex;flex-direction:column;gap:12px;text-align:center}
.catalog-detail{border:0;background:#1248ce;color:white;border-radius:6px;padding:12px 14px;font-size:13px;font-weight:650;min-height:44px}
.catalog-detail:hover{background:#0b359f}
.catalog-course-actions>a{font-size:12px;line-height:1.5;color:#1248ce;text-decoration:underline;text-underline-offset:3px}
.catalog-deadline{display:block;font-size:12px;color:#9a3343;margin-top:8px}
.catalog-note{font-size:13px;color:#738198;line-height:1.7;margin-top:25px}
.catalog-month{text-transform:capitalize;font-size:22px;margin:28px 0 18px;color:#173a68}
.catalog-calendar-entry{display:flex;align-items:center;gap:20px;padding:18px;border:1px solid #dce5f1;border-radius:10px;margin-bottom:12px}
.catalog-calendar-entry time{flex-shrink:0;width:62px;text-align:center;background:#eef3fc;border-radius:6px;padding:9px;color:#1248ce}
.catalog-calendar-entry time strong,.catalog-calendar-entry time span{display:block}.catalog-calendar-entry time strong{font-size:24px}.catalog-calendar-entry time span{font-size:12px}
.catalog-calendar-entry h3{font-size:17px;line-height:1.4;margin:0 0 6px}.catalog-calendar-entry p{font-size:13px;margin:0;color:#61728a}.catalog-calendar-entry>div{flex:1}
#catalog-empty{padding:45px 24px;border:1px dashed #bacbe3;border-radius:12px;text-align:center}#catalog-empty h2{font-size:24px}#catalog-empty p{color:#61728a}#catalog-clear{background:#1248ce;color:#fff;border:0;padding:12px 20px;border-radius:6px}
.catalog-error{color:#a82c40;font-size:13px}.catalog-layout :focus-visible{outline:2px solid #1248ce;outline-offset:3px}
@media(max-width:1100px){.catalog-layout{grid-template-columns:225px minmax(0,1fr);gap:20px}.catalog-course{grid-template-columns:90px minmax(0,1fr)}.catalog-course>img{width:90px;height:100px}.catalog-course-actions{grid-column:2;flex-direction:row;align-items:center}.catalog-hero>.wrap{align-items:start;flex-direction:column;gap:24px}}
@media(max-width:767px){.catalog-layout{grid-template-columns:1fr;padding-top:24px;gap:25px}.catalog-sidebar{padding:20px}#catalog-filters{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.catalog-filter-heading{grid-column:1/-1}.catalog-field{font-size:14px}.catalog-sidebar fieldset{min-width:0}.catalog-hero{padding:30px 0}.catalog-course{padding:16px;gap:15px}.catalog-course h2{font-size:17px}.catalog-toolbar{gap:10px}.catalog-calendar-entry{flex-wrap:wrap;gap:14px}.catalog-calendar-entry .catalog-detail{margin-left:76px}.catalog-register{white-space:normal}.catalog-note{font-size:12px}}
@media(max-width:400px){.catalog-course{grid-template-columns:1fr}.catalog-course>img{width:100%;height:150px}.catalog-course-actions{grid-column:1}.catalog-tags span{font-size:11px}}
