/* Breadcrumb */
.breadcrumb-section {
    background-color: #f8f9fa;
    padding: 15px 0;
    margin-top: 60px;
}
.breadcrumb-section .breadcrumb {
    background-color: transparent;
    font-size: 0.9rem;
    margin-bottom: 0;
}
.breadcrumb-section .breadcrumb-item a {
    color: #666;
    text-decoration: none;
}
.breadcrumb-section .breadcrumb-item.active {
    color: #333;
    font-weight: 600;
}

/* Hero Section */
.hero-section {
    background-image: url("../images/background.webp");
    background-size: cover;
    background-position: center;
    padding: 80px 0;
}
.hero-section .hero-content h1 {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
    margin-bottom: 20px;
}
.hero-section .hero-content .subtitle {
    font-size: 1.2rem;
    font-weight: 600;
    display: block;
    margin-bottom: 10px;
}
.hero-section .inquiry-form {
    background-color: #fff;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.hero-section .inquiry-form h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #333;
}
.hero-section .inquiry-form .form-control {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 10px;
    font-size: 0.9rem;
}
.hero-section .inquiry-form .form-select {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 10px;
    font-size: 0.9rem;
}
.hero-section .inquiry-form .btn-danger {
    background-color: #ea7c00; /* Diubah */
    border-color: #ea7c00; /* Diubah */
    font-weight: 600;
    padding: 12px;
    border-radius: 5px;
    width: 100%;
}
.hero-section .inquiry-form .btn-danger:hover {
    background-color: #d36e00; /* Diubah */
    border-color: #d36e00; /* Diubah */
}

/* Introduction Section */
.introduction-section p {
    font-size: 1rem;
    line-height: 1.6;
    color: #666;
    text-align: center;
}

/* Capabilities Section */
.capabilities-section .capability-item {
    background-color: #f8f9fa;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 20px;
    transition: transform 0.3s ease;
}
.capabilities-section .capability-item:hover {
    transform: translateY(-5px);
}
.capabilities-section .capability-header h3 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #333;
    margin: 0;
}
.capabilities-section .expand-btn {
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 5px;
}
.capabilities-section .capability-content {
    background-color: #fff;
    border-radius: 5px;
    padding: 15px;
    margin-top: 10px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

/* Product Line-Up Section */
.product-line-up-section .product-table {
    background-color: #fff;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.product-line-up-section .table th {
    background-color: #f8f9fa;
    font-weight: 600;
    text-align: center;
    vertical-align: middle;
    padding: 15px;
}
.product-line-up-section .table td {
    vertical-align: top;
    padding: 20px;
}
.product-line-up-section .table td ul {
    padding-left: 20px;
    margin: 0;
}
.product-line-up-section .table td ul li {
    margin-bottom: 5px;
}

/* Why Choose Us Section */
.why-choose-us-section {
    padding: 80px 0;
}
.why-choose-us-section .contact-form {
    background-color: #fff;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.why-choose-us-section .contact-info {
    background-color: #fff;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.why-choose-us-section .contact-info h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 15px;
    color: #333;
}
.why-choose-us-section .contact-info h4 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 15px;
    color: #333;
}
.why-choose-us-section .contact-info p {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 20px;
}
.why-choose-us-section .contact-item {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.why-choose-us-section .contact-item i {
    font-size: 1.2rem;
    color: #ea7c00; /* Diubah */
    margin-right: 10px;
}
.why-choose-us-section .contact-item span {
    font-size: 0.9rem;
    color: #666;
}

/* Business Core Section */
.business-core .section-title h2 {
    color: #ea7c00; /* Diubah */
}

.core-card {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    padding: 30px;
    text-align: center;
    transition: transform 0.3s ease;
}
.core-card:hover {
    transform: translateY(-5px);
}
.core-icon {
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100px;
}
.core-icon img {
    max-width: 80px;
    max-height: 80px;
}
.core-card h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 15px;
    color: #333;
}
.core-card p {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 20px;
}
.learn-more {
    color: #ea7c00; /* Diubah */
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    padding: 8px 16px;
    border: 2px solid #ea7c00; /* Diubah */
    border-radius: 5px;
    transition: background-color 0.3s ease;
}
.learn-more:hover {
    background-color: #ea7c00; /* Diubah */
    color: #fff;
}

