 @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 html {
     overflow: auto !important;
 }

 body {
     font-family: 'Inter', sans-serif;
     overflow-x: hidden;
     background: #f8fafc;
 }
a.text-dark.text-decoration-none.hover-warning {
    font-size: 18px;
}
.d-none.d-lg-flex.gap-4.fw-semibold.align-items-center{
    font-size: 18px !important;
}
.kg-desktop-menu {
    gap: 1.25rem;
    font-size: 0.98rem;
    white-space: nowrap;
}

.kg-desktop-menu .dropdown-menu-custom {
    min-width: 330px;
    max-height: calc(100vh - 120px);
    overflow-y: auto;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .kg-desktop-menu {
        gap: 0.75rem;
        font-size: 0.88rem;
    }

    nav .primary-bg {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

@media (max-width: 991px) {
    .mobile-menu {
        max-width: 360px;
    }
}
 .primary {
     color: #e8a838;
 }

 .primary-bg {
     background-color: #e8a838;
 }

 .primary-bg:hover {
     background-color: #d4952a;
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(232, 168, 56, 0.3);
 }

 .hero-bg {
     background: linear-gradient(135deg, #0f172a 0%, #1c532a 100%);
     position: relative;
     overflow: hidden;
 }

 .kg-hero-carousel-section {
     min-height: 75vh;
     display: flex;
     align-items: center;
 }

 .kg-hero-slide {
     min-height: 75vh;
     padding: 4.5rem 0 5rem;
 }

 .kg-hero-badge {
     display: inline-flex;
     align-items: center;
     padding: 0.55rem 1rem;
     border-radius: 999px;
     margin-bottom: 1rem;
     background: rgba(232, 168, 56, 0.2);
     border: 1px solid rgba(232, 168, 56, 0.42);
     color: #ffd369;
     font-weight: 800;
     font-size: 0.9rem;
 }

 .kg-hero-stats {
     display: flex;
     flex-wrap: wrap;
     gap: 1.2rem;
     align-items: center;
     opacity: 0.9;
 }

 .kg-hero-stats div {
     text-align: center;
 }

 .kg-hero-stats h3 {
     color: #ffffff;
     font-weight: 800;
     margin-bottom: 0;
 }

 .kg-hero-stats small {
     color: rgba(255, 255, 255, 0.68);
 }

 .kg-hero-stats span {
     width: 1px;
     height: 30px;
     background: rgba(255, 255, 255, 0.2);
 }

 .kg-hero-image-wrap {
     position: relative;
     max-width: 620px;
     margin-left: auto;
     transform: perspective(1000px) rotateY(-5deg);
 }

 .kg-hero-image-wrap img {
     width: 100%;
     aspect-ratio: 1.18 / 1;
     object-fit: cover;
     border-radius: 22px;
     box-shadow: 0 24px 58px rgba(0, 0, 0, 0.34);
 }

 .kg-hero-image-caption {
     position: absolute;
     left: 1.2rem;
     right: 1.2rem;
     bottom: 1.2rem;
     border-radius: 16px;
     padding: 0.9rem 1rem;
     color: #ffffff;
     font-weight: 800;
     background: rgba(15, 23, 42, 0.62);
     border: 1px solid rgba(255, 255, 255, 0.18);
     backdrop-filter: blur(8px);
 }

 .kg-hero-indicators {
     bottom: 1.1rem;
     margin-bottom: 0;
 }

 .kg-hero-indicators [data-bs-target] {
     width: 12px;
     height: 12px;
     border-radius: 50%;
     border: 0;
     background-color: rgba(255, 255, 255, 0.55);
 }

 .kg-hero-indicators .active {
     background-color: #e8a838;
 }

 .kg-hero-control {
     width: 7%;
 }

 @media (max-width: 991px) {
     .kg-hero-slide {
         min-height: auto;
         padding: 3rem 0 4.2rem;
     }

     .kg-hero-image-wrap {
         max-width: 100%;
         margin: 0;
         transform: none;
     }

     .kg-hero-image-wrap img {
         aspect-ratio: 16 / 10;
     }

     .kg-hero-control {
         display: none;
     }
 }

 @media (max-width: 575px) {
     .kg-hero-slide {
         padding: 2.4rem 0 3.8rem;
     }

     .kg-hero-stats {
         gap: 0.8rem;
     }

     .kg-hero-stats span {
         display: none;
     }

     .kg-hero-stats div {
         flex: 1 1 30%;
     }

     .kg-hero-image-caption {
         left: 0.75rem;
         right: 0.75rem;
         bottom: 0.75rem;
         font-size: 0.85rem;
     }
 }

 /* Premium Course Cards */
 .course-card {
     background: #fff;
     border-radius: 20px;
     overflow: hidden;
     transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
     height: 100%;
     border: 1px solid rgba(0, 0, 0, 0.05);
     cursor: pointer;
 }

 .course-card:hover {
     transform: translateY(-12px);
     box-shadow: 0 25px 45px rgba(0, 0, 0, 0.12);
     border-color: #e8a838;
 }

 .course-card .p-5 {
     transition: all 0.4s ease;
 }

 .course-card:hover .p-5 {
     transform: scale(1.05);
 }

 .hero-section p {
     line-height: 1.8;
     letter-spacing: 0.5px;
     font-weight: 500;
 }

 .hero-bg::before {
     content: '';
     position: absolute;
     width: 150%;
     height: 150%;
     background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 60%);
     top: -25%;
     left: -25%;
     animation: ripple 20s linear infinite;
 }

 @keyframes ripple {
     0% {
         transform: scale(1) translate(0, 0);
     }

     50% {
         transform: scale(1.1) translate(2%, 2%);
     }

     100% {
         transform: scale(1) translate(0, 0);
     }
 }

 .hero-bg::before {
     content: '';
     position: absolute;
     width: 200%;
     height: 200%;
     background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 70%);
     animation: rotate 35s linear infinite;
 }

 @keyframes rotate {
     from {
         transform: rotate(0deg);
     }

     to {
         transform: rotate(360deg);
     }
 }

 .top-header {
     background: #1c532a;
     color: #cbd5e1;
 }

.top-social-links {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.top-follow-label {
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: capitalize;
}

 .top-social-link {
     width: 30px;
     height: 30px;
     border-radius: 50%;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     position: relative;
     color: #ffffff;
     background: rgba(255, 255, 255, 0.1);
     border: 1px solid rgba(255, 255, 255, 0.18);
     text-decoration: none;
     overflow: hidden;
     transform: translateY(0);
     animation: topSocialEnter 0.55s ease both;
     transition: transform 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
 }

 .top-social-link:nth-child(2) {
     animation-delay: 0.06s;
 }

 .top-social-link:nth-child(3) {
     animation-delay: 0.12s;
 }

 .top-social-link:nth-child(4) {
     animation-delay: 0.18s;
 }

 .top-social-link:nth-child(5) {
     animation-delay: 0.24s;
 }

 .top-social-link::before {
     content: '';
     position: absolute;
     inset: 0;
     opacity: 1;
     transition: opacity 0.25s ease;
 }

 .top-social-link i {
     position: relative;
     z-index: 1;
     font-size: 0.85rem;
 }

 .top-social-link:hover {
     color: #ffffff;
     transform: translateY(-3px) scale(1.06);
     border-color: rgba(255, 255, 255, 0.3);
     box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22), 0 0 0 4px rgba(255, 255, 255, 0.12);
 }

 .top-social-link:hover::before {
     opacity: 1;
 }

 .top-social-link.linkedin::before {
     background: #0a66c2;
 }

 .top-social-link.instagram::before {
     background: linear-gradient(135deg, #f58529, #dd2a7b, #8134af, #515bd4);
 }

 .top-social-link.facebook::before {
     background: #1877f2;
 }

 .top-social-link.youtube::before {
     background: #ff0000;
 }

 .top-social-link.whatsapp::before {
     background: #25d366;
 }

 @keyframes topSocialEnter {
     from {
         opacity: 0;
         transform: translateY(-8px) scale(0.82);
     }

     to {
         opacity: 1;
         transform: translateY(0) scale(1);
     }
 }

 @media (prefers-reduced-motion: no-preference) {
     .top-social-link {
         animation-name: topSocialEnter, topSocialPulse;
         animation-duration: 0.55s, 4.5s;
         animation-timing-function: ease, ease-in-out;
         animation-fill-mode: both, none;
         animation-iteration-count: 1, infinite;
     }

     .top-social-link:hover {
         animation-play-state: running, paused;
     }
 }

 @keyframes topSocialPulse {
     0%,
     70%,
     100% {
         box-shadow: 0 0 0 0 rgba(232, 168, 56, 0);
     }

     82% {
         box-shadow: 0 0 0 6px rgba(232, 168, 56, 0.14);
     }
 }

 @media (max-width: 575px) {
     .top-social-links {
         gap: 0.3rem;
     }

     .top-social-link {
         width: 26px;
         height: 26px;
     }

     .top-social-link i {
         font-size: 0.76rem;
     }
 }

 .marquee {
     overflow: hidden;
     white-space: nowrap;
 }

 .marquee-content {
     display: inline-flex;
     animation: marquee 30s linear infinite;
 }

 .marquee-content:hover {
     animation-play-state: paused;
 }

 @keyframes marquee {
     from {
         transform: translateX(0);
     }

     to {
         transform: translateX(-50%);
     }
 }

 nav {
     backdrop-filter: blur(10px);
     background: rgba(255, 255, 255, 0.98);
     box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
 }

 /* Mobile Menu - Left aligned */
 .mobile-menu {
     position: fixed;
     top: 0;
     left: -100%;
     width: 85%;
     max-width: 360px;
     height: 100vh;
     background: white;
     z-index: 1000;
     transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1);
     box-shadow: 4px 0 30px rgba(0, 0, 0, 0.1);
     overflow-y: auto;
     padding: 80px 0 20px;
 }

 .mobile-menu.active {
     left: 0;
 }

 .mobile-overlay {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: rgba(0, 0, 0, 0.5);
     z-index: 999;
     opacity: 0;
     visibility: hidden;
     transition: all 0.3s;
     backdrop-filter: blur(3px);
 }

 .mobile-overlay.active {
     opacity: 1;
     visibility: visible;
 }

 .mobile-menu .nav-item {
     padding: 0;
     border-bottom: 1px solid #f1f5f9;
 }

 .mobile-menu .nav-link {
     padding: 16px 24px !important;
     font-size: 15px;
     display: flex;
     justify-content: space-between;
     align-items: center;
 }

 .mobile-menu .dropdown-content {
     background: #f8fafc;
     display: none;
 }

 .mobile-menu .dropdown-content.show {
     display: block;
 }

 .mobile-menu .dropdown-content a {
     padding: 12px 24px 12px 40px;
     display: block;
     color: #475569;
     font-size: 14px;
     text-decoration: none;
     border-bottom: 1px solid #e2e8f0;
 }

 .mobile-menu .dropdown-btn {
     padding: 16px 24px;
     color: #1e293b;
     font-weight: 500;
     text-decoration: none;
     display: flex;
     justify-content: space-between;
     align-items: center;
     width: 100%;
     background: none;
     border: none;
     border-bottom: 1px solid #f1f5f9;
     text-align: left;
 }

 .mobile-menu .dropdown-btn:hover {
     color: #e8a838;
     background: #f8fafc;
 }

 .hamburger {
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     width: 24px;
     height: 18px;
     background: transparent;
     border: none;
     cursor: pointer;
     padding: 0;
     z-index: 1001;
     position: relative;
 }

 .hamburger span {
     width: 100%;
     height: 2px;
     background: #0f172a;
     border-radius: 4px;
     transition: all 0.3s ease;
 }

 .hamburger.active span:nth-child(1) {
     transform: translateY(8px) rotate(45deg);
 }

 .hamburger.active span:nth-child(2) {
     opacity: 0;
 }

 .hamburger.active span:nth-child(3) {
     transform: translateY(-8px) rotate(-45deg);
 }

 /* Nav link hover - NO underline */
 nav a {
     transition: color 0.3s;
     text-decoration: none !important;
 }

 .nav-link-hover:hover {
     color: #e8a838 !important;
 }

 /* Course Cards */
 .course-card {
     transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
     cursor: pointer;
     background: white;
     border-radius: 16px;
     overflow: hidden;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
 }

 .course-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 20px 30px -8px rgba(0, 0, 0, 0.15);
 }

 .course-card img {
     width: 100%;
     object-fit: cover;
 }

.kg-service-image-card {
    height: 100%;
    position: relative;
    overflow: hidden;
}

.kg-service-card-link {
    position: absolute;
    inset: 0;
    z-index: 2;
}

.kg-services-edit-mode .kg-service-card-link {
    pointer-events: none;
}

.kg-service-image-card [data-services-edit],
.kg-service-image-upload,
.kg-service-url-input,
.kg-service-edit-pencil,
.kg-service-inline-editor {
    position: relative;
    z-index: 3;
}

.kg-service-edit-pencil {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin-left: 6px;
    padding: 0;
    border: 1px solid rgba(28, 83, 42, 0.18);
    border-radius: 50%;
    color: #1c532a;
    background: #ffffff;
    box-shadow: 0 6px 14px rgba(28, 83, 42, 0.12);
    font-size: 0.72rem;
    line-height: 1;
    vertical-align: middle;
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.kg-service-edit-pencil:hover {
    color: #ffffff;
    background: #1c532a;
    transform: translateY(-1px);
}

.kg-service-inline-editor {
    display: block;
    width: min(100%, 420px);
    min-height: 38px;
    margin: 8px auto 10px;
    padding: 8px 10px;
    border: 2px solid rgba(232, 168, 56, 0.75);
    border-radius: 8px;
    color: #1c532a;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(28, 83, 42, 0.12);
    font-size: 0.95rem;
    font-weight: 700;
    text-align: center;
}

textarea.kg-service-inline-editor {
    min-height: 86px;
    resize: vertical;
    text-align: center;
}

.kg-service-edit-hidden {
    display: none !important;
}

.kg-service-image-upload {
    position: absolute;
    top: 12px;
    right: 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.46);
    border-radius: 8px;
    color: #ffffff;
    background: rgba(12, 47, 25, 0.72);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 180ms ease, transform 180ms ease;
}

.kg-service-image-upload:hover {
    background: #e8a838;
    color: #14351d;
    transform: translateY(-1px);
}

.kg-service-image-upload input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
    clip: rect(0 0 0 0);
}

.kg-service-url-input {
    width: min(100%, 280px);
    min-height: 36px;
    margin: 12px auto 0;
    padding: 7px 10px;
    border: 1px solid rgba(28, 83, 42, 0.2);
    border-radius: 8px;
    color: #1c532a;
    background: #ffffff;
    font-size: 0.82rem;
    font-weight: 700;
    text-align: center;
}

 .kg-service-image-card .p-3 {
     position: relative;
     z-index: 1;
     display: flex;
     min-height: 220px;
     flex-direction: column;
     justify-content: space-between;
     transition: background 0.35s ease;
 }

 .kg-service-image-card .p-3::before {
     content: '';
     position: absolute;
     inset: 0;
     z-index: -1;
     background: linear-gradient(135deg, rgba(28, 83, 42, 0.96), rgba(232, 168, 56, 0.9));
     opacity: 0;
     transition: opacity 0.35s ease;
 }

 .kg-service-image-card h3 {
     color: #1c532a;
     line-height: 1.3;
     transition: color 0.35s ease;
 }

 .kg-service-image-card p {
     transition: color 0.35s ease;
 }

 .kg-service-badge {
     align-self: center;
     background: #1c532a;
     color: #ffffff;
     border-radius: 999px;
     padding: 0.45rem 0.8rem;
 }

 .kg-service-image-card:hover .kg-service-badge {
     background: rgba(255, 255, 255, 0.18);
     color: #ffffff;
 }

 .kg-service-image-card:hover .p-3::before {
     opacity: 1;
 }

.kg-service-image-card:hover h3,
.kg-service-image-card:hover p {
    color: #ffffff !important;
}

/* Our Services carousel */
#services-list {
    overflow: hidden;
}

.kg-services-carousel {
    position: relative;
    margin-top: 10px;
}

.kg-services-viewport {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    padding: 12px 2px 28px;
}

.kg-services-viewport::-webkit-scrollbar {
    display: none;
}

.kg-services-track {
    flex-wrap: nowrap;
    margin-left: 0;
    margin-right: 0;
}

.kg-services-track > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
    scroll-snap-align: start;
    padding-left: 12px;
    padding-right: 12px;
}

.kg-services-track .kg-service-image-card {
    min-height: 100%;
    border-radius: 14px;
}

.kg-services-track .kg-service-image-card img {
    height: 225px;
}

.kg-services-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 2px;
}

.kg-services-arrow {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(28, 83, 42, 0.18);
    border-radius: 50%;
    background: #ffffff;
    color: #1c532a;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.kg-services-arrow:hover {
    transform: translateY(-2px);
    background: #1c532a;
    color: #ffffff;
}

.kg-services-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 80px;
}

.kg-services-dot {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(28, 83, 42, 0.25);
    transition: width 0.25s ease, background 0.25s ease;
}

.kg-services-dot.active {
    width: 26px;
    background: #e8a838;
}

@media (min-width: 768px) {
    .kg-services-track > [class*="col-"] {
        flex-basis: 50%;
        max-width: 50%;
    }
}

@media (min-width: 992px) {
    .kg-services-track > [class*="col-"] {
        flex-basis: 33.333333%;
        max-width: 33.333333%;
    }
}

