*,
html {
  margin: 0;
  padding: 0;
}

:root {
  --primary-color: #2196f3;
  --secondary-color: #f50057;
  --bg: white;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  outline: none;
  border: none;
  text-decoration: none;
}

body {
  font-family: "poppins", sans-serif;
  background-color: white;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.container-navbar {
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.4rem 7%;
  background-color: var(--bg);
  border-bottom: 2px solid var(--primary-color);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
}

.img-navbar {
  width: 250px; /* Atur ukuran gambar */
  height: auto;
  display: block; /* Agar tidak terpengaruh flex */
  margin-left: -30px; /* Pastikan di kiri */
  margin-top: 5px; /* Opsional, beri jarak dari atas */
}

.container-navbar .navbar-list a {
  display: inline-block;
  font-size: 1.4rem;
  margin: 0 1rem;
  color: black;
  position: relative; /* Tambahkan agar ::after bisa diposisikan */
  padding-bottom: 0.7rem; /* Tambahkan jarak bawah agar garis hover terlihat */
}

.container-navbar .navbar-list a::after {
  content: "";
  display: block;
  position: absolute; /* Garis bawah menempel di bawah link */
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px; /* Tebalkan garis hover */
  background: var(--primary-color);
  transform: scaleX(0);
  transition: transform 0.3s linear;
}

.container-navbar .navbar-list a:hover::after {
  transform: scaleX(0.7); /* Lebarkan garis saat hover */
}

.container-navbar .navbar-extra a {
  color: black;
  margin: 0 0.5rem;
}

.container-navbar .navbar-extra a:hover {
  color: var(--primary-color);
}

.container-navbar .navbar-list {
  margin-top: 12px;
}

#hamburger-menu {
  display: none;
}

/* ===== LANGUAGE DROPDOWN DENGAN IKON PANAH ===== */
.language-dropdown {
  position: relative;
  display: inline-block;
  margin-right: 10px;
  z-index: 1000;
  transform: translateY(-4px);
}

/* Tombol utama dropdown bahasa */
.language-dropdown .lang-btn {
  background-color: transparent;
  color: #333;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 12px;
  border-radius: 8px;
  transition: background 0.2s ease;
}

/* Hover efek biar konsisten dengan tombol kanan */
.language-dropdown .lang-btn:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

/* Gaya ikon panah */
.language-dropdown .lang-btn svg {
  width: 18px;
  height: 18px;
  stroke-width: 2;
  transition: transform 0.2s ease;
  position: relative;
  top: 1px;
}

/* Saat dropdown dihover, panah berputar ke atas */
.language-dropdown:hover .lang-btn svg {
  transform: rotate(180deg);
}

/* Daftar bahasa (dropdown menu) */
.language-dropdown .lang-content {
  display: none;
  position: absolute;
  right: 0;
  background-color: white;
  min-width: 160px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  overflow: hidden;
}

/* Isi pilihan bahasa */
.language-dropdown .lang-content a {
  display: block;
  padding: 12px 16px;
  text-decoration: none;
  color: #333;
  font-size: 15px;
  transition: background 0.2s ease;
}

.language-dropdown .lang-content a:hover {
  background-color: #f3f3f3;
}

/* Saat di-hover, tampilkan daftar bahasa */
.language-dropdown:hover .lang-content {
  display: block;
}

/* ================================== */
/* STYLING DROPDOWN (PRODUCT SUBMENU) */
/* ================================== */

/* Container untuk item "PRODUCTS" */
.nav-item-dropdown {
  position: relative; /* Wajib untuk posisi submenu */
  /* Menyamakan tampilan dengan link <a> lainnya */
  display: inline-block;
  margin: 0 1rem;
  padding-bottom: 0.7rem;
}

/* Link "PRODUCTS" (termasuk .a-navbar) */
.nav-item-dropdown .dropdown-btn {
  display: flex; /* Agar panah sejajar */
  align-items: center;
  padding-bottom: 0; /* Hapus padding bawah ganda */
  margin: 0; /* Hapus margin ganda */
}

/* Ikon Panah */
.dropdown-icon {
  width: 1rem;
  height: 1rem;
  margin-left: 0.3rem;
  transition: transform 0.3s ease;
}