/* Solutions Section */
.solutions .section-title .subtitle {
    font-size: 0.9rem;
    font-weight: 600;
    display: block;
    margin-bottom: 10px;
}
.solution-icons {
    gap: 20px;
}
.solution-icon-box {
    background-color: #fff;
    border: 2px solid #ea7c00; /* Diubah */
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    width: 120px;
    height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: transform 0.3s ease;
}
.solution-icon-box:hover {
    transform: scale(1.05);
}
.solution-icon-box img {
    max-width: 50px;
    max-height: 50px;
    margin-bottom: 10px;
}
.solution-icon-box span {
    font-size: 0.8rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.2;
}

/* Stats Section */
.stats .stat-box {
    background-color: #fff;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease;
}
.stats .stat-box:hover {
    transform: translateY(-5px);
}
.stats .stat-box h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #ea7c00; /* Diubah */
    margin-bottom: 10px;
}
.stats .stat-box p {
    font-size: 0.9rem;
    color: #666;
    margin: 0;
}

/* Certificates Section (Fixed) */
.certificates .section-title .subtitle {
    font-size: 0.9rem;
    font-weight: 600;
    display: block;
    margin-bottom: 10px;
    color: #ea7c00; /* Diubah */
}
.certificates .section-title h2 {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.4;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    text-align: center;
    padding: 0 20px;
}
.certificates-wrapper {
    background-color: #fff;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.certificate-card {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.certificate-card:hover {
    transform: translateY(-5px);
}
.certificate-card img {
    max-width: 100px;
    max-height: 80px;
    margin-bottom: 15px;
}
.certificate-card h4 {
    font-size: 0.9rem;
    font-weight: 600;
    color: #333;
    margin: 0;
    text-align: center;
    line-height: 1.4;
}
.view-all-certificates .btn {
    font-weight: 600;
    color: #ea7c00; /* Diubah */
    border-color: #ea7c00; /* Diubah */
}
.view-all-certificates .btn:hover {
    background-color: #ea7c00; /* Diubah */
    color: #fff;
}

/* Partners Section */
.partner-logo {
    max-width: 120px;
    max-height: 60px;
    filter: grayscale(100%);
    transition: filter 0.3s ease;
}
.partner-logo:hover {
    filter: grayscale(0%);
}

/* Contact Form */
.contact-form-container h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 15px;
}
.contact-form-container p {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 20px;
}
.contact-form-container .form-control {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 10px;
    font-size: 0.9rem;
}
.contact-form-container .form-select {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 10px;
    font-size: 0.9rem;
}
.contact-form-container .btn-danger {
    background-color: #ea7c00; /* Diubah */
    border-color: #ea7c00; /* Diubah */
    font-weight: 600;
    padding: 12px;
    border-radius: 5px;
    width: 100%;
}
.contact-form-container .btn-danger:hover {
    background-color: #d36e00; /* Diubah */
    border-color: #d36e00; /* Diubah */
}

/* Footer */
.footer {
    background-color: #000;
    color: #fff;
    padding-top: 50px;
    padding-bottom: 30px;
}
.footer .footer-logo img {
    max-width: 200px;
}
.footer h6 {
    font-size: 1rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 20px;
    text-transform: uppercase;
}
.footer .footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer .footer-links li {
    margin-bottom: 10px;
}
.footer .footer-links a {
    color: #aaa;
    text-decoration: none;
    transition: color 0.3s ease;
}
.footer .footer-links a:hover {
    color: #ea7c00; /* Diubah */
}
.footer .head-office h5 {
    color: #ea7c00; /* Diubah */
    font-size: 1.1rem;
    margin-bottom: 15px;
}
.footer .head-office p {
    color: #aaa;
    font-size: 0.9rem;
    line-height: 1.4;
}
.footer .copyright {
    color: #aaa;
    font-size: 0.9rem;
}
.footer .social-links {
    justify-content: center;
    margin-top: 20px;
}
.footer .social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #333;
    color: #fff;
    transition: background-color 0.3s ease, transform 0.3s ease;
}
.footer .social-icon:hover {
    background-color: #ea7c00; /* Diubah */
    transform: scale(1.1);
}
.footer .social-icon i {
    font-size: 1.2rem;
}
.footer hr {
    border-color: #ea7c00; /* Diubah */
    width: 50px;
    margin: 20px auto 30px;
}

