/* I&M Academy — isolated public catalogue and course-detail layouts. */
body.im-public .im-catalogue,body.im-public .im-course-detail{background:#f7fafc;min-height:65vh;padding:32px 0 75px;color:#183754}
body.im-public .im-catalogue .rw-student-container,body.im-public .im-course-detail .rw-student-container{max-width:1220px;width:calc(100% - 48px);margin:0 auto}
body.im-public .im-catalogue a,body.im-public .im-course-detail a{transition:color .15s ease,background .15s ease,box-shadow .15s ease}
/* Catalogue: banner, filtering and category links */
.im-catalogue .rw-page-banner{border-radius:17px;background:linear-gradient(112deg,#00356e 0%,#005b99 67%,#008caa 100%);padding:45px 55px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:white;overflow:hidden;min-height:220px;position:relative}
.im-catalogue .rw-page-banner:after{content:"";position:absolute;right:10%;top:-125px;width:360px;height:360px;border:48px solid #ffffff12;border-radius:50%;pointer-events:none}
.im-catalogue .rw-banner-kicker{display:block;color:#a6eff1;letter-spacing:.15em;text-transform:uppercase;font-size:12px;font-weight:800;margin-bottom:12px}
body.im-public .im-catalogue .rw-page-banner h1{color:white;font-size:clamp(28px,4vw,44px);line-height:1.14;margin:0 0 13px;font-weight:800}
.im-catalogue .rw-page-banner p{color:#e1f5fb;font-size:15px;line-height:1.7;max-width:660px;margin:0}.im-catalogue .rw-banner-brand{font-size:32px;line-height:1.22;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#ffffffed;text-align:right;min-width:180px;z-index:1}
.im-catalogue .rw-catalogue-tools{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(125px,1fr)) auto;gap:12px;background:white;padding:17px;margin-top:20px;border:1px solid #e0eaf2;box-shadow:0 8px 24px #0732570c;border-radius:12px;align-items:center}
.im-catalogue .rw-control{min-width:0;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #d9e5f0;border-radius:7px;padding:0 12px;height:45px;color:#54718b}
.im-catalogue .rw-control input,.im-catalogue .rw-control select{width:100%;min-width:0;height:100%;border:0!important;outline:0;background:transparent;color:#1e3855;font-size:13px;padding:0;box-shadow:none}
.im-catalogue .rw-filter-btn{border:0;border-radius:7px;background:#003c81;color:#fff;min-height:45px;padding:0 24px;font-weight:700}
.im-catalogue .rw-category-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0 30px}.im-catalogue .rw-category-chip{min-width:0;display:flex;align-items:center;gap:12px;background:#fff;padding:15px;border:1px solid #dce7f0;border-radius:10px;color:#063d7a;box-shadow:0 5px 17px #14385a08}
.im-catalogue .rw-category-chip>i{display:grid;place-items:center;flex-shrink:0;width:45px;height:45px;border-radius:10px;background:#e6f5f8;color:#008b9e;font-size:19px}.im-catalogue .rw-category-chip strong,.im-catalogue .rw-category-chip small{display:block;line-height:1.4}.im-catalogue .rw-category-chip strong{font-size:13px;color:#07396d}.im-catalogue .rw-category-chip small{color:#718398;font-size:11px;margin-top:3px}
.im-catalogue .rw-catalogue-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:22px 0 19px}.im-catalogue .rw-catalogue-head h2{font-size:26px;margin:0 0 6px}.im-catalogue .rw-catalogue-head p{color:#6d7d91;margin:0;font-size:13px}.im-catalogue .rw-catalogue-sort{background:white;border:1px solid #dbe6ef;min-width:175px;padding:11px 15px;color:#234264;border-radius:7px}
.im-catalogue .rw-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.im-catalogue .rw-course-card{min-width:0;display:flex;flex-direction:column;border:1px solid #dfe8f0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 24px #07365c0a}.im-catalogue .rw-course-thumb{height:183px;position:relative;display:block;background:#e9f2fa}.im-catalogue .rw-course-thumb img{width:100%;height:100%;display:block;object-fit:cover}.im-catalogue .rw-course-badge{position:absolute;top:13px;left:13px;background:#e1f8f5;color:#007f87;border-radius:20px;padding:5px 11px;font-size:11px;font-weight:800}.im-catalogue .rw-course-card-body{display:flex;flex:1;flex-direction:column;gap:10px;padding:18px}.im-catalogue .rw-course-category{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#008d9e}.im-catalogue .rw-course-title{font-size:17px;line-height:1.35;min-height:45px;color:#0b3767;font-weight:800;display:block}.im-catalogue .rw-course-summary{font-size:12px;line-height:1.6;color:#637b90;margin:0}.im-catalogue .rw-course-meta{display:flex;gap:12px;flex-wrap:wrap;color:#657c92;font-size:11px;margin-top:auto}.im-catalogue .rw-course-meta i{color:#008d9e;margin-right:3px}.im-catalogue .rw-course-card-footer{border-top:1px solid #edf1f6;margin-top:7px;padding-top:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.im-catalogue .rw-course-status{color:#67809a;font-size:11px}.im-catalogue .rw-course-link{background:#003f84;color:white!important;padding:9px 12px;border-radius:6px;font-weight:700;font-size:11px}.im-catalogue .rw-course-link:hover{background:#007d98}.im-catalogue .rw-course-progress-head{display:flex;justify-content:space-between;font-size:11px;color:#4e6884}.im-catalogue .rw-progress-bar{background:#e4edf4;height:6px;border-radius:6px;overflow:hidden;margin:6px 0}.im-catalogue .rw-progress-bar span{display:block;background:#00a2ad;height:100%}.im-catalogue .rw-pagination{margin-top:35px;text-align:center}.im-catalogue .rw-pagination a,.im-catalogue .rw-pagination strong{display:inline-block;margin:4px;background:white;border:1px solid #dce8f0;padding:9px 13px;border-radius:5px;color:#003b80}
.im-catalogue .rw-course-list{display:grid;gap:16px}.im-catalogue .rw-course-list .rw-course-card{display:flex;flex-direction:row}.im-catalogue .rw-course-list .rw-course-thumb{width:260px;height:auto;min-height:190px;flex-shrink:0}
/* Details: course header, interactive tabs, content and right rail */
.im-course-detail .rw-course-detail-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:center;gap:32px;background:linear-gradient(115deg,#00346c,#006297);border-radius:16px;padding:38px 42px;min-height:320px;color:#fff;overflow:hidden}
.im-course-detail .rw-course-hero-labels{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.im-course-detail .rw-course-hero-labels span{background:#ffffff25;border:1px solid #ffffff45;color:white;font-size:11px;font-weight:700;padding:6px 11px;border-radius:18px}.im-course-detail .rw-course-hero-labels .mandatory{background:#d9f7eb;color:#006c74;border:0}
body.im-public .im-course-detail .rw-course-hero-copy h1{color:#fff;font-size:clamp(24px,3.4vw,39px);line-height:1.2;margin:0 0 18px}.im-course-detail .rw-course-hero-copy>p{color:#dceefa;font-size:14px;line-height:1.7;margin:0 0 18px}.im-course-detail .rw-course-hero-meta{display:flex;flex-wrap:wrap;gap:16px;color:#e6f3fc;font-size:12px}.im-course-detail .rw-course-hero-meta i{margin-right:7px;color:#78e2e3}.im-course-detail .rw-primary-cta{display:inline-flex;gap:9px;align-items:center;background:#00a5aa;color:white!important;margin-top:22px;border-radius:6px;padding:12px 20px;font-weight:800}
.im-course-detail .im-course-cover{height:250px;min-width:0;border-radius:12px;overflow:hidden;box-shadow:0 18px 30px #00234d52;background:#eaf0f6}.im-course-detail .im-course-cover img{width:100%;height:100%;object-fit:cover}
.im-course-detail .rw-course-layout{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:24px;align-items:start;margin-top:26px}.im-course-detail .rw-course-layout>section{min-width:0}.im-course-detail .rw-course-tabs{display:flex;align-items:center;gap:1px;flex-wrap:wrap;background:white;padding:8px 12px;border:1px solid #dee9f2;border-radius:12px 12px 0 0}.im-course-detail .rw-course-tabs button{appearance:none;border:0;background:transparent;color:#576f86;padding:13px 11px;border-bottom:3px solid transparent;font-size:12px;font-weight:700;cursor:pointer}.im-course-detail .rw-course-tabs button i{margin-right:6px}.im-course-detail .rw-course-tabs button.active,.im-course-detail .rw-course-tabs button:hover{color:#003d82;border-bottom-color:#00a6ad}
.im-course-detail .rw-course-content-panel{background:white;border:1px solid #dee9f2;border-top:0;border-radius:0 0 12px 12px;padding:27px;min-height:260px;line-height:1.7;color:#405a73}.im-course-detail .rw-tab-pane{display:none}.im-course-detail .rw-tab-pane.active{display:block}.im-course-detail .rw-tab-pane h2{font-size:23px;margin:0 0 16px;color:#003771}.im-course-detail .rw-course-description{font-size:14px;line-height:1.85;color:#405a73;overflow-wrap:anywhere}.im-course-detail .rw-course-description img{max-width:100%;height:auto}.im-course-detail .rw-course-description iframe{max-width:100%}.im-course-detail .rw-course-content-panel table{width:100%;display:block;overflow-x:auto}
.im-course-detail .rw-course-side{display:grid;gap:17px;min-width:0}.im-course-detail .rw-course-side-card{background:#fff;border:1px solid #dce7f0;border-radius:12px;padding:22px;box-shadow:0 6px 20px #063a5808}.im-course-detail .rw-course-side-card h3{font-size:17px;margin:0 0 15px;color:#0a3a74}.im-course-detail .rw-course-side-card p{font-size:12px;line-height:1.65;color:#61798e}.im-course-detail .rw-course-side-card a{overflow-wrap:anywhere}.im-course-detail .rw-progress-circle-row{display:flex;gap:15px;align-items:center}.im-course-detail .rw-circle{--p:0;display:grid;place-items:center;border-radius:50%;width:86px;height:86px;flex-shrink:0;background:conic-gradient(#00a5aa calc(var(--p)*1%),#e2edf5 0);position:relative}.im-course-detail .rw-circle:before{content:"";position:absolute;inset:9px;border-radius:50%;background:white}.im-course-detail .rw-circle strong{z-index:1;color:#003d7d}.im-course-detail .rw-side-action,.im-course-detail .rw-btn-primary{display:inline-flex;align-items:center;justify-content:center;text-align:center;background:#003e83;color:white!important;border:0;padding:12px 15px;border-radius:7px;font-weight:700;font-size:12px;max-width:100%}.im-course-detail .rw-side-action{width:100%}.im-course-detail .rw-info-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #edf2f7;font-size:12px}.im-course-detail .rw-info-row:last-child{border:0}.im-course-detail .rw-section-list{display:grid;gap:13px}.im-course-detail .rw-section-block{border:1px solid #e0e9f1;border-radius:9px;overflow:hidden;background:#fff}.im-course-detail .rw-section-block summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:15px 17px;color:#163d6b;font-size:14px;font-weight:750;background:#f5f9fc}.im-course-detail .rw-section-block summary small{color:#698095;font-weight:500}.im-course-detail .rw-section-lessons{list-style:none;margin:0;padding:5px 17px}.im-course-detail .rw-section-lessons li{padding:11px 0;border-bottom:1px solid #edf2f6;font-size:12px}.im-course-detail .rw-section-lessons li:last-child{border:0}.im-course-detail .rw-assessment-grid,.im-course-detail .rw-group-exercise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.im-course-detail .rw-assessment-card,.im-course-detail .rw-group-exercise-card,.im-course-detail .rw-course-instructor-card,.im-course-detail .rw-highlight-box{border:1px solid #dfe9f1;border-radius:10px;background:#fff;padding:18px;min-width:0}.im-course-detail .rw-assessment-card h3,.im-course-detail .rw-group-exercise-card h3{font-size:16px}.im-course-detail .rw-outcome{padding:12px 15px;background:#f0f9fb;border-left:3px solid #00a6ad;margin:8px 0}.im-course-detail .rw-course-instructor-profile{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.im-course-detail .rw-course-instructor-profile img{width:65px;height:65px;border-radius:50%;object-fit:cover}
@media(max-width:1060px){.im-catalogue .rw-catalogue-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.im-catalogue .rw-control:first-child{grid-column:span 3}.im-catalogue .rw-category-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.im-catalogue .rw-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.im-course-detail .rw-course-layout{grid-template-columns:minmax(0,1fr) 255px}.im-course-detail .rw-course-detail-hero{gap:20px;padding:30px}}
@media(max-width:760px){body.im-public .im-catalogue,body.im-public .im-course-detail{padding:16px 0 45px}body.im-public .im-catalogue .rw-student-container,body.im-public .im-course-detail .rw-student-container{width:calc(100% - 28px)}.im-catalogue .rw-page-banner{padding:28px;min-height:0}.im-catalogue .rw-banner-brand{display:none}.im-catalogue .rw-catalogue-tools{grid-template-columns:1fr 1fr}.im-catalogue .rw-control:first-child{grid-column:span 2}.im-catalogue .rw-filter-btn{grid-column:span 2}.im-catalogue .rw-catalogue-head{align-items:flex-start;flex-direction:column}.im-course-detail .rw-course-detail-hero,.im-course-detail .rw-course-layout{grid-template-columns:1fr}.im-course-detail .im-course-cover{height:205px}.im-course-detail .rw-course-side{grid-template-columns:1fr 1fr}.im-course-detail .rw-course-content-panel{padding:19px}.im-course-detail .rw-course-tabs{overflow-x:auto;flex-wrap:nowrap}.im-course-detail .rw-course-tabs button{white-space:nowrap}}
@media(max-width:540px){.im-catalogue .rw-catalogue-tools,.im-catalogue .rw-category-strip,.im-catalogue .rw-course-grid,.im-course-detail .rw-course-side,.im-course-detail .rw-assessment-grid,.im-course-detail .rw-group-exercise-grid{grid-template-columns:1fr}.im-catalogue .rw-control:first-child,.im-catalogue .rw-filter-btn{grid-column:auto}.im-catalogue .rw-course-list .rw-course-card{display:flex;flex-direction:column}.im-catalogue .rw-course-list .rw-course-thumb{width:100%;height:190px}.im-catalogue .rw-category-chip{padding:12px}.im-course-detail .rw-course-detail-hero{padding:24px}.im-course-detail .rw-course-hero-meta{gap:10px}.im-course-detail .rw-course-side-card{padding:18px}}