@media (max-width: 575.98px) {
    #services-list .section-title {
        font-size: 2rem;
    }

    #services-list .text-secondary {
        max-width: 320px;
        margin-left: auto;
        margin-right: auto;
    }

    .kg-services-viewport {
        padding: 8px 18px 24px;
        margin-left: -12px;
        margin-right: -12px;
        scroll-padding-inline: 18px;
    }

    .kg-services-track {
        --bs-gutter-x: 0;
    }

    .kg-services-track > [class*="col-"] {
        flex-basis: 88%;
        max-width: 88%;
        padding-left: 8px;
        padding-right: 8px;
        scroll-snap-align: center;
    }

    .kg-services-track .kg-service-image-card img {
        height: 205px;
    }

    .kg-services-arrow {
        width: 38px;
        height: 38px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kg-services-viewport {
        scroll-behavior: auto;
    }
}

.kg-service-card {
    position: relative;
    overflow: hidden;
     display: flex;
     flex-direction: column;
     gap: 0.85rem;
     background: #ffffff;
     border: 1px solid rgba(28, 83, 42, 0.12);
     border-radius: 18px;
     padding: 1.6rem;
     cursor: pointer;
     box-shadow: 0 14px 34px rgba(15, 23, 42, 0.07);
     transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
 }

 .kg-service-card::before {
     content: '';
     position: absolute;
     inset: 0;
     background:
         linear-gradient(135deg, rgba(28, 83, 42, 0.96) 0%, rgba(48, 128, 66, 0.94) 58%, rgba(232, 168, 56, 0.94) 100%);
     opacity: 0;
     transition: opacity 0.35s ease;
     z-index: 0;
 }

 .kg-service-card::after {
     content: '';
     position: absolute;
     width: 150px;
     height: 150px;
     right: -70px;
     top: -70px;
     border-radius: 50%;
     background: rgba(232, 168, 56, 0.14);
     transition: transform 0.35s ease, opacity 0.35s ease;
     z-index: 0;
 }

 .kg-service-card > * {
     position: relative;
     z-index: 1;
 }

 .kg-service-card:hover {
     transform: translateY(-10px);
     border-color: rgba(232, 168, 56, 0.55);
     box-shadow: 0 24px 48px rgba(28, 83, 42, 0.18);
 }

 .kg-service-card:hover::before {
     opacity: 1;
 }

 .kg-service-card:hover::after {
     opacity: 0.5;
     transform: scale(1.45);
 }

 .kg-service-icon {
     width: 58px;
     height: 58px;
     border-radius: 16px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: #ecfdf5;
     color: #1c532a;
     font-size: 1.55rem;
     transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
 }

 .kg-service-card h3 {
     color: #0f172a;
     font-size: 1.2rem;
     font-weight: 800;
     margin: 0;
     line-height: 1.35;
     transition: color 0.35s ease;
 }

 .kg-service-card p {
     color: #475569;
     line-height: 1.65;
     margin: 0;
     flex: 1;
     transition: color 0.35s ease;
 }

 .kg-service-card span {
     align-self: flex-start;
     color: #1c532a;
     background: rgba(28, 83, 42, 0.08);
     border-radius: 999px;
     padding: 0.42rem 0.8rem;
     font-size: 0.78rem;
     font-weight: 800;
     transition: background 0.35s ease, color 0.35s ease;
 }

 .kg-service-card:hover .kg-service-icon {
     background: rgba(255, 255, 255, 0.16);
     color: #ffffff;
     transform: scale(1.08) rotate(-4deg);
 }

 .kg-service-card:hover h3,
 .kg-service-card:hover p,
 .kg-service-card:hover span {
     color: #ffffff;
 }

 .kg-service-card:hover span {
     background: rgba(255, 255, 255, 0.16);
 }

 @media (max-width: 767px) {
     .course-card img {
         height: 225px;
     }

     .course-card {
         border-radius: 12px;
     }
 }

 @media (min-width: 768px) {
     .course-card img {
         height: 225px;
     }
 }

 /* Trust Stats Section */
 .trust-section {
     background:
         radial-gradient(circle at top left, rgba(232, 168, 56, 0.12), transparent 28%),
         linear-gradient(135deg, #ffffff 0%, #f4faf2 100%);
     padding: 4rem 1rem;
     perspective: 1200px;
 }

 .trust-item {
     position: relative;
     isolation: isolate;
     overflow: hidden;
     background:
         linear-gradient(145deg, #ffffff 0%, #f8fff6 55%, #fff8e8 100%);
     clip-path: polygon(50% 0%, 100% 22%, 100% 78%, 50% 100%, 0% 78%, 0% 22%);
     padding: 1.5rem 0.65rem;
     text-align: center;
     box-shadow:
         0 16px 34px rgba(15, 23, 42, 0.1),
         inset 0 0 0 1px rgba(28, 83, 42, 0.12);
     transition: transform 0.45s ease, box-shadow 0.45s ease;
     height: 100%;
     min-height: 155px;
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     transform-style: preserve-3d;
     translate: 0 0;
     animation: trustDiamondFloat 5s ease-in-out infinite;
 }

 .trust-item::before,
 .trust-item::after {
     content: '';
     position: absolute;
     inset: 0;
     z-index: -1;
     transition: opacity 0.45s ease, transform 0.45s ease;
 }

 .trust-item::before {
     opacity: 0;
     background:
         linear-gradient(135deg, rgba(28, 83, 42, 0.98) 0%, rgba(42, 122, 62, 0.96) 52%, rgba(232, 168, 56, 0.96) 100%);
 }

 .trust-item::after {
     opacity: 0.85;
     background:
         linear-gradient(135deg, rgba(255, 255, 255, 0.65) 0%, transparent 28%),
         linear-gradient(315deg, rgba(232, 168, 56, 0.16) 0%, transparent 34%);
     transform: translateX(-30%);
 }

 .trust-item:hover {
     transform: translateY(-12px) rotateX(8deg) rotateY(-8deg) scale(1.04);
     box-shadow:
         0 28px 54px rgba(28, 83, 42, 0.22),
         0 10px 24px rgba(232, 168, 56, 0.18);
 }

 .trust-item:hover::before {
     opacity: 1;
 }

 .trust-item:hover::after {
     opacity: 0.35;
     transform: translateX(18%);
 }

 .trust-icon {
     width: 46px;
     height: 46px;
     border-radius: 15px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: rgba(28, 83, 42, 0.08);
     color: #1c532a;
     font-size: 1.45rem;
     margin-bottom: 0.65rem;
     animation: iconFloat 3s ease-in-out infinite;
     transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
     transform: rotate(45deg);
     translate: 0 0;
 }

 .trust-icon i {
     transform: rotate(-45deg);
     transition: color 0.35s ease, transform 0.35s ease;
 }

 .trust-item:hover .trust-icon {
     background: rgba(255, 255, 255, 0.18);
     color: #ffffff;
     transform: rotate(45deg) scale(1.08);
 }

 .trust-item:hover .trust-icon i {
     color: #ffffff !important;
     transform: rotate(-45deg) scale(1.08);
 }

 @keyframes iconFloat {

     0%,
     100% {
         translate: 0 0;
     }

     50% {
         translate: 0 -5px;
     }
 }

 .trust-item h3 {
     font-size: 1.3rem;
     font-weight: 800;
     background: linear-gradient(135deg, #1c532a 0%, #e8a838 100%);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
     margin-bottom: 0.2rem;
     transition: color 0.35s ease, -webkit-text-fill-color 0.35s ease;
 }

 .trust-item:hover h3 {
     background: none;
     -webkit-text-fill-color: #ffffff;
     color: #ffffff;
 }

 .trust-item p {
     color: #475569;
     font-weight: 800;
     font-size: 0.75rem;
     line-height: 1.25;
     margin-bottom: 0;
     transition: color 0.35s ease;
 }

 .trust-item:hover p {
     color: rgba(255, 255, 255, 0.92);
 }

 @keyframes trustDiamondFloat {
     0%,
     100% {
         translate: 0 0;
     }

     50% {
         translate: 0 -6px;
     }
 }

 @media (min-width: 768px) {
     .trust-item {
         padding: 2.1rem 1rem;
         min-height: 190px;
     }

     .trust-icon {
         width: 58px;
         height: 58px;
         font-size: 1.8rem;
     }

     .trust-item h3 {
         font-size: 2rem;
     }

     .trust-item p {
         font-size: 0.9rem;
     }
 }

 @media (max-width: 575px) {
     .trust-item {
         min-height: 132px;
         padding: 1.25rem 0.45rem;
     }

     .trust-icon {
         width: 40px;
         height: 40px;
         font-size: 1.15rem;
         margin-bottom: 0.4rem;
     }

     .trust-item h3 {
         font-size: 1.15rem;
     }

     .trust-item p {
         font-size: 0.68rem;
     }
 }

 @media (max-width: 768px) {
     .hero-section {
         min-height: 215px !important;
     }
 }

 /* Training Options */
.training-section {
    background: linear-gradient(135deg, #11337e 0%, #1a4aad 100%);
    padding: 3rem 1rem;
}

.journey-highlight-section {
    background:
        radial-gradient(circle at top left, rgba(232, 168, 56, 0.18), transparent 32%),
        radial-gradient(circle at bottom right, rgba(17, 51, 126, 0.18), transparent 36%),
        linear-gradient(135deg, #fff8ea 0%, #ffffff 48%, #eef4ff 100%);
}

.kissan-summary-section {
    background:
        linear-gradient(180deg, #f8fafc 0%, #ffffff 54%, #f1f8ef 100%);
}

.kissan-summary-hero {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    padding: 2rem 1.25rem;
    color: #ffffff;
    background:
        linear-gradient(135deg, rgba(18, 81, 63, 0.98) 0%, rgba(20, 98, 80, 0.96) 48%, rgba(232, 168, 56, 0.9) 100%);
    box-shadow: 0 28px 60px rgba(15, 23, 42, 0.14);
}

.kissan-summary-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(255, 255, 255, 0.14), transparent 24%),
        linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.06) 48%, transparent 100%);
    pointer-events: none;
}

.kissan-summary-hero > .row {
    position: relative;
    z-index: 1;
}

.kissan-eyebrow,
.kissan-panel-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: capitalize;
}

.kissan-eyebrow {
    padding: 0.55rem 1rem;
    background: rgba(255, 255, 255, 0.14);
    color: #fff3cf;
    margin-bottom: 1.25rem;
}

.kissan-title {
    font-size: 2.2rem;
    line-height: 1.12;
    font-weight: 800;
}

.kissan-lead {
    max-width: 760px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 1rem;
    line-height: 1.8;
}

.kissan-primary-btn,
.kissan-outline-btn {
    border-radius: 999px;
    padding: 0.85rem 1.3rem;
    font-weight: 800;
}

.kissan-primary-btn {
    background: #ffd369;
    color: #0f172a;
    border: 1px solid #ffd369;
}

.kissan-primary-btn:hover {
    background: #ffffff;
    color: #12513f;
}

.kissan-outline-btn {
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.kissan-outline-btn:hover {
    background: rgba(255, 255, 255, 0.16);
    color: #ffffff;
}

.kissan-profile-card,
.kissan-info-card,
.kissan-problem-panel,
.kissan-value-panel,
.kissan-revenue-panel,
.kissan-vision-strip {
    border-radius: 22px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.08);
}

.kissan-profile-card {
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.18);
    padding: 1.5rem;
    backdrop-filter: blur(10px);
}

.kissan-card-label {
    color: #fff3cf;
    font-weight: 700;
    margin-bottom: 0.4rem;
}

.kissan-profile-card h3 {
    font-size: 1.6rem;
    font-weight: 800;
    margin-bottom: 1rem;
}

.kissan-contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.kissan-contact-list li {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: rgba(255, 255, 255, 0.86);
    margin-bottom: 0.85rem;
    overflow-wrap: anywhere;
}

.kissan-contact-list li:last-child {
    margin-bottom: 0;
}

.kissan-contact-list i {
    color: #ffd369;
    width: 18px;
}

.kissan-info-card {
    background: #ffffff;
    border: 1px solid rgba(20, 98, 80, 0.12);
    padding: 1.4rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.kissan-info-card:hover {
    transform: translateY(-6px);
    border-color: rgba(232, 168, 56, 0.7);
    box-shadow: 0 24px 48px rgba(20, 98, 80, 0.13);
}

.kissan-icon {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ecfdf5;
    color: #12513f;
    font-size: 1.35rem;
    margin-bottom: 1rem;
}

.kissan-info-card h3,
.kissan-problem-panel h3,
.kissan-value-panel h3,
.kissan-revenue-panel h3,
.kissan-vision-strip h3 {
    color: #0f172a;
    font-weight: 800;
}

.kissan-info-card h3 {
    font-size: 1.15rem;
    margin-bottom: 0.7rem;
}

.kissan-info-card p,
.kissan-revenue-panel p {
    color: #475569;
    line-height: 1.65;
    margin-bottom: 0;
}

.kissan-problem-panel,
.kissan-value-panel,
.kissan-revenue-panel {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    padding: 1.5rem;
}

.kissan-panel-tag {
    padding: 0.45rem 0.85rem;
    background: #ecfdf5;
    color: #12513f;
    margin-bottom: 1rem;
}

.kissan-problem-panel ul {
    list-style: none;
    padding: 0;
    margin: 1rem 0 0;
}

.kissan-problem-panel li {
    position: relative;
    padding-left: 1.35rem;
    margin-bottom: 0.9rem;
    color: #334155;
    line-height: 1.65;
}

.kissan-problem-panel li:last-child {
    margin-bottom: 0;
}

.kissan-problem-panel li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.65rem;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #e8a838;
}

.kissan-value-card {
    height: 100%;
    border-radius: 18px;
    padding: 1.1rem;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    border: 1px solid #e2e8f0;
}

.kissan-value-card h4 {
    color: #12513f;
    font-size: 1rem;
    font-weight: 800;
    margin-bottom: 0.7rem;
}

.kissan-value-card p {
    color: #475569;
    line-height: 1.6;
    margin-bottom: 0;
}

.kissan-revenue-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 1rem;
}

.kissan-revenue-item {
    border-radius: 18px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 1rem;
}

.kissan-revenue-item strong {
    display: block;
    color: #12513f;
    font-size: 1rem;
    margin-bottom: 0.55rem;
}

.kissan-revenue-item span {
    color: #475569;
    line-height: 1.55;
}

.kissan-vision-strip {
    background: linear-gradient(135deg, #0f172a 0%, #12513f 100%);
    color: #ffffff;
    padding: 1.5rem;
}

.kissan-vision-strip p {
    color: #ffd369;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: capitalize;
}

.kissan-vision-strip h3 {
    color: #ffffff;
    font-size: 1.35rem;
    line-height: 1.45;
    margin-bottom: 0.75rem;
}

.kissan-vision-strip span {
    color: rgba(255, 255, 255, 0.78);
}

@media (min-width: 992px) {
    .kissan-summary-hero {
        padding: 3rem;
    }

    .kissan-title {
        font-size: 3.1rem;
    }

    .kissan-problem-panel,
    .kissan-value-panel,
    .kissan-revenue-panel,
    .kissan-vision-strip {
        padding: 2rem;
    }
}

@media (max-width: 767px) {
    .kissan-summary-hero {
        border-radius: 22px;
    }

    .kissan-title {
        font-size: 1.85rem;
    }

    .kissan-lead {
        font-size: 0.95rem;
        line-height: 1.7;
    }

    .kissan-primary-btn,
    .kissan-outline-btn {
        width: 100%;
        justify-content: center;
    }
}

.journey-highlight-card {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(11, 26, 67, 0.98) 0%, rgba(17, 51, 126, 0.96) 55%, rgba(232, 168, 56, 0.94) 100%);
    border-radius: 28px;
    padding: 2rem 1.25rem;
    color: #fff;
    box-shadow: 0 28px 60px rgba(15, 23, 42, 0.18);
}

.journey-highlight-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 15% 20%, rgba(255, 255, 255, 0.16), transparent 22%),
        radial-gradient(circle at 85% 15%, rgba(255, 255, 255, 0.12), transparent 18%),
        linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.04) 45%, transparent 100%);
    pointer-events: none;
}

.journey-highlight-header,
.journey-phase-track {
    position: relative;
    z-index: 1;
}

.journey-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    color: #ffe6af;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: capitalize;
    margin-bottom: 1.25rem;
}

.journey-title {
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.15;
}

.journey-title-highlight {
    display: inline-block;
    color: #ffe39a;
    text-shadow: 0 0 18px rgba(255, 227, 154, 0.35);
    position: relative;
}

.journey-title-highlight::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0.08em;
    height: 0.1em;
    background: linear-gradient(90deg, rgba(232, 168, 56, 0.18) 0%, rgba(255, 211, 105, 0.42) 100%);
    border-radius: 999px;
    z-index: -1;
}

.journey-subtitle {
    max-width: 720px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 1rem;
    line-height: 1.8;
}

.journey-stat-badge {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 22px;
    padding: 1.25rem;
    text-align: center;
    backdrop-filter: blur(8px);
}

.journey-stat-badge strong {
    display: block;
    font-size: 1.8rem;
    font-weight: 800;
    color: #fff6dc;
    margin-bottom: 0.35rem;
}

.journey-stat-badge span {
    display: block;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.92rem;
    line-height: 1.6;
}

.journey-phase-track {
    position: relative;
    margin-top: 2rem;
}

.journey-track-line {
    position: absolute;
    top: 1.05rem;
    left: 4%;
    right: 4%;
    height: 2px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.18) 0%, rgba(255, 230, 175, 0.85) 50%, rgba(255, 255, 255, 0.18) 100%);
    display: none;
}

.journey-phase-card {
    position: relative;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 24px;
    padding: 1.5rem 1.25rem;
    backdrop-filter: blur(10px);
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.journey-phase-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 40px rgba(15, 23, 42, 0.2);
    border-color: rgba(255, 230, 175, 0.55);
}

.journey-phase-card h3 {
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 0.85rem;
    color: #fff;
}

