/* ==========================================================================
   OVERRIDE TERAKHIR — dimuat SETELAH semua CSS lain (termasuk plugin Revolution Slider)
   agar tidak tertimpa. Berisi perbaikan layout yang sensitif urutan.
   ========================================================================== */

/* ---- KARTU ABOUT: tinggi sama + teks seimbang ---- */
.about-section-two .ab-two-icon-section .wt-icon-box-wraper {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 250px;
  padding: 26px 22px !important;
}
.about-section-two .ab-two-icon-section .col-lg-6 { display: flex; }
.about-section-two .ab-two-icon-section .icon-content { margin-top: auto; }
.about-section-two .ab-two-icon-section .icon-content p {
  font-size: 14.5px !important; line-height: 1.65 !important; margin: 0 !important;
}
.about-section-two .ab-two-icon-section .wt-tilte {
  font-size: 18px !important; margin-bottom: 10px !important; line-height: 1.3 !important;
}
@media (max-width: 767px) {
  .about-section-two .ab-two-icon-section .wt-icon-box-wraper { min-height: 0; }
}

/* ---- SECTION GALERI: overlay transparan di atas gambar ---- */
.project-gallery-style1 .project-box-style1 { position: relative !important; overflow: hidden !important; border-radius: 10px; }
.project-gallery-style1 .project-box-style1 .project-media img {
  width: 100% !important; height: 320px !important; object-fit: cover !important; display: block !important;
}
.project-gallery-style1 .project-box-style1::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to top,
    rgba(10,10,10,.88) 0%, rgba(10,10,10,.62) 38%,
    rgba(10,10,10,.22) 68%, rgba(10,10,10,0) 100%) !important;
  opacity: .85 !important;
  transition: opacity .35s ease !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.project-gallery-style1 .project-box-style1:hover::after { opacity: 1 !important; }
