/* Preloader */
     .preloader {
         position: fixed;
         top: 0;
         left: 0;
         width: 100%;
         height: 100%;
         background: #0a0a0a;
         display: flex;
         justify-content: center;
         align-items: center;
         z-index: 9999;
         transition: opacity 0.5s ease-out;
     }
     
     .preloader.fade-out {
         opacity: 0;
     }
     
     .loader {
         width: 80px;
         height: 80px;
         border: 5px solid rgba(248, 180, 0, 0.2);
         border-radius: 50%;
         border-top-color: #f8b400;
         animation: spin 1s linear infinite;
     }
     
     @keyframes spin {
         0% { transform: rotate(0deg); }
         100% { transform: rotate(360deg); }
     }
     
     /* Reset dan Konfigurasi Dasar */
     * {
         margin: 0;
         padding: 0;
         box-sizing: border-box;
     }

     html {
         scroll-behavior: smooth;
     }

     body {
         font-family: 'Poppins', sans-serif;
         background-color: #0a0a0a;
         /* Background default jika gambar gagal dimuat */
         color: #f5f5f5;
         overflow-x: hidden;
         line-height: 1.6;
     }

     nav {
         position: fixed;
         top: 0;
         width: 100%;
         background: rgba(0, 0, 0, 0.9);
         padding: 15px 0;
         text-align: center;
         z-index: 9999;
         backdrop-filter: blur(12px);
         box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
         border-bottom: 1px solid rgba(255, 255, 255, 0.05);
     }

     nav ul {
         list-style: none;
         padding: 0;
         position: relative;
         max-width: 1200px;
         margin: 0 auto;
         display: flex;
         flex-wrap: wrap;
         justify-content: center;
         align-items: center;
     }

     nav ul li {
         display: inline-block;
         position: relative;
         margin: 3px 5px;
     }

     nav a {
         color: white;
         text-decoration: none;
         margin: 0 15px;
         font-size: 1.1em;
         padding: 10px 15px;
         transition: all 0.3s ease-in-out;
         border-radius: 4px;
         font-weight: 500;
         letter-spacing: 0.5px;
         position: relative;
     }

     nav a:after {
         content: '';
         position: absolute;
         bottom: 0;
         left: 50%;
         transform: translateX(-50%);
         width: 0;
         height: 2px;
         background: #f8b400;
         transition: width 0.3s ease;
         border-radius: 2px;
     }

     nav a:hover:after {
         width: 70%;
     }

     nav a:hover {
         color: #f8b400;
         background: rgba(255, 255, 255, 0.05);
     }

     .dropdown {
         position: absolute;
         top: 100%;
         left: 0;
         background: rgba(10, 10, 10, 0.95);
         width: 240px;
         display: none;
         z-index: 10000;
         border-radius: 10px;
         box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
         overflow: hidden;
         transform: translateY(10px);
         opacity: 0;
         transition: all 0.3s ease;
         margin-top: 5px;
         border: 1px solid rgba(255, 255, 255, 0.07);
         backdrop-filter: blur(10px);
     }

     nav ul li:hover .dropdown {
         display: block;
         transform: translateY(0);
         opacity: 1;
     }

     .dropdown a {
         display: flex;
         align-items: center;
         padding: 14px 18px;
         text-align: left;
         margin: 0;
         border-left: 3px solid transparent;
         transition: all 0.3s ease;
         font-size: 0.95rem;
         border-bottom: 1px solid rgba(255, 255, 255, 0.03);
     }

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

     .dropdown a:hover {
         background: rgba(248, 180, 0, 0.1);
         border-left: 3px solid #f8b400;
     }

     .dropdown a:after {
         content: none;
     }

     /* Mobile Menu Hamburger Icon */
     .menu-icon {
         display: none;
         cursor: pointer;
         width: 35px;
         height: 25px;
         position: relative;
         margin: 0 15px;
     }

     .menu-icon span {
         display: block;
         position: absolute;
         height: 3px;
         width: 100%;
         background: #f8b400;
         border-radius: 3px;
         left: 0;
         transform: rotate(0deg);
         transition: .25s ease-in-out;
     }

     .menu-icon span:nth-child(1) {
         top: 0px;
     }

     .menu-icon span:nth-child(2), .menu-icon span:nth-child(3) {
         top: 10px;
     }

     .menu-icon span:nth-child(4) {
         top: 20px;
     }

     .menu-icon.open span:nth-child(1) {
         top: 10px;
         width: 0%;
         left: 50%;
     }

     .menu-icon.open span:nth-child(2) {
         transform: rotate(45deg);
     }

     .menu-icon.open span:nth-child(3) {
         transform: rotate(-45deg);
     }

     .menu-icon.open span:nth-child(4) {
         top: 10px;
         width: 0%;
         left: 50%;
     }

     /* Background Global */
     .section {
         min-height: 100vh;
         display: flex;
         flex-direction: column;
         justify-content: center;
         align-items: center;
         text-align: center;
         padding: 50px;
         position: relative;
         width: 100%;
         background-size: cover;
         background-position: center;
         background-repeat: no-repeat;
     }

     /* Hero Section */
     #hero {
         background: linear-gradient(rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.75)), url('hero-image.jpg') center/cover no-repeat;
         color: white;
         font-size: 2.5em;
         font-weight: 700;
         display: flex;
         flex-direction: column;
         justify-content: center;
         align-items: center;
         text-shadow: 2px 2px 15px rgba(0, 0, 0, 0.7);
         position: relative;
         padding: 0 20px;
     }

     #hero h1 {
         margin-bottom: 15px;
         background: linear-gradient(90deg, #f8b400, #ffd700);
         -webkit-background-clip: text;
         -webkit-text-fill-color: transparent;
         font-size: 3rem;
         line-height: 1.2;
     }

     #hero p {
         font-size: 1.2rem;
         max-width: 800px;
         text-align: center;
         margin-bottom: 30px;
         font-weight: 400;
     }

     .hero-button {
         background: linear-gradient(135deg, #f8b400, #e67e22);
         color: white;
         padding: 16px 32px;
         font-size: 1.1em;
         border-radius: 50px;
         border: none;
         cursor: pointer;
         transition: all 0.3s ease-in-out;
         margin-top: 20px;
         box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.4);
         font-weight: 600;
         letter-spacing: 0.5px;
         position: relative;
         overflow: hidden;
     }

     .hero-button:before {
         content: '';
         position: absolute;
         top: 0;
         left: -100%;
         width: 100%;
         height: 100%;
         background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
         transition: 0.5s;
     }

     .hero-button:hover {
         background: linear-gradient(135deg, #e67e22, #f8b400);
         transform: scale(1.05);
         box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.5);
     }

     .hero-button:hover:before {
         left: 100%;
     }

     /* Layanan Section */
     #services {
         background: linear-gradient(rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.85)), url('servicess.jpg') center/cover no-repeat;
         padding: 0;
         position: relative;
     }

     #services::before {
         content: '';
         position: absolute;
         top: 0;
         left: 0;
         width: 100%;
         height: 100%;
         background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCI+CjxyZWN0IHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCIgZmlsbD0idHJhbnNwYXJlbnQiPjwvcmVjdD4KPGNpcmNsZSBjeD0iMiIgY3k9IjIiIHI9IjIiIGZpbGwtb3BhY2l0eT0iMC4xIiBmaWxsPSIjZjhiNDAwIj48L2NpcmNsZT4KPC9zdmc+');
         opacity: 0.5;
         z-index: 0;
     }

     #services .container {
         position: relative;
         z-index: 1;
     }

     #services h1 {
         margin-bottom: 10px;
         text-shadow: 2px 2px 15px rgba(0, 0, 0, 0.7);
         letter-spacing: 1.2px;
     }

     .layanann {
         display: grid;
         grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
         gap: 30px;
         width: 100%;
         max-width: 1400px;
         margin: auto;
     }

     .kolomL {
         padding: 35px 25px;
         background: rgba(20, 20, 20, 0.7);
         border-radius: 16px;
         backdrop-filter: blur(10px);
         box-shadow: 0px 15px 35px rgba(0, 0, 0, 0.4);
         transition: all 0.4s ease-in-out;
         text-align: center;
         border: 1px solid rgba(255, 255, 255, 0.08);
         position: relative;
         overflow: hidden;
         z-index: 1;
         margin-bottom: 5px;
     }

     .kolomL:before {
         content: '';
         position: absolute;
         top: 0;
         left: 0;
         width: 4px;
         height: 0;
         background: linear-gradient(180deg, #f8b400, transparent);
         transition: all 0.4s ease;
         z-index: -1;
     }

     .kolomL:hover {
         transform: translateY(-10px);
         background: rgba(30, 30, 30, 0.85);
         box-shadow: 0px 20px 40px rgba(0, 0, 0, 0.6);
         border-color: rgba(248, 180, 0, 0.3);
     }

     .kolomL:hover:before {
         height: 100%;
     }

     .service-icon-wrapper {
         width: 70px;
         height: 70px;
         background: linear-gradient(135deg, rgba(248, 180, 0, 0.2), rgba(248, 180, 0, 0.05));
         border-radius: 50%;
         margin: 0 auto 20px;
         display: flex;
         align-items: center;
         justify-content: center;
         border: 1px solid rgba(248, 180, 0, 0.3);
         box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
         transition: all 0.3s ease;
     }

     .kolomL:hover .service-icon-wrapper {
         transform: scale(1.1) rotate(5deg);
         background: linear-gradient(135deg, rgba(248, 180, 0, 0.3), rgba(248, 180, 0, 0.1));
     }

     .service-icon {
         font-size: 28px;
         color: #f8b400;
         text-shadow: 0 2px 10px rgba(248, 180, 0, 0.4);
     }

     .kolomL h3 {
         color: #f8b400;
         font-size: 1.6em;
         margin-bottom: 25px;
         font-weight: 600;
         position: relative;
         padding-bottom: 15px;
     }

     .kolomL h3:after {
         content: '';
         position: absolute;
         bottom: 0;
         left: 50%;
         transform: translateX(-50%);
         width: 60px;
         height: 3px;
         background: linear-gradient(to right, transparent, #f8b400, transparent);
         border-radius: 3px;
     }

     .rata {
         text-align: left;
         font-size: 15px;
         padding: 8px;
         line-height: 2;
         font-weight: 500;
     }

     .rata p {
         position: relative;
         padding-left: 25px;
         margin-bottom: 5px;
         transition: all 0.3s ease;
     }

     .rata p:hover {
         transform: translateX(5px);
         color: rgba(255, 255, 255, 0.95);
     }

     .rata p:before {
         content: '•';
         color: #f8b400;
         position: absolute;
         left: 0;
         font-size: 18px;
     }

     .service-button-container {
         text-align: center;
         margin-top: 25px;
     }

     .service-btn {
         display: inline-flex;
         align-items: center;
         justify-content: center;
         gap: 10px;
         padding: 12px 28px;
         background: rgba(248, 180, 0, 0.1);
         color: #f8b400;
         font-weight: 600;
         letter-spacing: 0.5px;
         border: 1px solid rgba(248, 180, 0, 0.3);
         border-radius: 8px;
         transition: all 0.3s ease;
         text-decoration: none;
     }

     .service-btn:hover {
         background: linear-gradient(to right, #f8b400, #e67e22);
         color: white;
         transform: translateY(-3px);
         box-shadow: 0 8px 20px rgba(230, 126, 34, 0.3);
     }

     .service-btn i {
         transition: transform 0.3s ease;
     }

     .service-btn:hover i {
         transform: translateX(5px);
     }

     /* Button Layanan (keeping for backward compatibility) */
     .button-layanan {
         padding: 12px 24px;
         background: linear-gradient(to right, #f8b400, #e67e22);
         color: white;
         border: none;
         font-size: 0.95em;
         border-radius: 8px;
         cursor: pointer;
         transition: all 0.3s ease-in-out;
         margin-top: 20px;
         font-weight: 600;
         letter-spacing: 0.5px;
         box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
     }

     .button-layanan:hover {
         background: linear-gradient(to right, #e67e22, #f8b400);
         transform: translateY(-3px);
         box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
     }

     /* Kontak Section */
     #contact {
         background: linear-gradient(135deg, #1a2a38, #2c3e50);
         background-size: cover;
         background-position: center;
         color: white;
         padding: 0;
         text-align: center;
         position: relative;
     }

     #contact::before {
         content: '';
         position: absolute;
         top: 0;
         left: 0;
         width: 100%;
         height: 100%;
         background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCI+CjxyZWN0IHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCIgZmlsbD0idHJhbnNwYXJlbnQiPjwvcmVjdD4KPGNpcmNsZSBjeD0iMiIgY3k9IjIiIHI9IjIiIGZpbGwtb3BhY2l0eT0iMC4xIiBmaWxsPSIjZjhiNDAwIj48L2NpcmNsZT4KPC9zdmc+');
         opacity: 0.5;
         z-index: 0;
     }

     #contact h2 {
         margin-bottom: 40px;
         font-size: 2.2em;
         position: relative;
         display: inline-block;
         padding-bottom: 15px;
     }

     #contact h2:after {
         content: '';
         position: absolute;
         width: 80px;
         height: 4px;
         background: #f8b400;
         bottom: 0;
         left: 50%;
         transform: translateX(-50%);
         border-radius: 4px;
     }

     #contact .container {
         position: relative;
         z-index: 1;
     }

     .kontener {
         display: grid;
         grid-template-columns: repeat(2, 1fr);
         gap: 30px;
         max-width: 1200px;
         margin: 0 auto 40px;
         align-items: stretch;
         padding: 0 15px;
     }

     .kolom {
         padding: 30px;
         background: rgba(25, 25, 30, 0.7);
         border-radius: 16px;
         box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
         transition: all 0.4s ease;
         min-height: 280px;
         display: flex;
         flex-direction: column;
         justify-content: center; /* Center vertically */
         align-items: center;
         border: 1px solid rgba(255, 255, 255, 0.08);
         backdrop-filter: blur(10px);
         position: relative;
         overflow: hidden;
     }

     .kolom:hover {
         transform: translateY(-10px);
         background: rgba(30, 30, 35, 0.8);
         box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
         border-color: rgba(248, 180, 0, 0.3);
     }

     .kolom h3 {
         font-size: 1.8em;
         margin-bottom: 20px;
         color: #f8b400;
         font-weight: 700;
         position: relative;
         text-align: center;
         width: 100%;
     }

     .kaki {
         width: 100%;
         font-size: 1.05em;
         display: flex;
         align-items: center;
         transition: all 0.3s ease;
         text-decoration: none;
         color: #f5f5f5;
     }

     .kaki i {
         margin-right: 10px;
         color: #f8b400;
         font-size: 1.2em;
     }

     .kaki:hover {
         color: #f8b400;
     }

     /* Styling untuk iframe Google Maps */
     .maps-container {
         width: 100%;
         height: 300px;
         border-radius: 12px;
         overflow: hidden;
         transition: all 0.3s ease;
     }

     .maps-container:hover {
         box-shadow: 0 10px 30px rgba(248, 180, 0, 0.2);
     }

     .maps-container iframe {
         width: 100%;
         height: 100%;
         border: none;
     }

     /* Styling untuk Contact CTA */
     .contact-cta {
         background: linear-gradient(135deg, rgba(248, 180, 0, 0.1), rgba(248, 180, 0, 0.05));
         padding: 40px;
         border-radius: 16px;
         text-align: center;
         margin-top: 50px;
         border: 1px solid rgba(248, 180, 0, 0.2);
         position: relative;
         overflow: hidden;
         box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
     }

     .contact-cta h3 {
         color: #f8b400;
         font-size: 1.8rem;
         margin-bottom: 20px;
     }

     .contact-cta p {
         color: #e5e5e5;
         margin-bottom: 30px;
         max-width: 700px;
         margin-left: auto;
         margin-right: auto;
     }

     .cta-button {
         background: linear-gradient(to right, #f8b400, #e67e22);
         color: white;
         padding: 12px 30px;
         border-radius: 50px;
         font-weight: 600;
         text-decoration: none;
         display: inline-block;
         transition: all 0.3s ease;
         border: none;
         cursor: pointer;
         box-shadow: 0 5px 15px rgba(230, 126, 34, 0.3);
     }

     .cta-button:hover {
         transform: translateY(-3px);
         box-shadow: 0 8px 25px rgba(230, 126, 34, 0.4);
         background: linear-gradient(to right, #e67e22, #f8b400);
     }

     .question-section {
         display: flex;
         justify-content: center;
         align-items: center;
         padding: 50px 20px;
         background: linear-gradient(to bottom, transparent, rgba(0,0,0,0.1));
     }

     .question-container {
         padding: 20px;
         width: 100%;
         max-width: 550px;
         text-align: center;
     }

     .question-title {
         font-size: 28px;
         color: white;
         margin-bottom: 25px;
         font-weight: 600;
         position: relative;
         display: inline-block;
         padding-bottom: 12px;
     }

     .question-title:after {
         content: '';
         position: absolute;
         width: 60px;
         height: 3px;
         background: #f8b400;
         bottom: 0;
         left: 50%;
         transform: translateX(-50%);
         border-radius: 3px;
     }

     .question-card {
         background-color: white;
         border-radius: 15px;
         box-shadow: 0px 15px 35px rgba(0, 0, 0, 0.3);
         padding: 30px;
         border: none;
         position: relative;
         overflow: hidden;
     }

     .question-card:before {
         content: '';
         position: absolute;
         top: 0;
         left: 0;
         width: 100%;
         height: 5px;
         background: linear-gradient(to right, #f8b400, #e67e22);
     }

     .question-content {
         display: flex;
         flex-direction: column;
         align-items: center;
     }

     .question-icon {
         width: 70px;
         margin-bottom: 15px;
         filter: drop-shadow(0 5px 15px rgba(0,0,0,0.1));
         transition: transform 0.3s ease;
     }

     .question-card:hover .question-icon {
         transform: scale(1.1) rotate(5deg);
     }

     .question-content h3 {
         color: #333;
         font-size: 22px;
         margin-bottom: 15px;
         font-weight: 600;
     }

     .question-content p {
         font-size: 15px;
         color: #666;
         margin-bottom: 20px;
         line-height: 1.6;
     }

     .question-content label {
         align-self: flex-start;
         margin-bottom: 8px;
         font-weight: 500;
         color: #444;
         font-size: 14px;
     }

     .question-content input {
         width: 100%;
         padding: 14px;
         border: 1px solid #ddd;
         border-radius: 8px;
         margin-bottom: 20px;
         transition: all 0.3s ease;
         font-size: 15px;
         box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
     }

     .question-content input:focus {
         border-color: #f8b400;
         box-shadow: 0 0 0 3px rgba(248, 180, 0, 0.15);
         outline: none;
     }

     .btn-submit {
         background: linear-gradient(to right, #f8b400, #e67e22);
         color: white;
         border: none;
         padding: 14px 30px;
         cursor: pointer;
         border-radius: 8px;
         font-weight: 600;
         font-size: 16px;
         transition: all 0.3s ease;
         box-shadow: 0 5px 15px rgba(230, 126, 34, 0.3);
         display: inline-block;
         text-decoration: none;
     }

     .btn-submit:hover {
         background: linear-gradient(to right, #e67e22, #f8b400);
         transform: translateY(-3px);
         box-shadow: 0 8px 20px rgba(230, 126, 34, 0.4);
     }

     /* Animation Keyframes */
     @keyframes fadeIn {
         from { opacity: 0; transform: translateY(20px); }
         to { opacity: 1; transform: translateY(0); }
     }

     @keyframes pulse {
         0% { transform: scale(1); }
         50% { transform: scale(1.05); }
         100% { transform: scale(1); }
     }
     
     /* Animasi fade-in saat scrolling */
     .fade-in-element {
         opacity: 0;
         transform: translateY(20px);
         transition: opacity 0.6s ease-out, transform 0.6s ease-out;
     }
     
     .fade-in-visible {
         opacity: 1;
         transform: translateY(0);
     }

     /* Scrolled Nav Effect */
     nav.scrolled {
         background: rgba(0, 0, 0, 0.95);
         padding: 10px 0;
         box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5);
     }

     /* Styles for menu items with icons */
     .dropdown a i {
         margin-right: 10px;
         width: 18px;
         text-align: center;
         color: #f8b400;
         display: inline-flex;
         justify-content: center;
     }

     .mr-2 {
         margin-right: 0.5rem;
     }

     /* Body state when menu is open on mobile */
     body.menu-open {
         overflow: hidden;
     }

     /* Fade overlay when mobile menu is active */
     body.menu-open:before {
         content: '';
         position: fixed;
         top: 0;
         left: 0;
         right: 0;
         bottom: 0;
         background: rgba(0, 0, 0, 0.5);
         z-index: 9990;
         animation: fadeIn 0.3s ease-in-out;
     }

     /* Apply animations */
     #hero h1, #hero p {
         animation: fadeIn 1s ease-out forwards;
     }

     #hero h1 {
         animation-delay: 0.3s;
     }

     #hero p {
         animation-delay: 0.6s;
     }

     .hero-button {
         animation: fadeIn 1s ease-out 0.9s forwards;
         opacity: 0;
     }

     #services h1 {
         animation: fadeIn 1s ease-out forwards;
     }

     /* Improved Responsiveness */
     @media (max-width: 992px) {
         .kontener {
             grid-template-columns: 1fr;
             gap: 30px;
         }

         .kolom {
             min-height: auto;
             padding: 25px;
         }

         .layanann {
             grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
         }
     }

     @media (max-width: 768px) {
         .menu-icon {
             display: block;
             position: absolute;
             right: 20px;
             top: 15px;
             z-index: 10001;
         }

         nav {
             padding: 15px 0;
         }

         nav ul {
             flex-direction: column;
             background: rgba(10, 10, 10, 0.98);
             backdrop-filter: blur(15px);
             position: fixed;
             top: 0;
             right: -100%;
             width: 280px;
             height: 100vh;
             padding-top: 70px;
             transition: all 0.4s ease;
             box-shadow: -5px 0 30px rgba(0, 0, 0, 0.5);
             overflow-y: auto;
             align-items: flex-start;
             border-left: 1px solid rgba(255, 255, 255, 0.05);
         }

         nav ul.active {
             right: 0;
         }

         nav ul li {
             width: 100%;
             margin: 0;
             padding: 0;
         }

         nav a {
             display: block;
             width: 100%;
             margin: 0;
             padding: 15px 20px;
             font-size: 1rem;
             text-align: left;
             border-bottom: 1px solid rgba(255, 255, 255, 0.05);
         }

         nav a:after {
             display: none;
         }

         .dropdown {
             position: static;
             width: 100%;
             box-shadow: none;
             margin-top: 0;
             border-radius: 0;
             background: rgba(30, 30, 30, 0.95);
             border: none;
             transform: none;
             display: none;
             opacity: 0;
             max-height: 0;
             overflow: hidden;
             padding-left: 15px;
             transition: all 0.3s ease-in-out;
         }

         nav ul li:hover .dropdown {
             display: none;
         }

         .dropdown.show {
             display: block;
             opacity: 1;
             max-height: 1000px;
         }

         .dropdown a {
             display: flex;
             align-items: center;
             padding: 12px 20px 12px 30px;
             font-size: 0.9rem;
             border-left: none;
             border-bottom: 1px solid rgba(255, 255, 255, 0.03);
         }

         .dropdown a:hover {
             border-left: none;
             padding-left: 32px;
         }

         .has-dropdown {
             position: relative;
         }

         .has-dropdown:after {
             content: '\f107';
             font-family: 'Font Awesome 6 Free';
             font-weight: 900;
             position: absolute;
             right: 20px;
             top: 15px;
             color: #f8b400;
             transition: all 0.3s ease;
         }

         .has-dropdown.active:after {
             transform: rotate(180deg);
         }

         .section {
             padding: 50px 15px;
             min-height: auto;
         }

         #services {
             background-size: cover;
             background-position: center;
             padding: 60px 15px;
         }

         #hero {
             font-size: 1.2em;
             min-height: 100vh;
         }

         #hero h1 {
             font-size: 2rem;
         }

         .question-container {
             width: 95%;
         }

         #contact h2, #services h1 {
             font-size: 1.8em;
         }

         .kaki {
             font-size: 0.95em;
         }
     }

     @media (max-width: 576px) {
         nav {
             padding: 10px 0;
         }

         nav ul {
             width: 250px;
         }

         .layanann {
             grid-template-columns: 1fr;
             gap: 20px;
             width: 95%;
         }

         #hero h1 {
             font-size: 1.7rem;
             margin-top: 60px;
         }

         #hero p {
             font-size: 0.95rem;
             width: 95%;
         }

         .hero-button {
             padding: 12px 20px;
             font-size: 0.95em;
         }

         .kolom, .kolomL {
             padding: 20px 15px;
             margin-bottom: 15px;
         }

         .question-card {
             padding: 20px 15px;
         }

         #about .flex-wrap {
             padding: 10px;
         }

         #about h2 {
             font-size: 1.8rem;
         }

         #about .grid {
             grid-template-columns: 1fr;
         }

         #about .w-16 {
             width: 3rem;
             height: 3rem;
         }

         #about .w-10 {
             width: 2.5rem;
             height: 2.5rem;
         }

         #about .text-2xl {
             font-size: 1.3rem;
         }

         #about .p-8 {
             padding: 1.25rem;
         }

         #about .text-lg {
             font-size: 0.95rem;
         }
     }

     @media (max-width: 400px) {
         #hero h1 {
             font-size: 1.5rem;
         }

         nav ul {
             width: 240px;
             padding-top: 60px;
         }

         nav a {
             font-size: 0.9rem;
             padding: 12px 15px;
         }

         .dropdown a {
             padding: 10px 15px 10px 25px;
             font-size: 0.85rem;
         }

         .menu-icon {
             right: 15px;
             top: 12px;
         }
     }