/* ============================================================
   SERAGAM HALAMAN PUBLIK — dimuat paling akhir di setiap halaman publik.
   Satu font (Poppins), satu palet biru (#3b5e8e), satu warna latar.
   Ubah di sini; jangan tambah warna/font baru per halaman.
   ============================================================ */
:root{
  --arctic-blue:#3b5e8e;--arctic-mid:#5b82b0;--arctic-soft:#e8eef6;--arctic-line:#d9e2ec;
  --arctic-bg:#f4f7fb;--arctic-ink:#243c4c;--arctic-muted:#5d7083;
  --pub-blue:#3b5e8e;--pub-blue-dark:#2f4f7a;--pub-soft:#e8eef6;--pub-line:#d9e2ec;--pub-bg:#f4f7fb;--pub-ink:#243c4c;--pub-muted:#5d7083;
}

/* Font: Poppins untuk semua teks. Halaman dengan judul bergaya serif (beranda, Tentang, FAQ, dst.) mempertahankan font judul aslinya. */
body:not(:has(.services-section,.page-hero)) :not(code):not(pre):not(kbd):not(samp):not(.leaflet-container):not([class*="fa-"]){font-family:"Poppins",sans-serif!important}
body:has(.services-section,.page-hero) :not(code):not(pre):not(kbd):not(samp):not(.leaflet-container):not([class*="fa-"]):not(:is(h1,h2,h3,h4,h5,h6,.display,.section-title,.sub-heading,.step-num,.num,.snum,.reg-year,.quote-text,.qmark,.brand-name,.form-title,.cc-title,.sec-title,.name, h1 *,h2 *,h3 *,h4 *,h5 *,h6 *,.display *,.section-title *,.sub-heading *,.step-num *,.num *,.snum *,.reg-year *,.quote-text *,.qmark *,.brand-name *,.form-title *,.cc-title *,.sec-title *,.name *)){font-family:"Poppins",sans-serif!important}
body:not(:has(.services-section,.page-hero)){line-height:1.7;letter-spacing:0}
body:not(:has(.services-section,.page-hero)) :is(h1,h2,h3,h4){letter-spacing:0;font-weight:600}

/* Warna latar */
html:not([data-theme="dark"]) body{background:var(--pub-bg);color:var(--pub-ink)}
html:not([data-theme="dark"]) :is(.intro,.header,.site-header,.map-section){background:#fff}
html:not([data-theme="dark"]) :is(.progress-section,.page-body){background:var(--pub-bg)}

/* Warna aksen (override sisa warna lama) */
html:not([data-theme="dark"]) :is(button.primary,.btn-primary,.hero-primary,.btn-forest,.pr-search button,.db-btn.aktif){background:var(--pub-blue)!important;border-color:var(--pub-blue)!important;color:#fff!important;box-shadow:none!important}
html:not([data-theme="dark"]) :is(button.primary,.btn-primary,.hero-primary,.btn-forest,.pr-search button):hover{background:var(--pub-blue-dark)!important;border-color:var(--pub-blue-dark)!important}
html:not([data-theme="dark"]) :is(.eyebrow,.section-eyebrow,.step,.rate-row strong,.source-link,.action-link,.bc-current){color:var(--pub-blue)}
html:not([data-theme="dark"]) :is(input,select,textarea):focus{border-color:var(--pub-blue)!important;box-shadow:0 0 0 3px var(--pub-soft)!important}
html:not([data-theme="dark"]) :is(footer){background:var(--pub-ink)}

/* Lebih lega */
main#content .page{padding:64px 0 96px}
main#content .intro{padding:72px 0 60px}
main#content .intro h1{margin-bottom:18px}
main#content .section{padding-bottom:44px;margin-bottom:44px}
main#content .section h2{margin-bottom:16px}
main#content .section p,main#content .section li{line-height:1.8}
.split{gap:56px}
.aside{padding:28px}
.shell{padding-top:64px}
.workspace{gap:32px}
.panel-head{margin-bottom:30px}
.form-panel{padding:36px}
form label{margin-bottom:26px}
.note-card,.tariff-panel{padding:26px}
.shell .result{margin-top:72px}
.paper{padding:48px}
.heading{padding-block:72px 60px}
.map-section{padding:56px 0 64px}
.progress-section{padding:80px 0 96px}
.ly-grid,.db-layout{gap:28px}
@media(max-width:750px){
  main#content .page{padding:40px 0 64px}main#content .intro{padding:44px 0 36px}main#content .section{padding-bottom:32px;margin-bottom:32px}
  .form-panel{padding:24px 20px}.paper{padding:28px 18px}.heading{padding-block:44px 36px}
}
