        /********** Template CSS **********/
        :root {
            --primary: #348E38;
            --secondary: #525368;
            --light: #E8F5E9;
            --dark: #0F4229;
        }

        .back-to-top {
            position: fixed;
            display: none;
            right: 30px;        
            bottom: 30px;
            z-index: 99;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            margin-bottom: 20px;
            }

            th, td {
            border: 1px solid #000;
            padding: 6px;
            text-align: center;
            }

            th {
            background-color: #6aa84f;
            color: white;
            }

            caption {
            font-weight: bold;
            margin: 10px 0;
            }

        h1,
        .h1,
        h2,
        .h2,
        .fw-bold {
            font-weight: 700 !important;
        }

        h3,
        .h3,
        h4,
        .h4,
        .fw-medium {
            font-weight: 100 !important;
        }

        h5,
        .h5,
        h6,
        .h6,
        .fw-semi-bold {
            font-weight: 500 !important;
        }


        /*** Spinner ***/
        #spinner {
            opacity: 0;
            visibility: hidden;
            transition: opacity .5s ease-out, visibility 0s linear .5s;
            z-index: 99999;
        }

        #spinner.show {
            transition: opacity .5s ease-out, visibility 0s linear 0s;
            visibility: visible;
            opacity: 1;
        }


        /*** Button ***/
        .btn {
            transition: .5s;
            font-weight: 500;
        }

        .btn-primary,
        .btn-outline-primary:hover {
            color: var(--light);
        }

        .btn-square {
            width: 38px;
            height: 38px;
        }

        .btn-sm-square {
            width: 32px;
            height: 32px;
        }

        .btn-lg-square {
            width: 48px;
            height: 48px;
        }

        .btn-square,
        .btn-sm-square,
        .btn-lg-square {
            padding: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: normal;
        }


        /*** Navbar ***/
        .navbar.sticky-top {
            top: -100px;
            transition: .5s;
        }

        .navbar .navbar-brand,
        .navbar a.btn {
            height: 80px
        }

        .navbar .navbar-nav .nav-link {
            margin-right: 35px;
            padding: 25px 0;
            color: var(--dark);
            font-size: 14px;
            font-weight: 500;
            outline: none;
        }

        .navbar .navbar-nav .nav-link:hover,
        .navbar .navbar-nav .nav-link.active {
            color: var(--primary);
        }

        .navbar .dropdown-toggle::after {
            border: none;
            content: "\f107";
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            vertical-align: middle;
            margin-left: 8px;
        }

        @media (max-width: 991.98px) {
            .navbar .navbar-nav .nav-link  {
                margin-right: 0;
                padding: 10px 0;
            }

            .navbar .navbar-nav {
                border-top: 1px solid #EEEEEE;
            }
        }

        @media (min-width: 992px) {
            .navbar .nav-item .dropdown-menu {
                display: block;
                border: none;
                margin-top: 0;
                top: 150%;
                opacity: 0;
                visibility: hidden;
                transition: .5s;
            }

            .navbar .nav-item:hover .dropdown-menu {
                top: 100%;
                visibility: visible;
                transition: .5s;
                opacity: 1;
            }
        }


        /*** Header ***/
        .carousel-caption {
    /* Posisi Absolut relatif terhadap parent yang memiliki position: relative */
    position: absolute; 
    top: 50%; /* Pindahkan 50% dari atas */
    left: 50%; /* Pindahkan 50% dari kiri */
    transform: translate(-50%, -50%); /* Geser kembali 50% dari lebarnya sendiri ke kiri dan tingginya sendiri ke atas */

    width: 90%; /* Lebar responsif, 90% dari parent */
    max-width: 1000px; /* Batas lebar maksimum */
    min-height: 200px; /* Tinggi minimum agar konten terlihat */
    box-sizing: border-box; /* Pastikan padding tidak menambah lebar/tinggi total */

    display: flex;
    flex-direction: column; /* Mengatur item agar tersusun vertikal */
    align-items: center;
    justify-content: center;
    text-align: center;
    background: rgba(0, 0, 0, 0.486);
    z-index: 1; /* Pastikan di atas elemen lain */
}

.carousel-control-prev,
.carousel-control-next {
    width: 15%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
    border-radius: 3rem;
    background-color: var(--primary);
    border: 10px solid var(--primary);
}