/* css about-us */
.custom-pills .nav-link {
    display: block;
    padding: 12px 0;
    border-bottom: 1px solid #cccccc;
    text-decoration: none;
    color: #333;
    font-weight: 500;
    font-size: 1.1rem;
    transition: all 0.2s ease-in-out;
    border-radius: 0;
    background-color: transparent;
}

/* Style untuk link yang sedang AKTIF */
.custom-pills .nav-link.active,
.custom-pills .nav-link.active span {
    font-weight: bold;
    color: #ea7c00 !important; /* Diubah */
    background-color: transparent !important;
    border-bottom-color: #ccc;
}

/* Style untuk link yang TIDAK aktif saat di-hover */
.custom-pills .nav-link:not(.active):hover span {
    color: #ea7c00; /* Diubah */
    padding-left: 5px;
}

/* CSS untuk Kartu Profil Manajemen */
.profile-card img {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    background-color: #f8f9fa;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.profile-card h5 {
    font-weight: bold;
    margin-top: 10px;
}

.shareholder-item {
    border-bottom: 1px solid #eee;
    padding-bottom: 1rem;
}
.shareholder-item h5 {
    font-weight: bold;
    color: #333;
}

/* CSS untuk Subsidiary List */
.subsidiary-logo {
    width: 150px;
    height: 80px;
    flex-shrink: 0;
    align-self: flex-start;
    object-fit: contain;
    object-position: left center;
    border: 1px solid #eee;
    border-radius: 4px;
    padding: 8px;
}
.subsidiary-item {
    border-bottom: 1px solid #eee;
}
.subsidiary-item:last-child {
    border-bottom: none;
}

.profile-detail-card .profile-detail-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 300px;
}

/* Style untuk Banner Pesan CEO */
.ceo-message-card .ceo-banner {
    height: 250px;
    background-color: #f0f0f0;
}
.ceo-message-card .ceo-banner-bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.3;
}
.ceo-message-card .ceo-photo {
    height: 100%;
    width: auto;
    right: 5%;
    bottom: 0;
}
.ceo-message-card .ceo-banner-text {
    left: 5%;
    bottom: 10%;
    color: #333;
    font-weight: bold;
}
.ceo-message-card .ceo-banner-text h4 {
    font-weight: 700;
}

.profile-banner-card .profile-banner {
    height: 200px;
    background-color: #f8f9fa;
    border-radius: 0.5rem;
}
.profile-banner-card .profile-banner-bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.3;
}
.profile-banner-card .profile-banner-photo {
    height: 100%;
    width: auto;
    max-width: 80%;
    object-fit: contain;
    object-position: bottom left;
    left: 5%;
    bottom: 0;
}
.profile-banner-card .profile-banner-text {
    text-align: left;
}
.profile-banner-card .profile-banner-text h5 {
    font-weight: bold;
}

/* why-us */

/* Style untuk Accordion (Milestone) */
.expand-item {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1rem;
}

.expand-header {
    cursor: pointer;
}

.expand-header h5 {
    color: #333;
}

.expand-btn {
    border-radius: 50px;
    width: 90px;
}

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

.expand-content.expanded {
    /* max-height akan di-set oleh JS */
}

.award-swiper {
    width: 100%;
    height: 380px;
    padding-top: 10px;
    padding-bottom: 10px;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.award-swiper.is-initialized {
    opacity: 1;
}

.award-swiper .swiper-slide {
    width: 320px;
    height: 100%;
    background: #f0f0f0;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    position: relative;
}

.award-swiper .slide-content-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
}

