:root{
      --brand:#1fa26a; --brand-2:#0f6c9d; --dark:#0b132b; --muted:#6c757d; --light:#f7f9fc;
      --gradient: linear-gradient(90deg, #0f6c9d 0%, #1fa26a 100%);
      --soft-gradient: linear-gradient(180deg, #f7fbff 0%, #f7fff9 100%);
    }
    *{scroll-behavior:smooth}
    body{font-family:'Poppins',sans-serif; color:#1a1a1a; background:#fff;}

    /* Header */
    .navbar{
      transition:.3s ease; 
      backdrop-filter:saturate(140%) blur(8px);
      color:#fff;
    }
    .navbar .nav-link{color:#fff}
    .navbar-scrolled .nav-link{color:#000}
    .navbar-scrolled{
      background:#ffffffcc !important; 
      box-shadow:0 10px 30px rgba(0,0,0,.06);
    }
    .btn-gradient{background:var(--gradient); border:none; color:#fff; box-shadow:0 6px 18px rgba(31,162,106,.25);}
    .btn-gradient:hover{opacity:.95;color:#fff}
    
    .btn-primary{background:#1e0383; border:none; color:#fff; box-shadow:0 6px 18px rgba(31,162,106,.25);}
    .btn-primary:hover{opacity:.95;color:#fff}
    .btn-outline-primary {
      border-color: #1e0383;
      color: #1e0383;
    }
    .btn-outline-primary:hover {
      border-color: #1e0383;
      background: #1e0383;
      color: #fff;
    }

    .btn-secondary {
      background: #c91111;
      color: #fff;
    }

    .text-primary {
      color: #1e0383 !important;
    }
    .text-secondary {
      color: #c91111 !important;
    }

    .bg-primary {
      background-color: #1e0383 !important;
    }

    /* Section titles */
    .section-title{text-align:center;margin-bottom:2rem}
    .section-title .title-text{
      font-weight:700; font-size:clamp(1.2rem, 2vw + .6rem, 2rem);
      background:#1e0383; -webkit-background-clip:text; background-clip:text; color:transparent;
      display:inline-block;
    }
    .section-title .title-underline{width:90px;height:4px;border-radius:4px;margin:.6rem auto 0;background:#c91111;}

    /* HERO — full background slider with captions */
    .hero-carousel .carousel-item{height:100vh;min-height:620px;position:relative;color:#fff;}
    .hero-carousel .carousel-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(6,25,44,.55), rgba(6,25,44,.35));}
    .hero-carousel .carousel-caption{bottom:34%;z-index:2}
    .hero-carousel h1{font-weight:700; line-height:1.1; font-size:clamp(1.8rem, 2.8vw + 1rem, 3.2rem)}
    /* Remove borders/backgrounds from HERO nav */
    .hero-carousel .carousel-control-prev,
    .hero-carousel .carousel-control-next{background:transparent;border:none;box-shadow:none;width:6rem}
    .hero-carousel .carousel-control-prev-icon,
    .hero-carousel .carousel-control-next-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.45));}

    /* Curved separators + backgrounds */
    .wave{position:relative;margin-top:-1px}
    .wave svg{display:block;width:100%;height:80px}
    .bg-soft{background:var(--soft-gradient);}
    .bg-alt{background:#f4f7fb;}

    /* KPIs (Counters) */
    .kpi{text-align:center;padding:20px;border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(13,38,76,.06);}
    .kpi h3{font-weight:700}

    /* ABOUT */
    .about-card{
      background:#fff;border:1px solid #ddd;box-shadow:0 20px 50px rgba(13,38,76,.08);
      border-radius:20px;overflow:hidden;
    }
    .about-slider {
      height: 100%;
    }
    .about-media{min-height:340px;}
    .about-badges .badge{background:#f1eeff;color:#1e0383;font-weight:600;margin:.25rem;border-radius:50px;padding:.5rem .75rem;}
    .bullet i{color:var(--brand)}
    
    .about-slider .slick-dots {
      bottom: 25px;
    }
    .about-slider .slick-list, .about-slider .slick-track {
      height: 100%;
    }
    .about-slider .slick-dots li button:before {
      font-size: 10px;
      color: #fff;
      opacity: 0.5;
    }
    .about-slider .slick-dots li.slick-active button:before {
      opacity: 1;
    }

    /* Icon cards */
    .iconbox{border:1px solid #eef2f7;border-radius:18px;padding:24px;background:#fff;transition:.2s;height:100%;
      box-shadow:0 8px 22px rgba(13,38,76,.05);}
    .iconbox:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(13,38,76,.08)}
    .iconbox .bi{font-size:28px;background:#f1eeff;color:#1e0383;padding:10px;border-radius:12px;margin-bottom:.6rem}

    /* RMG Portal specials */
    .quote-card{border:1px solid #e6eef6;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(13,38,76,.06);padding:22px;height:100%}
    .quote-card blockquote{margin:0;font-style:italic;color:#334155}
    .quote-card .q-meta{margin-top:12px;font-weight:600;color:#1e0383}
    .tech-card{border:1px solid #e6eef6;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(13,38,76,.06);height:100%}
    .tech-card img{height:160px;width:100%;object-fit:cover}
    .tech-card .p-3{min-height:130px}

    /* PARTNERS */
    .partners-wrap{overflow:hidden;position:relative;background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(13,38,76,.06);padding:18px 0;}
    .logo-track{display:flex;width:max-content;gap:42px;align-items:center;animation:scrolling 28s linear infinite;}
    .partner{flex:0 0 auto;width:150px;max-width:18vw;opacity:.9;filter:grayscale(25%);transition:.2s;}
    .partner:hover{filter:none;opacity:1;transform:translateY(-2px)}
    @keyframes scrolling{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
    @media (max-width:575.98px){.partner{width:110px;max-width:40vw}}

    /* Collaborators (supplier cards) */
    .collab-card{border:1px solid #e9eef5;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(13,38,76,.06);}
    .collab-card .logo{max-width: 30%; object-fit:contain;filter:grayscale(15%)}
    .collab-card .badge{background:#f1eeff;color:#1e0383}

    #collabSlider .slick-slide {
      padding: 0 10px; /* gap between slides */
      box-sizing: border-box;
    }

    #collabSlider .collab-card {
      display: flex;
      flex-direction: column;
      background: #fff;
      border-radius: 8px;
      padding: 20px;
      margin: 0px 10px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.1);
      height: auto; /* reset height initially */
    }

    /* COURSES carousel */
    .courses-carousel .carousel .card{border:0;box-shadow:0 14px 36px rgba(13,38,76,.08);border-radius:16px;overflow:hidden}
    .courses-carousel .carousel-control-prev,
    .courses-carousel .carousel-control-next{
      width:54px;height:54px;top:50%;transform:translateY(-50%);
      border-radius:50%; background:#fff;border:2px solid var(--brand-2); box-shadow:0 10px 30px rgba(13,38,76,.08);opacity:.98;
    }
    .courses-carousel .carousel-control-prev{left:-26px}
    .courses-carousel .carousel-control-next{right:-26px}
    @media (max-width:991.98px){
      .courses-carousel .carousel-control-prev{left:6px}
      .courses-carousel .carousel-control-next{right:6px}
    }
    .courses-carousel .carousel-control-prev .bi,
    .courses-carousel .carousel-control-next .bi{font-size:20px;color:#1b2a41}
    .courses-carousel .carousel-indicators [data-bs-target]{width:10px;height:10px;border-radius:50%;background:#cfe2f3;transition:.25s;margin:0 6px;}
    .courses-carousel .carousel-indicators .active{background:var(--brand); transform:scale(1.25); box-shadow:0 0 0 6px rgba(31,162,106,.15);}
    .btn-enroll{position:relative;overflow:hidden}
    .btn-enroll::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);transform:translateX(-100%);transition:.6s}
    .btn-enroll:hover::after{transform:translateX(100%)}

    /* NEWS & UPDATES */
    .news-card {
      border: 1px solid #ddd;
      border-radius: 16px;
      overflow: hidden;
      /* box-shadow: 0 12px 28px rgba(13,38,76,.10); */
      transition: .3s;
      position: relative
    }
    .news-card:hover {
      transform:translateY(-4px)
    }
    .news-thumb{height:300px;object-fit:cover;width:100%}
    .news-over{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0));opacity:.5}
    .date-badge{position:absolute;top:12px;left:12px;background:#1e0383;color:#fff;padding:6px 12px;border-radius:20px;font-size:.78rem;z-index:2}
    .read-more{display:inline-flex;align-items:center;gap:.35rem;font-weight:600}
    .read-more .bi{transition:.25s}
    .read-more:hover .bi{transform:translateX(4px)}

    .product-card{
      border:0;border-radius:16px;overflow:hidden;box-shadow:0 12px 28px rgba(13,38,76,.10);transition:.3s;position:relative
    }
    .product-card:hover{
      transform:translateY(-4px)
    }
    .product-thumb{height:220px;object-fit:cover;width:100%}
    .product-over{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0));opacity:.5}

    /* FAQ improved */
    .faq-acc .accordion-item{border:0;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,.06);margin-bottom:1rem}
    .faq-acc .accordion-button{font-weight:600}
    .faq-acc .accordion-button:not(.collapsed){background:#f7fbff;color:#0f2942}
    .faq-acc .accordion-button::after{filter:hue-rotate(60deg)}

    /* Newsletter */
    .newsletter{background:#1e0383;color:#fff;border-radius:20px;padding:3rem}
    .newsletter .input-group{border-radius:50rem;overflow:hidden;box-shadow:0 12px 26px rgba(0,0,0,.15)}
    .newsletter .form-control{border:0}
    .newsletter .btn-sub{border:0}

    /* Stories (timeline) */
    .timeline{position:relative}
    .timeline::before{content:"";position:absolute;left:18px;top:0;bottom:0;width:2px;background:#e5e7eb}
    .t-item{position:relative;padding-left:48px;margin-bottom:22px}
    .t-item::before{content:"";position:absolute;left:10px;top:6px;width:18px;height:18px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 6px rgba(31,162,106,.15)}
    .t-thumb{width:72px;height:72px;border-radius:12px;object-fit:cover}

    footer{background:#0f172a;color:#cbd5e1}
    footer a{color:#cbd5e1}
    footer a:hover{color:#fff}
    
    .wp-chat {
      position: fixed;
      bottom: 30px;
      right: 20px;
      z-index: 999;
      transition: all 0.3s ease-in-out;
    }
    
    .wp-chat-img {
        width: 65px;
    }

    .back-to-top {
      position: fixed;
      bottom: 100px;
      right: 30px;
      display: none;
      border-radius: 50%;
      padding: 12px 16px;
      z-index: 999;
      box-shadow: 0 4px 8px rgba(0,0,0,0.2);
      transition: all 0.3s ease-in-out;
    }
    .back-to-top:hover {
      transform: translateY(-3px);
      box-shadow: 0 6px 12px rgba(0,0,0,0.3);
    }

    .slick-next:before, .slick-prev:before {
      display: none;
    }

    .custom-prev, .custom-next {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: rgba(0,0,0,0.3);
      border: none;
      color: #fff;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }

    .custom-prev { left: -20px; }
    .custom-next { right: -20px; }

    .custom-prev:hover, .custom-next:hover, .slick-prev:focus, .slick-next:focus {
      background: rgba(0,0,0,0.6);
      color: #fff;
    }

    /* Prev/Next buttons */
    .news-prev, .news-next {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: rgba(0,0,0,0.3);
      border: none;
      color: #fff;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }

    .news-prev { left: -20px; }
    .news-next { right: -20px; }

    .news-prev:hover, .news-next:hover {
      background: rgba(0,0,0,0.6);
    }

    .accordion-button:focus {
      box-shadow: none;
      border-bottom: 1px solid #ddd;
    }