/* Container "hamburger list" (Submenu) */
.dropdown-menu {
  display: none; /* Sembunyikan by default */
  position: absolute;
  top: 100%; /* Muncul di bawah "PRODUCTS" */
  left: 0;
  background-color: white;
  min-width: 250px; /* Lebar dropdown */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border: 1px solid #ddd;
  border-radius: 5px;
  z-index: 1000;
  padding: 0.5rem 0;
}

/* Link di dalam dropdown */
.submenu-link {
  display: block;
  padding: 0.75rem 1.5rem;
  color: black;
  font-size: 1.2rem; /* Ukuran font di dalam dropdown */
  margin: 0;
}
.submenu-link:hover {
  background-color: #f0f0f0;
  color: var(--primary-color);
}
.submenu-link::after {
  display: none; /* Hilangkan garis hover di submenu */
}

/* --- Perilaku HOVER di DESKTOP --- */
.nav-item-dropdown:hover .dropdown-menu {
  display: block; /* Tampilkan menu saat di-hover */
}

.nav-item-dropdown:hover .dropdown-icon {
  transform: rotate(180deg); /* Putar panah saat di-hover */
}

/* KUNCI: Membuat ikon search dan form inline sejajar */
.navbar-extra {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.navbar-extra a {
  margin-left: 0;
  margin-right: 0;
  padding: 0;
}

.navbar-extra a#shopping-bag,
.navbar-extra a#hamburger-menu {
  margin-right: 0.5rem;
}
/* Styling Form Pencarian Inline BARU */
.search-form-inline {
  display: flex;
  align-items: center;
  position: relative;

  /* KUNCI: Sembunyikan form secara default */
  max-width: 0 !important;
  opacity: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  min-width: 0;
  /* Animasi muncul/hilang */
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  overflow: hidden; /* Penting untuk menghilangkan elemen saat width 0 */
}

/* Class yang diaktifkan oleh JavaScript */
.search-form-inline.active {
  max-width: 200px !important; /* Lebar muncul yang diinginkan (bisa disesuaikan) */
  opacity: 1;
  margin-right: 0; /* Beri jarak lagi dari ikon search */
}

.search-form-inline input[type="search"] {
  width: 200px;
  padding: 8px 80px 8px 15px; /* Tambah padding kanan untuk tombol submit */
  border: 1px solid var(--primary-color);
  border-radius: 50px; /* Bentuk kapsul */
  font-size: 1rem;
  background-color: #fff;
  /* Hilangkan tombol silang bawaan browser (silang hitam/abu-abu) */
  -webkit-appearance: none;
  appearance: none;
}
.search-form-inline input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}

/* Tombol Submit di dalam form (ikon cari) */
.search-form-inline button[type="submit"] {
  position: absolute;
  right: 0px;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 40px;
  background: none;
  color: var(--primary-color);
  cursor: pointer;
  border-radius: 0 50px 50px 0; /* Agar bentuknya mengikuti kapsul input */
}
.search-form-inline button[type="submit"] i {
  width: 20px;
  height: 20px;
}

/* Hero Section */
/* HERO SECTION STYLING */
.hero-section {
  /* GANTI URL di bawah ini dengan URL gambar Anda yang sebenarnya */
  background-image: url("/assets/Gemini_Generated_Image_tahfsbtahfsbtahf.png"); /* CONTOH URL GAMBAR DARI GENERASI SEBELUMNYA */
  background-size: cover;
  background-position: center;
  /* Ketinggian harus dikurangi tinggi navbar (80px) */
  height: calc(100vh - 80px);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
  /* Tambahkan padding-top agar tidak tertutup navbar (80px adalah tinggi navbar) */
  margin-top: 80px;
}

/* Overlay untuk membuat teks lebih mudah dibaca */
.hero-section::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /* Lapisan warna agar teks putih menonjol */
  background-color: rgba(0, 0, 0, 0.4);
}

/* Mengatur konten di atas overlay */
.hero-content {
  color: white; /* Warna teks putih */
  z-index: 2; /* Memastikan konten berada di atas overlay */
  max-width: 800px;
  padding: 20px;
}

.hero-content h1 {
  font-size: 3em;
  margin-bottom: 0.5em;
  font-weight: bold;
}

.hero-content p {
  font-size: 1.5em;
  margin-bottom: 1.5em;
}