.journey-phase-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    margin-bottom: 1rem;
    background: rgba(255, 255, 255, 0.92);
    color: #0f172a;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.journey-phase-label {
    color: #ffe6af;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: capitalize;
    letter-spacing: 0.08em;
    margin-bottom: 0.8rem;
}

.journey-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.journey-list li {
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: 0.65rem;
    color: rgba(255, 255, 255, 0.88);
    line-height: 1.6;
}

.journey-list li:last-child {
    margin-bottom: 0;
}

.journey-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.6rem;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ffd369;
    box-shadow: 0 0 0 4px rgba(255, 211, 105, 0.16);
}

.phase-one {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.09) 100%);
}

.phase-two {
    background: linear-gradient(180deg, rgba(41, 152, 255, 0.18) 0%, rgba(255, 255, 255, 0.08) 100%);
}

.phase-three {
    background: linear-gradient(180deg, rgba(33, 197, 156, 0.18) 0%, rgba(255, 255, 255, 0.08) 100%);
}

.phase-four {
    background: linear-gradient(180deg, rgba(232, 168, 56, 0.22) 0%, rgba(255, 255, 255, 0.08) 100%);
}

@media (min-width: 992px) {
    .journey-highlight-card {
        padding: 3rem;
    }

    .journey-title {
        font-size: 3rem;
    }

    .journey-track-line {
        display: block;
    }

    .journey-phase-card {
        padding: 1.8rem 1.4rem;
    }
}

@media (max-width: 767px) {
    .journey-highlight-card {
        border-radius: 22px;
    }

    .journey-title {
        font-size: 1.7rem;
    }

    .journey-subtitle {
        font-size: 0.95rem;
        line-height: 1.7;
    }
}