.award-swiper .slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

/* HOVER OVERLAY */
.award-swiper .slide-hover-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(234, 124, 0, 0.85); /* Diubah */
    opacity: 0;
    transition: opacity 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    padding: 20px;
}

.award-swiper .swiper-slide:hover .slide-hover-overlay {
    opacity: 1;
}
.award-swiper .swiper-slide:hover .slide-image {
    transform: scale(1.1);
}
.award-swiper .overlay-content {
    transform: scale(0.9);
    transition: transform 0.4s ease;
}
.award-swiper .swiper-slide:hover .overlay-content {
    transform: scale(1);
}
.award-swiper .overlay-year {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    line-height: 1;
}
.award-swiper .overlay-title {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    text-transform: uppercase;
}
.award-swiper .overlay-subtitle {
    font-size: 1rem;
    font-weight: 300;
    text-transform: uppercase;
}

/* Tombol Navigasi */
.award-swiper .swiper-button-prev,
.award-swiper .swiper-button-next {
    color: #ea7c00; /* Diubah */
    background-color: rgba(255, 255, 255, 0.9);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.award-swiper .swiper-button-prev::after,
.award-swiper .swiper-button-next::after {
    font-size: 1.2rem;
    font-weight: bold;
}

/* Style untuk Kartu dengan Teks Overlay (Slide 2) */
.swiper-slide.card-overlay {
    position: relative;
}
.swiper-slide.card-overlay img {
    height: 100%;
}
.swiper-slide.card-overlay .caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1.5rem 1rem;
    text-align: center;
    color: white;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
}

/* Style untuk Daftar "Previous Achievements" yang Presisi */
.achievement-year-group .achievement-year {
    text-align: right;
}
.achievement-year-group .achievement-year hr {
    border-top: 1px solid #ea7c00; /* Diubah */
    width: 50px;
    margin: 10px 0 0 auto;
}
.achievement-details {
    border-left: 1px solid #eee;
    padding-left: 1.5rem;
}
.achievement-item p {
    font-size: 1.1rem;
    margin-bottom: 1.5rem;
}
.achievement-item strong {
    color: #212529;
}

/* Responsif untuk Mobile */
@media (max-width: 767px) {
    .achievement-year-group .achievement-year {
        text-align: left;
        display: flex;
        align-items: center;
        gap: 1rem;
        margin-bottom: 1rem;
    }
    .achievement-year-group .achievement-year hr {
        margin: 0;
        flex-grow: 1;
    }
    .achievement-details {
        border-left: none;
        padding-left: 0;
    }
}