/* Styling Tombol CTA */
.cta-button {
  display: inline-block;
  padding: 15px 30px;
  background-color: #007bff; /* Warna biru */
  color: white;
  text-decoration: none;
  font-weight: bold;
  border-radius: 5px;
  transition: background-color 0.3s;
}

.cta-button:hover {
  background-color: #0056b3;
}

/* --- ABOUT COMPANY (SAINS) SECTION --- */
.about-company-sains {
  padding: 6rem 7%;
  /* Menggunakan warna biru muda */
  background-color: #c5dff7;
  text-align: center;
}

.about-content-sains {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  max-width: 1200px;
  margin: 0 auto;
}

.sains-logo-container {
  flex: 0 0 40%;
  text-align: center;
  padding-right: 20px;
  margin: 0; /* Pastikan tidak ada margin yang bocor */
  align-self: center;
}

.sains-logo {
  width: 100%;
  max-width: 450px;
  height: auto;
  margin-bottom: 0;
}

.sains-text-container {
  flex: 1;
  padding-left: 20px;
}

.sains-title {
  font-size: 2.2em;
  font-weight: 800;
  color: #333;
  margin-bottom: 20px;
  position: relative;
}

/* Garis Biru di Bawah Judul */
.sains-title::after {
  content: "";
  display: block;
  width: 750px;
  height: 4px;
  background-color: var(--primary-color);
  margin-top: 5px;
}

.sains-text-container p {
  font-size: 1.1em;
  color: #555;
  line-height: 1.6;
  margin-bottom: 15px;
  text-align: justify;
}

/* --- BRANDING STRIP / CERTIFICATION SECTION --- */
.branding-strip {
  padding: 30px 7%;
  /* Menggunakan warna biru muda untuk menonjolkan kepercayaan dan medis */
  background-color: #e6f7ff;
  text-align: center;
  border-top: 2px solid #cceeff;
  border-bottom: 2px solid #cceeff;
}

.strip-content {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
  margin: 0 auto;
  gap: 30px;
}

.kemenkes-logo {
  width: 150px; /* Ukuran yang cukup untuk terlihat jelas */
  height: auto;
  flex-shrink: 0;
}

.branding-strip p {
  font-size: 1.2em;
  color: #004d99; /* Warna biru gelap */
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
}

/* --- KEUNGGULAN SECTION --- */
.keunggulan-section {
  padding: 4rem 7%;
  text-align: center;
  background-color: #f7f7f7;
}

.keunggulan-section h2 {
  font-size: 2.5em;
  margin-bottom: 3rem;
  color: #333;
}

.keunggulan-section .cards-container {
  display: flex;
  /* UBAH properti ini dari 'space-around' menjadi 'center' */
  justify-content: center;

  /* Atur jarak antar kartu yang tersisa */
  gap: 40px;

  /* Batasi lebar container agar kartu tidak terlalu melebar */
  max-width: 900px;
  margin: 0 auto; /* Tengah container */
}

.keunggulan-section .card {
  /* UBAH properti flex-nya agar kartu tidak memakan sisa ruang */
  /* Berikan lebar spesifik agar tampilannya bagus */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  width: 45%;
  max-width: 350px;

  padding: 30px;
  background: white;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s;
}

.keunggulan-section .card:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
}

/* --- TEAM/PROFILE SECTION --- */
.team-profile-section {
  padding: 4rem 7%;
  background-color: #f0f0f0; /* Beri warna latar belakang berbeda */
  text-align: center;
}

.team-profile-section h2 {
  font-size: 2.5em;
  color: #333;
  margin-bottom: 4rem;
}

/* Baris default (ceo-row) akan: Foto Kiri, Teks Kanan */
.team-card-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 4rem;
  gap: 50px;
  text-align: left;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  /* flex-direction: row; (Ini adalah default) */
}

/* KUNCI ZIG-ZAG: 
   Hanya baris hrd-row (baris 2 & 4) yang dibalik */
.team-card-row.ceo-row {
  flex-direction: row-reverse;
}

.team-card-row.team-card-row.ceo-row {
  flex-direction: row-reverse; /* Ini masih ada, harusnya .hrd-row saja */
}

.team-photo-container {
  flex-shrink: 0; /* Pastikan container foto tidak menyusut */
  width: 250px;
  height: 250px;
  border-radius: 50%; /* Membuat foto menjadi bulat */
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  border: 5px solid var(--primary-color);
}