.training-card {
    background: white;
    border-radius: 16px;
     padding: 1.2rem 0.8rem;
     transition: all 0.4s ease;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
     height: 100%;
 }

 .training-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 20px 35px rgba(232, 168, 56, 0.15);
 }

 .card-icon {
     font-size: 2rem;
     margin-bottom: 0.8rem;
 }

 .card-features {
     list-style: none;
     padding: 0;
 }

 .card-features li {
     padding: 0.3rem 0 0.3rem 1.2rem;
     position: relative;
     color: #334155;
     border-bottom: 1px dashed #e2e8f0;
     font-size: 0.8rem;
 }

 .card-features li::before {
     content: "▹";
     position: absolute;
     left: 0;
     color: #e8a838;
     font-size: 0.9rem;
 }

 @media (min-width: 768px) {
     .training-card {
         padding: 2rem 1.5rem;
         border-radius: 20px;
     }

     .card-icon {
         font-size: 3rem;
     }

     .card-features li {
         font-size: 0.95rem;
         padding: 0.4rem 0 0.4rem 1.5rem;
     }
 }

 /* Methodology Section */
 .methodology-section {
     background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
     padding: 3rem 1rem;
 }

 .process-card {
     background: white;
     border-radius: 16px;
     padding: 1.2rem 0.6rem;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
     border: 2px solid transparent;
     transition: all 0.3s ease;
     height: 100%;
     cursor: pointer;
     text-align: center;
 }

 .process-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 20px 30px rgba(232, 168, 56, 0.15);
     border-color: #e8a838;
 }

 .process-number {
     width: 45px;
     height: 45px;
     margin: 0 auto 0.8rem;
     background: linear-gradient(135deg, #11337e 0%, #1e40af 100%);
     color: white;
     font-size: 1.3rem;
     font-weight: 800;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     box-shadow: 0 6px 15px rgba(17, 51, 126, 0.3);
     transition: all 0.4s ease;
     animation: pulseGlow 2.5s ease-in-out infinite;
 }

 .process-card h4 {
     font-size: 0.9rem;
     margin-bottom: 0.3rem;
 }

 .process-card p {
     font-size: 0.7rem;
 }

 @media (min-width: 768px) {
     .process-card {
         padding: 2rem 1rem;
     }

     .process-number {
         width: 60px;
         height: 60px;
         font-size: 1.8rem;
     }

     .process-card h4 {
         font-size: 1.2rem;
     }

     .process-card p {
         font-size: 0.9rem;
     }
 }

 @keyframes pulseGlow {

     0%,
     100% {
         box-shadow: 0 0 0 0 rgba(232, 168, 56, 0.6), 0 6px 15px rgba(17, 51, 126, 0.3);
     }

     50% {
         box-shadow: 0 0 0 10px rgba(232, 168, 56, 0), 0 6px 15px rgba(17, 51, 126, 0.4);
     }
 }

 .process-card:hover .process-number {
     transform: scale(1.1) rotate(360deg);
     background: linear-gradient(135deg, #e8a838 0%, #fbbf24 100%);
     color: #0f172a;
 }

 /* Career Support Section */
 .career-support-section {
     background: linear-gradient(135deg, #11337e 0%, #1a4aad 100%);
     padding: 3rem 1rem;
 }

 .career-card {
     background: white;
     border-radius: 16px;
     padding: 1.5rem 0.8rem;
     height: 100%;
     transition: all 0.4s;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
     text-align: center;
 }

 .career-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 25px 40px rgba(0, 0, 0, 0.2);
     border: 1px solid #e8a838;
 }

 .icon-circle {
     width: 50px;
     height: 50px;
     margin: 0 auto 0.8rem;
     background: linear-gradient(135deg, #e8a838 0%, #fbbf24 100%);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 1.5rem;
     box-shadow: 0 8px 20px rgba(232, 168, 56, 0.3);
     transition: all 0.4s;
 }

 .career-card h3 {
     font-size: 1rem;
     margin-bottom: 0.3rem;
 }

 .career-card p {
     font-size: 0.75rem;
     color: #475569;
 }

 @media (min-width: 768px) {
     .icon-circle {
         width: 75px;
         height: 75px;
         font-size: 2.2rem;
     }

     .career-card {
         padding: 2.2rem 1.2rem;
         border-radius: 20px;
     }

     .career-card h3 {
         font-size: 1.2rem;
     }

     .career-card p {
         font-size: 0.9rem;
     }
 }

 /* Welcome Section */
 .welcome-section {
     background:
         radial-gradient(circle at top left, rgba(232, 168, 56, 0.1), transparent 30%),
         linear-gradient(180deg, #ffffff 0%, #f7fbf5 100%);
     padding: 3rem 1rem;
     position: relative;
     overflow: hidden;
 }

 .kg-welcome-title {
     color: #1c532a;
 }

 .kg-welcome-subtitle {
     color: #d4952a;
 }

 .kg-welcome-text {
     color: #334155;
     line-height: 1.8;
     font-weight: 500;
 }

 .kg-eco-infographic {
     position: relative;
     width: 100%;
     max-width: 580px;
     aspect-ratio: 1 / 1;
     margin: 0 auto;
     background: transparent;
 }

 .kg-eco-center {
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     width: 120px;
     height: 120px;
     background: #fff;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     z-index: 10;
     box-shadow: 0 0 20px rgba(0,0,0,0.1);
 }

 .kg-eco-center::before {
     content: '';
     position: absolute;
     top: -10px; right: -10px; bottom: -10px; left: -10px;
     border-radius: 50%;
     border: 2px dashed #d1d5db;
     z-index: -1;
 }

 .kg-eco-center::after {
     content: '';
     position: absolute;
     top: -20px; right: -20px; bottom: -20px; left: -20px;
     border-radius: 50%;
     background: #f8fafc;
     z-index: -2;
     box-shadow: inset 0 0 15px rgba(0,0,0,0.05);
 }

 .kg-eco-center img {
     max-width: 90px;
     max-height: 90px;
     object-fit: contain;
 }

 .kg-eco-card {
     position: absolute;
     z-index: 3;
     width: 160px;
     height: 160px;
     border-radius: 50%;
     text-align: center;
     background: #ffffff;
     box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     padding: 15px;
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .kg-eco-card:hover {
     transform: translate(-50%, calc(-50% - 5px));
     box-shadow: 0 12px 30px rgba(28, 83, 42, 0.15);
     z-index: 5;
 }

 .kg-eco-card i {
     color: #1c532a;
     font-size: 1.6rem;
     margin-bottom: 6px;
 }

 .kg-eco-card h4 {
     color: #1c532a;
     font-size: 0.8rem;
     font-weight: 800;
     margin-bottom: 4px;
     line-height: 1.2;
 }

 .kg-eco-card p {
     color: #64748b;
     font-size: 0.65rem;
     line-height: 1.25;
     margin: 0;
     font-weight: 500;
 }

 .kg-eco-leaf {
     position: absolute;
     z-index: 4;
     width: 50px;
     height: 50px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #ffffff;
     font-size: 1.1rem;
     font-weight: 800;
     box-shadow: 0 4px 10px rgba(0,0,0,0.15);
 }

 /* Decreased spacing: R = 30% of container. Center = 50%, 50%. */
 /* 05: left 50 + 30 = 80%. 02: left 50 - 30 = 20%. */
 /* 30 * cos(60) = 15. 30 * sin(60) = 25.98. */
 /* 01: left 50 - 15 = 35%. top 50 - 25.98 = 24.02% */
 .kg-eco-01 { left: 35%; top: 24%; transform: translate(-50%, -50%); }
 .kg-eco-02 { left: 20%; top: 50%; transform: translate(-50%, -50%); }
 .kg-eco-03 { left: 35%; top: 76%; transform: translate(-50%, -50%); }
 .kg-eco-04 { left: 65%; top: 76%; transform: translate(-50%, -50%); }
 .kg-eco-05 { left: 80%; top: 50%; transform: translate(-50%, -50%); }
 .kg-eco-06 { left: 65%; top: 24%; transform: translate(-50%, -50%); }

 /* Leaf Colors & Shapes */
 .kg-eco-01 .kg-eco-leaf { top: -5px; left: -5px; border-radius: 0 50% 50% 50%; background: #4CAF50; }
 .kg-eco-02 .kg-eco-leaf { bottom: -5px; left: -5px; border-radius: 50% 50% 50% 0; background: #388E3C; }
 .kg-eco-03 .kg-eco-leaf { bottom: -5px; left: -5px; border-radius: 50% 50% 50% 0; background: #2E7D32; }
 .kg-eco-04 .kg-eco-leaf { bottom: -5px; right: -5px; border-radius: 50% 50% 0 50%; background: #7CB342; }
 .kg-eco-05 .kg-eco-leaf { top: -5px; right: -5px; border-radius: 50% 0 50% 50%; background: #9CCC65; }
 .kg-eco-06 .kg-eco-leaf { top: -5px; right: -5px; border-radius: 50% 0 50% 50%; background: #8BC34A; }

 /* Responsive Bootstrap Fixes */
 @media (max-width: 1199px) and (min-width: 992px) {
     /* LG Breakpoint (column is narrower) */
     .kg-eco-infographic {
         max-width: 440px;
     }
     .kg-eco-card {
         width: 130px; height: 130px; padding: 10px;
     }
     .kg-eco-card i { font-size: 1.3rem; margin-bottom: 4px; }
     .kg-eco-card h4 { font-size: 0.75rem; margin-bottom: 2px; }
     .kg-eco-card p { font-size: 0.58rem; line-height: 1.2; }
     .kg-eco-center { width: 90px; height: 90px; }
     .kg-eco-center img { max-width: 60px; max-height: 60px; }
     .kg-eco-leaf { width: 40px; height: 40px; font-size: 0.9rem; }
     .kg-eco-center::after { top: -15px; right: -15px; bottom: -15px; left: -15px; }
 }

 @media (max-width: 991px) and (min-width: 768px) {
     /* MD Breakpoint (column is full width again) */
     .kg-eco-infographic {
         max-width: 580px;
         margin-top: 3rem;
     }
 }

 @media (max-width: 767px) {
     /* Mobile View */
     .kg-eco-infographic {
         width: 100%;
         height: auto;
         aspect-ratio: auto;
         display: grid;
         grid-template-columns: repeat(2, 1fr);
         gap: 1.5rem 1rem;
         padding: 1rem 0;
     }

     .kg-eco-center {
         position: relative;
         top: auto;
         left: auto;
         transform: none;
         grid-column: 1 / -1;
         margin: 0 auto 2rem;
         width: 130px;
         height: 130px;
     }
     
     .kg-eco-center::before { top: -10px; right: -10px; bottom: -10px; left: -10px; }
     .kg-eco-center::after { top: -20px; right: -20px; bottom: -20px; left: -20px; }

     .kg-eco-card,
     .kg-eco-01, .kg-eco-02, .kg-eco-03, .kg-eco-04, .kg-eco-05, .kg-eco-06 {
         position: relative;
         left: auto !important;
         top: auto !important;
         right: auto !important;
         bottom: auto !important;
         width: 100%;
         height: auto;
         min-height: 180px;
         border-radius: 20px;
         padding: 35px 10px 15px;
         transform: none !important;
     }

     .kg-eco-card:hover {
         transform: translateY(-4px) !important;
     }

     .kg-eco-leaf,
     .kg-eco-01 .kg-eco-leaf, .kg-eco-02 .kg-eco-leaf, .kg-eco-03 .kg-eco-leaf, 
     .kg-eco-04 .kg-eco-leaf, .kg-eco-05 .kg-eco-leaf, .kg-eco-06 .kg-eco-leaf {
         left: 50% !important;
         top: -20px !important;
         transform: translateX(-50%) !important;
         right: auto !important;
         bottom: auto !important;
         width: 45px;
         height: 45px;
         border-radius: 50% !important;
         font-size: 1rem;
     }
 }

 @media (max-width: 400px) {
     .kg-eco-infographic {
         grid-template-columns: 1fr;
     }
 }

 .kg-mini-stat {
     background: #ffffff;
     border: 1px solid rgba(28, 83, 42, 0.14);
     box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
 }

 .kg-mini-stat h3 {
     color: #1c532a;
     margin-bottom: 0.25rem;
 }

 .kg-mini-stat p {
     color: #475569;
     font-weight: 700;
 }

 .timeline-item {
     animation: slideInRight 0.6s ease backwards;
     padding: 0.8rem 1rem;
     background: #ffffff;
     backdrop-filter: blur(10px);
     border-radius: 12px;
     margin-bottom: 0.6rem;
     border-left: 3px solid #e8a838;
     border-top: 1px solid rgba(28, 83, 42, 0.08);
     border-right: 1px solid rgba(28, 83, 42, 0.08);
     border-bottom: 1px solid rgba(28, 83, 42, 0.08);
     box-shadow: 0 12px 28px rgba(15, 23, 42, 0.07);
     transition: all 0.3s;
 }

 .timeline-item:hover {
     transform: translateX(6px);
     box-shadow: 0 18px 36px rgba(28, 83, 42, 0.12);
 }

 .timeline-number {
     width: 32px;
     height: 32px;
     background: linear-gradient(135deg, #1c532a, #2f7d44);
     color: #ffffff;
     font-weight: 800;
     border-radius: 8px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 0.9rem;
 }

 .kg-timeline-title {
     color: #1c532a;
 }

 .kg-timeline-text {
     color: #475569;
 }

 @media (min-width: 768px) {
     .timeline-item {
         padding: 1.2rem 1.5rem;
         border-radius: 16px;
     }

     .timeline-number {
         width: 45px;
         height: 45px;
         font-size: 1.2rem;
     }
 }

 @keyframes slideInRight {
     from {
         opacity: 0;
         transform: translateX(30px);
     }

     to {
         opacity: 1;
         transform: translateX(0);
     }
 }

 /* Footer */
 footer {
     background: #0f172a;
     position: relative;
     overflow: hidden;
     padding: 2.5rem 1rem;
 }

 .section-title {
     font-size: clamp(1.6rem, 5vw, 2.5rem);
     font-weight: 700;
     text-align: center;
     margin-bottom: 0.5rem;
 }

 .title-underline {
     width: 50px;
     height: 3px;
     background: #e8a838;
     margin: 0.5rem auto 1.5rem;
     border-radius: 3px;
 }

 html {
     scroll-behavior: smooth;
 }

 ::-webkit-scrollbar {
     width: 5px;
 }

 ::-webkit-scrollbar-track {
     background: #f1f1f1;
 }

 ::-webkit-scrollbar-thumb {
     background: linear-gradient(135deg, #11337e, #1e40af);
     border-radius: 3px;
 }

 button {
     position: relative;
     overflow: hidden;
 }

 .ripple {
     position: absolute;
     border-radius: 50%;
     background: rgba(255, 255, 255, 0.4);
     transform: scale(0);
     animation: rippleAnim 0.6s ease-out;
     pointer-events: none;
 }

 @keyframes rippleAnim {
     to {
         transform: scale(4);
         opacity: 0;
     }
 }

 .footer-links a {
     transition: color 0.2s;
 }

 .footer-links a:hover {
     color: #e8a838;
 }

 .footer-social a {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 35px;
     height: 35px;
     background: #1e293b;
     border-radius: 50%;
     transition: all 0.3s;
 }

 .footer-social a:hover {
     background: #e8a838;
     color: #0f172a;
     transform: translateY(-3px);
 }

 /* Dropdown Menu */
 .dropdown-menu {
     min-width: 220px;
     padding: 0.5rem 0;
     margin-top: 0 !important;
     border: none;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
 }

 .dropdown-item {
     padding: 0.6rem 1.2rem;
     transition: all 0.2s;
 }

 .dropdown-item:hover {
     background-color: #f8f9fa;
     color: #e8a838;
     padding-left: 1.5rem;
 }

 .dropdown-header {
     font-size: 0.75rem;
     text-transform: capitalize;
     letter-spacing: 0.5px;
     padding: 0.8rem 1.2rem 0.4rem;
 }

 .dropdown-toggle::after {
     margin-left: 0.5rem;
     vertical-align: middle;
 }

 .dropdown:hover .dropdown-menu {
     display: block;
 }

 /* Methodology Row */
 .methodology-row {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
 }

 .methodology-row .col {
     flex: 0 0 auto;
     width: 130px;
     padding: 5px;
 }

 @media (min-width: 768px) {
     .methodology-row .col {
         width: 180px;
     }
 }

 @media (max-width: 767px) {
     .methodology-row {
         justify-content: flex-start;
         overflow-x: auto;
         flex-wrap: nowrap;
         padding-bottom: 10px;
         -webkit-overflow-scrolling: touch;
     }

     .methodology-row .col {
         min-width: 130px;
     }
 }

 /* Remove all underlines */
 a,
 a:hover,
 a:focus,
 .nav-link,
 .dropdown-toggle {
     text-decoration: none !important;
 }

 nav a::after {
     display: none !important;
 }

 /* Buttons */
 .btn-primary-custom {
     background: #e8a838;
     color: #0f172a;
     font-weight: 600;
     padding: 10px 24px;
     border-radius: 40px;
     border: none;
     transition: all 0.3s;
 }

 .btn-primary-custom:hover {
     background: #d4952a;
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(232, 168, 56, 0.3);
 }



 /* Hero Section */
 .hero-section {
     /* background: url('../../assets/images/Hero/hero.png') no-repeat center center/cover; */
     background: linear-gradient(135deg, #1c532a 0%, #1a5529 100%);
     position: relative;
     overflow: hidden;
     padding: 40px 0;
     min-height: 500px;
     display: flex;
     align-items: center;
 }

 .hero-section::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     /* background: linear-gradient(90deg, rgba(15, 23, 42, 0.85) 0%, rgba(30, 58, 138, 0.7) 100%); */
 }

 @media (min-width: 768px) {
     .hero-section {
         min-height: 600px;
         padding: 60px 0;
     }
 }

 @media (min-width: 1024px) {
     .hero-section {
         min-height: 700px;
     }
 }

 /* Counter Area */
 .counter-area {
     background-size: cover;
     background-position: center;
     position: relative;
     padding: 50px 0;
 }

 .counter-area::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background: rgba(221, 221, 221, 0.85);
 }

 .counter-area .container {
     position: relative;
     z-index: 1;
 }

 .counter1-box {
     text-align: center;
     color: white;
 }

 .about-counter {
     font-size: 36px;
     font-weight: 700;
     color: #e8a838;
     margin-bottom: 0;
     position: relative;
     display: inline-block;
 }

 .title-bar-counter {
     position: relative;
 }

 .title-bar-counter::after {
     content: '';
     position: absolute;
     bottom: -10px;
     left: 50%;
     transform: translateX(-50%);
     width: 30px;
     height: 2px;
     background: #e8a838;
 }

 .counter1-box p {
     color: rgb(0, 0, 0);
     font-size: 13px;
     font-weight: 500;
 }

 @media (min-width: 768px) {
     .about-counter {
         font-size: 42px;
     }

     .counter1-box p {
         font-size: 15px;
         padding-top: 30px !important;
     }

     .counter-area {
         padding: 70px 0;
     }
 }

 /* Company Marquee Styles with Blur */
 .company-scroll {
     overflow: hidden;
     position: relative;
     width: 100%;
     padding: 5px 0;
 }

 .company-scroll::before,
 .company-scroll::after {
     content: '';
     position: absolute;
     top: 0;
     bottom: 0;
     width: 60px;
     z-index: 2;
     pointer-events: none;
 }

 .company-scroll::before {
     left: 0;
     background: linear-gradient(to right, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0) 100%);
 }

 .company-scroll::after {
     right: 0;
     background: linear-gradient(to left, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0) 100%);
 }

 @media (min-width: 768px) {

     .company-scroll::before,
     .company-scroll::after {
         width: 100px;
     }
 }

 .company-marquee {
     display: flex;
     width: 100%;
     overflow: hidden;
     user-select: none;
 }

 .company-marquee-content {
     display: flex;
     gap: 1.5rem;
     padding: 0.5rem 0;
     animation: companyScroll 30s linear infinite;
 }

 .company-marquee.reverse .company-marquee-content {
     animation: companyScrollReverse 30s linear infinite;
 }

 .company-logo {

     max-width: fit-content;
     border-radius: 6px;

 }



 @keyframes companyScroll {
     0% {
         transform: translateX(0);
     }

     100% {
         transform: translateX(-50%);
     }
 }

 @keyframes companyScrollReverse {
     0% {
         transform: translateX(-50%);
     }

     100% {
         transform: translateX(0);
     }
 }



 @media (min-width: 768px) {
     /* .company-logo {
                //height: 50px;
                max-width: 150px;
            } */

     .company-marquee-content {
         gap: 2.5rem;
     }
 }

 @media (min-width: 1024px) {
     /* .company-logo {
                height: 60px;
                max-width: 170px;
            } */

     .company-marquee-content {
         gap: 3.5rem;
     }
 }

 /* Float Animation */
 .float-animation {
     animation: float 4s ease-in-out infinite;
 }

 @keyframes float {

     0%,
     100% {
         transform: translateY(0);
     }

     50% {
         transform: translateY(-8px);
     }
 }

 /* Hero Badge */
 .hero-badge {
     background: rgba(232, 168, 56, 0.15);
     color: #e8a838;
     padding: 5px 14px;
     border-radius: 30px;
     font-size: 12px;
     font-weight: 500;
     display: inline-block;
     margin-bottom: 15px;
     border: 1px solid rgba(232, 168, 56, 0.3);
 }

 .btn-outline-custom {
     background: transparent;
     color: white;
     font-weight: 500;
     padding: 8px 20px;
     border-radius: 40px;
     border: 1.5px solid rgba(255, 255, 255, 0.3);
     transition: all 0.3s;
 }

 .btn-outline-custom:hover {
     border-color: #e8a838;
     color: #e8a838;
 }

 /* --- Course Details Page Styles --- */
 .course-hero {
     background: linear-gradient(135deg, #f8fafc 0%, #eef2ff 100%);
     padding: 48px 0 40px;
 }

 .hero-grid {
     display: flex;
     flex-wrap: wrap;
     gap: 40px;
     align-items: center;
     justify-content: space-between;
 }

 .hero-left {
     flex: 2.4;
 }

 .hero-badge {
     background: rgba(232, 168, 56, 0.15);
     display: inline-block;
     padding: 6px 14px;
     border-radius: 40px;
     font-size: 0.8rem;
     font-weight: 600;
     color: #e8a838;
     margin-bottom: 20px;
     border: 1px solid rgba(232, 168, 56, 0.3);
 }

 .hero-left h1 {
     font-size: 2.7rem;
     font-weight: 800;
     line-height: 1.2;
     margin-bottom: 20px;
     color: #0f172a;
 }

 .hero-left p {
     font-size: 1.1rem;
     color: #475569;
     margin-bottom: 28px;
 }

 .stats-row {
     display: flex;
     gap: 32px;
     flex-wrap: wrap;
     margin: 28px 0;
 }

 .stat-item h3 {
     font-size: 2rem;
     font-weight: 800;
     color: #11337e;
 }

 .hero-right {
     flex: 1;
     background: white;
     border-radius: 28px;
     box-shadow: 0 20px 35px -12px rgba(0, 0, 0, 0.1);
     padding: 28px 24px;
 }

 .form-title {
     font-size: 1.5rem;
     font-weight: 700;
     margin-bottom: 16px;
 }

 .form-group {
     margin-bottom: 18px;
 }

 .form-group input,
 .form-group select {
     width: 100%;
     padding: 12px 16px;
     border: 1px solid #e2e8f0;
     border-radius: 16px;
     font-family: inherit;
     outline: none;
 }

 .book-btn {
     background: #e8a838;
     color: #0f172a;
     width: 100%;
     padding: 14px;
     font-weight: 700;
     border: none;
     border-radius: 40px;
     font-size: 1rem;
     cursor: pointer;
     transition: all 0.3s;
 }

 .book-btn:hover {
     background: #d4952a;
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(232, 168, 56, 0.3);
 }

 .small-note {
     font-size: 12px;
     text-align: center;
     margin-top: 12px;
     color: #64748b;
 }

 .features {
     padding: 60px 0;
     background: white;
 }

 .section-sub {
     text-align: center;
     color: #475569;
     margin-bottom: 48px;
 }

 .feature-grid {
     display: flex;
     flex-wrap: wrap;
     gap: 28px;
     justify-content: center;
 }

 .feat-card {
     background: #f8fafc;
     padding: 24px 20px;
     border-radius: 28px;
     flex: 1 1 200px;
     text-align: center;
     transition: 0.3s;
     border: 1px solid transparent;
 }

 .feat-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 20px 30px rgba(232, 168, 56, 0.15);
     border-color: #e8a838;
 }

 .feat-card i {
     font-size: 2.5rem;
     color: #e8a838;
     margin-bottom: 12px;
 }

 .course-overview {
     background: #f1f5f9;
     padding: 60px 0;
 }

 .overview-stats {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     gap: 20px;
     margin-bottom: 40px;
 }

 .stat-badge {
     background: white;
     border-radius: 60px;
     padding: 12px 24px;
     font-weight: 600;
     box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
 }

 .stat-badge i {
     color: #e8a838;
     margin-right: 5px;
 }

 .course-tags {
     display: flex;
     flex-wrap: wrap;
     gap: 16px;
     margin: 32px 0;
 }

 .tech-tag {
     background: white;
     padding: 10px 20px;
     border-radius: 40px;
     font-weight: 500;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
     border: 1px solid rgba(232, 168, 56, 0.2);
 }

 .enroll-btn {
     background: #e8a838;
     color: #0f172a;
     border: none;
     padding: 14px 36px;
     border-radius: 40px;
     font-weight: 700;
     font-size: 1rem;
     cursor: pointer;
     transition: all 0.3s;
 }

 .enroll-btn:hover {
     background: #d4952a;
     transform: translateY(-2px);
     box-shadow: 0 10px 25px rgba(232, 168, 56, 0.3);
 }

 .projects {
     padding: 60px 0;
     background: white;
 }

 .project-cards {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
     gap: 28px;
     margin-top: 40px;
 }

 .project-card {
     background: #f8fafc;
     border-radius: 24px;
     padding: 24px;
     transition: 0.3s;
     border: 1px solid transparent;
 }

 .project-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 15px 30px rgba(232, 168, 56, 0.15);
     border-color: #e8a838;
 }

 .project-card h4 {
     font-size: 1.25rem;
     margin-bottom: 12px;
     color: #0f172a;
 }

 .tech-stack {
     display: flex;
     flex-wrap: wrap;
     gap: 8px;
     margin-top: 16px;
 }

 .tech-stack span {
     background: white;
     padding: 4px 12px;
     border-radius: 30px;
     font-size: 0.7rem;
     font-weight: 600;
     color: #11337e;
 }

 .testimonials {
     background: #f8fafc;
     padding: 60px 0;
 }

 .testi-grid {
     display: flex;
     flex-wrap: wrap;
     gap: 28px;
     margin-top: 40px;
 }

 .testi-card {
     background: white;
     border-radius: 24px;
     padding: 24px;
     flex: 1 1 280px;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
     border: 1px solid rgba(232, 168, 56, 0.1);
 }

 .testi-name {
     font-weight: 700;
     margin-top: 16px;
     color: #11337e;
 }

 .company-hired {
     padding: 50px 0;
     text-align: center;
 }

 .hired-logos {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     gap: 40px;
     margin: 32px 0;
     font-weight: 600;
     color: #334155;
     font-size: 1.1rem;
 }

 .faq-section {
     padding: 60px 0;
     background: white;
 }

 .faq-list {
     max-width: 800px;
     margin: 0 auto;
 }

 .faq-item {
     border-bottom: 1px solid #e2e8f0;
 }

 .faq-question {
     width: 100%;
     text-align: left;
     background: none;
     border: none;
     padding: 20px 0;
     font-size: 1.1rem;
     font-weight: 600;
     color: #0f172a;
     cursor: pointer;
     display: flex;
     justify-content: space-between;
     align-items: center;
     transition: color 0.3s;
 }

 .faq-question:hover {
     color: #e8a838;
 }

 .faq-question i {
     transition: transform 0.3s ease;
     color: #e8a838;
     font-size: 0.9rem;
 }

 .faq-question.active {
     color: #e8a838;
 }

 .faq-question.active i {
     transform: rotate(180deg);
 }

 .faq-answer {
     max-height: 0;
     overflow: hidden;
     transition: max-height 0.3s ease-out;
 }

 .faq-answer p {
     padding-bottom: 20px;
     color: #475569;
     margin: 0;
     font-size: 1rem;
     line-height: 1.5;
 }

 /* Responsive fixes for course pages */
 @media (max-width: 991px) {
     .hero-grid {
         flex-direction: column;
         text-align: center;
     }

     .hero-left,
     .hero-right {
         flex: 1 1 100%;
         width: 100%;
     }

     .stats-row {
         justify-content: center;
         gap: 20px;
     }

     .course-tags {
         justify-content: center;
     }
 }

 @media (max-width: 800px) {
     .hero-left h1 {
         font-size: 2rem;
     }

     .stat-item h3 {
         font-size: 1.5rem;
     }
 }

 @media (max-width: 767px) {
     .feature-grid {
         justify-content: flex-start;
         overflow-x: auto;
         flex-wrap: nowrap;
         padding-bottom: 16px;
         -webkit-overflow-scrolling: touch;
     }

     .feat-card {
         min-width: 240px;
         flex: 0 0 auto;
     }
 }

 .course-breadcrumbs {
     display: flex;
     flex-wrap: wrap;
     gap: 10px;
     font-size: 0.9rem;
     color: #64748b;
     margin-bottom: 14px;
 }

 .course-breadcrumbs a {
     color: #11337e;
 }

 .course-glance {
     border: 1px solid rgba(17, 51, 126, 0.08);
 }

 .glance-list {
     list-style: none;
     padding: 0;
     margin: 0 0 20px;
 }

 .glance-list li {
     display: flex;
     gap: 12px;
     align-items: flex-start;
     color: #334155;
     margin-bottom: 14px;
 }

 .glance-list i {
     color: #e8a838;
     margin-top: 4px;
 }

 .section-heading-row {
     display: flex;
     justify-content: space-between;
     align-items: end;
     gap: 20px;
 }

 .catalog-card {
     background: white;
     border-radius: 24px;
     overflow: hidden;
     box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
     transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
     color: inherit;
     border: 1px solid transparent;
 }

 .catalog-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 20px 40px rgba(232, 168, 56, 0.15);
     border-color: #e8a838;
 }

 .catalog-card-top {
     height: 160px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: white;
     font-size: 3.2rem;
 }

 .catalog-card-body {
     padding: 22px;
 }

 .catalog-card-body h3 {
     font-size: 1.15rem;
     font-weight: 800;
     color: #0f172a;
     margin-bottom: 12px;
 }

 .catalog-card-body p {
     color: #475569;
     line-height: 1.6;
     min-height: 78px;
     margin-bottom: 16px;
 }

 .catalog-meta {
     display: flex;
     flex-wrap: wrap;
     gap: 10px;
 }

 .catalog-meta span {
     padding: 8px 14px;
     border-radius: 999px;
     background: #f8fafc;
     border: 1px solid #e2e8f0;
     font-size: 0.8rem;
     font-weight: 600;
     color: #11337e;
 }

 .bg-python {
     background: linear-gradient(135deg, #1d4ed8, #0f172a);
 }

 .bg-java {
     background: linear-gradient(135deg, #2c5e37, #7c2d12);
 }

 .bg-mern {
     background: linear-gradient(135deg, #0ea5e9, #0f766e);
 }

 .bg-mean {
     background: linear-gradient(135deg, #2c5e37, #1e293b);
 }

 .bg-react {
     background: linear-gradient(135deg, #06b6d4, #2c5e37);
 }

 .bg-angular {
     background: linear-gradient(135deg, #dc2626, #7f1d1d);
 }

 .bg-vue {
     background: linear-gradient(135deg, #10b981, #14532d);
 }

 .bg-php {
     background: linear-gradient(135deg, #2c5e37, #312e81);
 }

 .bg-node {
     background: linear-gradient(135deg, #16a34a, #14532d);
 }

 .bg-mongo {
     background: linear-gradient(135deg, #059669, #064e3b);
 }

 .course-listing-section {
     background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
 }

 .curriculum-grid,
 .career-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
     gap: 24px;
 }

 .module-card,
 .outcome-card {
     background: white;
     border-radius: 22px;
     padding: 24px;
     box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
     border: 1px solid rgba(148, 163, 184, 0.2);
     height: 100%;
     transition: all 0.3s ease;
 }

 .module-card:hover,
 .outcome-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 15px 30px rgba(232, 168, 56, 0.15);
     border-color: #e8a838;
 }

 .module-card .module-number {
     width: 44px;
     height: 44px;
     border-radius: 50%;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: #11337e;
     color: white;
     font-weight: 700;
     margin-bottom: 14px;
 }

 .module-card h4,
 .outcome-card h4 {
     font-size: 1.05rem;
     color: #0f172a;
     font-weight: 700;
     margin-bottom: 10px;
 }

 .module-card p,
 .outcome-card p {
     color: #475569;
     margin-bottom: 0;
     line-height: 1.6;
 }

 .outcome-card i {
     font-size: 1.7rem;
     color: #e8a838;
     margin-bottom: 14px;
 }

 .inline-highlight-list {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
     gap: 14px;
     padding: 0;
     margin: 30px 0 0;
     list-style: none;
 }

 .inline-highlight-list li {
     background: white;
     border-radius: 18px;
     padding: 16px 18px;
     border: 1px solid #e2e8f0;
     color: #334155;
     box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
 }

 .cta-strip {
     background: linear-gradient(135deg, #11337e 0%, #0f172a 100%);
     color: white;
     padding: 40px 0;
 }

 .cta-strip h3 {
     font-size: 1.8rem;
     font-weight: 700;
     margin-bottom: 8px;
 }

 .cta-strip p {
     color: rgba(255, 255, 255, 0.78);
 }

 @media (max-width: 767px) {
     .catalog-card-body p {
         min-height: auto;
     }

     .section-heading-row {
         align-items: flex-start;
     }

     .cta-strip h3 {
         font-size: 1.4rem;
     }
 }

 /* ========================================= */
 /*       COURSE PAGE CSS ENHANCEMENTS        */
 /* ========================================= */

 .course-page .tech-tag {
     background: #ffffff;
     border: 1px solid #e2e8f0;
     color: #1e293b;
     padding: 10px 24px;
     border-radius: 40px;
     font-size: 1rem;
     font-weight: 600;
     display: inline-flex;
     align-items: center;
     box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
     transition: all 0.3s;
 }

 .course-page .tech-tag:hover {
     border-color: #e8a838;
     transform: translateY(-3px);
     box-shadow: 0 10px 15px -3px rgba(232, 168, 56, 0.15);
 }

 .course-page .accordion-button:not(.collapsed) {
     background-color: #fffbeb;
     /* Light yellow active state */
     color: #000000;
     box-shadow: none;
 }

 .course-page .accordion-button:focus {
     box-shadow: none;
     border-color: rgba(232, 168, 56, 0.5);
 }

 .course-page .jobroles p {
     font-size: 1.1rem;
     color: #334155;
     padding: 16px 20px;
     background: #ffffff;
     border-radius: 12px;
     margin-bottom: 12px;
     border: 1px solid #e2e8f0;
     transition: all 0.3s;
     display: flex;
     align-items: center;
     font-weight: 600;
     box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
 }

 .course-page .jobroles p i {
     font-size: 1.4rem;
     margin-right: 14px;
     color: #e8a838;
 }

 .course-page .jobroles p:hover {
     border-color: #e8a838;
     transform: translateX(8px);
     box-shadow: 0 10px 15px -3px rgba(232, 168, 56, 0.1);
 }

 /* Enhanced UI for Skills, Overview, and Projects */
 .skill-card {
     transition: all 0.3s ease;
 }

 .skill-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08) !important;
     border-color: #e8a838 !important;
 }

 .skill-card:hover .skill-icon {
     background-color: #e8a838 !important;
     color: white !important;
     transform: scale(1.1);
 }

 .skill-icon,
 .icon-wrapper {
     transition: all 0.3s ease;
 }

 .overview-box {
     transition: all 0.3s ease;
 }

 .overview-box:hover {
     transform: translateY(-10px);
     box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
 }

 .overview-box:hover .icon-wrapper {
     transform: scale(1.1);
 }

 .project-card .project-img {
     transition: all 0.5s ease;
 }

 .project-card:hover .project-img {
     background-color: #eef2ff !important;
 }

 .project-card:hover .project-img i {
     color: #e8a838 !important;
     opacity: 1 !important;
     transform: scale(1.1);
 }

 /* Scrollable Testimonials */
 .testimonial-scroll {
     display: flex;
     flex-wrap: nowrap;
     overflow-x: auto;
     gap: 1.5rem;
     padding-bottom: 1.5rem;
     scroll-snap-type: x mandatory;
     -webkit-overflow-scrolling: touch;
     scrollbar-width: thin;
     scrollbar-color: #e8a838 #f1f5f9;
     overflow: hidden;
 }

 .testimonial-scroll::-webkit-scrollbar {
     height: 8px;
 }

 .testimonial-scroll::-webkit-scrollbar-track {
     background: #f1f5f9;
     border-radius: 10px;
 }

 .testimonial-scroll::-webkit-scrollbar-thumb {
     background-color: #e8a838;
     border-radius: 10px;
 }

 .testimonial-scroll .testimonial-item-wrap {
     flex: 0 0 auto;
     width: 300px;
     scroll-snap-align: start;
 }

 @media (min-width: 768px) {
     .testimonial-scroll .testimonial-item-wrap {
         width: 350px;
     }
 }

 /* ========================================= */
 /*         MEGA MENU & HEADER REDESIGN       */
 /* ========================================= */

 .sticky-top {
     transition: all 0.4s ease;
 }

 .sticky-top.scrolled {
     background: rgba(255, 255, 255, 0.9);
     backdrop-filter: blur(15px);
     box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
 }

 .nav-link-hover {
     position: relative;
     padding: 0.5rem 0;
 }

 .nav-link-hover::after {
     content: '';
     position: absolute;
     bottom: 0;
     left: 0;
     width: 0;
     height: 2px;
     background: #e8a838;
     transition: width 0.3s ease;
 }

 .nav-link-hover:hover::after {
     width: 100%;
 }

 /* Mega Menu Container */
 .dropdown-mega {
     position: static !important;
 }

 .mega-menu {
     position: absolute;
     top: 100%;
     left: 0;
     width: 100vw;
     background: white;
     border: none;
     border-top: 2px solid #e8a838;
     box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
     padding: 2.5rem 0;
     display: none;
     z-index: 1000;
     opacity: 0;
     transform: translateY(10px);
     transition: all 0.3s ease;
 }

 .dropdown-mega:hover .mega-menu {
     display: block;
     opacity: 1;
     transform: translateY(0);
 }

 .mega-menu-content {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 30px;
 }

 .mega-menu-category h6 {
     font-size: 0.85rem;
     font-weight: 800;
     text-transform: capitalize;
     color: #11337e;
     letter-spacing: 1px;
     margin-bottom: 1.5rem;
     padding-bottom: 8px;
     border-bottom: 2px solid #f1f5f9;
 }

 .mega-menu-list {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 .mega-menu-link {
     display: flex;
     align-items: center;
     gap: 12px;
     padding: 10px 12px;
     color: #475569;
     font-size: 0.95rem;
     font-weight: 500;
     border-radius: 8px;
     transition: all 0.2s;
     text-decoration: none !important;
 }

 .mega-menu-link:hover {
     background: #f8fafc;
     color: #e8a838;
     transform: translateX(5px);
 }

 .mega-menu-link i {
     font-size: 1.1rem;
     color: #e8a838;
     opacity: 0.7;
 }

 /* Enhanced Sub-dropdowns */
 .dropdown-menu-custom {
     border: none;
     border-top: 3px solid #e8a838;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
     border-radius: 0 0 12px 12px;
     padding: 15px 0;
     min-width: 280px;
     display: none;
     opacity: 0;
     transform: translateY(10px);
     transition: all 0.3s ease;
 }

 .dropdown:hover .dropdown-menu-custom {
     display: block;
     opacity: 1;
     transform: translateY(0);
 }

 .dropdown-item-custom {
     display: flex;
     align-items: center;
     gap: 15px;
     padding: 12px 20px;
     color: #334155;
     font-weight: 500;
     transition: all 0.2s;
 }

 .dropdown-item-custom:hover {
     background: #f8fafc;
     color: #e8a838;
     padding-left: 28px;
 }

 .dropdown-item-custom .icon-wrap {
     width: 38px;
     height: 38px;
     background: #f1f5f9;
     border-radius: 10px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 1.1rem;
     color: #11337e;
     transition: all 0.2s;
 }

 .dropdown-item-custom:hover .icon-wrap {
     background: #e8a838;
     color: white;
 }

 .dropdown-item-custom .text-wrap span {
     display: block;
     font-size: 0.75rem;
     color: #64748b;
     font-weight: 400;
 }

 /* --- Counter Section --- */
 .counter-area {
     padding: 80px 0;
 }

 .counter1-box {
     text-align: center;
     padding: 20px;
 }

 .counter1-box h2 {
     font-size: 3.5rem;
     font-weight: 800;
     color: #e8a838;
     margin-bottom: 0;
 }

 .counter1-box p {
     color: #64748b;
     font-size: 1rem;
     margin-top: 10px;
     font-weight: 600;
 }

 /* --- Mobile Menu Polish --- */
 .mobile-menu-footer {
     padding: 20px;
     border-top: 1px solid rgba(0, 0, 0, 0.05);
 }

 .mobile-menu .btn-primary-custom {
     display: block;
     width: calc(100% - 40px);
     margin: 20px;
     text-align: center;
     padding: 15px;
     font-size: 1.1rem;
     border-radius: 12px;
     box-shadow: 0 4px 15px rgba(234, 88, 12, 0.2);
     text-decoration: none !important;
 }

 @media (max-width: 768px) {
     .counter1-box h2 {
         font-size: 2.5rem;
     }
 }

 /* =========================================
   NAVIGATION & UI STYLES 
   ========================================= */

 /* Top level nav custom hover */
 .hover-warning {
     transition: color 0.3s ease;
 }

 .hover-warning:hover {
     color: #e8a838 !important;
 }

 /* Custom Dropdown Styling for Desktop */
 @media (min-width: 992px) {
     .dropdown:hover .dropdown-menu {
         display: block;
         margin-top: 0;
         animation: fadeIn 0.3s ease;
     }
 }

 .dropdown-menu-custom {
     border: none;
     box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
     border-radius: 12px;
     padding: 1rem;
     min-width: 320px;
     background: #fff;
 }

 .dropdown-item-custom {
     display: flex;
     align-items: center;
     gap: 15px;
     padding: 12px 15px;
     border-radius: 8px;
     text-decoration: none;
     color: #333;
     transition: all 0.3s ease;
     margin-bottom: 5px;
 }

 .dropdown-item-custom:hover {
     background-color: #f8fafc;
     transform: translateX(5px);
 }

 .dropdown-item-custom .icon-wrap {
     width: 40px;
     height: 40px;
     display: flex;
     align-items: center;
     justify-content: center;
     background: #f1f5f9;
     border-radius: 8px;
     color: #e8a838;
     font-size: 1.2rem;
     transition: all 0.3s ease;
 }

 .dropdown-item-custom:hover .icon-wrap {
     background: #e8a838;
     color: #fff;
 }

 .dropdown-item-custom .text-wrap b {
     display: block;
     font-size: 0.95rem;
     margin-bottom: 2px;
 }

 .dropdown-item-custom .text-wrap span {
     display: block;
     font-size: 0.75rem;
     color: #64748b;
 }

 /* Mobile Menu & Hamburger */
 .hamburger {
     background: none;
     border: none;
     width: 30px;
     height: 24px;
     position: relative;
     cursor: pointer;
     z-index: 1001;
     display: flex;
     flex-direction: column;
     justify-content: space-between;
 }

 .hamburger span {
     display: block;
     height: 3px;
     width: 100%;
     background: #333;
     border-radius: 3px;
     transition: all 0.3s ease;
 }

 .hamburger.active span:nth-child(1) {
     transform: translateY(10px) rotate(45deg);
 }

 .hamburger.active span:nth-child(2) {
     opacity: 0;
 }

 .hamburger.active span:nth-child(3) {
     transform: translateY(-11px) rotate(-45deg);
 }

 .mobile-overlay {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: rgba(0, 0, 0, 0.5);
     z-index: 999;
     opacity: 0;
     visibility: hidden;
     transition: all 0.3s ease;
 }

 .mobile-overlay.active {
     opacity: 1;
     visibility: visible;
 }

 .mobile-menu {
     position: fixed;
     top: 0;
     right: -300px;
     width: 300px;
     height: 100vh;
     background: #fff;
     z-index: 1000;
     padding: 0px 20px 30px;
     overflow-y: auto;
     transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
     box-shadow: -5px 0 25px rgba(0, 0, 0, 0.1);
 }

 .mobile-menu.active {
     right: 0;
 }

 .mobile-menu .nav-link,
 .mobile-menu .dropdown-btn {
     display: flex;
     justify-content: space-between;
     align-items: center;
     width: 100%;
     padding: 15px;
     color: #333;
     text-decoration: none;
     font-weight: 600;
     border-bottom: 1px solid #eee;
     background: none;
     border: none;
     font-family: inherit;
     font-size: 1rem;
     transition: all 0.3s ease;
 }

 .mobile-menu .nav-link:hover,
 .mobile-menu .dropdown-btn:hover {
     color: #e8a838;
 }

 .mobile-menu .dropdown-content {
     display: none;
     background: #f8fafc;
     border-radius: 8px;
     margin: 5px 0;
 }

 .mobile-menu .dropdown-content.active {
     display: block;
 }

 .mobile-menu .dropdown-content a {
     display: block;
     padding: 12px 20px;
     color: #475569;
     text-decoration: none;
     font-size: 0.9rem;
     border-bottom: 1px solid #eee;
 }

 .mobile-menu .dropdown-content a:last-child {
     border-bottom: none;
 }

 .mobile-menu .dropdown-content a:hover {
     color: #e8a838;
     background: rgba(232, 168, 56, 0.05);
 }

 /* Animations */
 @keyframes fadeIn {
     from {
         opacity: 0;
         transform: translateY(10px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 @media (max-width: 991px) {
     .dropdown-menu-custom {
         display: none;
         /* Handled by mobile menu */
     }
 }

 /* Mobile Menu Logo */
 .mobile-menu-logo {
     padding: 20px;
     text-align: center;
     background: #fff;
     border-bottom: 1px solid #f1f5f9;
     margin-bottom: 10px;
 }

 .mobile-menu-logo img {
     height: 50px;
     border-radius: 25px;
     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
 }

 /* Methodology Horizontal Scroll */
 .methodology-row {
     display: flex;
     flex-wrap: nowrap;
     overflow-x: auto;
     gap: 20px;
     padding: 20px 10px;
     -webkit-overflow-scrolling: touch;
     scrollbar-width: none;
     /* Firefox */
 }

 .methodology-row::-webkit-scrollbar {
     display: none;
     /* Chrome/Safari */
 }

 .methodology-row .col {
     flex: 0 0 280px;
     /* Fixed width for horizontal items */
     max-width: 280px;
 }

 @media (min-width: 992px) {
     .methodology-row {
         flex-wrap: wrap;
         justify-content: center;
         overflow-x: visible;
     }

     .methodology-row .col {
         flex: 0 0 calc(25% - 20px);
         max-width: calc(25% - 20px);
     }
 }

 /* Footer Refined Style */
 footer h5 {
     color: #e8a838 !important;
     font-size: 1.1rem !important;
     font-weight: 700 !important;
     margin-bottom: 1.5rem !important;
     position: relative;
     padding-bottom: 10px;
 }

 footer h5::after {
     content: '';
     position: absolute;
     left: 0;
     bottom: 0;
     width: 30px;
     height: 3px;
     background: #e8a838;
     border-radius: 2px;
 }

 /* Hero Stats Responsive Fix */
 .hero-stats-card {
     transition: transform 0.3s ease;
 }

 .hero-stats-card:hover {
     transform: translateY(-5px);
 }

 /* Accordion Text Color Fix */
 .accordion-button {
     color: #000000 !important;
     font-weight: 600;
     background-color: #fff !important;
 }

 .accordion-button:not(.collapsed) {
     color: #000000 !important;
     background-color: #eef2ff !important;
     box-shadow: none;
 }

 .accordion-button::after {
     filter: none;
     /* background-color: #000000 !important; */
     opacity: 1 !important;
 }

 .accordion-button:not(.collapsed)::after {
     /* background-color: #000000 !important; */
     opacity: 1 !important;
 }


 /* The following change was applied */
.accordion-body {
    visibility: visible !important;
}

#accordion-ptag {
    visibility: visible !important;
}

 .accordion-body {
     color: #000000 !important;
     background-color: #ffffff !important;
 }

 .accordion-body p,
 .accordion-body p#accordion-ptag {
     color: #000000 !important;
     margin: 0;
 }

 .accordion-item {
     background-color: #ffffff;
     border: 1px solid #e2e8f0;
 }

/* Wavy Timeline Section */
.kg-timeline-wrapper {
    width: 100%;
    overflow-x: auto;
    padding: 60px 0 80px;
    -webkit-overflow-scrolling: touch;
}

.kg-timeline-wrapper::-webkit-scrollbar {
    height: 6px;
}
.kg-timeline-wrapper::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}
.kg-timeline-wrapper::-webkit-scrollbar-thumb {
    background: #8bc34a;
    border-radius: 3px;
}

.kg-timeline-track {
    position: relative;
    width: 1300px; /* Fixed width to precisely match SVG layout */
    height: 200px;
    margin: 0 auto;
}

.kg-timeline-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.kg-time-node {
    position: absolute;
    width: 0;
    height: 0;
    z-index: 2;
}

/* Exact Coordinates mapped to SVG */
.node-1 { left: 200px; top: 160px; }
.node-2 { left: 400px; top: 40px; }
.node-3 { left: 600px; top: 160px; }
.node-4 { left: 800px; top: 40px; }
.node-5 { left: 1000px; top: 160px; }
.node-6 { left: 1200px; top: 40px; }

.kg-time-leaf {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background: #ffffff;
    border: 6px solid;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.kg-time-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.95rem;
}

.kg-time-content {
    position: absolute;
    width: 150px;
    right: 45px; /* Placed exactly to the left of the leaf */
    top: 50%;
    transform: translateY(-50%);
    text-align: left;
}

.kg-time-content h4 {
    font-size: 1.25rem;
    font-weight: 800;
    color: #475569;
    margin-bottom: 5px;
}

.kg-time-content p {
    font-size: 0.75rem;
    color: #94a3b8;
    line-height: 1.4;
    margin: 0;
    font-weight: 500;
}

@media (max-width: 1300px) {
    .kg-timeline-wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }
}
/* End Wavy Timeline Section */


/* 4-Step Pill Path */
.kg-steps-section {
    background: #1c532a; /* Dark Green Section Background */
}

.kg-steps-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px; /* Precise gap between columns */
}

.kg-step-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px; /* Spacing between circle and pill */
    width: 100%;
    max-width: 160px; /* Slim pill width like reference */
}

.kg-step-circle {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 2rem;
    box-shadow: 0 15px 25px rgba(0,0,0,0.3), inset 0 5px 10px rgba(255,255,255,0.4), inset 0 -5px 15px rgba(0,0,0,0.2);
    transition: transform 0.3s ease;
    /* ALL circles use the Orange color combo with 50/50 split */
    background: linear-gradient(90deg, #f0b85a 0%, #f0b85a 50%, #e8a838 50%, #e8a838 100%);
}

.kg-step-col:hover .kg-step-circle {
    transform: translateY(-5px);
}

.kg-step-pill {
    width: 100%;
    height: 330px; /* Fixed height */
    padding: 35px 15px;
    border-radius: 80px; /* Half of max-width to create perfect pill */
    text-align: center;
    color: #fff;
    box-shadow: 0 20px 30px rgba(0,0,0,0.3), inset 0 8px 15px rgba(255,255,255,0.4), inset 0 -8px 20px rgba(0,0,0,0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.3s ease;
    /* ALL pills use the Orange color combo with 50/50 split */
    background: linear-gradient(90deg, #f0b85a 0%, #f0b85a 50%, #e8a838 50%, #e8a838 100%);
}

.kg-step-col:hover .kg-step-pill {
    transform: translateY(-5px);
}

.kg-step-info {
    margin-bottom: 12px;
}

.step-label {
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: -2px;
    opacity: 0.9;
}

.step-num {
    font-size: 2.8rem;
    font-weight: 900;
    margin: 0;
    line-height: 1;
}

.kg-pill-divider {
    width: 35px;
    height: 2px;
    background: rgba(255,255,255,0.7);
    margin: 0 auto 15px;
}

.step-title {
    font-size: 1rem;
    font-weight: 800;
    margin-bottom: 10px;
    letter-spacing: 0.5px;
}

.step-desc {
    font-size: 0.7rem;
    line-height: 1.5;
    opacity: 0.95;
    margin: 0;
}

@media (max-width: 991px) {
    .kg-step-col {
        max-width: 200px;
    }
}

/* Wavy Process Section */
.kg-wavy-process-section {
    background: #ffffff;
}

@media (min-width: 992px) {
    .kg-wavy-track {
        position: relative;
        width: 100%;
        max-width: 900px;
        margin: 0 auto;
        height: 440px;
    }

    .kg-wavy-svg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        pointer-events: none;
        overflow: visible;
    }

    .kg-wavy-cards {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        padding: 0;
        z-index: 2;
    }

    .kg-wavy-slot {
        flex: 0 0 225px;
        width: 225px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

.kg-wavy-card {
    width: 100%;
    max-width: 160px;
    height: 300px;
    margin: 0 auto;
    background: #e8a838;
    border-radius: 80px;
    padding: 12px;
    box-shadow: 0 15px 30px rgba(0,0,0,0.15), inset 0 5px 15px rgba(255,255,255,0.5), inset 0 -5px 15px rgba(0,0,0,0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 2;
    transition: transform 0.3s ease;
}

.kg-wavy-card:hover {
    transform: translateY(-5px);
}

.kg-wavy-dome {
    width: 118px;
    height: 118px;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 35%, #475569, #0f172a 70%);
    box-shadow: 0 10px 15px rgba(0,0,0,0.4), inset 0 -5px 10px rgba(0,0,0,0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 2rem;
    margin-bottom: 10px;
    flex-shrink: 0;
}

.kg-wavy-content {
    text-align: center;
    color: #0f172a;
    padding: 0;
}

.wavy-num {
    font-size: 2.2rem;
    font-weight: 900;
    margin: 0;
    line-height: 1;
    color: #1c532a;
}

.wavy-divider {
    width: 30px;
    height: 3px;
    background: #1c532a;
    margin: 8px auto;
}

.wavy-title {
    font-size: 1rem;
    font-weight: 900;
    margin-bottom: 4px;
    letter-spacing: 0.5px;
}

.wavy-desc {
    font-size: 0.65rem; /* Smaller text to fit beautifully */
    line-height: 1.3;
    font-weight: 700;
    margin: 0;
    padding: 0 5px;
}

/* Proven Process alignment fix */
.kg-wavy-process-section {
    padding: 72px 0 80px;
}

.kg-wavy-process-section .section-title {
    margin-bottom: 44px !important;
    line-height: 1.12;
}

.kg-wavy-track {
    position: relative;
    max-width: 1160px;
    margin: 0 auto;
}

.kg-wavy-card {
    width: min(100%, 214px);
    max-width: 214px;
    min-height: 356px;
    height: auto;
    padding: 18px 18px 24px;
    border-radius: 110px;
    justify-content: flex-start;
}

.kg-wavy-dome {
    width: 142px;
    height: 142px;
    margin-bottom: 18px;
    font-size: 2.25rem;
}

.kg-wavy-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
}

.wavy-num {
    font-size: 2.6rem;
}

.wavy-title {
    min-height: 24px;
    font-size: 1.03rem;
    line-height: 1.15;
}

.wavy-desc {
    max-width: 160px;
    font-size: 0.74rem;
    line-height: 1.28;
    padding: 0;
}

.kg-corporate-solutions-section .wavy-num,
.kg-corporate-solutions-section .wavy-divider {
    display: none;
}

.kg-corporate-solutions-section .wavy-title {
    margin-top: 6px;
}

.kg-corporate-solutions-section .kg-wavy-track::before {
    display: none;
}

@media (min-width: 992px) {
    .kg-wavy-track {
        height: auto;
        margin-top: 0 !important;
    }

    .kg-wavy-svg {
        display: none !important;
    }

    .kg-wavy-track::before {
        content: '';
        position: absolute;
        left: 3%;
        right: 3%;
        top: 50%;
        height: 8px;
        border-radius: 999px;
        background: linear-gradient(90deg, #1c532a 0 24%, #e8a838 24% 50%, #1c532a 50% 74%, #e8a838 74% 100%);
        transform: translateY(-50%);
        z-index: 0;
    }

    .kg-wavy-cards {
        position: relative;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 28px;
        align-items: stretch;
        width: 100%;
        height: auto;
        z-index: 1;
    }

    .kg-wavy-slot {
        width: auto;
        min-width: 0;
        display: flex;
        justify-content: center;
        align-items: stretch;
    }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
    .kg-wavy-cards {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .kg-wavy-card {
        width: min(100%, 190px);
        max-width: 190px;
        min-height: 338px;
        padding: 16px 14px 22px;
    }

    .kg-wavy-dome {
        width: 126px;
        height: 126px;
    }

    .wavy-desc {
        font-size: 0.7rem;
        max-width: 145px;
    }
}

@media (max-width: 991.98px) {
    .kg-wavy-process-section {
        padding: 56px 0 64px;
    }

    .kg-wavy-track {
        margin-top: 0 !important;
    }

    .kg-wavy-track .row {
        row-gap: 28px;
    }

    .kg-wavy-card {
        width: min(100%, 230px);
        max-width: 230px;
        min-height: 350px;
    }
}

@media (max-width: 575.98px) {
    .kg-wavy-process-section .section-title {
        font-size: 2rem;
        margin-bottom: 30px !important;
    }

    .kg-wavy-card {
        width: min(100%, 220px);
        min-height: 340px;
    }

    .kg-wavy-dome {
        width: 132px;
        height: 132px;
    }
}

/* Learning Path alignment fix */
.kg-steps-section {
    padding: 72px 0 82px !important;
}

.kg-steps-section .section-title {
    max-width: 1040px;
    margin: 0 auto 46px !important;
    line-height: 1.12;
}

.kg-steps-container {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
    max-width: 1180px;
    margin: 0 auto !important;
}

.kg-step-col {
    width: 100%;
    max-width: none;
    gap: 0;
    justify-content: stretch;
}

.kg-step-circle {
    display: none !important;
}

.kg-step-pill {
    width: min(100%, 204px);
    min-height: 326px;
    height: auto;
    padding: 40px 20px 34px;
    border-radius: 104px;
    justify-content: flex-start;
}

.kg-step-info {
    margin-bottom: 14px;
}

.step-label {
    font-size: 0.82rem;
    line-height: 1;
}

.step-num {
    font-size: 3.05rem;
}

.kg-pill-divider {
    margin-bottom: 20px;
}

.step-title {
    min-height: 30px;
    font-size: 1.06rem;
    line-height: 1.15;
}

.step-desc {
    max-width: 150px;
    font-size: 0.76rem;
    line-height: 1.38;
}

@media (max-width: 1199.98px) {
    .kg-steps-container {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 18px;
    }

    .kg-step-pill {
        width: min(100%, 182px);
        min-height: 316px;
        padding: 36px 16px 32px;
    }

    .step-desc {
        max-width: 138px;
        font-size: 0.72rem;
    }
}

@media (max-width: 991.98px) {
    .kg-steps-section {
        padding: 58px 0 68px !important;
    }

    .kg-steps-section .section-title {
        margin-bottom: 38px !important;
    }

    .kg-steps-container {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 26px 22px;
        max-width: 720px;
    }

    .kg-step-pill {
        width: min(100%, 210px);
        min-height: 314px;
    }
}

@media (max-width: 767.98px) {
    .kg-steps-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 480px;
    }
}

@media (max-width: 575.98px) {
    .kg-steps-section .section-title {
        font-size: 2rem;
        margin-bottom: 30px !important;
    }

    .kg-steps-container {
        grid-template-columns: 1fr;
        gap: 28px;
        max-width: 320px;
    }

    .kg-step-col {
        gap: 0;
    }

    .kg-step-pill {
        width: min(100%, 220px);
        min-height: 300px;
        padding: 34px 20px 30px;
    }

    .step-num {
        font-size: 2.9rem;
    }
}

.kg-grad-steps-container .kg-step-pill {
    min-height: 374px;
    padding: 36px 16px 30px;
}

.kg-grad-step-icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    color: #ffffff;
    font-size: 1.55rem;
    box-shadow: inset 0 4px 10px rgba(255, 255, 255, 0.22), 0 10px 18px rgba(0, 0, 0, 0.12);
}

.kg-grad-steps-container .step-title {
    min-height: 54px;
    font-size: 0.94rem;
}

.kg-grad-steps-container .step-desc {
    max-width: 150px;
    font-size: 15px;
}

@media (max-width: 991.98px) {
    .kg-grad-steps-container .kg-step-pill {
        min-height: 352px;
    }
}

@media (max-width: 575.98px) {
    .kg-grad-steps-container .kg-step-pill {
        min-height: 330px;
    }
}

/* Agri Graduates marquee (home page) */
.kg-grad-marquee {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin-top: 10px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}

.kg-grad-marquee-track {
    display: flex;
    width: max-content;
    gap: 24px;
    padding: 12px 4px 28px;
    animation: kgGradMarqueeScroll 50s linear infinite;
    will-change: transform;
}

.kg-grad-marquee:hover .kg-grad-marquee-track {
    animation-play-state: paused;
}

.kg-grad-marquee .kg-step-col {
    flex: 0 0 204px;
    width: 204px;
    max-width: none;
}

.kg-agri-admin-bar {
    display: flex;
    justify-content: center;
    margin: -18px 0 22px;
}

.kg-agri-add-card,
.kg-agri-card-actions button,
.kg-agri-edit-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.38);
    color: #ffffff;
    background: rgba(255, 255, 255, 0.14);
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.kg-agri-add-card {
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font-weight: 800;
}

.kg-agri-add-card:hover,
.kg-agri-card-actions button:hover,
.kg-agri-edit-btn:hover {
    color: #14351d;
    background: #e8a838;
    transform: translateY(-1px);
}

.kg-agri-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(8, 33, 17, 0.68);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.kg-agri-modal.is-open {
    display: flex;
}

.kg-agri-modal-panel {
    position: relative;
    width: min(100%, 460px);
    padding: 26px;
    border-radius: 8px;
    color: #17251c;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
}

.kg-agri-modal-panel h3 {
    margin: 0 0 18px;
    color: #1c532a;
    font-size: 1.25rem;
    font-weight: 800;
}

.kg-agri-modal-panel form {
    display: grid;
    gap: 14px;
}

.kg-agri-modal-panel label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #405044;
    font-size: 0.9rem;
    font-weight: 800;
}

.kg-agri-modal-panel input,
.kg-agri-modal-panel textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(28, 83, 42, 0.2);
    border-radius: 8px;
    color: #17251c;
    background: #f8fbf5;
    font: inherit;
}

.kg-agri-modal-panel textarea {
    resize: vertical;
}

.kg-agri-modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    color: #1c532a;
    background: #eef6ea;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

.kg-agri-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

.kg-agri-modal-cancel,
.kg-agri-modal-save {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 800;
    cursor: pointer;
}

.kg-agri-modal-cancel {
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
}

.kg-agri-modal-save {
    border: 1px solid #1c532a;
    color: #ffffff;
    background: #1c532a;
}

.kg-agri-card-actions {
    position: absolute;
    top: 14px;
    right: 16px;
    z-index: 5;
}

.kg-agri-card-actions button,
.kg-agri-edit-btn {
    width: 28px;
    height: 28px;
    padding: 0;
    border-radius: 50%;
    font-size: 0.72rem;
}

.kg-agri-edit-btn {
    margin: 8px auto 0;
}

.kg-agri-inline-editor,
.kg-agri-icon-input {
    position: relative;
    z-index: 6;
    width: 100%;
    min-height: 36px;
    padding: 8px 10px;
    border: 2px solid rgba(255, 255, 255, 0.75);
    border-radius: 8px;
    color: #14351d;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(20, 53, 29, 0.16);
    font-size: 0.86rem;
    font-weight: 700;
    text-align: center;
}

.kg-agri-inline-editor {
    margin: 8px 0 0;
}

textarea.kg-agri-inline-editor {
    min-height: 96px;
    resize: vertical;
}

.kg-agri-icon-input {
    margin: -8px 0 12px;
    font-size: 0.72rem;
}

.kg-agri-edit-hidden {
    display: none !important;
}

@keyframes kgGradMarqueeScroll {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-50% - 12px)); }
}

@media (max-width: 1199.98px) {
    .kg-grad-marquee-track { gap: 20px; animation-duration: 46s; }
    .kg-grad-marquee .kg-step-col { flex-basis: 190px; width: 190px; }
}

@media (max-width: 575.98px) {
    .kg-grad-marquee {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
    }

    .kg-grad-marquee-track { gap: 14px; padding: 8px 4px 24px; animation-duration: 36s; }
    .kg-grad-marquee .kg-step-col { flex-basis: 178px; width: 178px; }
}

@media (prefers-reduced-motion: reduce) {
    .kg-grad-marquee-track { animation: none; }
}

/* Corporate Solutions marquee (home page) */
.kg-corp-marquee {
    position: relative;
    overflow: hidden;
    width: 100%;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}

.kg-corp-marquee-track {
    display: flex;
    width: max-content;
    gap: 28px;
    padding: 12px 4px 28px;
    animation: kgCorpMarqueeScroll 55s linear infinite;
    will-change: transform;
}

.kg-corp-marquee:hover .kg-corp-marquee-track {
    animation-play-state: paused;
}

.kg-corp-marquee .kg-wavy-card {
    flex: 0 0 214px;
    width: 214px;
    max-width: 214px;
}

.kg-corp-admin-bar {
    display: flex;
    justify-content: center;
    margin: -22px 0 22px;
}

.kg-corp-add-card,
.kg-corp-card-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.kg-corp-add-card {
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(28, 83, 42, 0.1);
}

.kg-corp-add-card:hover,
.kg-corp-card-actions button:hover {
    color: #ffffff;
    background: #1c532a;
    transform: translateY(-1px);
}

.kg-corp-card-actions {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 8;
}

.kg-corp-card-actions button {
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    font-size: 0.75rem;
}

.kg-corp-icon-input,
.kg-corp-inline-editor {
    position: relative;
    z-index: 8;
    width: 100%;
    min-height: 36px;
    padding: 8px 10px;
    border: 2px solid rgba(28, 83, 42, 0.22);
    border-radius: 8px;
    color: #14351d;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(20, 53, 29, 0.14);
    font-size: 0.86rem;
    font-weight: 800;
    text-align: center;
}

.kg-corp-icon-input {
    margin: -8px 0 12px;
    font-size: 0.72rem;
}

.kg-corp-inline-editor {
    margin: 8px auto 0;
}

textarea.kg-corp-inline-editor {
    min-height: 96px;
    resize: vertical;
}

.kg-corp-edit-hidden {
    display: none !important;
}

.kg-corp-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(8, 33, 17, 0.68);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.kg-corp-modal.is-open {
    display: flex;
}

.kg-corp-modal-panel {
    position: relative;
    width: min(100%, 460px);
    padding: 26px;
    border-radius: 8px;
    color: #17251c;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
}

.kg-corp-modal-panel h3 {
    margin: 0 0 18px;
    color: #1c532a;
    font-size: 1.25rem;
    font-weight: 800;
}

.kg-corp-modal-panel form {
    display: grid;
    gap: 14px;
}

.kg-corp-modal-panel label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #405044;
    font-size: 0.9rem;
    font-weight: 800;
}

.kg-corp-modal-panel input,
.kg-corp-modal-panel textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(28, 83, 42, 0.2);
    border-radius: 8px;
    color: #17251c;
    background: #f8fbf5;
    font: inherit;
}

.kg-corp-modal-panel textarea {
    resize: vertical;
}

.kg-corp-modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    color: #1c532a;
    background: #eef6ea;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

.kg-corp-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

.kg-corp-modal-cancel,
.kg-corp-modal-save {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 800;
    cursor: pointer;
}

.kg-corp-modal-cancel {
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
}

.kg-corp-modal-save {
    border: 1px solid #1c532a;
    color: #ffffff;
    background: #1c532a;
}

@keyframes kgCorpMarqueeScroll {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-50% - 14px)); }
}

@media (max-width: 1199.98px) {
    .kg-corp-marquee-track { gap: 22px; animation-duration: 50s; }
    .kg-corp-marquee .kg-wavy-card {
        flex-basis: 190px;
        width: 190px;
        max-width: 190px;
        min-height: 338px;
        padding: 16px 14px 22px;
    }
    .kg-corp-marquee .kg-wavy-dome { width: 126px; height: 126px; }
    .kg-corp-marquee .wavy-desc { font-size: 0.7rem; max-width: 145px; }
}

@media (max-width: 575.98px) {
    .kg-corp-marquee {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
    }

    .kg-corp-marquee-track { gap: 16px; padding: 8px 4px 24px; animation-duration: 40s; }
    .kg-corp-marquee .kg-wavy-card {
        flex-basis: 178px;
        width: 178px;
        max-width: 178px;
        min-height: 320px;
    }
    .kg-corp-marquee .kg-wavy-dome { width: 116px; height: 116px; }
}

@media (prefers-reduced-motion: reduce) {
    .kg-corp-marquee-track { animation: none; }
}

/* Our Farmers marquee (home page) */
.kg-farmers-marquee {
    position: relative;
    overflow: hidden;
    width: 100%;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}
.kg-farmers-marquee-track {
    display: flex;
    align-items: stretch;
    width: max-content;
    gap: 24px;
    padding: 12px 4px 28px;
    animation: kgFarmersMarqueeScroll 55s linear infinite;
    will-change: transform;
}
.kg-farmers-marquee:hover .kg-farmers-marquee-track { animation-play-state: paused; }
.kg-farmers-marquee .kg-corp-infographic-card { flex: 0 0 240px; width: 240px; }

.kg-farmers-admin-bar {
    display: flex;
    justify-content: center;
    margin: -24px 0 24px;
}

.kg-farmers-add-card,
.kg-farmers-card-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.kg-farmers-add-card {
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(28, 83, 42, 0.1);
}

.kg-farmers-add-card:hover,
.kg-farmers-card-actions button:hover {
    color: #ffffff;
    background: #1c532a;
    transform: translateY(-1px);
}

.kg-farmers-card-actions {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 8;
}

.kg-farmers-card-actions button {
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    font-size: 0.75rem;
}

.kg-farmers-icon-input,
.kg-farmers-color-input,
.kg-farmers-inline-editor {
    position: relative;
    z-index: 8;
    width: 100%;
    min-height: 34px;
    padding: 7px 9px;
    border: 2px solid rgba(28, 83, 42, 0.18);
    border-radius: 8px;
    color: #14351d;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(20, 53, 29, 0.12);
    font-size: 0.82rem;
    font-weight: 800;
    text-align: center;
}

.kg-farmers-icon-input,
.kg-farmers-color-input {
    margin-top: 8px;
}

.kg-farmers-inline-editor {
    margin: 8px auto 0;
}

textarea.kg-farmers-inline-editor {
    min-height: 96px;
    resize: vertical;
}

.kg-farmers-edit-hidden {
    display: none !important;
}

.kg-farmers-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(8, 33, 17, 0.68);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.kg-farmers-modal.is-open {
    display: flex;
}

.kg-farmers-modal-panel {
    position: relative;
    width: min(100%, 460px);
    padding: 26px;
    border-radius: 8px;
    color: #17251c;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
}

.kg-farmers-modal-panel h3 {
    margin: 0 0 18px;
    color: #1c532a;
    font-size: 1.25rem;
    font-weight: 800;
}

.kg-farmers-modal-panel form {
    display: grid;
    gap: 14px;
}

.kg-farmers-modal-panel label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #405044;
    font-size: 0.9rem;
    font-weight: 800;
}

.kg-farmers-modal-panel input,
.kg-farmers-modal-panel select,
.kg-farmers-modal-panel textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(28, 83, 42, 0.2);
    border-radius: 8px;
    color: #17251c;
    background: #f8fbf5;
    font: inherit;
}

.kg-farmers-modal-panel textarea {
    resize: vertical;
}

.kg-farmers-modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    color: #1c532a;
    background: #eef6ea;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

.kg-farmers-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

.kg-farmers-modal-cancel,
.kg-farmers-modal-save {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 800;
    cursor: pointer;
}

.kg-farmers-modal-cancel {
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
}

.kg-farmers-modal-save {
    border: 1px solid #1c532a;
    color: #ffffff;
    background: #1c532a;
}
@keyframes kgFarmersMarqueeScroll {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-50% - 12px)); }
}
@media (max-width: 1199.98px) {
    .kg-farmers-marquee-track { gap: 20px; animation-duration: 50s; }
    .kg-farmers-marquee .kg-corp-infographic-card { flex-basis: 210px; width: 210px; min-height: 320px; }
}
@media (max-width: 575.98px) {
    .kg-farmers-marquee {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
    }
    .kg-farmers-marquee-track { gap: 14px; padding: 8px 4px 24px; animation-duration: 38s; }
    .kg-farmers-marquee .kg-corp-infographic-card {
        flex-basis: 190px; width: 190px; min-height: 260px;
    }
    .kg-farmers-marquee .kg-corp-infographic-header { padding: 20px 16px 16px; gap: 8px; }
    .kg-farmers-marquee .kg-corp-infographic-icon-wrap { width: 48px; height: 48px; font-size: 1.3rem; }
    .kg-farmers-marquee .kg-corp-infographic-num { font-size: 1.4rem; }
}
@media (prefers-reduced-motion: reduce) {
    .kg-farmers-marquee-track { animation: none; }
}

/* Client testimonials marquee */
.kg-client-testimonials-section {
    position: relative;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.kg-client-testimonials-section .section-title {
    line-height: 1.12;
}

.kg-testimonial-marquee {
    position: relative;
    overflow: hidden;
    width: 100%;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}

.kg-testimonial-track {
    display: flex;
    width: max-content;
    gap: 24px;
    padding: 4px 12px;
    animation: kgTestimonialScroll 38s linear infinite;
    will-change: transform;
}

.kg-testimonial-marquee-reverse .kg-testimonial-track {
    animation-name: kgTestimonialScrollReverse;
}

.kg-testimonial-marquee:hover .kg-testimonial-track {
    animation-play-state: paused;
}

.kg-testimonials-edit-mode .kg-testimonial-marquee {
    overflow-x: auto;
    -webkit-mask-image: none;
    mask-image: none;
}

.kg-testimonials-edit-mode .kg-testimonial-track {
    animation: none;
    transform: none;
    width: max-content;
}

.kg-testimonial-card {
    position: relative;
    flex: 0 0 360px;
    min-height: 210px;
    padding: 26px 24px;
    border: 1px solid rgba(28, 83, 42, 0.1);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.08);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.kg-testimonial-stars {
    display: flex;
    gap: 4px;
    color: #e8a838;
    font-size: 0.9rem;
    margin-bottom: 14px;
}

.kg-testimonial-card p {
    color: #475569;
    font-size: 0.95rem;
    line-height: 1.55;
    margin: 0 0 20px;
    font-weight: 500;
}

.kg-testimonial-card h4 {
    color: #1c532a;
    font-size: 1rem;
    font-weight: 800;
    margin: 0 0 3px;
}

.kg-testimonial-card span {
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 700;
}

.kg-testimonials-admin-bar {
    display: flex;
    justify-content: center;
    margin: -28px 0 30px;
}

.kg-testimonials-add-card,
.kg-testimonials-card-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.kg-testimonials-add-card {
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(28, 83, 42, 0.1);
}

.kg-testimonials-add-card:hover,
.kg-testimonials-card-actions button:hover {
    color: #ffffff;
    background: #1c532a;
    transform: translateY(-1px);
}

.kg-testimonials-card-actions {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 12;
}

.kg-testimonials-card-actions button {
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    font-size: 0.75rem;
}

.kg-testimonials-card-actions button:hover {
    border-color: #b42318;
    background: #b42318;
}

.kg-testimonials-rating-input,
.kg-testimonials-row-input,
.kg-testimonials-inline-editor {
    position: relative;
    z-index: 8;
    width: 100%;
    min-height: 34px;
    padding: 7px 9px;
    border: 2px solid rgba(28, 83, 42, 0.14);
    border-radius: 8px;
    color: #14351d;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(20, 53, 29, 0.1);
    font-size: 0.82rem;
    font-weight: 800;
}

.kg-testimonials-rating-input,
.kg-testimonials-row-input {
    width: calc(50% - 4px);
    margin: 0 4px 12px 0;
}

.kg-testimonials-inline-editor {
    margin: 8px auto 0;
}

textarea.kg-testimonials-inline-editor {
    min-height: 96px;
    resize: vertical;
}

.kg-testimonials-edit-hidden {
    display: none !important;
}

.kg-testimonials-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(8, 33, 17, 0.68);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.kg-testimonials-modal.is-open {
    display: flex;
}

.kg-testimonials-modal-panel {
    position: relative;
    width: min(100%, 480px);
    padding: 26px;
    border-radius: 8px;
    color: #17251c;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
}

.kg-testimonials-modal-panel h3 {
    margin: 0 0 18px;
    color: #1c532a;
    font-size: 1.25rem;
    font-weight: 800;
}

.kg-testimonials-modal-panel form {
    display: grid;
    gap: 14px;
}

.kg-testimonials-modal-panel label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #405044;
    font-size: 0.9rem;
    font-weight: 800;
}

.kg-testimonials-modal-panel input,
.kg-testimonials-modal-panel select,
.kg-testimonials-modal-panel textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(28, 83, 42, 0.2);
    border-radius: 8px;
    color: #17251c;
    background: #f8fbf5;
    font: inherit;
}

.kg-testimonials-modal-panel textarea {
    resize: vertical;
}

.kg-testimonials-modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    color: #1c532a;
    background: #eef6ea;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

.kg-testimonials-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

.kg-testimonials-modal-cancel,
.kg-testimonials-modal-save {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 800;
    cursor: pointer;
}

.kg-testimonials-modal-cancel {
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
}

.kg-testimonials-modal-save {
    border: 1px solid #1c532a;
    color: #ffffff;
    background: #1c532a;
}

@keyframes kgTestimonialScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-50% - 12px));
    }
}

