/* cekpart.com — Andalan Sparepart Nasional
   Satu stylesheet untuk seluruh halaman. Mobile-first, tanpa framework. */

:root{
  --merah:#C62828;
  --merah-tua:#A31F1F;
  --tinta:#1B1B1F;
  --abu:#5C5C64;
  --abu-muda:#8A8A92;
  --garis:#E3E1DC;
  --garis-kuat:#C9C7C1;
  --latar:#F7F6F3;
  --putih:#FFFFFF;
  --kuning-latar:#FFF8E1;
  --kuning-garis:#E6C34A;
  --hijau-wa:#1B8A3F;
  --mono:ui-monospace,"SF Mono","Cascadia Mono","Roboto Mono",Menlo,Consolas,monospace;
  --display:"Barlow Condensed",system-ui,sans-serif;
  --teks:system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--teks);
  font-size:16px;
  line-height:1.55;
  color:var(--tinta);
  background:var(--latar);
}
a{color:var(--merah);text-decoration:none}
a:hover{color:var(--merah-tua);text-decoration:underline}
img{max-width:100%;display:block}

.wadah{max-width:960px;margin:0 auto;padding:0 16px}

/* ---------- Header ---------- */
.kepala{background:var(--putih);border-bottom:1px solid var(--garis)}
.kepala::after{content:"";display:block;height:3px;background:var(--merah)}
.kepala-isi{display:flex;align-items:center;gap:12px;padding:12px 0}
.kepala-logo-full{display:none}
.kepala-mark{width:44px;height:auto;flex:none}
.kepala-teks{min-width:0}
.kepala-situs{font-family:var(--display);font-weight:700;font-size:22px;line-height:1;letter-spacing:.02em;text-transform:lowercase}
.kepala-situs a{color:var(--tinta)}
.kepala-situs a:hover{color:var(--tinta);text-decoration:none}
.kepala-situs .titik-merah{color:var(--merah)}
.kepala-byline{font-size:11.5px;color:var(--abu);letter-spacing:.03em;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media (min-width:720px){
  .kepala-mark{display:none}
  .kepala-logo-full{display:block;height:52px;width:auto;flex:none}
  .kepala-isi{gap:16px;padding:14px 0}
  .kepala-teks{border-left:1px solid var(--garis);padding-left:16px}
  .kepala-situs{font-size:26px}
  .kepala-byline{font-size:12.5px}
}

/* ---------- Baris kepercayaan ---------- */
.baris-percaya{background:var(--putih);border-bottom:1px solid var(--garis)}
.baris-percaya ul{
  list-style:none;margin:0;padding:8px 0;
  display:flex;flex-wrap:wrap;gap:4px 0;
  font-size:12px;color:var(--abu);
}
.baris-percaya li{display:flex;align-items:center;white-space:nowrap}
.baris-percaya li + li::before{content:"";width:1px;height:12px;background:var(--garis-kuat);margin:0 10px}
.baris-percaya .tanda{color:var(--merah);font-weight:700;margin-right:5px}
.baris-percaya .bintang{color:#C99700;letter-spacing:.05em;margin-right:5px}
.baris-percaya strong{color:var(--tinta);font-weight:600}
@media (min-width:720px){.baris-percaya ul{font-size:13px}}

/* ---------- Remah roti ---------- */
.remah{font-size:12.5px;color:var(--abu-muda);padding:14px 0 0}
.remah ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.remah li{white-space:nowrap}
.remah li + li::before{content:"›";margin:0 6px;color:var(--garis-kuat)}
.remah a{color:var(--abu)}

/* ---------- Bagian umum ---------- */
main{padding-bottom:48px}
.bagian{margin-top:32px}
.judul-bagian{
  font-family:var(--display);font-weight:600;font-size:20px;
  text-transform:uppercase;letter-spacing:.05em;
  margin:0 0 12px;display:flex;align-items:center;gap:10px;
}
.judul-bagian::before{content:"";width:4px;height:18px;background:var(--merah);flex:none}
@media (min-width:720px){.judul-bagian{font-size:23px}}

.kartu{background:var(--putih);border:1px solid var(--garis);border-radius:6px}

/* Part number selalu monospace */
.pn{font-family:var(--mono);font-weight:600;letter-spacing:.01em}
.kode{font-family:var(--mono);color:var(--abu)}

/* ---------- Beranda: hero pencarian ---------- */
.hero{padding:36px 0 8px;text-align:center}
.hero h1{
  font-family:var(--display);font-weight:700;font-size:30px;line-height:1.1;
  text-transform:uppercase;letter-spacing:.02em;margin:0 0 6px;
}
.hero p{margin:0 auto;max-width:560px;color:var(--abu);font-size:14.5px}
@media (min-width:720px){
  .hero{padding:52px 0 10px}
  .hero h1{font-size:42px}
  .hero p{font-size:16px}
}

.kotak-cari{max-width:640px;margin:22px auto 0;text-align:left}
.kotak-cari label{
  display:block;font-size:11.5px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--abu);margin-bottom:6px;
}
#cari{
  width:100%;
  font-family:var(--mono);
  font-size:17px;
  padding:14px 16px;
  color:var(--tinta);
  background:var(--putih);
  border:2px solid var(--tinta);
  border-radius:6px;
  outline:none;
}
#cari::placeholder{font-family:var(--teks);color:var(--abu-muda);font-size:15px}
#cari:focus{border-color:var(--merah);box-shadow:0 0 0 3px rgba(198,40,40,.12)}
@media (min-width:720px){#cari{font-size:19px;padding:16px 18px}#cari::placeholder{font-size:16px}}

.cari-contoh{margin:7px 2px 0;font-size:12.5px;color:var(--abu-muda)}
.cari-contoh .pn,.cari-contoh .kode{font-size:12px}
.cari-contoh a{color:var(--abu)}
.cari-contoh a:hover{color:var(--merah)}
#hasil{
  list-style:none;margin:8px 0 0;padding:0;
  background:var(--putih);border:1px solid var(--garis);border-radius:6px;
  overflow:hidden;
}
#hasil:empty{display:none}
#hasil li{border-bottom:1px solid var(--garis)}
#hasil li:last-child{border-bottom:none}
#hasil a{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;
  padding:11px 14px;color:var(--tinta);
}
#hasil a:hover{background:var(--latar);text-decoration:none}
#hasil .pn{color:var(--merah)}
#hasil .hasil-nama{font-size:14px}
#hasil .hasil-info{font-size:12.5px;color:var(--abu-muda);width:100%}
#hasil .hasil-kosong{padding:12px 14px;font-size:14px;color:var(--abu);display:block}