.cert-card {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    padding: 1.5rem 1rem;
    text-align: center;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.cert-card img {
    max-height: 80px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

.cert-card h6 {
    font-weight: 600;
    color: #333;
    min-height: 3.6em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.partner-card {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    padding: 2rem 1.5rem;
    text-align: center;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.partner-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
}

.partner-card img {
    max-height: 60px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

.testimony-logo {
    width: 150px;
    height: auto;
    max-height: 100px;
    object-fit: contain;
    flex-shrink: 0;
}

.testimony-content blockquote {
    font-style: italic;
    color: #555;
    padding-left: 1.5rem;
    border-left: 3px solid #ea7c00; /* Diubah */
    margin-top: 1rem;
}

.testimony-content cite {
    font-style: normal;
    color: #333;
}

/* GCG */

.accordion-list .expand-item {
    border-bottom: 1px solid #eee;
    padding-bottom: 1rem;
}

.accordion-list .expand-header {
    cursor: pointer;
}

.accordion-list .expand-header h5 {
    color: #333;
}

.accordion-list .expand-btn {
    border-radius: 50px;
    width: 90px;
}

.accordion-list .expand-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

.accordion-list .expand-content.expanded {
    /* max-height akan di-set oleh JS saat load */
}

/* Style untuk Accordion (FAQ) */
.accordion-list .expand-item {
    border-bottom: 1px solid #eee;
    padding-bottom: 1rem;
}

.accordion-list .expand-header {
    cursor: pointer;
}

.accordion-list .expand-header h5 {
    color: #333;
}

.accordion-list .expand-btn {
    border-radius: 50px;
    width: 90px;
}

.accordion-list .expand-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

.accordion-list .expand-content.expanded {
    /* max-height di-set oleh JS */
}

/* Style BARU untuk halaman WBS */

.wbs-section {
    padding-top: 120px;
    margin-top: -120px;
}

.wbs-submit-box {
    background: #f8f9fa;
    border: 1px solid #eee;
    padding: 1.5rem;
    border-radius: 8px;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #333;
    height: 100%;
    transition: all 0.3s ease;
}

.wbs-submit-box:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-3px);
}

.wbs-submit-box .icon-circle {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.bg-danger-light {
    background-color: #fef2e6; /* Diubah */
}

/* informtion */
/* new-release */

.news-card {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
}

.news-card .news-card-link {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.news-card .card-img-top {
    height: 220px;
    width: 100%;
    object-fit: cover;
}

.news-card .card-body {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.news-card .card-category {
    color: #ea7c00; /* Diubah */
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.news-card .card-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #333;
    line-height: 1.4;
    flex-grow: 1;
}

.news-card .news-card-link:hover .card-title {
    color: #ea7c00; /* Diubah */
}

.news-card .card-meta {
    font-size: 0.85rem;
    color: #888;
    margin-top: 1rem;
    margin-bottom: 0;
}

/* Style untuk Artikel Hero Unggulan */
.featured-hero-post {
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    height: 450px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.featured-hero-post .hero-post-link {
    display: block;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
    position: relative;
    text-decoration: none;
    color: #fff;
}

.featured-hero-post .hero-post-link::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 70%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0));
}

.featured-hero-post .hero-post-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 2.5rem;
    z-index: 2;
}

.featured-hero-post .card-category {
    color: #fff;
    background-color: #ea7c00; /* Diubah */
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
}

.featured-hero-post .hero-post-title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 1rem 0;
    color: #fff;
    transition: color 0.3s ease;
}

.featured-hero-post .hero-post-link:hover .hero-post-title {
    color: #f0f0f0;
}

.featured-hero-post .card-meta {
    font-size: 0.9rem;
    color: #ddd;
    margin-bottom: 1.5rem;
}

.featured-hero-post .read-more-btn {
    position: absolute;
    bottom: 2.5rem;
    right: 2.5rem;
    z-index: 3;
}

/* Style untuk Artikel Sub-Unggulan (Teks) */
.featured-sub-post {
    border-left: 1px solid #ccc;
    padding-left: 1rem;
}

.featured-sub-post .card-category {
    color: #ea7c00; /* Diubah */
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.featured-sub-post .sub-post-title a {
    font-size: 1.25rem;
    font-weight: 700;
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.featured-sub-post .sub-post-title a:hover {
    color: #ea7c00; /* Diubah */
}

.featured-sub-post .card-meta {
    font-size: 0.85rem;
    color: #888;
    margin-top: 0.5rem;
    margin-bottom: 0;
}

/* Style untuk Paginasi */
.pagination-nav .pagination {
    --bs-pagination-color: #ea7c00; /* Diubah */
    --bs-pagination-hover-color: #ea7c00; /* Diubah */
    --bs-pagination-focus-color: #ea7c00; /* Diubah */
    --bs-pagination-active-bg: #ea7c00; /* Diubah */
    --bs-pagination-active-border-color: #ea7c00; /* Diubah */
}
.pagination-nav .page-item.disabled .page-link {
    color: #aaa;
}
.article-header-image {
    position: relative;
}
/* Tombol "Back to news" */
.back-to-news-btn {
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    z-index: 10;
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 50px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #333;
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
}
.back-to-news-btn:hover {
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
}
.back-to-news-btn i {
    margin-right: 8px;
}

/* Judul Artikel di halaman detail */

.article-title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.3;
    color: #222;
    border-right: 1px solid #ccc;
    padding-right: 1rem;
}

/* Konten isi artikel */
.article-body p {
    font-size: 1rem;
    line-height: 1.7;
    color: #444;
    margin-bottom: 1.5rem;
}
.article-body p strong {
    color: #222;
}

#news-detail-content .card-category {
    color: #ea7c00; /* Diubah */
    font-size: 1.1rem;
    font-weight: 700;
    text-transform: uppercase;
    display: block;
    margin-bottom: 0.5rem;
}

/* Metadata untuk video unggulan (hero) */
.video-meta-featured {
    text-align: center;
    padding-top: 1rem;
}

.video-meta-featured .card-category {
    color: #ea7c00; /* Diubah */
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.video-meta-featured .video-title-featured {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.3;
    color: #222;
}

.video-meta-featured .card-meta {
    font-size: 0.9rem;
    color: #888;
    margin-top: 0.5rem;
}

.video-meta-thumbnail {
    display: block;
    position: relative;
    background-color: #000;
    overflow: hidden;
}
.video-meta-thumbnail img {
    width: 100%;
    object-fit: cover;
    transition: opacity 0.3s ease;
}
.video-card:hover .video-meta-thumbnail img {
    opacity: 0.7;
}

.video-meta-thumbnail:hover .play-overlay {
    transform: translate(-50%, -50%) scale(1.1);
    box-shadow: 0 8px 25px rgba(13, 20, 30, 0.3);
}
/* Kartu untuk grid video */
.video-card {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.video-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
}

/* Thumbnail wrapper */
.video-thumbnail {
    display: block;
    position: relative;
    background-color: #000;
    overflow: hidden;
}
.video-thumbnail img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: opacity 0.3s ease;
}
.video-card:hover .video-thumbnail img {
    opacity: 0.7;
}

/* Metadata di bawah thumbnail */
.video-card-body {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.video-card-body .card-category {
    color: #ea7c00; /* Diubah */
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}
.video-card-body .video-card-title a {
    font-size: 1.15rem;
    font-weight: 700;
    color: #333;
    line-height: 1.4;
    text-decoration: none;
    transition: color 0.3s ease;
}
.video-card:hover .video-card-title a {
    color: #ea7c00; /* Diubah */
}
.video-card-body .card-meta {
    font-size: 0.85rem;
    color: #888;
    margin-top: 1rem;
    margin-bottom: 0;
}

.video-thumbnail:hover .play-overlay {
    transform: translate(-50%, -50%) scale(1.1);
    box-shadow: 0 8px 25px rgba(13, 20, 30, 0.3);
}

.downloads-section .section-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #333;
    margin-bottom: 2rem;
}

/* Style Tombol Warna Oranye */
:root {
    --bs-accent: #ea7c00;
    --bs-accent-rgb: 234, 124, 0;
    --bs-accent-darker: #d36e00;
    --bs-accent-lighter: #fef2e6;
}

/* 2. Buat Class Tombol Solid Baru (.btn-accent) */
.btn-accent {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-accent);
    --bs-btn-border-color: var(--bs-accent);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-accent-darker);
    --bs-btn-hover-border-color: var(--bs-accent-darker);
    --bs-btn-focus-shadow-rgb: var(--bs-accent-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-accent-darker);
    --bs-btn-active-border-color: var(--bs-accent-darker);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-accent);
    --bs-btn-disabled-border-color: var(--bs-accent);
}