@keyframes kgTestimonialScrollReverse {
    from {
        transform: translateX(calc(-50% - 12px));
    }

    to {
        transform: translateX(0);
    }
}

@media (max-width: 991.98px) {
    .kg-testimonial-track {
        gap: 18px;
        animation-duration: 34s;
    }

    .kg-testimonial-card {
        flex-basis: 310px;
        min-height: 218px;
        padding: 24px 22px;
    }
}

@media (max-width: 575.98px) {
    .kg-client-testimonials-section .section-title {
        font-size: 2rem;
    }

    .kg-client-testimonials-section p.text-center {
        max-width: 310px;
        margin-left: auto;
        margin-right: auto;
    }

    .kg-testimonial-marquee {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 4%, #000 96%, transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 4%, #000 96%, transparent 100%);
    }

    .kg-testimonial-track {
        gap: 14px;
        padding: 2px 8px;
        animation-duration: 30s;
    }

    .kg-testimonial-card {
        flex-basis: 270px;
        min-height: 230px;
        padding: 22px 20px;
    }

    .kg-testimonial-card p {
        font-size: 0.9rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kg-testimonial-track {
        animation: none;
        transform: none;
    }

    .kg-testimonial-marquee {
        overflow-x: auto;
        -webkit-mask-image: none;
        mask-image: none;
    }
}

/* Center video section */
.kg-video-section {
    position: relative;
    background: linear-gradient(180deg, #ffffff 0%, #f6f8f4 100%);
    overflow: hidden;
}

.kg-video-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(246, 248, 244, 0.9)),
        linear-gradient(90deg, rgba(28, 83, 42, 0.04) 1px, transparent 1px),
        linear-gradient(180deg, rgba(28, 83, 42, 0.04) 1px, transparent 1px);
    background-size: 100% 100%, 42px 42px, 42px 42px;
    pointer-events: none;
    z-index: 0;
}