.project-gallery-style1 .project-box-style1 .project-content {
  position: absolute !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
  padding: 22px 20px !important; z-index: 2 !important;
}
.project-gallery-style1 .project-box-style1 .project-title-large a,
.project-gallery-style1 .project-box-style1 .project-content h3,
.project-gallery-style1 .project-box-style1 .project-content h3 a {
  color: #fff !important; text-shadow: 0 2px 10px rgba(0,0,0,.55) !important; margin: 0 !important;
}
.project-gallery-style1 .project-box-style1 .project-content span,
.project-gallery-style1 .project-box-style1 .project-title { color: #EF9721 !important; text-shadow: 0 1px 6px rgba(0,0,0,.7) !important; }
.project-gallery-style1 .project-box-style1 .project-view,
.project-gallery-style1 .project-box-style1 .project-view-btn { z-index: 3 !important; }

/* latar section berpola: beri lapisan gelap tipis agar tidak ramai */
.project-gallery-style1-wrapper { position: relative !important; }
.project-gallery-style1-wrapper::before {
  content: "" !important; position: absolute !important; inset: 0 !important;
  background: rgba(8,8,8,.55) !important; pointer-events: none !important;
}
.project-gallery-style1-wrapper > * { position: relative !important; z-index: 1 !important; }

@media (max-width: 767px) {
  .project-gallery-style1 .project-box-style1 .project-media img { height: 240px !important; }
}

/* ---- H1 tersembunyi ---- */
.sr-only {
  position: absolute !important; width: 1px !important; height: 1px !important;
  padding: 0 !important; margin: -1px !important; overflow: hidden !important;
  clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important;
}

/* ==========================================================================
   STATISTIK: tanda "+" hanya untuk ANGKA JUMLAH, bukan TAHUN.
   Template menambahkan "+" otomatis lewat `.counter:after{content:'+'}`.
   "2023+" sebagai "Tahun Berdiri" tidak masuk akal -> matikan untuk item pertama.
   ========================================================================== */
.counter-outer .counter:after { font-size: 34px !important; right: -20px !important; }
/* tahun: tanpa tanda + */
.counter-outer .counter.tanpa-plus:after { content: "" !important; }

/* sedikit rapatkan posisi angka agar tidak terpotong */
.counter-outer .wt-icon-box-wraper { position: relative; padding: 24px 18px !important; }
.counter-outer .counter { position: relative; display: inline-block; }

/* ==========================================================================
   KETERBACAAN TEKS (hasil audit kontras)
   Kuning logo #EF9721 hanya aman di latar GELAP (7.56:1). Di latar TERANG
   ia hanya 2.0-2.3:1 -> pakai turunan gelap #A05F09 (5.08:1).
   ========================================================================== */
/* kicker/eyebrow section di latar terang */
.wt-small-separator, .wt-small-separator div, .section-head .wt-small-separator,
.wt-small-separator-outer .wt-small-separator div { color: #A05F09 !important; }
.wt-small-separator .sep-leaf-left, .wt-small-separator .sep-leaf-right { background-color: #A05F09 !important; }

/* angka statistik: di kartu abu terang + pola peta */
.counter-outer .counter { color: #A05F09 !important; }
.counter-outer .counter:after { color: #A05F09 !important; }
.counter-outer .wt-icon-box-wraper { background-color: rgba(255,255,255,.94) !important; }

/* tanggal blog: putih di #EF9721 (2.30:1) -> teks HITAM (7.56:1) */
.latest-blog-3 .post-date, .latest-blog-3-pattern .post-date,
.latest-blog-3.large-date .post-date, .date-style-3 .wt-post-meta ul li.post-category span {
  color: #1A1A1A !important; font-weight: 700 !important;
}
.latest-blog-3 .post-date *, .latest-blog-3-pattern .post-date * { color: #1A1A1A !important; }

/* ikon di kartu layanan (kuning di latar putih) */
.service-box-1-new .wt-icon-number-new span, .service-box-1-new .wt-icon-number span,
.box-style1 .wt-icon-number span { color: #A05F09 !important; }

/* HERO: gradasi vertikal di mobile (teks menempati lebar penuh) */
@media (max-width: 991px) {
  #welcome_wrapper .tp-caption.tp-shapewrapper {
    background-image: linear-gradient(to bottom,
      rgba(16,16,16,.98) 0%, rgba(16,16,16,.88) 34%,
      rgba(16,16,16,.62) 66%, rgba(16,16,16,.30) 100%) !important;
  }
}
/* teks hero: tambah shadow sebagai lapisan pengaman */
#welcome_wrapper .tp-caption .site-text-white,
#welcome_wrapper .tp-caption { text-shadow: 0 2px 14px rgba(0,0,0,.65) !important; }


/* ==================== CTA SECTION (pengganti Galeri) ==================== */
.yakin-cta-desc {
  color: rgba(255,255,255,.88) !important;
  max-width: 760px;
  margin: 0 auto 30px;
  font-size: 16px;
  line-height: 1.75;
}
.yakin-cta-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}
.yakin-cta-btn .site-button,
.yakin-cta-btn .site-button-secondry {
  min-width: 200px;
  padding: 15px 34px;
  font-weight: 700;
  font-size: 15px;
}
/* tombol sekunder: harus kontras di latar gelap */
.yakin-cta-btn .site-button-secondry {
  background-color: transparent !important;
  border: 2px solid #EF9721 !important;
  color: #EF9721 !important;
}
.yakin-cta-btn .site-button-secondry:hover {
  background-color: #EF9721 !important;
  color: #1A1A1A !important;
}
.yakin-cta-info {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.16);
}
.yakin-cta-info a {
  color: #fff !important;
  font-size: 15px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  transition: color .25s ease;
}
.yakin-cta-info a:hover { color: #EF9721 !important; }
.yakin-cta-info a i { color: #EF9721; font-size: 16px; }

/* separator CTA: garis oranye, teks putih */
.yakin-cta .wt-small-separator, .site-text-primary { color: #EF9721; }

@media (max-width: 991px) {
  .yakin-cta-desc { font-size: 15px; text-align: center; }
  .yakin-cta-btn .site-button,
  .yakin-cta-btn .site-button-secondry { min-width: 100%; display: block; text-align: center; }
  .yakin-cta-info { flex-direction: column; gap: 14px; }
  .yakin-cta-info a { font-size: 14px; }
}
/* Samakan TINGGI kedua tombol CTA (border 2px pada tombol sekunder menambah 4px) */
.yakin-cta-btn .site-button,
.yakin-cta-btn .site-button-secondry {
  box-sizing: border-box !important;
  min-height: 54px !important;
  height: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}
@media (max-width: 991px) {
  .yakin-cta-btn .site-button,
  .yakin-cta-btn .site-button-secondry { height: 54px !important; min-height: 54px !important; }
}


/* ==================== KOMPONEN HALAMAN DALAM ==================== */
.h-100 { height: 100% !important; }
/* banner halaman dalam: gelapkan agar teks putih terbaca */
.wt-bnr-inr .banner-title-name h2 { color: #fff !important; }
.wt-bnr-inr .overlay-main.opacity-09 { opacity: .82 !important; }
/* kartu layanan: samakan tinggi & rapikan */
.service-border-box { height: 100%; }
.service-box-1 { height: 100%; display: flex; flex-direction: column; }
.service-box-1 .service-box-content { flex: 1 1 auto; }
/* daftar & paragraf */
.site-list-style-one li { color: #3A3A3A; line-height: 1.75; }
.wt-info p { line-height: 1.85; }
.wt-info h3 { margin-top: 26px; }
/* sidebar layanan detail */
.all_services ul li a.active { background-color: #EF9721 !important; color: #1A1A1A !important; font-weight: 700; }
/* peta */
iframe { max-width: 100%; }


/* ==================== KREDIT PEMBUAT SITUS (footer) ==================== */
.yakin-build-credit a {
  color: #EF9721 !important;
  font-weight: 600;
  text-decoration: none;
  transition: color .2s ease;
}
.yakin-build-credit a:hover {
  color: #fff !important;
  text-decoration: underline;
}
/* rapikan nama perusahaan di baris copyright */
.footer-bottom .copyrights-text .site-text-primary { font-weight: 600; }
@media (max-width: 767px) {
  .footer-bottom .wt-footer-bot-left { flex-direction: column; gap: 8px; text-align: center; }
  .footer-bottom .copyrights-nav { justify-content: center; flex-wrap: wrap; }
}


/* ==================== RAPIKAN KARTU ABOUT (2 kartu) ==================== */
/* Ikon: line-height 67.5px membuat jarak ikon->judul jadi 68px (terlalu berlubang) */
.ab-two-icon-section .icon-md {
  display: block !important;
  margin: 0 auto 6px !important;
  padding: 0 !important;
  height: auto !important;
  line-height: 1 !important;
  text-align: center;
}
.ab-two-icon-section .icon-md i {
  font-size: 44px !important;
  line-height: 1 !important;
  display: inline-block;
  vertical-align: middle;
}
/* Judul & teks: rapatkan agar tidak ada lubang */
.ab-two-icon-section .icon-content h3.wt-tilte {
  margin: 0 0 8px !important;
  line-height: 1.3 !important;
}
.ab-two-icon-section .icon-content p {
  margin: 0 !important;
  line-height: 1.6 !important;
}
/* Kartu: hapus ruang kosong bawah berlebih, isi seimbang */
.ab-two-icon-section .wt-icon-box-wraper.center {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 34px 24px !important;
}
@media (max-width: 991px) {
  .ab-two-icon-section .wt-icon-box-wraper.center { padding: 26px 20px !important; }
}

/* SUMBER lubang ikon->judul: .icon-content punya margin-top 81,77px dari template */
.ab-two-icon-section .icon-content { margin-top: 0 !important; }
.ab-two-icon-section .icon-content h3.wt-tilte { margin-top: 0 !important; }
/* jaga jarak napas yang wajar antara ikon dan judul */
.ab-two-icon-section .icon-md { margin-bottom: 14px !important; }

/* Selaraskan: ikon & judul terpusat, teks ikut terpusat agar tidak asimetris */
.ab-two-icon-section .icon-content { text-align: center !important; }
.ab-two-icon-section .icon-content p { text-align: center !important; margin-top: 0 !important; }
.ab-two-icon-section .icon-content h3.wt-tilte { text-align: center !important; margin-bottom: 10px !important; }

/* ==========================================================================
   QA-FIX-BANNER + QA-FIX-LABEL  (hasil QA desktop/mobile)
   1) Judul banner halaman dalam bertabrakan dengan baris menu header
      (header absolute, tinggi nyata ~137px; judul lama mulai di y=69).
      Desktop: naikkan tinggi banner + beri padding atas agar judul clear.
      Mobile (<=991px) sudah benar dari style.css -> JANGAN diubah.
   2) Label kartu statistik masih .site-text-white padahal kartunya putih
      (kartu disetel putih oleh blok kontras sebelumnya) -> tidak terbaca.
      Angka tetap #A05F09; label jadi #1A1A1A.
   ========================================================================== */
@media only screen and (min-width: 992px) {
  .wt-bnr-inr { height: 300px !important; padding-top: 130px !important; }
}
.counter-outer span.title-style-2,
.counter-outer .wt-icon-box-wraper span { color: #1A1A1A !important; }

/* ==========================================================================
   QA-FIX-NAV-ACTIVE: sub-item menu yang sedang dibuka.
   Oranye logo #EF9721 hanya 2.0:1 di latar putih -> pakai #A05F09 (5.08:1).
   ========================================================================== */
.header-nav .nav > li .sub-menu li.active > a,
.header-nav .nav > li .sub-menu li.current-menu-item > a {
  color: #A05F09 !important; font-weight: 600;
}

/* ==========================================================================
   QA-ADD-WA-FLOAT: tombol WhatsApp melayang di kanan bawah.
   Diletakkan DI ATAS tombol back-to-top (.scroltop: right 15 / bottom 15,
   40x40 desktop | 30x30 <=480px) supaya tidak saling menimpa.
   z-index 300 = di atas konten, di bawah slide panel "Minta Penawaran" (999).
   ========================================================================== */
.wa-float {
  position: fixed; right: 15px; bottom: 68px; z-index: 300;
  display: inline-flex; align-items: center; gap: 9px;
  padding: 12px 18px; border-radius: 999px;
  background: #25d366; color: #fff !important; font-weight: 700; font-size: 14.5px;
  box-shadow: 0 10px 26px rgba(37, 211, 102, .42);
  transition: transform .25s ease, box-shadow .25s ease;
  text-decoration: none; line-height: 1;
}
.wa-float:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(37, 211, 102, .55); }
.wa-float:focus-visible { outline: 3px solid #A05F09; outline-offset: 3px; }
.wa-float svg { width: 22px; height: 22px; flex: 0 0 22px; fill: #fff; }
@media only screen and (max-width: 767px) {
  .wa-float { right: 12px; bottom: 56px; padding: 12px; gap: 0; }
  .wa-float span { display: none; }
}