.team-photo {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Memastikan foto mengisi wadah tanpa terdistorsi */
}

.team-photo-ceo {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Memastikan foto mengisi wadah tanpa terdistorsi */
  object-position: center 10%;
}
/* Styling khusus untuk foto Apt. Penanggung Jawab */
.team-photo.apt-photo {
  object-fit: contain; /* <-- KUNCI PERBAIKAN */
  padding: 15px; /* Opsional: Beri jarak sedikit dari tepi lingkaran */
  background-color: white; /* Opsional: Pastikan latar belakang putih */
}

.team-bio-content {
  flex-grow: 1;
  padding: 20px 0;
}

.team-bio-content h3 {
  font-size: 1.8em;
  color: var(--primary-color);
  margin-bottom: 10px;
}

.team-bio-content p {
  font-size: 1em;
  color: #555;
  line-height: 1.6;
  margin-bottom: 15px;
}

.team-bio-content .role-slogan {
  font-style: italic;
  color: #777;
  font-weight: 500;
}

/* --- FINAL CTA SECTION --- */
.final-cta {
  background-color: var(--primary-color);
  color: white;
  padding: 5rem 7%;
  text-align: center;
  margin-top: 50px;
}

.final-cta h2 {
  font-size: 2.5em;
  margin-bottom: 2rem;
}

.final-cta .cta-button.primary {
  background-color: var(--secondary-color); /* Warna yang menonjol */
  font-size: 1.2em;
  padding: 18px 40px;
}

/* --- PRODUK UNGGULAN SECTION (Revisi) --- */
.produk-unggulan {
  padding: 4rem 7%;
  text-align: center; /* Tetap di tengah */
  background-color: #ffffff;
}
/* ... h2 styling tetap sama ... */

/* --- STYLING SLIDER (Static View) --- */
.product-slider-wrapper {
  max-width: 800px; /* Lebar maksimum slider */
  height: 400px; /* Ketinggian slider */
  margin: 0 auto 3rem auto;
  overflow: hidden;
  border-radius: 15px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  position: relative;
  /* Tambahkan background agar area kosong tidak putih jika gambar tidak proporsional */
  background-color: #f0f0f0;
}

.product-slider-wrapper .slider-image {
  width: 100%;
  height: 100%;
  /* UBAH INI: 'contain' memastikan seluruh gambar terlihat, tidak terpotong */
  object-fit: contain;
  /* UBAH INI: Pastikan gambar berada di tengah secara horizontal dan vertikal */
  object-position: center;

  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 1s ease-in-out;
  display: block; /* Pastikan gambar diperlakukan sebagai blok */
}

.product-slider-wrapper .slider-image.active {
  opacity: 1;
}

/* --- STYLING 3 KOLOM KARTU PRODUK --- */
.product-categories-grid {
  display: flex;
  justify-content: center;
  gap: 30px; /* Jarak antar kartu */
  margin-bottom: 3rem; /* Jarak ke tombol di bawah */
  padding: 0 7%;
}

.category-card {
  width: 300px; /* Lebar kartu */
  background-color: #6a4c93; /* Warna Ungu/Dark Plum */
  color: white;
  border-radius: 10px;
  padding: 15px;
  text-align: center;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
  transition: transform 0.3s;
}

.category-card:hover {
  transform: translateY(-5px);
}

.category-card h3 {
  font-size: 1.8em;
  padding: 10px 0;
  margin-bottom: 10px;
  border-bottom: 2px solid rgba(255, 255, 255, 0.3);
}

.category-image {
  width: 100%;
  height: 200px; /* Ketinggian gambar */
  object-fit: contain; /* Agar gambar tidak terpotong */
  background-color: white; /* Background Putih untuk gambar logo */
  border-radius: 5px;
  margin-bottom: 15px;
}

.category-card p {
  font-size: 1em;
  margin-bottom: 15px;
}

.category-link {
  display: inline-block;
  background-color: #8c71b1; /* Warna tombol */
  color: white;
  padding: 8px 20px;
  border-radius: 5px;
  text-decoration: none;
  font-weight: 600;
  transition: background-color 0.3s;
}

.category-link:hover {
  background-color: #5d3d82;
}

