:root{--red:#ef233c;--blue:#006d9c;--blue2:#005a82;--pink:#f50087;--ink:#14213d;--muted:#667085;--soft:#f5f9fc;--line:#e7edf3;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.7;background:#fff}a{text-decoration:none}.topbar{background:var(--blue2);color:#fff;font-size:.9rem}.topbar a{color:#fff}.topbar .container{min-height:42px}.navbar{background:#fff;box-shadow:0 8px 30px rgba(20,33,61,.07);z-index:1030}.brand-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--red),var(--pink));color:#fff;display:grid;place-items:center;font-weight:900;letter-spacing:-1px;box-shadow:0 8px 20px rgba(239,35,60,.22)}.brand-title{font-weight:800;color:var(--ink);line-height:1.1}.brand-sub{font-size:.7rem;color:var(--blue);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.navbar-nav .nav-link{font-weight:650;color:#344054;padding:.8rem .9rem!important}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--red)}.btn-brand{background:var(--red);border:0;color:#fff;font-weight:750;border-radius:999px;padding:.75rem 1.25rem;box-shadow:0 10px 22px rgba(239,35,60,.18)}.btn-brand:hover{background:#d91830;color:#fff;transform:translateY(-1px)}.btn-outline-brand{border:2px solid var(--blue);color:var(--blue);font-weight:750;border-radius:999px;padding:.65rem 1.15rem}.btn-outline-brand:hover{background:var(--blue);color:#fff}.hero{background:linear-gradient(135deg,#f7fbfd 0%,#fff 55%,#fff5f8 100%);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:rgba(0,109,156,.08);right:-120px;top:-150px}.hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(239,35,60,.06);left:-100px;bottom:-130px}.hero-inner{position:relative;z-index:1}.eyebrow{display:inline-flex;gap:.45rem;align-items:center;padding:.35rem .75rem;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--blue);font-size:.82rem;font-weight:800}.eyebrow span{width:8px;height:8px;background:var(--red);border-radius:50%}.hero h1{font-size:clamp(2.2rem,5vw,4.4rem);font-weight:900;line-height:1.04;letter-spacing:-.04em}.hero h1 span{color:var(--red)}.hero-copy{font-size:1.08rem;color:#526071;max-width:650px}.hero-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:1rem;box-shadow:0 25px 70px rgba(20,33,61,.12)}.hero-card img{border-radius:20px;width:100%;height:390px;object-fit:cover}.section{padding:80px 0}.section-sm{padding:55px 0}.section-title{font-size:clamp(1.8rem,3vw,2.7rem);font-weight:900;letter-spacing:-.03em}.section-lead{color:var(--muted);max-width:700px}.accent{color:var(--red)}.soft-bg{background:var(--soft)}.course-card{height:100%;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.25s;box-shadow:0 8px 28px rgba(20,33,61,.05)}.course-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(20,33,61,.12)}.course-img{width:100%;height:215px;object-fit:cover}.course-body{padding:1.35rem}.course-code{display:inline-block;background:#fff0f4;color:var(--red);font-weight:850;font-size:.78rem;padding:.28rem .55rem;border-radius:8px}.course-title{font-size:1.2rem;font-weight:850;margin:.65rem 0}.course-text{color:var(--muted);font-size:.94rem}.feature{height:100%;padding:1.5rem;border:1px solid var(--line);border-radius:20px;background:#fff}.feature-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:#eef8fc;color:var(--blue);font-size:1.35rem}.stats{background:var(--blue2);color:#fff}.stat{padding:1.2rem;border-right:1px solid rgba(255,255,255,.15)}.stat:last-child{border-right:0}.stat strong{font-size:2rem;font-weight:900}.page-hero{padding:72px 0;background:linear-gradient(135deg,#f6fbfd,#fff 65%,#fff3f7)}.breadcrumb-item a{color:var(--blue)}.course-detail-img{width:100%;height:430px;object-fit:cover;border-radius:26px;box-shadow:0 18px 50px rgba(20,33,61,.12)}.detail-card{border:1px solid var(--line);border-radius:22px;background:#fff;padding:1.5rem;height:100%}.detail-card h3{font-size:1rem;text-transform:uppercase;letter-spacing:.06em;color:var(--blue);font-weight:850}.detail-card ul{padding-left:1.2rem;margin-bottom:0}.contact-card{border:1px solid var(--line);border-radius:22px;padding:1.5rem;background:#fff;height:100%}.contact-icon{width:48px;height:48px;border-radius:14px;background:#fff0f4;color:var(--red);display:grid;place-items:center;font-size:1.2rem}.gallery-img{width:100%;height:270px;object-fit:cover;border-radius:18px}.cta{background:linear-gradient(135deg,var(--blue2),var(--blue));border-radius:30px;color:#fff;padding:45px}.cta p{color:rgba(255,255,255,.78)}footer{background:#0e1b2b;color:#dce6ef}footer a{color:#c9d6e3}footer a:hover{color:#fff}.footer-title{color:#fff;font-weight:800}.footer-bottom{border-top:1px solid rgba(255,255,255,.1)}.floating-whatsapp{position:fixed;right:18px;bottom:18px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#20c66a;color:#fff;font-size:1.4rem;box-shadow:0 12px 25px rgba(0,0,0,.2);z-index:1050}.floating-call{position:fixed;right:18px;bottom:82px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-size:1.2rem;box-shadow:0 12px 25px rgba(0,0,0,.2);z-index:1050}.form-control,.form-select{border-radius:12px;padding:.75rem 1rem;border-color:#d9e2ea}.form-control:focus,.form-select:focus{border-color:var(--blue);box-shadow:0 0 0 .2rem rgba(0,109,156,.1)}@media(max-width:991px){.navbar-nav{padding:1rem 0}.hero-card img{height:300px}.stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}}@media(max-width:575px){.section{padding:58px 0}.hero{padding-top:35px}.hero-card img{height:235px}.course-img{height:200px}.course-detail-img{height:280px}.cta{padding:30px 22px}.topbar .hours{display:none}}

/* Institution logo: consistent sizing in the header and footer */
.brand-logo{display:block;width:58px;height:58px;object-fit:contain;flex:0 0 auto}
footer .brand-logo{width:64px;height:64px}
.navbar-brand{min-width:0}
.navbar-brand .brand-title{white-space:normal}
@media(max-width:575px){.brand-logo{width:48px;height:48px}footer .brand-logo{width:54px;height:54px}}
/* Contact page alignment fix */
.contact-info-card{height:auto}
.contact-form-card{height:100%}
@media(max-width:991px){.contact-form-card{height:auto}}