/* ---------- Chip motor ---------- */
.chip-baris{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px}
.chip{
  display:inline-block;padding:7px 14px;
  font-size:13.5px;font-weight:600;color:var(--tinta);
  background:var(--putih);border:1px solid var(--garis-kuat);border-radius:999px;
}
.chip:hover{border-color:var(--merah);color:var(--merah);text-decoration:none}
.chip-label{width:100%;text-align:center;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--abu-muda);margin-bottom:2px}

/* ---------- Statistik ---------- */
.statistik{
  margin-top:36px;
  background:var(--putih);border:1px solid var(--garis);border-radius:6px;
  display:grid;grid-template-columns:repeat(3,1fr);
  text-align:center;
}
.statistik div{padding:16px 8px;border-left:1px solid var(--garis)}
.statistik div:first-child{border-left:none}
.statistik .angka{font-family:var(--display);font-weight:700;font-size:26px;line-height:1;color:var(--merah)}
.statistik .keterangan{font-size:11.5px;color:var(--abu);margin-top:4px;line-height:1.35}
@media (min-width:720px){
  .statistik .angka{font-size:34px}
  .statistik .keterangan{font-size:13px}
}

/* ---------- Blok edukasi ---------- */
.edukasi{padding:20px 18px}
.edukasi h2{
  font-family:var(--display);font-weight:600;font-size:20px;
  text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;
}
.edukasi p{margin:0 0 10px;font-size:14.5px;color:var(--abu)}
.edukasi p:last-child{margin-bottom:0}
.edukasi strong{color:var(--tinta)}
@media (min-width:720px){.edukasi{padding:26px 28px}.edukasi p{font-size:15.5px}}

/* ---------- Pelat part (halaman detail) ---------- */
.pelat{
  position:relative;
  background:var(--putih);
  border:2px solid var(--tinta);
  border-radius:4px;
  margin-top:16px;
  overflow:hidden;
}
.pelat-atas{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:var(--tinta);color:var(--putih);
  padding:8px 14px;
}
.pelat-jenis{
  font-family:var(--display);font-weight:600;font-size:16px;
  text-transform:uppercase;letter-spacing:.1em;
}
.pelat-merk{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#B9B9C0;white-space:nowrap}
.pelat-badan{padding:18px 14px 20px}
.pelat-label-pn{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--abu-muda)}
.pelat-pn{
  font-family:var(--mono);font-weight:700;
  font-size:clamp(24px,7.5vw,44px);
  line-height:1.15;letter-spacing:.02em;
  margin:2px 0 0;word-break:break-all;
}
.pelat-bawah{
  display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;
  gap:14px;margin-top:18px;
}
.stempel{
  font-family:var(--mono);font-weight:700;font-size:20px;
  color:var(--merah);
  border:2.5px solid var(--merah);border-radius:4px;
  padding:3px 12px;
  transform:rotate(-3deg);
  letter-spacing:.06em;
}
.stempel-keterangan{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--abu-muda);margin-top:7px}
.pelat-harga{text-align:right}
.pelat-harga .label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--abu-muda)}
.pelat-harga .nilai{font-family:var(--display);font-weight:700;font-size:30px;line-height:1.1}
@media (min-width:720px){
  .pelat-badan{padding:24px 24px 26px}
  .pelat-atas{padding:10px 24px}
  .pelat-jenis{font-size:19px}
  .pelat-harga .nilai{font-size:38px}
}