/* 3. Buat Class Tombol Outline Baru (.btn-outline-accent) */
.btn-outline-accent {
    --bs-btn-color: var(--bs-accent);
    --bs-btn-border-color: var(--bs-accent);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-accent);
    --bs-btn-hover-border-color: var(--bs-accent);
    --bs-btn-focus-shadow-rgb: var(--bs-accent-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-accent);
    --bs-btn-active-border-color: var(--bs-accent);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--bs-accent);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-accent);
    --bs-gradient: none;
}

/* 4. Buat Class Utility Teks (.text-accent) */
.text-accent {
    color: var(--bs-accent) !important;
}
.bg-accent {
    background-color: var(--bs-accent) !important;
}
.bg-accent-light {
    background-color: var(--bs-accent-lighter) !important;
}

/* Style Kartu Download */
.download-card {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 1rem;
    height: 100%;
    transition: all 0.3s ease;
}
.download-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
}
.download-card-image {
    width: 100%;
    height: 180px;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 1rem;
    background-color: #f0f0f0;
}
.download-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.download-card-title {
    font-size: 0.8rem;
    font-weight: 600;
    text-align: center;
    color: #333;
    margin-bottom: 1rem;
    flex-grow: 1;
}

/* Style Carousel Product Info */
.product-swiper {
    padding-left: 50px;
    padding-right: 50px;
}
.product-swiper .swiper-button-prev,
.product-swiper .swiper-button-next {
    color: #ea7c00; /* Diubah */
    background-color: rgba(255, 255, 255, 0.9);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.product-swiper .swiper-button-prev {
    left: 0;
}
.product-swiper .swiper-button-next {
    right: 0;
}
.product-swiper .swiper-button-prev::after,
.product-swiper .swiper-button-next::after {
    font-size: 1.5rem;
    font-weight: bold;
}

/* Style Timeline E-Magazine */
.emagazine-timeline .timeline-group {
    display: flex;
    position: relative;
    padding: 2rem 0;
    border-bottom: 1px solid #eee;
}
.emagazine-timeline .timeline-group:last-child {
    border-bottom: none;
}
.emagazine-timeline .timeline-year {
    flex-basis: 150px;
    padding-right: 2rem;
    position: sticky;
    top: 100px;
    align-self: flex-start;
}
.emagazine-timeline .timeline-year h3 {
    font-size: 3rem;
    font-weight: 700;
    color: #ccc;
    text-align: right;
}
.emagazine-timeline .timeline-items {
    flex-grow: 1;
    padding-left: 2rem;
    border-left: 2px solid #ea7c00;
}
/* Responsif untuk Timeline di HP */
@media (max-width: 767px) {
    .emagazine-timeline .timeline-group {
        flex-direction: column;
    }
    .emagazine-timeline .timeline-year {
        position: static;
        padding-right: 0;
        margin-bottom: 1rem;
    }
    .emagazine-timeline .timeline-year h3 {
        text-align: left;
        font-size: 2.5rem;
    }
    .emagazine-timeline .timeline-items {
        padding-left: 0;
        border-left: none;
    }
}

.text-accent {
    color: #ea7c00 !important;
}

/* 3. STYLE HEADER (NAVIGASI & TOMBOL BARU)
 * ===================================== */

/* Memastikan navmenu bisa menampung tombol-tombol */
.navmenu {
    display: flex;
    align-items: center;
}

/* 2. Style Tombol Desktop
 * ===================================== */

/* Mengatur tinggi tombol Get Started */
.btn-icon-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 72px;
    height: 40px;
    font-weight: 600;
    font-size: 0.9rem;
    color: #fff; /* Teks putih di header gelap */
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 50px;
    transition: all 0.3s ease;
}