/* --- OUR CLIENTS SECTION --- */
.clients-section {
  /* Background biru yang mirip dengan hero section */
  background-color: #0d47a1; /* Biru tua solid */
  /* Anda bisa pakai background-image: linear-gradient(to right, #0d47a1, #2196f3); untuk gradien */
  background-image: linear-gradient(to right, #0d47a1, #2196f3);
  padding: 4rem 7%;
  text-align: center;
  color: white;
}

.clients-section h2 {
  font-size: 2em;
  margin-bottom: 3rem;
  font-weight: 600;
}

.clients-logo-grid {
  display: flex;
  justify-content: space-around;
  gap: 20px;
  flex-wrap: wrap; /* Agar bisa turun baris di ponsel */
}

.client-card {
  background-color: white; /* Kartu berwarna putih */
  color: #333;
  padding: 20px 10px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  width: 200px; /* Lebar tetap untuk 4 kolom */
  text-align: center;
  flex-grow: 1; /* Biarkan kartu tumbuh sedikit jika ruang memungkinkan */
  min-width: 150px; /* Lebar minimum untuk responsif */
  max-width: 22%; /* Maksimum 4 kartu per baris */
}

.client-card img {
  max-width: 80%;
  max-height: 80px; /* Batasi tinggi logo */
  object-fit: contain;
  margin: 0 auto 10px auto;
  display: block;
}

.client-card p {
  font-size: 0.9em;
  font-weight: 500;
  margin: 0;
}

.clients-section .client-card p.nf {
  /* Lebih spesifik */
  margin-top: 20px !important; /* Naikkan nilainya & Gunakan !important */
}

/* --- Floating WA Button --- */
.floating-whatsapp {
  position: fixed;
  bottom: 25px;
  right: 25px;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 15px 10px 10px;
  min-width: 60px;
  height: 60px;
  background-color: #25d366;
  color: white;
  border-radius: 45%;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s ease-in-out, box-shadow 0.3s;
  overflow: hidden;
}

.floating-whatsapp i {
  width: 30px;
  height: 30px;
}

.floating-whatsapp:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.4);
}

.whatsapp-text {
  white-space: nowrap;
  font-size: 1em;
  font-weight: 500;
  color: white;
  margin-left: 10px;
  opacity: 0;
  max-width: 0;
  transition: opacity 0.3s, width 0.5s ease-in-out;
}

.floating-whatsapp.show-text .whatsapp-text {
  opacity: 1;
  max-width: 150px;
}

/* --- FOOTER SECTION --- */
.container-footer {
  background-color: #333; /* Warna gelap untuk footer */
  color: white;
  padding: 3rem 7%;
  margin-top: auto; /* Memastikan footer selalu di bawah (jika body memiliki min-height: 100vh) */

  /* Menggunakan Flexbox untuk membagi konten menjadi dua kolom */
  display: flex;
  justify-content: space-between; /* Memisahkan konten kiri dan kanan */
  align-items: flex-start; /* Konten rata atas */
  flex-wrap: wrap; /* Penting untuk responsif di layar kecil */
}

/* Kiri: Slogan dan Nama Perusahaan */
.footer-left {
  max-width: 45%; /* Ambil 45% lebar */
  padding-right: 20px;
}

.footer-left .h2-footer {
  font-size: 1.8em;
  margin-bottom: 10px;
  font-weight: 700;
}

.footer-left .h3-footer {
  font-size: 1em;
  font-weight: 400;
  line-height: 1.6;
  opacity: 0.8;
}

/* Kanan: Detail Kontak */
.footer-right {
  max-width: 50%; /* Ambil 50% lebar */
  display: flex;
  flex-direction: column; /* Konten kontak berjejer vertikal */
}

.contact-item {
  display: flex;
  align-items: flex-start; /* Rata atas karena alamat panjang */
  margin-bottom: 15px;
  gap: 15px; /* Jarak antara ikon dan teks */
}

.contact-item i {
  width: 20px;
  height: 20px;
  color: var(--primary-color); /* Beri warna ikon yang sama dengan navbar */
  margin-top: 5px; /* Sedikit geser ikon ke bawah agar sejajar dengan teks */
  flex-shrink: 0; /* Penting agar ikon tidak mengecil */
}

.contact-item p {
  font-size: 1em;
  line-height: 1.4;
  margin: 0;
}