/* ---------- Tabel ---------- */
.bungkus-tabel{overflow-x:auto;background:var(--putih);border:1px solid var(--garis);border-radius:6px}
table{border-collapse:collapse;width:100%;font-size:14px}
th{
  text-align:left;font-size:11.5px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--abu);
  background:var(--latar);
  padding:9px 14px;border-bottom:1px solid var(--garis-kuat);
  white-space:nowrap;
}
td{padding:10px 14px;border-bottom:1px solid var(--garis);vertical-align:top}
tr:last-child td{border-bottom:none}
td.sel-angka,th.sel-angka{text-align:right;white-space:nowrap}
.tag-varian{color:var(--abu);font-size:13px}
@media (min-width:720px){table{font-size:15px}}

/* ---------- Kotak peringatan ---------- */
.peringatan{
  background:var(--kuning-latar);
  border:1px solid var(--kuning-garis);
  border-radius:6px;
  padding:14px 16px;
  font-size:14px;
}
.peringatan p{margin:0 0 8px}
.peringatan .peringatan-judul{font-weight:700}
.peringatan ul{margin:0;padding-left:20px}
.peringatan li{margin:3px 0}

/* ---------- Galeri ---------- */
.galeri{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.galeri figure{margin:0}
.foto-placeholder{
  aspect-ratio:1;
  border:1px dashed var(--garis-kuat);border-radius:6px;
  background:repeating-linear-gradient(-45deg,var(--putih),var(--putih) 10px,#F1EFEA 10px,#F1EFEA 20px);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:11px;color:var(--abu-muda);
  text-align:center;padding:8px;
}
@media (min-width:720px){.galeri{grid-template-columns:repeat(4,1fr)}}

/* ---------- Tombol aksi ---------- */
.aksi{display:flex;flex-direction:column;gap:10px}
.tombol{
  display:flex;align-items:center;justify-content:center;
  padding:13px 20px;border-radius:6px;
  font-size:15.5px;font-weight:700;text-align:center;
  border:2px solid transparent;
}
.tombol:hover{text-decoration:none}
.tombol-utama{background:var(--merah);color:var(--putih)}
.tombol-utama:hover{background:var(--merah-tua);color:var(--putih)}
.tombol-sekunder{background:var(--putih);color:var(--tinta);border-color:var(--tinta)}
.tombol-sekunder:hover{background:var(--tinta);color:var(--putih)}
.tombol-wa{background:var(--putih);color:var(--hijau-wa);border-color:var(--hijau-wa)}
.tombol-wa:hover{background:var(--hijau-wa);color:var(--putih)}
.aksi-catatan{font-size:12.5px;color:var(--abu-muda);text-align:center;margin:2px 0 0}
@media (min-width:720px){
  .aksi{flex-direction:row}
  .aksi .tombol{flex:1}
}

/* ---------- Kartu part terkait ---------- */
.daftar-terkait{display:grid;grid-template-columns:1fr;gap:10px;list-style:none;margin:0;padding:0}
.daftar-terkait a{
  display:block;padding:12px 14px;color:var(--tinta);
  background:var(--putih);border:1px solid var(--garis);border-radius:6px;
}
.daftar-terkait a:hover{border-color:var(--merah);text-decoration:none}
.daftar-terkait .pn{color:var(--merah);font-size:14.5px}
.daftar-terkait .terkait-nama{font-size:13.5px;margin-top:2px}
.daftar-terkait .terkait-harga{font-size:12.5px;color:var(--abu);margin-top:2px}
@media (min-width:720px){.daftar-terkait{grid-template-columns:repeat(3,1fr)}}

/* ---------- Judul halaman (motor & lainnya) ---------- */
.judul-halaman{margin:20px 0 4px}
.judul-halaman h1{
  font-family:var(--display);font-weight:700;font-size:26px;line-height:1.15;
  text-transform:uppercase;letter-spacing:.02em;margin:0;
}
.judul-halaman p{margin:6px 0 0;color:var(--abu);font-size:14.5px;max-width:640px}
@media (min-width:720px){.judul-halaman h1{font-size:34px}}

/* ---------- Footer ---------- */
.kaki{background:var(--tinta);color:#C9C9CF;margin-top:56px}
.kaki::before{content:"";display:block;height:3px;background:var(--merah)}
.kaki-isi{padding:28px 0;font-size:13px;line-height:1.7}
.kaki-merek{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.kaki-merek img{width:34px;height:auto}
.kaki-merek span{font-family:var(--display);font-weight:600;font-size:17px;color:var(--putih);letter-spacing:.03em}
.kaki-merek .kaki-merek-merah{color:var(--merah)}
.kaki a{color:var(--putih)}
.kaki a:hover{color:var(--putih)}
.kaki-kecil{margin-top:14px;font-size:12px;color:#8A8A92}

/* ---------- Foto produk asli (tambahan integrasi) ---------- */
.galeri img{
  aspect-ratio:1;width:100%;object-fit:cover;
  border:1px solid var(--garis);border-radius:6px;background:var(--putih);
}