.btn-icon-toggle:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.8);
}

/* PERBAIKAN: Style "Aktif" untuk tombol tema desktop */
.btn-icon-toggle[aria-pressed="true"] {
    background-color: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.9);
}

/* Mengatur ikon Sun/Moon di dalam tombol tema (DESKTOP) */
html[data-bs-theme="light"] #theme-toggle .theme-icon-light {
    display: none;
}
html[data-bs-theme="light"] #theme-toggle .theme-icon-dark {
    display: inline-block;
}
html[data-bs-theme="dark"] #theme-toggle .theme-icon-light {
    display: inline-block;
}
html[data-bs-theme="dark"] #theme-toggle .theme-icon-dark {
    display: none;
}

/* Style Dropdown Bahasa (sesuai image_7e3900.png) */
.dropdown-menu {
    border-radius: 8px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid #eee !important;
    padding: 0.5rem 0 !important;
    margin-top: 0.5rem !important;
    min-width: auto;
}
.dropdown-item {
    font-weight: 500;
    padding: 0.5rem 1.5rem !important;
}
.dropdown-item:active {
    background-color: var(--bs-accent, #ea7c00);
    color: #fff !important;
}

/* Menyamakan tinggi tombol Get Started */
.cta-btn {
    height: 40px;
    padding: 0 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* =====================================
 * PERBAIKAN: STYLE MENU MOBILE
 * (Style: image_8c504c.png)
 * ===================================== */

/* Menargetkan <li> khusus mobile baru kita */
.navmenu .mobile-toggle-li {
    /* Beri jarak di dalam flyout */
    padding: 5px 15px;
}

/* 2. Ubah link <a> menjadi tombol gelap (seperti Gambar 2) */
.navmenu .mobile-toggle-li a {
    padding: 10px 20px;
    display: flex;
    align-items: center;
    justify-content: center; /* Pusatkan konten (ikon + teks) */
    height: 44px;
    width: 100%; /* Buat tombolnya full-width */

    font-size: 15px;
    font-weight: 600;

    color: #ffffff !important; /* Teks & Ikon PUTIH */
    background-color: #ea7c00; /* Background GELAP (mirip Gambar 2) */
    border-radius: 50px; /* Bulat seperti pil */

    transition: all 0.3s ease;
}

/* 3. Style hover/active */
.navmenu .mobile-toggle-li a:hover,
.navmenu .mobile-toggle-li a.active {
    color: #fff !important;
    background-color: #d36e00;
}

/* 4. Pastikan teks di sebelah ikon punya jarak */
.navmenu .mobile-toggle-li a .ms-2 {
    margin-left: 0.5rem !important;
}

/* 5. Logika tampil/sembunyi link bahasa (MOBILE) */
/* Kode ini sudah ada di file Anda, pastikan tetap ada */
body[data-lang="id"] .mobile-lang-link[data-lang-link="id"] {
    display: none;
}
body[data-lang="en"] .mobile-lang-link[data-lang-link="en"] {
    display: none;
}

/* Logika ikon tema (MOBILE) */
html[data-bs-theme="light"] #mobile-theme-toggle-link .theme-icon-light {
    display: none;
}
html[data-bs-theme="light"] #mobile-theme-toggle-link .theme-icon-dark {
    display: inline-block;
}
html[data-bs-theme="dark"] #mobile-theme-toggle-link .theme-icon-light {
    display: inline-block;
}
html[data-bs-theme="dark"] #mobile-theme-toggle-link .theme-icon-dark {
    display: none;
}

