/* Style tambahan (sebelumnya inline <style> di header situs lama) */
@media screen and (max-width: 1300px) {
    .mobileHide { display: none; }
}
.float {
    position: fixed; width: 100px; height: 30px; top: 30px; right: 40px;
    background-color: #259b24; color: #FFF; border-radius: 4px; text-align: center;
    box-shadow: 2px 2px 3px #999; z-index: 1000;
}
.float h5 { color: #FFF; margin-top: 5px; }
.float a { color: #FFF; }
.float a.active { color: yellow; }

/* Pemilih bahasa versi mobile (di menu) */
.nav.navbar-nav > li.lang-mobile { display: none; }
@media screen and (max-width: 1300px) { .nav.navbar-nav > li.lang-mobile { display: block; } }

/* Viewer PDF (pengganti pdf.js lama yang memuat file base64 di dalam HTML) */
.pdf-viewer { border: 1px solid #ccc; margin-bottom: 40px; }
.pdf-viewer iframe { width: 100%; height: 85vh; min-height: 520px; border: 0; display: block; }

.pdf-empty { padding: 40px 20px; text-align: center; color: #888; background: #f6f6f6; margin-bottom: 40px; }

/* Honeypot anti-spam form kontak — disembunyikan dari pengguna */
.hp-field { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.field-validation-error, .validation-summary-errors { color: #c0392b; font-size: 12px; }
.input-validation-error { border-color: #c0392b !important; }

.post-body img { max-width: 100%; height: auto; }
.pagination > li > span.page-link > a { color: inherit; }

/* ---------- Perbaikan komposisi desain lama ---------- */
/* Pemilih bahasa di menu (tampil saat tombol mengambang disembunyikan, < 1300px) */
.nav.navbar-nav > li.lang-mobile .lang-switch { display: flex; align-items: center; gap: 6px; height: 100%; padding: 0 15px; font-size: 13px; }
.nav.navbar-nav > li.lang-mobile .lang-switch a { display: inline; padding: 0; color: #4b4e53; }
.nav.navbar-nav > li.lang-mobile .lang-switch a.active { color: #259b24; font-weight: bold; }
.nav.navbar-nav > li.lang-mobile .lang-switch span { color: #bbb; }
@media (min-width: 768px) { .nav.navbar-nav > li.lang-mobile .lang-switch { padding-top: 33px; padding-bottom: 33px; } }

/* Home: tidak ada pita abu-abu antara kotak sertifikasi dan profil */
.tp-banner-container { padding-bottom: 0 !important; }

/* Home: tombol READ MORE di kotak profil hijau terbaca jelas */
.feature7-sub-text .button.blog-rm { color: #fff !important; border-color: #fff !important; }
.feature7-sub-text .button.blog-rm:hover { background: #fff !important; color: #259b24 !important; }

/* Menu: item lebih ramping di layar sedang supaya logo tidak terpotong */
@media (min-width: 768px) and (max-width: 1299px) {
  .header .main-menu .navbar .nav > li > a .main-menu-title { width: auto; padding: 5px 9px 0; }
  .nav.navbar-nav > li.lang-mobile .lang-switch { padding-left: 9px; padding-right: 0; }
}
@media (min-width: 768px) and (max-width: 991px) {
  .header .main-menu .navbar .nav > li > a .main-menu-title { padding: 5px 5px 0; }
  .header .main-menu .navbar .nav > li > a .main-menu-title p { font-size: 12px !important; }
}

/* Daftar berita terbaru: foto memenuhi tinggi kartu */
@media (min-width: 992px) {
  .blog-inline-item { display: flex; align-items: stretch; }
  .blog-inline-item > .col-md-2 { display: flex; padding: 0; }
  .blog-inline-item > .col-md-2 > .row { flex: 1; display: flex; margin: 0; }
  .blog-inline-item > .col-md-2 a.lightbox { flex: 1; display: block; }
  .blog-inline-item > .col-md-2 img { width: 100%; height: 100%; min-height: 120px; object-fit: cover; }
  .blog-inline-item > .col-md-10 { display: flex; align-items: center; }
}

/* Footer: teks copyright lebih kontras */
.footer-copyright-container { color: #c9cdd2 !important; }

/* Daftar berita: judul tidak terlalu besar */
.blog-caption-container h2, .blog-caption-container h2 a { font-size: 22px; line-height: 1.35; }
.blog-inline-item .blog-caption-container h2, .blog-inline-item .blog-caption-container h2 a { font-size: 20px; }

/* Pagination: warna hijau sesuai tema */
.pagination > li > a, .pagination > li > span, .pagination .page-link a { color: #259b24; }
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover,
.pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { background-color: #259b24; border-color: #259b24; color: #fff; }

/* Gambar konten tidak melewati batas kolom */
.container [class*="col-"] img { max-width: 100%; height: auto; }

/* Kotak kontak: tinggi mengikuti isi (alamat panjang tidak terpotong) */
.feature-box3 .ca-menu { height: auto !important; padding-bottom: 30px; }

/* Layar kecil (< 992px) */
@media (max-width: 991px) {
  /* Tidak ada jarak abu-abu di atas slider (header tidak fixed di mobile) */
  .tp-banner-container.p-top-60-mobile { padding-top: 0; }
  /* Kotak ISO / Sustainability / PROPER ditumpuk rapi */
  .feature-box2 .col-md-4 { margin-bottom: 12px; }
  .feature-box2 .ca-menu { display: flex; background: #fff; }
  .feature-box2 .ca-icon { float: none; flex: 0 0 96px; width: 96px; height: auto; min-height: 110px; margin-right: 0; padding-top: 0; display: flex; align-items: center; justify-content: center; }
  .feature-box2 .ca-content { flex: 1; height: auto; padding: 18px 15px 20px; }
  .feature-box2 .ca-main { padding-top: 0; font-size: 22px; }
}
/* Ponsel (< 768px): logo tidak terpotong */
@media (max-width: 767px) {
  .logo-2 { width: 250px; max-width: calc(100vw - 30px); padding-right: 0; }
  .logo-2 .logo-img { width: 100%; height: auto; }
}
@media (max-width: 767px) { .feature7-sub-text p { text-align: left !important; } }

/* Banner judul rapat ke header: padding template (95px) hanya dibutuhkan saat header fixed;
   saat itu site.js mengisi padding sebesar tinggi header supaya konten tidak meloncat. */
.page-main-content.indent-header-1, .page-main-content.indent-header-1.affix-indent,
.page-main-content.indent-header-2, .page-main-content.indent-header-2.affix-indent,
.page-main-content.indent-header-3, .page-main-content.indent-header-3.affix-indent {
  padding-top: var(--hdr-indent, 0px) !important;
  transition: none;
}

/* Timeline operasional (dipindah dari <style> inline halaman lama) */
.green-color { background-color: green !important; }
.cd-timeline-block.op-block { margin-bottom: 105px !important; }
.op-desc { margin-bottom: 80px; }

/* Tombol "View All" / "Read More" (r-m-plus): panah putih di kotak hijau; hover = tombol hijau, teks & panah putih */
.r-m-plus:after { background-image: url(../images/arrow-rm-white.png) !important; background-size: 13px 13px; }
a.r-m-full:hover, a.r-m-full:focus { background-color: #259b24; color: #fff !important; }
a.r-m-full:hover:after, a.r-m-full:focus:after { background-image: url(../images/arrow-rm-white.png) !important; }

/* Tombol kembali ke atas: panah putih, hover hijau dengan panah tetap putih */
#back-top a, #back-top a:hover, #back-top a:focus { background-image: url(../images/back-top.png) !important; background-repeat: no-repeat; background-position: center center; background-size: 20px 20px; }
#back-top a:hover, #back-top a:focus { background-color: #259b24; }