.kg-video-section-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.16;
    filter: saturate(0.95) contrast(1.08);
    pointer-events: none;
    z-index: 0;
}

.kg-video-heading {
    position: relative;
    max-width: 760px;
    z-index: 1;
}

.kg-video-heading .section-title {
    line-height: 1.12;
}

.kg-video-kicker {
    display: inline-block;
    margin-bottom: 0.75rem;
    color: #8a6415;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: capitalize;
}

.kg-video-wrap {
    position: relative;
    width: min(100%, 680px);
    border: 0;
    border-radius: 16px;
    overflow: hidden;
    background: linear-gradient(90deg, #1c532a, #e8a838, #1c532a, #e8a838, #1c532a);
    background-size: 300% 100%;
    box-shadow: 0 22px 55px rgba(12, 30, 18, 0.18);
    z-index: 1;
    padding: 3px;
    animation: kgVideoBorderScroll 4s linear infinite;
}

.kg-video-wrap::before,
.kg-video-wrap::after,
.kg-video-overlay-copy,
.kg-video-play {
    transition: opacity 0.28s ease, transform 0.28s ease;
}

.kg-feature-video {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    max-height: 72vh;
    object-fit: cover;
    border-radius: 13px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.18)),
        url('video_banner.png') center / cover no-repeat;
}

