/* I&M Rwanda Academy visual theme — isolated presentation layer. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{--im-navy:#092c63;--im-blue:#03458e;--im-royal:#0b4b9f;--im-teal:#00a3b2;--im-cyan:#11bdc4;--im-soft:#f2f8fc;--im-ink:#102c50;--im-line:#dce8f0;--im-shadow:0 9px 34px rgba(8,49,96,.08);--im-radius:14px}
html{scroll-behavior:smooth}body{font-family:'DM Sans',Arial,sans-serif!important;color:var(--im-ink)!important;background:#f7fbfe!important}h1,h2,h3,h4,h5,h6,.card-title{font-family:'Plus Jakarta Sans','DM Sans',sans-serif!important;letter-spacing:-.025em;color:var(--im-navy)}a{transition:color .2s,background .2s,box-shadow .2s}a:hover{color:var(--im-teal)}:focus-visible{outline:3px solid #1ab6c7!important;outline-offset:2px}::selection{background:#bceef1;color:#00336d}
.im-academy-skin{min-height:100vh}.im-academy-skin .container,.im-academy-skin .rw-container{max-width:1320px}
/* Shared action and form primitives */
.btn-primary,.rw-btn-primary,.enesst-signup,.as-btn-primary,.btn.btn-success,.btn-info,.btn-primary:not(:disabled){background:var(--im-blue)!important;border-color:var(--im-blue)!important;color:#fff!important;border-radius:9px!important;box-shadow:0 4px 12px rgba(4,70,144,.13)}.btn-primary:hover,.rw-btn-primary:hover,.enesst-signup:hover{background:#073573!important;border-color:#073573!important;transform:translateY(-1px)}.btn-outline-primary,.rw-btn-outline,.enesst-login{background:#fff!important;border:1px solid var(--im-blue)!important;color:var(--im-blue)!important;border-radius:9px!important}.badge-info,.bg-info{background:var(--im-teal)!important}.text-primary{color:var(--im-blue)!important}.text-info{color:var(--im-teal)!important}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.form-control{border:1px solid #d8e5ee;border-radius:9px;min-height:41px;background-color:#fff;box-shadow:none}input:focus,select:focus,textarea:focus,.form-control:focus{border-color:var(--im-teal)!important;box-shadow:0 0 0 3px rgba(0,163,178,.11)!important}.card,.rw-card,.as-card,.panel,.box{border:1px solid #e3edf4;border-radius:var(--im-radius);box-shadow:var(--im-shadow);background:#fff}.table{background:white}.table thead th,table thead th{background:#f0f7fc;color:#164673!important;border-color:#e3ebf3;text-transform:none;font-weight:700}.table td,.table th{padding:12px 13px;vertical-align:middle;border-color:#edf2f8}.table-striped tbody tr:nth-of-type(odd){background:rgba(241,248,252,.55)}.pagination .active .page-link,.page-item.active .page-link{background:var(--im-blue);border-color:var(--im-blue)}.badge,.badge-pill{border-radius:20px}.nav-tabs .nav-link.active{color:var(--im-blue)!important;border-bottom:3px solid var(--im-teal)!important;font-weight:700}.dropdown-menu{border:1px solid var(--im-line);border-radius:12px;box-shadow:var(--im-shadow)}
/* Public header + hero — retain all original links and form handlers */
.enesst-header{background:#fff!important;box-shadow:0 2px 16px rgba(6,47,93,.06)!important;border-bottom:1px solid #e5eff6!important}.enesst-container{max-width:1420px!important}.enesst-brand img,.topnav-logo img{width:auto;max-width:230px;height:53px!important;object-fit:contain}.enesst-nav-links a{color:var(--im-ink)!important;font-weight:600!important}.enesst-nav-links a:hover{color:var(--im-teal)!important}.enesst-login,.enesst-signup{padding:12px 22px!important;font-weight:700!important}.rw-public-hero{position:relative!important;overflow:hidden!important;background:linear-gradient(112deg,#f3faff 0%,#fff 49%,#e9f8fa 100%)!important;min-height:430px;display:flex;align-items:center}.rw-public-hero:after{content:'';position:absolute;pointer-events:none;inset:0 0 0 auto;width:38%;background:linear-gradient(135deg,rgba(0,170,181,.85),rgba(5,62,136,.94));clip-path:polygon(31% 0,100% 0,100% 100%,0 100%);opacity:.85}.rw-public-hero .rw-container{position:relative;z-index:1;padding-top:74px!important;padding-bottom:74px!important}.rw-public-hero h1{font-size:clamp(38px,4.2vw,66px)!important;line-height:1.09!important;max-width:780px;color:var(--im-blue)!important;font-weight:800!important}.rw-public-hero p{font-size:19px!important;line-height:1.65!important;max-width:700px;color:#37536e}.rw-kicker{letter-spacing:.13em!important;color:var(--im-teal)!important;text-transform:uppercase;font-weight:800!important}.rw-values{background:linear-gradient(110deg,#063a85,#087ca3)!important}.rw-values .rw-card{background:transparent!important;border:0!important;box-shadow:none!important}.rw-value{color:#fff!important}.rw-value strong,.rw-value span{color:#fff!important}.rw-value i{color:#baf7f9!important}.rw-public-auth-actions{align-items:center}.rw-btn{border-radius:9px!important;padding:13px 22px!important;font-weight:700!important}.rw-public-hero .rw-btn-outline{background:#fff!important}
/* Public content */
.rw-container section,.course-listing,.course-card{border-color:var(--im-line)}.course-box,.course-card,.course_grid,.course-list,.instructor-card,.blog-card{background:#fff;border:1px solid var(--im-line);border-radius:14px;overflow:hidden;box-shadow:var(--im-shadow);transition:transform .2s,box-shadow .2s}.course-box:hover,.course-card:hover,.course_grid:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(8,49,96,.13)}.course-box img,.course-card img{object-fit:cover}.course-price,.price{color:var(--im-blue)}.category-box:hover,.category-card:hover{border-color:var(--im-teal)}.accordion,.accordion-item{border-color:#e2edf4}.breadcrumb{background:transparent!important}.breadcrumb a{color:var(--im-blue)!important}
/* Learner shell */
body.rw-learner-shell{background:#f3f8fc!important}.rw-learner-topbar{background:#fff!important;border-bottom:1px solid #e3edf4!important;box-shadow:0 4px 18px rgba(8,44,90,.05)!important}.rw-learner-sidebar,.rw-shell-sidebar,.rw-learner-nav{background:linear-gradient(180deg,#062f70 0%,#09234c 100%)!important;color:#fff!important}.rw-learner-sidebar a,.rw-shell-sidebar a,.rw-learner-nav a{color:#d7e8f7!important}.rw-learner-sidebar a:hover,.rw-learner-nav a:hover,.rw-shell-sidebar a:hover,.rw-learner-sidebar .active,.rw-shell-sidebar .active{background:#0a529c!important;color:#fff!important;border-radius:9px}.rw-learner-shell .rw-card,.rw-learner-shell .card{box-shadow:var(--im-shadow);border-radius:14px}.rw-top-search{border-radius:11px!important}.rw-learner-shell .progress-bar{background:linear-gradient(90deg,#0985aa,#00bdc0)!important}.rw-learner-shell .course-progress{border-radius:30px;overflow:hidden}.rw-learner-shell h1,.rw-learner-shell h2,.rw-learner-shell h3{color:var(--im-navy)!important}
/* Backoffice across both panel layouts */
body.im-admin-skin,body.im-institution-skin{background:#f4f8fc!important}.im-admin-skin .container-fluid,.im-institution-skin .container-fluid{max-width:none!important}.im-admin-skin .content-page,.im-institution-skin .content-page{background:#f4f8fc!important}.im-admin-skin .topnav-navbar,.im-institution-skin header.sticky{background:#fff!important;border-bottom:1px solid #e2ecf3!important;box-shadow:0 2px 14px rgba(8,49,96,.04)!important}.im-admin-skin .left-side-menu,.im-admin-skin .side-nav,.im-institution-skin .left-side-menu,.im-institution-skin .side-nav{background:linear-gradient(180deg,#073776,#08285a)!important}.im-admin-skin .side-nav-link,.im-institution-skin .side-nav-link{color:#dcebf7!important}.im-admin-skin .side-nav-link:hover,.im-institution-skin .side-nav-link:hover,.im-admin-skin .side-nav-item.active>.side-nav-link,.im-institution-skin .side-nav-item.active>.side-nav-link{background:#10569c!important;color:#fff!important;border-radius:8px}.im-admin-skin .card,.im-institution-skin .card{border:1px solid #e2edf5!important;border-radius:14px!important;box-shadow:var(--im-shadow)!important}.im-admin-skin .card-header,.im-institution-skin .card-header{background:#fff!important;border-bottom:1px solid #ecf1f6}.im-admin-skin .page-title,.im-institution-skin .page-title{font-weight:800;color:var(--im-navy)!important}.im-admin-skin .nav-pills .nav-link.active,.im-institution-skin .nav-pills .nav-link.active{background:var(--im-blue)!important}.im-admin-skin .btn-success,.im-institution-skin .btn-success{background:#048e99!important;border-color:#048e99!important}
/* New reusable branded surfaces */
.im-page-banner{background:linear-gradient(105deg,#073e87 0%,#0b5794 65%,#00a5b2 100%);padding:30px 34px;border-radius:16px;color:white;margin-bottom:22px;position:relative;overflow:hidden}.im-page-banner:after{content:'';width:140px;height:200%;background:rgba(255,255,255,.08);transform:rotate(30deg);position:absolute;top:-50%;right:12%}.im-page-banner h1,.im-page-banner h2{color:#fff!important;margin:0 0 6px;font-weight:800}.im-page-banner p{color:#d8f5ff;margin:0}.im-kpi{background:#fff;border:1px solid #e1ebf3;border-radius:14px;padding:22px;box-shadow:var(--im-shadow)}.im-kpi-value{font-size:30px;color:#063b80;font-weight:800}.im-kpi-label{font-size:13px;color:#58708b}.im-eyebrow{color:var(--im-teal);font-size:12px;letter-spacing:2px;font-weight:800;text-transform:uppercase}
/* Responsiveness and reduced motion */
@media(max-width:991px){.rw-public-hero{min-height:360px}.rw-public-hero:after{width:24%;opacity:.5}.rw-public-hero .rw-container{padding:54px 22px!important}.rw-public-hero h1{font-size:42px!important}.im-page-banner{padding:24px}.table-responsive{overflow-x:auto}.rw-learner-shell .rw-card{margin-bottom:16px}}@media(max-width:640px){.rw-public-hero h1{font-size:34px!important}.rw-public-hero p{font-size:16px!important}.rw-public-hero:after{opacity:.12;width:65%}.enesst-brand img{max-width:160px;height:40px!important}.rw-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.rw-hero-actions .rw-btn{width:auto;min-width:135px}.im-page-banner{padding:20px 16px}.im-kpi-value{font-size:24px}.table-responsive{display:block;overflow-x:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
