 /* ===== INNER BANNER ===== */
 .inner-banner {
     display: block;
     padding: 60px 0;
     min-height: 250px;
     background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
         url(../img/bg-blog.png) no-repeat center top / cover;
     position: relative;
 }

 .inner-banner::before {
     content: "";
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background: rgba(0, 0, 0, 0.4);
 }

 .inner-banner .container {
     position: relative;
     z-index: 1;
 }

 .inner-banner h1 {
     color: #fff;
     font-size: 48px;
     font-weight: 700;
     margin-bottom: 15px;
 }

 .inner-banner p {
     color: #fff;
     font-size: 16px;
     max-width: 600px;
     margin: 0 auto;
 }

 .inner-banner .col-sm-12.text-center hr {
     width: 40%;
     height: 3px;
     border: none;
     background-color: #fff;
     margin: 20px auto;
     border-radius: 2px;
 }


 /* Badge & Header */
 .badge {
     background: #F7CA17;
     background-color: rgba(247, 202, 23, 0.2);
     border: 1px solid #F7CA17;
     color: #F7CA17;
     display: inline-block;
     padding: 10px 20px;
     border-radius: 10px;
     font-size: 18px;
     font-weight: 600px;
     margin-bottom: 20px;
     margin-top: -40px;
 }

.container {
    text-align: center;
}

 .header {
     text-align: center;
     margin-bottom: 50px;
 }

 .header h1 {
     color: #1a1a1a;
     margin-bottom: 15px;
 }

 .header p {
     color: #666666;
     font-size: 17px;
     max-width: 600px;
     margin: 0 auto;
 }

 /* Features Container */
 .features-container {
     display: flex;
     justify-content: center;
     gap: 20px;
     width: 100%;
     margin-bottom: 100px;
     flex-wrap: wrap;
 }

 .feature-card {
     background-color: #ffffff;
     border: 1px solid #e9e9e9;
     border-radius: 20px;
     padding: 15px 35px;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
     text-align: center;
     flex: 1 1 calc(25% - 30px);
     min-width: 290px;
     overflow: hidden;
     transition: all 0.3s ease;
 }

 .feature-card .p {
     line-height: 2.7rem;
     font-size: 1.6rem;
 }

 .feature-card::before {
     content: "";
     position: absolute;
     top: 0;
     left: 50%;
     transform: translateX(-50%);
     width: 75%;
     height: 6px;
     background-color: #f7ca17;
     border-radius: 0 0 5px 5px;
     z-index: 100;
     opacity: 0;
     transform: translateX(-50%) translateY(-10px);
     transition: opacity 0.3s ease, transform 0.3s ease;
 }

 .feature-card:hover::before {
     opacity: 1;
     transform: translateX(-50%) translateY(0);
 }

 .feature-card:hover {
     border-color: #f7ca17;
     box-shadow: 0 6px 20px #f7ca17;
     transform: translateY(-5px);
 }

 .icon-wrapper {
     background: linear-gradient(135deg, #f7ca17, #f7ca17);
     width: 80px;
     height: 80px;
     border-radius: 20px;
     display: flex;
     align-items: center;
     justify-content: center;
     margin: 0 auto 24px;
     margin-top: 20px;
 }

 .card-icon {
     width: 45px;
     height: 45px;
 }

 .feature-card h3 {
     margin: 0 0 15px;
     font-size: 1.8rem;
     font-weight: 700;
     color: #212121;
 }

 .feature-card p {
     margin: 0;
     color: #848383;
     font-size: 1.2rem;
     font-weight: bold;
     line-height: 1.6;
 }

 /* Container Bawah */
 .container-bawah {
     text-align: center;
     padding: 70px 0;
     background-color: #F1F1F1;
 }

 .container-bawah h2 {
     position: relative;
     padding-bottom: 15px;
     margin: 0 auto 20px auto;
     color: #333;
     display: inline-block;
 }

 .container-bawah h2::after {
     content: '';
     position: absolute;
     bottom: 0;
     left: 50%;
     transform: translateX(-50%);
     width: 70%;
     height: 4px;
     background-color: #f5c518;
     border-radius: 2px;
 }

 .container-bawah p {
     color: #666;
     font-size: 16px;
     line-height: 1.7;
     max-width: 800px;
     margin: 0 auto;
 }

 /* Timeline */
 .timeline-container {
     max-width: 70%;
     margin: 90px auto;
     position: relative;
 }

 .timeline-container::before {
     content: '';
     position: absolute;
     left: 27px;
     top: 50px;
     height: calc(100% - 350px);
     width: 3px;
     background: #FFD700;
 }

 .timeline-item {
     position: relative;
     margin-bottom: 40px;
     padding-left: 100px;
 }

 .timeline-number {
     position: absolute;
     left: 0;
     top: 25px;
     width: 55px;
     height: 55px;
     background: #FFD700;
     border-radius: 50%;
     border: 5px solid white;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 24px;
     font-weight: 700;
     color: #333;
     z-index: 2;
 }

 .feature-box {
     background: white;
     border-radius: 20px;
     padding: 30px;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
     overflow: hidden;
     transition: all 0.3s ease;
 }

 .feature-box:hover {
     transform: translateY(-5px);
     box-shadow: 0 8px 25px #F7CA17;
 }

 .feature-header {
     display: flex;
     align-items: center;
     gap: 15px;
     margin-bottom: 10px;
 }

 .feature-icon {
     width: 50px;
     height: 50px;
     background: #FFD700;
     border-radius: 8px;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
 }

 .feature-icon svg {
     width: 28px;
     height: 28px;
     fill: #333;
 }

 .feature-header h3 {
     font-size: 2.2rem;
     font-weight: 700;
     color: #212121;
     margin: 0;
     line-height: 1.4;
 }

 .feature-description {
     color: #848383;
     font-size: 1.6rem;
     font-weight: bold;
     line-height: 2.7rem;
 }

 .feature-points {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: 30px;
     margin-top: 0.5px;
 }

 .feature-point {
     display: flex;
     align-items: start;
     gap: 10px;
     font-size: 1.4rem;
     color: #848383;
     font-weight: bold;
 }

 .point-icon {
     width: 22px;
     height: 22px;
     background: #FFD700;
     border-radius: 50%;
     flex-shrink: 0;
     display: flex;
     align-items: center;
     justify-content: center;
     margin-top: 0.5px;
 }

 .point-icon svg {
     width: 12px;
     height: 12px;
     fill: #333;
 }

 #icon-preview svg {
     width: 32px;
     height: 32px;
     stroke: #FFFFFF;
     fill: none;
 }



 /* Responsive */
 @media (max-width: 1024px) and (min-width: 768px) {
     .features-container {
         flex-wrap: wrap;
         gap: 20px;
         justify-content: center;
     }

     .timeline-container::before {
         content: '';
         position: absolute;
         left: 27px;
         top: 50px;
         height: calc(100% - 300px);
         width: 3px;
         background: #FFD700;
     }

     .feature-card {
         flex: 1 1 calc(50% - 20px);
         max-width: calc(50% - 20px);
         min-width: calc(50% - 20px);
     }
 }

 @media (max-width: 768px) {
     .timeline-container::before {
         left: 22px;
         top: 30px;
         height: calc(100% - 300px);
         width: 3px;
         background: #FFD700;
     }

     .timeline-item {
         padding-left: 80px;
     }

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

     .feature-points {
         grid-template-columns: 1fr;
     }

     .feature-header h3 {
         font-size: 18px;
     }

     .timeline-container {
         max-width: 90%;
     }
 }

 @media (max-width: 767px) and (min-width: 426px) {
     .features-container {
         gap: 15px;
         padding: 0 15px;
     }

     .feature-card {
         flex: 1 1 100%;
         max-width: 100%;
         min-width: auto;
         padding: 35px 25px;
     }

     .feature-card h3 {
         font-size: 1.6rem;
     }

     .feature-card p {
         font-size: 1.1rem;
     }
 }

 @media (max-width: 425px) {
     .features-container {
         display: flex !important;
         flex-direction: column !important;
         gap: 20px !important;
         align-items: stretch !important;
         padding: 0 15px;
     }

     .feature-card {
         width: 100% !important;
         max-width: 100% !important;
         flex: 1 1 100% !important;
         padding: 35px 25px;
     }

     .feature-card h3 {
         font-size: 1.6rem;
     }

     .feature-card p {
         font-size: 1.1rem;
     }
 }

 @media (min-width: 1025px) {
     .features-container {
         flex-wrap: nowrap;
     }

     .timeline-container::before {
         content: '';
         position: absolute;
         left: 27px;
         top: 50px;
         height: calc(100% - 250px);
         width: 3px;
         background: #FFD700;
     }
 }