.catalog-intro{position:relative;overflow:hidden;background:var(--navy);color:white;border-radius:12px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:24px}.catalog-intro:after{content:'';position:absolute;width:450px;height:450px;border:1px solid #6075b040;border-radius:50%;right:-170px;top:-180px;pointer-events:none}.catalog-intro h1{font-size:44px;margin-bottom:18px;max-width:640px}.catalog-intro p{color:#c3d0ee;margin:0;font-size:17px}.catalog-intro .eyebrow,.degree-hero .eyebrow{color:#9fb7ff}.catalog-emblem{display:flex;flex-direction:column;gap:14px;border-left:2px solid var(--gold);padding:15px 20px;font-size:12px;letter-spacing:2px;color:#d7e0f6;z-index:1}.offer-navigation{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 30px}.offer-navigation a{display:flex;align-items:center;gap:16px;background:var(--paper);border:1px solid var(--line);padding:18px 20px;border-radius:8px;transition:background .2s,box-shadow .2s}.offer-navigation a>span{font:24px Georgia,serif;color:#869ac5}.offer-navigation a strong{font-size:18px;display:block}.offer-navigation a small{font-size:12px;color:var(--muted)}.offer-navigation a.selected{background:#eaf0ff;border-color:#a3b7f6}.offer-navigation a:hover{box-shadow:0 0 0 3px #143bc416;border-color:var(--blue)}.explorer-toolbar{display:flex;align-items:start;gap:18px}.explorer-toolbar .area-tabs{margin:0;flex:1}.search-drawer{flex:0 0 190px;border:1px solid var(--line);border-radius:7px;background:white;padding:10px 14px}.search-drawer summary{cursor:pointer;font-size:14px;font-weight:600}.search-drawer label{display:block;font-size:13px;margin-top:15px}.search-drawer input,.search-drawer select{width:100%;border:1px solid #bac5da;background:white;border-radius:5px;padding:10px;font-size:14px;margin-top:6px}.explorer-help{display:flex;justify-content:space-between;gap:25px;font-size:12px;color:var(--muted);margin:20px 0 25px}.course-explorer{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;align-items:start}.course-list{min-width:0}.list-heading{display:flex;justify-content:space-between;padding-bottom:15px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}.course-row{display:flex;align-items:center;gap:16px;width:100%;text-align:left;background:white;border:0;border-bottom:1px solid var(--line);padding:23px 16px;color:var(--ink);transition:background .18s,border-color .18s;border-left:3px solid transparent;min-height:100px}.course-row:hover{background:#f3f6ff}.course-row.active{background:#eaf0ff;border-left-color:var(--blue)}.row-index{font:19px Georgia,serif;color:#8b9bb8;width:25px;flex-shrink:0}.row-content{flex:1}.row-content small{display:block;color:var(--blue);font-size:11px;letter-spacing:.3px;margin-bottom:5px}.row-content strong{display:block;font-size:18px;line-height:1.4;font-weight:600}.row-content>span{display:block;font-size:12px;color:var(--muted);margin-top:8px}.row-marker{color:var(--blue);font-size:22px}.course-preview{position:sticky;top:18px;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 18px 55px #15244712}.preview-picture{position:relative;background:#182c55;overflow:hidden}.preview-picture img{width:100%;height:300px;object-fit:cover;display:block}.preview-picture .pill{position:absolute;left:20px;bottom:20px}.preview-body{padding:28px}.preview-body h2{font-size:32px;margin:20px 0 15px}.preview-body>p{color:var(--muted);font-size:16px;line-height:1.65}.preview-state{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted)}.preview-state button{border:0;background:none;color:var(--blue);font-size:12px;font-weight:700;cursor:pointer}.preview-action{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:20px}.preview-action>span{font-size:12px;color:var(--muted)}.preview-changed .preview-picture img{animation:pictureReveal .3s ease}.btn{transition:background .2s,box-shadow .2s,transform .15s}.btn:hover{box-shadow:0 0 0 4px #143bc419}.btn:active,.course-row:active{transform:translateY(1px)}.diploma-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.diploma-card{border:1px solid var(--line);border-radius:9px;overflow:hidden}.diploma-card img{width:100%;height:190px;object-fit:cover;display:block}.diploma-card>div{padding:25px}.diploma-card h2{font-size:26px}.diploma-card p{font-size:15px;color:var(--muted)}.diploma-card summary{font-size:14px;font-weight:600;color:var(--blue);cursor:pointer}.diploma-card ol{padding-left:18px;font-size:14px}.diploma-card li{margin:12px 0}.degree-hero{background:linear-gradient(90deg,#101d42f5,#101d4260),url('assets/course-art.webp') center/cover;color:white;padding:45px;border-radius:12px}.degree-hero h1{font-size:54px}.degree-hero p{max-width:530px;color:#ced9ef;font-size:18px}.degree-hero .pill{background:transparent;color:white;border-color:#b6c4df}.program-overview{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:45px 0}.program-overview h2{font-size:32px}.curriculum-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:30px 0}.curriculum-grid article{background:var(--paper);padding:28px;border-top:3px solid var(--blue);border-radius:7px}.stage-number{font:28px Georgia,serif;color:#9cadce}.curriculum-grid h3{margin:12px 0}.curriculum-grid ul{padding-left:18px;font-size:15px}.curriculum-grid li{margin:10px 0}.admission-proposal{border-top:1px solid var(--line);padding-top:40px;margin-top:40px}
@keyframes pictureReveal{from{opacity:.35;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}
@media(max-width:1000px){.offer-navigation a{padding:15px 12px;gap:10px}.offer-navigation a small{font-size:11px}.catalog-emblem{display:none}.preview-picture img{height:250px}.preview-body{padding:22px}.diploma-grid{grid-template-columns:1fr}.diploma-card{display:grid;grid-template-columns:1fr 1.5fr}.diploma-card img{height:100%;min-height:220px}.explorer-toolbar{display:block}.search-drawer{margin-top:15px}}
@media(max-width:700px){.catalog-intro{padding:27px;margin-bottom:18px}.catalog-intro h1{font-size:34px}.catalog-intro p{font-size:15px}.offer-navigation{gap:7px}.offer-navigation a{display:block;padding:12px 10px}.offer-navigation a>span{display:none}.offer-navigation a strong{font-size:14px}.offer-navigation a small{font-size:10px;line-height:1.3;display:block;margin-top:6px}.explorer-help{display:block;margin-bottom:15px}.explorer-help span{display:block;margin-bottom:5px}.course-explorer{display:flex;flex-direction:column;gap:16px}.course-list{width:100%;order:2}.course-preview{order:1;top:0;z-index:5;width:100%;display:grid;grid-template-columns:105px 1fr;border-radius:8px;box-shadow:0 8px 22px #15244725}.preview-picture img{height:100%;min-height:190px;max-height:240px}.preview-picture .pill{display:none}.preview-body{padding:14px}.preview-body h2{font:600 17px/1.3 'DM Sans',Arial,sans-serif;margin:8px 0}.preview-body>p{font-size:12px;line-height:1.45;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.preview-state{font-size:10px}.preview-state>span+span{display:none}.preview-state button{font-size:10px;padding:0}.preview-action{padding-top:9px;gap:5px;flex-wrap:wrap}.preview-action .btn{font-size:12px;min-height:38px;padding:8px 12px}.preview-action>span{font-size:10px}.course-row{padding:20px 12px;gap:12px}.row-content strong{font-size:16px}.program-overview,.curriculum-grid{grid-template-columns:1fr;gap:20px}.degree-hero{padding:30px}.degree-hero h1{font-size:40px}.diploma-card{display:block}.diploma-card img{height:200px;min-height:0}header{position:static}.course-preview .preview-picture{border-radius:7px 0 0 7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.catalog-intro{background:radial-gradient(circle at 95% 20%,#315aca90,transparent 45%),var(--navy)}
@media(max-width:700px){.offer-navigation a small{font-size:12px}.preview-body>p{font-size:14px;line-height:1.4}.preview-state{font-size:12px}.preview-state button{font-size:12px}.preview-action .btn{font-size:14px;min-height:40px}.preview-action>span{font-size:12px}.preview-picture img{min-height:220px;max-height:280px}.row-content small{font-size:12px}}