/* ==================================================================== */
/* =========== MULAI BLOK MEDIA QUERY (PINDAHKAN SEMUA KE SINI) ========= */
/* ==================================================================== */

/* Laptop */
@media (max-width: 1366px) {
  html {
    font-size: 75%;
  }
}

/* Tablet */
@media (max-width: 768px) {
  /* Pengaturan font dasar tablet */
  html {
    font-size: 62.5%;
  }

  /* Tampilkan Hamburger Menu */
  #hamburger-menu {
    display: inline-block;
  }

  /* Pengaturan Navbar List (Menu Mobile) */
  .container-navbar .navbar-list {
    position: absolute;
    top: 100%;
    right: -100%; /* Sembunyikan di luar layar */
    background-color: white;
    width: 30rem;
    height: 100vh;
    flex-direction: column;
    align-items: flex-start;
    padding: 1.5rem;
    transition: right 0.3s ease;
    display: flex;
    margin: 0;
    font-size: 2rem;
    z-index: 9999;
  }

  .container-navbar .navbar-list.active {
    right: 0; /* Munculkan menu */
  }

  .container-navbar .navbar-list a::after {
    display: none; /* Hilangkan garis bawah di mode mobile */
  }

  /* ----- Perbaikan Layout Mobile (yang Anda minta) ----- */

  /* 1. Mengecilkan Logo di Mobile */
  .img-navbar {
    width: 180px; /* Kecilkan dari 250px */
    margin-left: -15px; /* Sesuaikan margin agar pas */
  }

  /* 2. Menyembunyikan Teks "Bahasa" di Mobile */
  .language-dropdown .lang-btn .lang-text {
    display: none; /* Sembunyikan teks */
  }
  .language-dropdown .lang-btn {
    padding: 8px; /* Kecilkan padding tombolnya */
    gap: 2px; /* Rapatkan ikon globe dan panah */
  }

  /* ----- Akhir Perbaikan Layout Mobile ----- */

  /* Container Dropdown ("PRODUCTS") di Mobile */
  .container-navbar .navbar-list.active .nav-item-dropdown {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  /* Tombol "PRODUCTS" (a.dropdown-btn) di Mobile */
  .container-navbar .navbar-list.active .nav-item-dropdown .dropdown-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0.5rem 0;
    margin: 1.5rem 0;
    font-size: 2rem;
  }

  /* Ikon Panah di Mobile */
  .container-navbar .navbar-list.active .dropdown-icon {
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    transition: transform 0.3s ease;
    transform: rotate(0deg);
  }

  /* Ikon Panah Terputar saat Aktif */
  .container-navbar
    .navbar-list.active
    .nav-item-dropdown.active
    .dropdown-icon {
    transform: rotate(180deg);
  }

  /* Container "Hamburger List" (div.dropdown-menu) di Mobile */
  .container-navbar .navbar-list.active .dropdown-menu {
    position: static;
    display: none;
    width: 100%;
    background-color: transparent;
    box-shadow: none;
    border: none;
    padding: 0;
    margin: 0;
  }

  /* Tampilkan "Hamburger List" saat di-klik */
  .container-navbar
    .navbar-list.active
    .nav-item-dropdown.active
    .dropdown-menu {
    display: block;
  }

  /* Link Kategori di dalam "Hamburger List" (a.submenu-link) */
  .container-navbar .navbar-list.active .dropdown-menu .submenu-link {
    display: block;
    font-size: 1.8rem; /* Font submenu lebih kecil */
    color: #555;
    margin: 0;
    padding: 0.7rem 0 0.7rem 1.6rem; /* Beri indentasi */
    width: 100%;
  }
  .container-navbar .navbar-list.active .submenu-link::after {
    display: none;
  }

  /* Jarak Item Menu Level 1 */
  .container-navbar .navbar-list.active > a.a-navbar,
  .container-navbar .navbar-list.active > .nav-item-dropdown {
    margin: 1rem 0;
    padding: 0;
    width: 100%;
  }

  /* Hapus margin duplikat dari tombol dropdown */
  .container-navbar .navbar-list.active .nav-item-dropdown .dropdown-btn {
    margin: 0;
  }

  .container-hero {
    padding-top: 80px;
  }

  /* Form Pencarian di Mobile (Mode Dropdown) */
  .search-form-inline {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding: 0.5rem 7%;
    background-color: transparent;
    box-shadow: none;
    border-top: none;
    z-index: 999;
    max-width: 0;
    width: 100%;
    opacity: 0;
    transition: all 0.3s ease;
    display: flex;
    overflow: visible;
  }

  .search-form-inline.active {
    max-width: 100%;
    opacity: 1;
  }

  .search-form-inline input[type="search"] {
    flex: 1;
    margin-right: 0.5rem;
  }

  /* --- STYLING MOBILE (PINDAHAN DARI ATAS) --- */

  /* About Company Section */
  .about-content-sains {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .sains-logo-container {
    flex: auto;
    padding-right: 0;
    margin-bottom: 20px;
  }

  .sains-logo {
    max-width: 250px;
  }

  .sains-text-container {
    padding-right: 0;
    flex: auto;
    margin-bottom: 20px;
  }

  .sains-text-container {
    padding-left: 0;
    padding: 0 5%;
    width: 100%;
  }

  .sains-title {
    text-align: center;
  }

  .sains-title::after {
    margin-left: auto;
    margin-right: auto;
    /* PERBAIKAN HORIZONTAL OVERFLOW */
    width: 100%;
    max-width: 300px;
  }

  .sains-text-container p {
    text-align: left;
  }

  /* Team Profile Section */
  /* PERBAIKAN LAYOUT TIM MOBILE */
  .team-card-row.ceo-row,
  .team-card-row.hrd-row {
    flex-direction: column !important; /* Tumpuk vertikal & Paksa! */
    text-align: center;
    gap: 20px;
  }

  .team-photo-container {
    margin: 0 auto; /* Tengah foto saat bertumpuk */
    width: 180px;
    height: 180px;
  }

  .team-bio-content {
    padding: 0;
  }

  .team-bio-content h3 {
    font-size: 1.4em;
  }
  .product-categories-grid {
    flex-direction: column; /* Tumpuk vertikal */
    align-items: center; /* Pusatkan kartu */
    gap: 30px; /* Jarak antar kartu */
  }

  /* Pastikan lebar kartu pas di mobile */
  .category-card {
    width: 100%; /* Ambil lebar penuh container (atau max-width 300px dari desktop) */
    max-width: 350px; /* Batasi agar tidak terlalu lebar */
  }

  /* Footer Section */
  .container-footer {
    flex-direction: column; /* Tumpuk konten vertikal */
    text-align: center; /* Tengah teks untuk tampilan ponsel */
  }

  .footer-left,
  .footer-right {
    max-width: 100%;
    padding: 0;
    margin-bottom: 30px;
    text-align: center;
  }

  .footer-right {
    align-items: center; /* Tengah item kontak */
  }

  .contact-item {
    align-items: center;
    flex-direction: column; /* Tumpuk ikon di atas teks */
    text-align: center;
    gap: 5px;
  }

  .contact-item i {
    margin-top: 0;
  }

  /* Clients Section */
  .clients-logo-grid {
    justify-content: center;
    gap: 15px;
  }

  .client-card {
    max-width: 45%; /* 2 kartu per baris di tablet/ponsel */
  }
}

/* Media Query untuk 600px (Branding Strip) */
@media (max-width: 600px) {
  .strip-content {
    flex-direction: column;
    gap: 15px;
  }

  .kemenkes-logo {
    width: 100px;
  }

  .branding-strip p {
    font-size: 1em;
    text-align: center;
  }
}

/* Mobile Phone */
@media (max-width: 450px) {
  html {
    font-size: 55%;
  }

  .container-hero .hero-image img {
    margin-top: 100px;
  }

  /* Clients Section (Mobile Kecil) */
  .client-card {
    max-width: 100%; /* 1 kartu per baris di ponsel kecil */
  }

  /* Floating WA (Mobile) */
  .floating-whatsapp {
    height: 50px;
    min-width: 50px;
    border-radius: 25px;
    padding: 5px 15px 5px 5px;
  }
  .floating-whatsapp i {
    width: 25px;
    height: 25px;
  }
}

/* style.css (Di bagian bawah) */
.cursor {
  display: inline-block;
  margin-left: 3px;
  font-weight: 300;
  animation: blink 0.7s infinite;
}

@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