.kg-video-wrap::before {
    content: none;
}

.kg-video-wrap::after {
    content: none;
}

.kg-video-overlay-copy {
    display: none;
}

.kg-video-overlay-copy span {
    display: inline-flex;
    margin-bottom: 0.7rem;
    padding: 0.38rem 0.7rem;
    border: 1px solid rgba(232, 168, 56, 0.5);
    border-radius: 999px;
    color: #f5c76a;
    background: rgba(7, 23, 13, 0.42);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: capitalize;
}

.kg-video-overlay-copy h3 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1.35rem, 3vw, 2.45rem);
    font-weight: 800;
    line-height: 1.12;
}

.kg-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 92px;
    height: 92px;
    transform: translate(-50%, -50%);
    z-index: 4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    color: #1c532a;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28), 0 0 28px rgba(232, 168, 56, 0.55);
    cursor: pointer;
    overflow: hidden;
    animation: kgVideoButtonGlow 2.6s ease-in-out infinite;
}

.kg-video-play::after {
    content: '';
    position: absolute;
    top: -35%;
    left: -70%;
    width: 42%;
    height: 170%;
    background: linear-gradient(90deg, transparent, rgba(232, 168, 56, 0.85), transparent);
    transform: rotate(24deg);
    animation: kgVideoShine 2.4s ease-in-out infinite;
}

.kg-video-play-ring {
    position: absolute;
    inset: -16px;
    border: 2px solid rgba(232, 168, 56, 0.72);
    border-radius: 50%;
    animation: kgVideoPulse 1.7s ease-out infinite;
}

.kg-video-play-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 1.8rem;
    padding-left: 5px;
}

.kg-video-wrap.is-playing .kg-video-overlay-copy,
.kg-video-wrap.is-playing .kg-video-play {
    opacity: 0;
    pointer-events: none;
}

.kg-video-wrap.is-playing .kg-video-overlay-copy {
    transform: translateY(10px);
}

.kg-video-admin-tools {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 8;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, auto));
    gap: 10px;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, 0.36);
    border-radius: 8px;
    background: rgba(12, 47, 25, 0.72);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.kg-video-admin-tools label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    min-width: 148px;
    min-height: 40px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 8px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.14);
    box-shadow: none;
    font-size: 0.84rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.kg-video-admin-tools label:hover {
    border-color: #e8a838;
    background: rgba(232, 168, 56, 0.94);
    color: #14351d;
    transform: translateY(-1px);
}

.kg-video-admin-tools label i {
    font-size: 1rem;
}

.kg-video-admin-tools label span {
    white-space: nowrap;
}

.kg-video-admin-tools input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
    clip: rect(0 0 0 0);
}

@media (max-width: 575.98px) {
    .kg-video-admin-tools {
        right: 10px;
        bottom: 10px;
        grid-template-columns: 1fr;
    }
}

@keyframes kgVideoPulse {
    0% {
        opacity: 0.9;
        transform: scale(0.82);
    }

    100% {
        opacity: 0;
        transform: scale(1.28);
    }
}

@keyframes kgVideoButtonGlow {
    0%,
    100% {
        box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28), 0 0 0 rgba(232, 168, 56, 0);
    }

    50% {
        box-shadow: 0 20px 48px rgba(0, 0, 0, 0.32), 0 0 42px rgba(232, 168, 56, 0.85);
    }
}

@keyframes kgVideoShine {
    0% {
        left: -70%;
        opacity: 0;
    }

    28% {
        opacity: 1;
    }

    58%,
    100% {
        left: 125%;
        opacity: 0;
    }
}

@keyframes kgVideoBorderScroll {
    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 300% 50%;
    }
}

@media (max-width: 575.98px) {
    .kg-video-section {
        padding-top: 2.5rem !important;
        padding-bottom: 2.5rem !important;
    }

    .kg-video-wrap {
        width: 100%;
    }

    .kg-video-heading .section-title {
        font-size: 2rem;
    }

    .kg-video-play {
        width: 70px;
        height: 70px;
    }

    .kg-video-play-icon {
        font-size: 1.45rem;
    }

    .kg-video-overlay-copy {
        left: 18px;
        bottom: 18px;
        max-width: calc(100% - 36px);
    }

    .kg-video-overlay-copy span {
        margin-bottom: 0.5rem;
        font-size: 0.64rem;
    }

    .kg-video-overlay-copy h3 {
        font-size: 1.25rem;
    }
}

/* FAQ section */
.kg-faq-section {
    position: relative;
    background: linear-gradient(180deg, #ffffff 0%, #f8faf6 100%);
}

.kg-faq-heading {
    max-width: 760px;
}

.kg-faq-kicker {
    display: inline-block;
    margin-bottom: 0.75rem;
    color: #8a6415;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: capitalize;
}

.kg-faq-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    align-items: start;
    max-width: 980px;
    margin: 0 auto;
}