/* Logika tampil/sembunyi link bahasa (MOBILE) */
/* JS akan mengatur 'data-lang' pada <body> */
body[data-lang="id"] .mobile-lang-link[data-lang-link="id"] {
    display: none;
}
body[data-lang="en"] .mobile-lang-link[data-lang-link="en"] {
    display: none;
}

/* ------------------------------------ */

.header .btn-icon-toggle {
    border-color: rgba(255, 255, 255, 0.6);
    background-color: rgba(255, 255, 255, 0.05);
}

.header .btn-icon-toggle:hover {
    border-color: rgba(255, 255, 255, 0.9);
    background-color: rgba(255, 255, 255, 0.2);
}

/* 2. Membuat status 'aktif' (dark mode) di tombol tema lebih jelas */
/* Kita buat lebih terang dan tambahkan bayangan (shadow) */
.header .btn-icon-toggle[aria-pressed="true"] {
    border-color: #fff;
    background-color: rgba(255, 255, 255, 0.25);
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.4);
}

#header .dropdown-menu {
    /* Header (1030), Sidebar (1020), Dropdown bawaan (1000) */
    /* Kita set ke 1031 agar di atas segalanya */
    z-index: 5000 !important;
}

/* 3. Perbaikan z-index: Memastikan sidebar 'Why Us' ada di BELAKANG menu mobile */
/* * Saat menu mobile aktif, body mendapat class 'mobile-nav-active'.
 * Kita targetkan sidebar .sticky-top HANYA saat class itu ada
 * dan paksa z-index-nya ke 0.
*/
body.mobile-nav-active .sidebar-nav.sticky-top {
    z-index: 0 !important;
}