@media (max-width: 768px) {
    #header-carousel .carousel-item {
        position: relative;
        min-height: 450px; /* Tetap pertahankan tinggi minimum untuk gambar */
    }
    
    #header-carousel .carousel-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .carousel-caption {
        height: auto; /* Izinkan tinggi menyesuaikan konten pada layar kecil */
        min-height: unset; /* Hapus min-height agar lebih fleksibel di mobile */
    }
}

        .page-header {
            background: linear-gradient(rgba(15, 66, 41, 0), rgba(50, 66, 15, 0)), url(../img/d3.jpeg) center center no-repeat;
            background-size: cover;
        }

        .page-header .breadcrumb-item+.breadcrumb-item::before {
            color: var(--light);
        }

        .page-header .breadcrumb-item,
        .page-header .breadcrumb-item a {
            font-size: 18px;
            color: var(--light);
        }


        /*** Top Feature ***/
        @media (min-width: 991.98px) {
            .top-feature {
                position: relative;
                margin-top: -80px;
                z-index: 1;
                /* padding-top: 10px; */
            }
        }


        /* CSS Kustom untuk gambar yang responsif dan tetap besar */
    .image-container {
        /* Memberikan margin atas dasar yang konsisten */
        margin-top: 20px;
        display: flex;
        justify-content: center;
        align-items: flex-start; /* Mengatur item ke atas */
        overflow: hidden; /* Mengatasi potensi kelebihan konten */
        border-radius: 10px; /* Menambahkan sudut membulat pada wadah gambar */
    }

    .image-container img.full-width-mobile {
        width: 100%; /* Gambar akan selalu mengisi lebar wadahnya */
        height: auto; /* Tinggi menyesuaikan secara proporsional */
        display: block; /* Menghilangkan spasi ekstra di bawah gambar */
        object-fit: cover; /* Pastikan gambar menutupi area yang tersedia, potong jika perlu */
        object-position: top; /* Fokuskan bagian atas gambar (wajah) */
    }

    /* CSS untuk Kotak Nama */
    .name-box {
        text-align: center;
        margin-top: 10px; /* Jarak antara gambar dan kotak nama */
        padding: 20px; /* Padding di dalam kotak */
        border: 1px solid #ddd; /* Garis tepi kotak */
        border-radius: 0px; /* Sudut membulat pada kotak */
        background-color: #f9f9f9; /* Warna latar belakang kotak */
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Efek bayangan */
        margin-left: auto;
        margin-right: auto;
        max-width: 400px; /* Lebar maksimum kotak nama */
    }

    /* Media queries untuk tampilan di berbagai ukuran layar */
    @media (min-width: 768px) { /* Untuk perangkat menengah (tablet landscape, desktop) */
        .image-container {
            margin-top: 100px; /* Margin atas asli untuk layar besar */
        }
        .image-container img.full-width-mobile {
            height: 400px; /* Contoh: Set tinggi tetap untuk desktop */
            width: auto; /* Lebar menyesuaikan agar tinggi tetap */
            object-fit: contain; /* Agar seluruh gambar terlihat pada desktop */
        }
        .name-box {
            margin-top: 20px; /* Mengatur ulang margin jika diperlukan */
        }
    }

    @media (max-width: 767.98px) { /* Untuk perangkat kecil (mobile) */
        .image-container {
            margin-top: 30px; /* Sesuaikan margin untuk mobile */
            padding: 0 15px; /* Tambahkan padding horizontal agar gambar tidak menempel tepi */
        }
        .image-container img.full-width-mobile {
            width: 100%; /* Gambar mengisi seluruh lebar wadahnya di mobile */
            height: auto; /* Tinggi menyesuaikan secara proporsional */
            object-fit: cover; /* Tetap cover untuk mobile agar besar */
            object-position: top; /* Fokuskan bagian atas gambar */
        }
        .name-box {
            margin-top: 5px; /* Jarak yang konsisten */
            max-width: 90%; /* Kotak nama mengisi sebagian besar lebar di mobile */
        }
    }

    /* Penyesuaian untuk perangkat yang sangat kecil */
    @media (max-width: 575.98px) {
        .image-container {
            margin-top: 20px;
            padding: 0 10px;
        }
        .name-box {
            max-width: 95%; /* Lebih lebar lagi di layar sangat kecil */
        }
    }

        /*** Facts & Quote ***/
        .facts,
        .quote {
            background: rgb(15, 66, 41);
        }


        /*** Service ***/
        .service-item {
            position: relative;
            text-align: center;
        }

        .service-item .service-img {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            overflow: hidden;
            z-index: -1;
        }

        .service-item .service-img img {
            position: absolute;
            width: 100%;
            height: 100%;
            left: 0;
            object-fit: cover;
            transform: scale(1.2);
            transition: .3s;
            z-index: -1;
        }

        .service-item:hover .service-img img {
            transform: scale(1);
        }

        .service-item .service-text {
            background: #FFFFFF;
            box-shadow: 0 0 45px rgba(0, 0, 0, 0.253);
            transition: .3s;
        }

        .service-item:hover .service-text {
            background: rgba(27, 94, 62, 0.402);
        }

        .service-item .service-text h4,
        .service-item .service-text p {
            transition: .3;
        }

        .service-item:hover .service-text h4 {
            color: #FFFFFF;
        }

        .service-item:hover .service-text p {
            color: var(--light);
        }

        .service-item .service-text .btn-square {
            width: 100px;
            height: 100px;
            background: transparent;
            transition: .5s;
        }

        .service-item:hover .service-text .btn-square {
            background: var(--light);
        }

        .service-item .service-text .btn {
            width: 31px;
            height: 31px;
            display: inline-flex;
            align-items: center;
            color: var(--dark);
            background: var(--light);
            white-space: nowrap;
            overflow: hidden;
            transition: .3s;
        }

        .service-item:hover .service-text .btn {
            width: 112px;
        }


        /*** Project Portfolio ***/
        #portfolio-flters {
            display: inline-block;
            background: var(--light);
            padding: 10px 15px;
        }

        #portfolio-flters li {
            display: inline-block;
            font-weight: 500;
            color: var(--primary);
            cursor: pointer;
            transition: .5s;
            border-bottom: 2px solid transparent;
        }

        #portfolio-flters li:hover,
        #portfolio-flters li.active {
            color: var(--dark);
            border-color: var(--dark);
        }

        .portfolio-inner {
            position: relative;
            overflow: hidden;
        }

        .portfolio-inner::before,
        .portfolio-inner::after {
            position: absolute;
            content: "";
            width: 0;
            height: 100%;
            top: 0;
            left: 0;
            background: rgba(15, 66, 41, 0.982);
            transition: .5s;
        }

        .portfolio-inner::after {
            left: auto;
            right: 0;
        }

        .portfolio-inner:hover::before,
        .portfolio-inner:hover::after {
            width: 50%;
        }

        .portfolio-inner .portfolio-text {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            transition: .5s;
            z-index: 3;
            opacity: 0;
        }

        .portfolio-inner:hover .portfolio-text {
            transition-delay: .3s;
            opacity: 1;
        }

        .portfolio-inner .portfolio-text .btn {
            background: var(--light);
            color: var(--primary);
        }

        .portfolio-inner .portfolio-text .btn:hover {
            background: var(--primary);
            color: var(--light);
        }


        /*** Team ***/
        .team-item {
            position: relative;
            overflow: hidden;
        }

        .team-item .team-text {
            position: absolute;
            width: calc(100% - 45px);
            left: -100%;
            bottom: 45px;
            padding: 1.5rem;
            background: #FFFFFF;
            border-radius: 0 4px 4px 0;
            opacity: 0;
            transition: .5s;
        }

        .team-item:hover .team-text {
            left: 0;
            opacity: 1;
        }

        .team-item .team-social .btn {
            background: var(--light);
            color: var(--primary);
        }

        .team-item .team-social .btn:hover {
            background: var(--primary);
            color: var(--light);
        }

        .team-item .team-img .team-social {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: .5s;
            z-index: 3;
            opacity: 0;
        }

        .team-item:hover .team-img .team-social {
            transition-delay: .3s;
            opacity: 1;
        }


        /*** Testimonial ***/

        .testimonial-carousel .owl-item img {
            width: 100px;
            height: 100px;
        }

        .testimonial-carousel .owl-nav {
            margin-top: 30px;
            display: flex;
        }

        .testimonial-carousel .owl-nav .owl-prev,
        .testimonial-carousel .owl-nav .owl-next {
            margin-right: 15px;
            width: 45px;
            height: 45px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--primary);
            background: var(--light);
            border-radius: 4px;
            font-size: 22px;
            transition: .5s;
        }

        .testimonial-carousel .owl-nav .owl-prev:hover,
        .testimonial-carousel .owl-nav .owl-next:hover {
            background: var(--primary);
            color: var(--light);
        }


        /*** Footer ***/
        .footer .btn.btn-link {
            display: block;
            margin-bottom: 5px;
            padding: 0;
            text-align: left;
            color: var(--light);
            font-weight: normal;
            text-transform: capitalize;
            transition: .3s;
        }

        .footer .btn.btn-link::before {
            position: relative;
            content: "\f105";
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            margin-right: 10px;
        }

        .footer .btn.btn-link:hover {
            color: var(--primary);
            letter-spacing: 1px;
            box-shadow: none;
        }

        .copyright {
            color: var(--light);
            background: #072A19;
        }

        .copyright a {
            color: #FFFFFF;
        }

        .copyright a:hover {
            color: var(--primary);
        }