.kg-faq-panel {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}

.kg-faq-accordion .accordion-item {
    position: relative;
    margin-bottom: 14px;
    border: 1px solid rgba(28, 83, 42, 0.14);
    border-left: 4px solid #e8a838;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(28, 83, 42, 0.08);
    overflow: hidden;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.kg-faq-accordion .accordion-item:hover {
    transform: translateY(-2px);
    border-left-color: #1c532a;
    box-shadow: 0 18px 42px rgba(28, 83, 42, 0.12);
}

.kg-faq-accordion .accordion-button {
    min-height: 78px;
    padding: 1.1rem 1.35rem;
    color: #1c532a;
    background: transparent;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
    box-shadow: none;
    gap: 14px;
}

.kg-faq-accordion .accordion-button:not(.collapsed) {
    color: #1c532a;
    background: linear-gradient(90deg, rgba(28, 83, 42, 0.08), rgba(232, 168, 56, 0.12));
}

.kg-faq-accordion .accordion-button:focus {
    border-color: transparent;
    box-shadow: 0 0 0 0.18rem rgba(232, 168, 56, 0.22);
}

.kg-faq-accordion .accordion-button::after {
    content: '+';
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    margin-left: auto;
    border: 1px solid rgba(28, 83, 42, 0.18);
    border-radius: 50%;
    color: #1c532a;
    background: #ffffff;
    background-image: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    filter: none;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1;
    transform: none;
}

.kg-faq-accordion .accordion-button:not(.collapsed)::after {
    content: '-';
    color: #ffffff;
    background-color: #1c532a;
    background-image: none;
    filter: none;
    transform: none;
}

.kg-faq-icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #ffffff;
    background: linear-gradient(135deg, #1c532a, #e8a838);
    box-shadow: 0 8px 18px rgba(28, 83, 42, 0.18);
    font-size: 1rem;
}

.kg-faq-accordion .accordion-body {
    padding: 0 1.35rem 1.35rem 6.25rem;
    color: #5f6f63;
    font-size: 0.96rem;
    line-height: 1.7;
}

.kg-faq-admin-bar {
    display: flex;
    justify-content: center;
    margin: -22px 0 24px;
}

.kg-faq-add-card,
.kg-faq-card-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.kg-faq-add-card {
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(28, 83, 42, 0.1);
}

.kg-faq-add-card:hover,
.kg-faq-card-actions button:hover {
    color: #ffffff;
    background: #1c532a;
    transform: translateY(-1px);
}

.kg-faq-card-actions {
    position: absolute;
    top: 12px;
    right: 54px;
    z-index: 8;
}

.kg-faq-card-actions button {
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    font-size: 0.75rem;
}

.kg-faq-card-actions button:hover {
    border-color: #b42318;
    background: #b42318;
}

.kg-faq-icon-input,
.kg-faq-inline-editor {
    position: relative;
    z-index: 8;
    width: min(100%, 620px);
    min-height: 36px;
    padding: 8px 10px;
    border: 2px solid rgba(28, 83, 42, 0.16);
    border-radius: 8px;
    color: #14351d;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(20, 53, 29, 0.1);
    font-size: 0.88rem;
    font-weight: 800;
}

.kg-faq-icon-input {
    display: block;
    margin: -8px 1.35rem 12px 6.25rem;
    width: min(calc(100% - 7.6rem), 360px);
}

.kg-faq-inline-editor {
    display: block;
    margin: 8px 0 0;
}

textarea.kg-faq-inline-editor {
    min-height: 100px;
    resize: vertical;
}

.kg-faq-edit-hidden {
    display: none !important;
}

.kg-faq-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(8, 33, 17, 0.68);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.kg-faq-modal.is-open {
    display: flex;
}

.kg-faq-modal-panel {
    position: relative;
    width: min(100%, 480px);
    padding: 26px;
    border-radius: 8px;
    color: #17251c;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
}

.kg-faq-modal-panel h3 {
    margin: 0 0 18px;
    color: #1c532a;
    font-size: 1.25rem;
    font-weight: 800;
}

.kg-faq-modal-panel form {
    display: grid;
    gap: 14px;
}

.kg-faq-modal-panel label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #405044;
    font-size: 0.9rem;
    font-weight: 800;
}

.kg-faq-modal-panel input,
.kg-faq-modal-panel textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(28, 83, 42, 0.2);
    border-radius: 8px;
    color: #17251c;
    background: #f8fbf5;
    font: inherit;
}

.kg-faq-modal-panel textarea {
    resize: vertical;
}

.kg-faq-modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    color: #1c532a;
    background: #eef6ea;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

.kg-faq-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

.kg-faq-modal-cancel,
.kg-faq-modal-save {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 800;
    cursor: pointer;
}

.kg-faq-modal-cancel {
    border: 1px solid rgba(28, 83, 42, 0.18);
    color: #1c532a;
    background: #ffffff;
}

.kg-faq-modal-save {
    border: 1px solid #1c532a;
    color: #ffffff;
    background: #1c532a;
}

@media (max-width: 991.98px) {
    .kg-faq-grid {
        grid-template-columns: 1fr;
        max-width: 760px;
    }
}

@media (max-width: 575.98px) {
    .kg-faq-section {
        padding-top: 2.75rem !important;
        padding-bottom: 2.75rem !important;
    }

    .kg-faq-heading .section-title {
        font-size: 2rem;
    }

    .kg-faq-grid {
        gap: 16px;
    }

    .kg-faq-accordion .accordion-button {
        min-height: 66px;
        padding: 1rem 0.9rem;
        font-size: 0.94rem;
        gap: 10px;
    }

    .kg-faq-accordion .accordion-body {
        padding: 0 1rem 1.05rem 1rem;
        font-size: 0.9rem;
    }

    .kg-faq-icon {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
        font-size: 0.9rem;
    }

    .kg-faq-accordion .accordion-button::after {
        flex-basis: 30px;
        width: 30px;
        height: 30px;
    }
}
/* Shared four-badge section used on service, farmer, partner, and graduate pages. */
.kg-deliver-board {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(18px, 2.4vw, 30px);
    align-items: stretch;
    justify-items: center;
}

.kg-flow-card {
    --kg-flow-color: #2c5e37;
    --kg-flow-dark: #2c5e37;
    position: relative;
    width: 100%;
    max-width: 270px;
    min-height: 365px;
    margin: 0 auto;
    padding-top: 70px;
    color: #ffffff;
    filter: drop-shadow(0 18px 26px rgba(24, 52, 72, 0.18));
}

.kg-flow-card::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 12px;
    width: 116px;
    height: 116px;
    border-radius: 50%;
    background: #ffffff;
    transform: translateX(-50%);
    box-shadow: 0 3px 10px rgba(32, 55, 70, 0.2);
    z-index: 1;
}

.kg-flow-icon {
    position: absolute;
    left: 50%;
    top: 24px;
    z-index: 3;
    width: 92px;
    height: 92px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 22%, rgba(255, 255, 255, 0.36), transparent 28%), linear-gradient(145deg, var(--kg-flow-color), var(--kg-flow-dark));
    box-shadow: inset 0 -10px 20px rgba(0, 0, 0, 0.12), 0 12px 20px rgba(0, 0, 0, 0.16);
    color: #ffffff;
    font-size: 2.15rem;
    transform: translateX(-50%);
}

.kg-flow-bridge {
    position: absolute;
    left: 20px;
    right: 20px;
    top: 86px;
    height: 74px;
    z-index: 2;
    background: #ffffff;
    clip-path: polygon(0 0, 31% 0, 50% 36%, 69% 0, 100% 0, 100% 62%, 58% 78%, 50% 100%, 42% 78%, 0 62%);
    box-shadow: 0 5px 9px rgba(32, 55, 70, 0.14);
}

.kg-flow-body {
    position: relative;
    min-height: 295px;
    padding: 64px 20px 46px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    border-radius: 12px 12px 8px 8px;
    background: linear-gradient(180deg, var(--kg-flow-color), var(--kg-flow-dark));
    text-align: center;
    overflow: hidden;
    z-index: 1;
}

.kg-flow-body::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 72% 18%, rgba(255, 255, 255, 0.2), transparent 20%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.12), transparent 46%);
    pointer-events: none;
}

.kg-flow-number {
    position: absolute;
    left: 50%;
    top: 38px;
    z-index: 4;
    min-width: 54px;
    height: 42px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(0, 0, 0, 0.16)), var(--kg-flow-color);
    box-shadow: 0 8px 14px rgba(0, 0, 0, 0.18);
    color: #ffffff;
    font-size: 1.3rem;
    font-weight: 900;
    line-height: 1;
    transform: translateX(-50%);
}

.kg-flow-copy {
    position: relative;
    z-index: 2;
    min-height: 92px;
    margin: 26px 0 0;
    padding: 18px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(0, 0, 0, 0.18), rgba(255, 255, 255, 0.08));
    box-shadow: inset 0 6px 18px rgba(0, 0, 0, 0.08);
}

.kg-flow-copy p {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.76rem;
    line-height: 1.45;
}

.kg-flow-title {
    position: relative;
    z-index: 2;
    min-height: 54px;
    margin: auto 0 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: clamp(1rem, 1.25vw, 1.22rem);
    font-weight: 800;
    line-height: 1.2;
}

.kg-flow-notch {
    position: absolute;
    left: 50%;
    bottom: 10px;
    width: 58px;
    height: 20px;
    background: #ffffff;
    border-radius: 0 0 14px 14px;
    transform: translateX(-50%);
    clip-path: polygon(0 0, 100% 0, 72% 100%, 28% 100%);
}

.kg-flow-card:hover {
    transform: translateY(-8px);
    transition: transform 0.25s ease;
}

@media (max-width: 1199.98px) {
    .kg-deliver-board {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .kg-deliver-board {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .kg-flow-card {
        max-width: 285px;
        min-height: 340px;
    }

    .kg-flow-body {
        min-height: 280px;
    }
}

/* Shared hexagon process cards for service, farmer, partner, and graduate pages. */
.kg-hex-step-card {
    --kg-hex-accent: #ffc107;
    position: relative;
    max-width: 300px;
    margin: 0 auto;
    padding: 16px;
    aspect-ratio: 1.08 / 1;
    filter: drop-shadow(18px 18px 14px rgba(65, 72, 78, 0.28));
    transition: transform 0.28s ease, filter 0.28s ease;
}

.kg-hex-step-card:hover {
    transform: translateY(-8px);
    filter: drop-shadow(22px 24px 16px rgba(65, 72, 78, 0.32));
}

.kg-hex-step-card::before,
.kg-hex-step-card::after {
    content: "";
    position: absolute;
    inset: 8px;
    clip-path: polygon(50% 0, 94% 25%, 94% 75%, 50% 100%, 6% 75%, 6% 25%);
}

.kg-hex-step-card::before {
    background: linear-gradient(145deg, #f7f7f7 0%, #bfc3c6 45%, #eef0f1 100%);
    z-index: 1;
}

.kg-hex-step-card::after {
    inset: 0;
    background: var(--kg-hex-accent);
    z-index: 0;
}

.kg-hex-notch {
    display: none;
}

.kg-hex-notch::before,
.kg-hex-notch::after {
    content: "";
    position: absolute;
    width: 64px;
    height: 10px;
    background: var(--kg-hex-accent);
    border-radius: 999px;
}

.kg-hex-notch::before {
    top: 8px;
    left: 50%;
    transform: translateX(-50%) rotate(30deg);
}

.kg-hex-notch::after {
    right: 13px;
    top: 28%;
    transform: rotate(90deg);
}

.kg-hex-inner {
    position: absolute;
    inset: 35px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 18px 24px 20px;
    background: #ffffff;
    clip-path: polygon(50% 0, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
    text-align: center;
}

.kg-hex-number {
    margin-bottom: 8px;
    color: var(--kg-hex-accent);
    font-size: clamp(2.2rem, 4vw, 3rem);
    font-weight: 900;
    line-height: 1;
}

.kg-hex-title {
    max-width: 150px;
    margin: 0 auto 10px;
    color: #1e2529;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.2;
    text-transform: capitalize;
}

.kg-hex-desc {
    max-width: 170px;
    margin: 0 auto 12px;
    color: #5d666d;
    font-size: 0.72rem;
    line-height: 1.25;
}

.kg-hex-icon {
    color: #30383d;
    font-size: 1.35rem;
    line-height: 1;
}

@media (max-width: 575.98px) {
    .kg-hex-step-card {
        max-width: 286px;
    }

    .kg-hex-inner {
        inset: 34px;
        padding: 16px 20px;
    }
}

/* Shared final option cards above the footer. */
.kg-option-card {
    --kg-option-accent: #2c5e37;
    position: relative;
    display: block;
    max-width: 335px;
    min-height: 232px;
    margin: 14px auto 14px;
    padding: 26px 22px 24px;
    color: inherit;
    text-align: center;
    text-decoration: none;
    isolation: isolate;
}

.kg-option-card::before,
.kg-option-card::after {
    content: "";
    position: absolute;
    border: 6px solid var(--kg-option-accent);
    z-index: -1;
}

.kg-option-card::before {
    left: -18px;
    top: -24px;
    width: 50%;
    height: 132px;
    border-right: 0;
    border-bottom: 0;
}

.kg-option-card::after {
    right: -24px;
    bottom: -22px;
    width: 74%;
    height: 120px;
    border-left: 0;
    border-top: 0;
}

.kg-option-panel {
    position: relative;
    min-height: 188px;
    padding: 24px 22px 22px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    box-shadow: 14px 14px 18px rgba(72, 78, 82, 0.2);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.kg-option-card:hover {
    color: inherit;
}

.kg-option-card:hover .kg-option-panel {
    transform: translateY(-7px);
    box-shadow: 18px 20px 22px rgba(72, 78, 82, 0.24);
}

.kg-option-icon {
    margin-bottom: 14px;
    color: var(--kg-option-accent);
    font-size: 2rem;
    line-height: 1;
}

.kg-option-title {
    margin: 0 0 10px;
    color: var(--kg-option-accent);
    font-size: clamp(1.05rem, 1.5vw, 1.25rem);
    font-weight: 900;
    line-height: 1.15;
    text-transform: capitalize;
}

.kg-option-title span {
    display: inline-block;
    margin-left: 4px;
}

.kg-option-text {
    margin: 0;
    color: #7b858b;
    font-size: 0.78rem;
    line-height: 1.35;
}

@media (max-width: 575.98px) {
    .kg-option-card {
        max-width: 295px;
        min-height: 222px;
        padding: 24px 20px 22px;
    }

    .kg-option-panel {
        min-height: 178px;
        padding: 22px 18px 20px;
    }
}

/* ============================================================
   CORPORATE APPROACH INFOGRAPHIC SECTION
   ============================================================ */
.kg-corp-infographic-section {
    background: #f0f4f8;
}

.kg-corp-infographic-card {
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.10);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 360px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.kg-corp-infographic-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.15);
}

/* Colored top header block */
.kg-corp-infographic-header {
    padding: 28px 20px 20px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.kg-corp-infographic-orange .kg-corp-infographic-header { background-color: #1c532a; }
.kg-corp-infographic-coral  .kg-corp-infographic-header { background-color: #1c532a; }
.kg-corp-infographic-teal   .kg-corp-infographic-header { background-color: #1c532a; }

/* Icon circle inside the header */
.kg-corp-infographic-icon-wrap {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.22);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #ffffff;
    flex-shrink: 0;
}

.kg-corp-infographic-num {
    display: block;
    font-size: 1.6rem;
    font-weight: 800;
    color: #ffffff;
    line-height: 1;
    letter-spacing: 1px;
    opacity: 0.85;
}

/* White body */
.kg-corp-infographic-body {
    padding: 20px 18px 24px;
    flex: 1;
    text-align: center;
}

.kg-corp-infographic-title {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: capitalize;
    margin-bottom: 10px;
}

.kg-corp-infographic-orange .kg-corp-infographic-title { color: #1c532a; }
.kg-corp-infographic-coral  .kg-corp-infographic-title { color: #1c532a; }
.kg-corp-infographic-teal   .kg-corp-infographic-title { color: #1c532a; }

.kg-corp-infographic-body p {
    color: #6b7280;
    
    line-height: 1.75;
    margin: 0;
}

/* 5-column grid: 2 rows of 5 on desktop, responsive below */
.kg-farmers-row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
}

.kg-farmer-col {
    flex: 0 0 20%;
    max-width: 20%;
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 24px;
    display: flex;
}

.kg-farmer-col .kg-corp-infographic-card {
    width: 100%;
}

/* Tablet: 3 columns */
@media (max-width: 1199.98px) and (min-width: 768px) {
    .kg-farmer-col {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }
}

/* Small tablet: 2 columns */
@media (max-width: 767.98px) and (min-width: 576px) {
    .kg-farmer-col {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .kg-corp-infographic-card {
        min-height: 280px;
    }

    .kg-corp-infographic-header {
        padding: 22px 16px 16px;
        gap: 8px;
    }

    .kg-corp-infographic-icon-wrap {
        width: 48px;
        height: 48px;
        font-size: 1.3rem;
    }

    .kg-corp-infographic-num {
        font-size: 1.4rem;
    }
}

/* Mobile: 1 column */
@media (max-width: 575.98px) {
    .kg-farmer-col {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .kg-corp-infographic-card {
        min-height: 240px;
    }

    .kg-corp-infographic-header {
        padding: 20px 16px 16px;
        gap: 8px;
    }

    .kg-corp-infographic-icon-wrap {
        width: 48px;
        height: 48px;
        font-size: 1.3rem;
    }

    .kg-corp-infographic-num {
        font-size: 1.4rem;
    }
}
