/* ePuskesmas - overrides for Beeko */
:root{
  --tg-theme-primary: var(--ep-primary);
  --tg-theme-secondary: var(--ep-secondary);
  --tg-body-color: var(--ep-body);
  --tg-heading-color: var(--ep-heading);
  --tg-color-gradient: linear-gradient(90deg, rgba(15,157,88,0.22) 0%, var(--ep-primary) 100%);
}

body.epuskesmas{
  background: var(--ep-bg);
  color: var(--ep-body);
}

/* Prevent horizontal scroll caused by decorative shapes / absolute elements */
html, body{ overflow-x: hidden; }

/* Make sure main wrappers don't overflow */
.slider__area-two,
.services__area-six,
.cta__area-four,
.blog-post-area,
.team__area-six{
  overflow: hidden;
}

/* WP Admin bar + sticky header */
.admin-bar .sticky-menu{
  top: 32px;
}
@media (max-width: 782px){
  .admin-bar .sticky-menu{ top: 46px; }
}

/* Mobile menu */
.ep-mobile-menu-overlay{
  position: fixed;
  inset: 0;
  background: rgba(1,2,46,0.55);
  opacity: 0;
  visibility: hidden;
  transition: all .25s ease;
  z-index: 9998;
}
.ep-mobile-menu{
  position: fixed;
  top: 0;
  right: -340px;
  width: 320px;
  height: 100vh;
  background: #fff;
  z-index: 9999;
  padding: 24px;
  overflow-y: auto;
  transition: all .25s ease;
  box-shadow: 0 20px 60px rgba(0,0,0,.18);
}
.ep-mobile-menu.is-open{ right: 0; }
.ep-mobile-menu-overlay.is-open{ opacity: 1; visibility: visible; }
.ep-mobile-menu .ep-mobile-close{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  border: 1px solid rgba(15,157,88,0.25);
  color: var(--ep-primary);
  background: rgba(15,157,88,0.08);
}
.ep-mobile-menu .navigation{
  display: block;
}
.ep-mobile-menu .navigation li{
  margin: 0;
  border-bottom: 1px solid rgba(15,157,88,0.12);
}
.ep-mobile-menu .navigation li a{
  display: flex;
  padding: 12px 0;
  color: var(--ep-heading);
  font-weight: 600;
}

/* Simple alert */
.ep-alert{
  margin: 18px 0;
  padding: 14px 16px;
  border-radius: 12px;
  background: rgba(15,157,88,0.08);
  border: 1px solid rgba(15,157,88,0.22);
  color: var(--ep-heading);
}
.ep-alert.success{
  background: rgba(15,157,88,0.10);
  border-color: rgba(15,157,88,0.28);
}
.ep-alert.error{
  background: rgba(220,38,38,0.10);
  border-color: rgba(220,38,38,0.28);
  color: #991b1b;
}

/* WP content defaults */
.ep-content{ padding: 80px 0; }
.ep-content .entry-content p{ margin-bottom: 1rem; }
.ep-content .entry-content h1, .ep-content .entry-content h2, .ep-content .entry-content h3{ color: var(--ep-heading); }

/* Forms */
.ep-form .form-grp input,
.ep-form .form-grp textarea{
  width: 100%;
  border-radius: 12px;
  border: 1px solid rgba(15,157,88,0.18);
  padding: 14px 16px;
  outline: none;
}
.ep-form .form-grp textarea{ min-height: 140px; }
.ep-form .form-grp input:focus,
.ep-form .form-grp textarea:focus{
  border-color: rgba(15,157,88,0.55);
  box-shadow: 0 0 0 4px rgba(15,157,88,0.12);
}

/* Scroll top */
.ep-scroll-top{
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--ep-primary);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: all .25s ease;
}
.ep-scroll-top.is-visible{ opacity: 1; visibility: visible; }

/* Auth pages */
.ep-auth{
  padding: 80px 0;
  background: #f8f9fb;
}
.ep-auth-page .ep-auth{
  min-height: calc(100vh - 160px);
  display: flex;
  align-items: center;
}
.ep-auth-page .tg-header__top{ display: none !important; }
.ep-auth-wrap{
  max-width: 520px;
  margin: 0 auto;
  width: 100%;
}
.ep-auth-card{
  background: #fff;
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 30px 70px rgba(0,0,0,.08);
  border: 1px solid rgba(15,157,88,0.14);
}

@media (max-width: 767.98px){
  .ep-auth{ padding: 42px 0; }
  .ep-auth-page .ep-auth{ min-height: calc(100vh - 120px); }
  .ep-auth-card{ padding: 22px 18px; border-radius: 18px; }
}

/* Footer spacing */
.footer__area{ margin-top: 0; }

/* Simplify footer on auth pages (remove large widgets/logo so mobile doesn't look "kepanjangan") */
.ep-auth-page .footer__top{ display: none; }
.ep-auth-page .footer__bottom{ padding: 12px 0; }

/* WP login form styling */
#ep-loginform p{margin-bottom:14px;}
#ep-loginform label{display:block;font-weight:600;margin-bottom:6px;}
#ep-loginform input[type="text"],
#ep-loginform input[type="password"]{width:100%;height:52px;border:1px solid #dbe7df;border-radius:14px;padding:0 16px;}
#ep-loginform input[type="text"]:focus,
#ep-loginform input[type="password"]:focus{outline:none;border-color:var(--ep-primary);box-shadow:0 0 0 4px rgba(15,157,88,.12);}
#ep-loginform p.forgetmenot,
#ep-loginform .login-remember{display:flex;align-items:center;justify-content:flex-start !important;gap:10px;margin:10px 0 16px;}
#ep-loginform p.forgetmenot label,
#ep-loginform .login-remember label{display:inline-flex;align-items:center;gap:10px;font-weight:500;margin:0;}
#ep-loginform input[type="checkbox"]{
  width: 18px !important;
  height: 18px !important;
  min-width: 18px;
  min-height: 18px;
  padding: 0 !important;
  border: 1px solid #dbe7df;
  border-radius: 6px;
  background: #fff;
  -webkit-appearance: none;
  appearance: none;
  display: inline-block;
  position: relative;
}
#ep-loginform input[type="checkbox"]:checked{
  border-color: var(--ep-primary);
  background: var(--ep-primary);
}
#ep-loginform input[type="checkbox"]:checked::after{
  content: "";
  position: absolute;
  left: 5px;
  top: 2px;
  width: 5px;
  height: 9px;
  border: 2px solid #fff;
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg);
}
#ep-loginform p.submit{margin: 0;}
#ep-loginform input[type="submit"]{width:100%;border:0;border-radius:999px;padding:14px 18px;background:var(--ep-primary);color:#fff;font-weight:700;}
#ep-loginform input[type="submit"]:hover{opacity:.95;}

/* Register / Reset forms should match the same input/button style */
.ep-auth-card .form-control{
  height: 52px;
  border: 1px solid #dbe7df;
  border-radius: 14px;
  padding: 0 16px;
}
.ep-auth-card .form-control:focus{
  outline: none;
  border-color: var(--ep-primary);
  box-shadow: 0 0 0 4px rgba(15,157,88,.12);
}
.ep-auth-card textarea.form-control{
  height: auto;
  padding: 14px 16px;
}
.ep-auth-card .tg-btn,
.ep-auth-card .btn{
  border-radius: 999px;
  padding: 14px 18px;
}

/* Spacing between fields on Register/Reset (mobile & desktop) */
.ep-auth-card .ep-form .form-grp{margin:0 0 14px;}
.ep-auth-card .ep-form .form-grp:last-of-type{margin-bottom:14px;}

@media (max-width: 575px){
  .ep-auth-card .ep-form .form-grp{margin-bottom:16px;}
}

/* =============================
   QUICK "RAPI" FIXES (Home)
   ============================= */

/* Decorative shapes sometimes overlap / look weird in WP contexts */
.slider__bg-two .shape,
.cta__shape-five{ display:none !important; }

/* Header background + menu color consistency */
#sticky-header,
.tg-header__area.sticky-menu{ background:#fff; }
.tgmenu__navbar-wrap > ul > li > a{ color: var(--ep-heading); }
.tgmenu__navbar-wrap > ul > li.active > a,
.tgmenu__navbar-wrap > ul > li:hover > a{ color: var(--ep-primary); }

/* Services section: ensure readable contrast even if bg image changes */
.services__area-six{
  background-color:#f7faf8;
}
.services__area-six .section__title .title,
.services__area-six .section__title p{
  color: var(--ep-heading);
}

/* =========================================================
   Services cards (match Beeko "insurance" style)
   ========================================================= */
.ep-service-card{
  background: #fff;
  border: 1px solid #E8EBF5;
  border-radius: 20px;
  padding: 30px;
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: all .25s ease;
}
.ep-service-card:hover{
  box-shadow: 0 25px 60px rgba(0,0,0,.08);
  transform: translateY(-2px);
}
.ep-service-thumb{
  position: relative;
  margin-bottom: 34px;
}
.ep-service-thumb img{
  display: block;
  width: 100%;
  height: 230px;
  object-fit: cover;
  border-radius: 18px;
}
@media (max-width: 767.98px){
  .ep-service-thumb img{ height: auto; }
}
.ep-service-icon{
  position: absolute;
  left: 22px;
  bottom: -26px;
  width: 72px;
  height: 72px;
  border-radius: 18px;
  background: var(--tg-theme-primary);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  border: 6px solid #fff;
  box-shadow: 0 18px 45px rgba(15,157,88,.22);
}
.ep-service-content .title{
  margin-bottom: 10px;
  font-size: 26px;
  font-weight: 700;
}
.ep-service-content p{
  margin-bottom: 22px;
}
.ep-service-btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 20px;
  border-radius: 14px;
  background: #F4F6FB;
  color: var(--tg-theme-primary);
  font-weight: 700;
}
.ep-service-btn i{
  transition: transform .2s ease;
}
.ep-service-btn:hover{
  background: var(--tg-theme-primary);
  color: #fff;
}
.ep-service-btn:hover i{
  transform: translateX(3px);
}
.ep-service-card .ep-service-btn{ margin-top: auto; }

/* Service cards: consistent thumbnails */
.services__item-three .services__thumb-two img{
  width:100%;
  height:180px;
  object-fit:cover;
  border-radius: 20px;
}

/* Blog cards: prevent weird image stretching */
.blog__post-two .blog__post-thumb-two img,
.blog-post-item .thumb img{
  width:100%;
  height:220px;
  object-fit:cover;
}

/* CTA section: keep it clean */
.cta__area-four{ overflow:hidden; }

/* =========================================================
   Blog cards (match Beeko index-8 style)
========================================================= */
.ep-blog-card .blog__post-thumb-four img,
.ep-blog-card img.ep-blog-thumb{
  display:block;
  width:100%;
  height:258px;
  object-fit:cover;
}
@media (max-width: 1199.98px){
  .ep-blog-card .blog__post-thumb-four img,
  .ep-blog-card img.ep-blog-thumb{ height:auto; }
}

.ep-blog-card .blog__post-author img{
  width:44px;
  height:44px;
  border-radius:50%;
  object-fit:cover;
}

.ep-meta-ico{
  width:18px;
  height:18px;
  display:inline-block;
  vertical-align:middle;
  margin-right:8px;
}

/* =========================================================
   Simple hero slider (no external JS lib)
========================================================= */
.ep-slider{ position:relative; }
.ep-slider .ep-slide{ display:none; }
.ep-slider .ep-slide.is-active{ display:flex; }
.ep-slider .slider__pagination span{ cursor:pointer; }

/* Make Beeko's blue hero accents follow primary color */
.slider__bg-two::before{ background: var(--tg-theme-primary) !important; opacity: .6; }
.slider__bg-three::before{ background: var(--tg-theme-primary) !important; opacity: .55; }
.slider__bg-three::after{ background: var(--tg-theme-primary) !important; opacity: .85; }

/* =========================================================
   Blog details (match Beeko blog-details.html)
========================================================= */
.blog__details-thumb{
  overflow:hidden;
  border-radius: 20px;
  margin-bottom: 30px;
}
.blog__details-thumb img,
.blog__details-thumb .wp-post-image{
  width:100%;
  height:auto;
  display:block;
}
.blog__details-content .title{
  font-size: 36px;
  line-height: 1.25;
}
@media (max-width: 767.98px){
  .blog__details-content .title{ font-size: 28px; }
}

/* Sidebar widgets as "cards" like Beeko */
.blog__sidebar-two .sidebar__widget,
.blog__sidebar .sidebar__widget{
  background: #fff;
  border: 1px solid #E8EBF5;
  border-radius: 15px;
  padding: 25px;
}
.blog__search{ position: relative; }
.blog__search button{ position: absolute; }

/* Recent posts thumbnail size */
.rc-post-item .thumb img{
  width: 80px;
  height: 70px;
  object-fit: cover;
  border-radius: 8px;
}

/* Make WP content images nicely rounded inside blog details */
.blog__details-wrap .entry-content img{
  border-radius: 16px;
}

/* ------------------------------------------------------------
   Buttons - ensure Beeko buttons render correctly in WP (text visible, centered)
------------------------------------------------------------ */
.tg-btn,
.tg-btn-five{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 26px;
  border-radius:14px;
  font-weight:700;
  line-height:1.1;
  background: var(--tg-theme-primary);
  color:#fff !important;
  border: none;
}
.tg-btn i,
.tg-btn-five i{ font-size:14px; }
.tg-btn:hover,
.tg-btn-five:hover{
  color:#fff !important;
  filter: brightness(.96);
}

/* ------------------------------------------------------------
   About page (Beeko-like layout)
------------------------------------------------------------ */

.ep-about-page.about__area-three::before{
  background: var(--tg-theme-primary);
  opacity: 0.08;
}

/* left collage */
.ep-about-page .about__img-wrap-four img{
  border-radius: 24px;
  display: block;
  max-width: 100%;
  height: auto;
}
.ep-about-page .about__img-wrap-four img:nth-child(1){
  width: 100%;
  position: relative;
  z-index: 1;
}

/* gambar 2: kecilkan supaya jadi overlay (tidak menutupi gambar utama) */
.ep-about-page .about__img-wrap-four img:nth-child(2){
  border-radius: 22px;
  width: 72%;
  max-width: 560px;
  height: auto;
  object-fit: cover;
  z-index: 2;
}

/* Mobile/tablet: jangan overlap, susun vertikal */
@media (max-width: 767.98px){
  .ep-about-page .about__img-wrap-four{
    padding-bottom: 0 !important;
    padding-right: 0 !important;
    text-align: center;
  }
  .ep-about-page .about__img-wrap-four img:nth-child(2){
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    border: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 16px !important;
    display: block !important;
  }
}


/* Fix: kolom hijau (accent bar) harus tampil di depan overlay image */
.ep-about-page .about__img-wrap-four::before{
  z-index: 5 !important;
}
/* badges positions to match reference */
.ep-about-page .experience__wrap-five{
  top: 52%;
  transform: translateY(-50%);
  right: -10px;
}
.ep-about-page .profit__wrap{
  bottom: 32%;
  left: -35px;
}
.ep-about-page .profit__wrap .icon{
  width: 52px;
  height: 52px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(15,157,88,0.14);
  color: var(--tg-theme-primary);
  font-size: 22px;
}

/*
  Fix: About Image 2 tertutup/ketiban gambar di atasnya setelah ganti gambar.
  Layout default theme menaruh gambar ke-2 sebagai elemen absolute (overlap).
  Untuk layar tablet/mobile kita buat jadi STACK (berurutan) agar rapi dan aman
  untuk berbagai rasio gambar.
*/
@media (max-width: 991.98px) {
  .ep-about-page .about__img-wrap-four {
    padding-bottom: 0;
    padding-right: 0;
    margin-right: 0;
  }
  .ep-about-page .about__img-wrap-four::before{
    display:none;
  }
  .ep-about-page .about__img-wrap-four img{
    width: 100%;
    height: auto;
    display: block;
  }
  .ep-about-page .about__img-wrap-four img:nth-child(2){
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    margin-top: 18px !important;
    display: block !important;
  }
}

@media (max-width: 767.98px) {
  /* Override rule main.css yang menyembunyikan gambar ke-2 di mobile */
  .ep-about-page .about__img-wrap-four img:nth-child(2){
    display: block !important;
  }
}

/* right content */
.ep-about-page .ep-about-desc p{margin-bottom: 10px;}
.ep-about-page .about__inner-wrap-two{
  border-color: rgba(15,157,88,0.16);
}
.ep-about-page .about__list-box-item{
  background: #F4F6FB;
}

.ep-about-page .about__content-bottom{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  align-items:center;
  justify-content: space-between;
  margin-top: 22px;
}
.ep-about-page .author__wrap{
  gap: 14px;
}
.ep-about-page .author__wrap .thumb img{
  width: 56px;
  height: 56px;
  border-radius: 999px;
  object-fit: cover;
}
.ep-about-page .author__wrap .content img{
  max-width: 140px;
  height: auto;
}

@media (max-width: 991px){
  .ep-about-page .about__content-bottom{justify-content:flex-start;}
  .ep-about-page .experience__wrap-five{right: 0;}
  .ep-about-page .profit__wrap{left: 0;}
}

.ep-about-team .ep-section-desc{
  max-width:520px;
  margin-left:auto;
}

/* About CTA: keep phone number on one line (avoid awkward wrapping) */
.cta__area-two .cta__contact .content a{
  white-space: nowrap;
}

/* About Team cards: harden Beeko card style in WP context */
.ep-about-team .team__thumb-three{
  width: 180px;
  height: 180px;
}
.ep-about-team .team__thumb-three img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0 !important;
}
.ep-about-team .team__social-three{
  margin-top: 16px;
}
.ep-about-team .team__social-three .list-wrap{
  gap: 18px;
}

/* Empty states (e.g., no team/service yet) */
.ep-empty-state{
  width: 100%;
  padding: 16px 18px;
  border-radius: 14px;
  background: #F4F6FB;
  border: 1px dashed rgba(15,157,88,0.38);
  color: var(--tg-heading-color);
  font-weight: 600;
  text-align: center;
}

/* Testimonial avatars (avoid broken look) */
.testimonial__author-wrap img{
  width: 40px;
  height: 40px;
  border-radius: 999px;
  object-fit: cover;
  border: 2px solid #fff;
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}

/* Fix: ikon share (team__social) sempat “melayang” karena parent card tidak punya positioning */
.team__item-three{ position: relative; }
.team__social{ z-index: 3; }


/* Single Service (Service Details) – green skin for sidebar widgets */
.sidebar__contact{ background: linear-gradient(135deg, rgba(15,157,88,1) 0%, rgba(10,110,62,1) 100%); }
.sidebar__contact .tg-btn{ width:100%; justify-content:center; }
.sidebar__cat-list .list-wrap li.active a{
  background: var(--tg-theme-primary);
  border-color: var(--tg-theme-primary);
  color: var(--tg-color-white-default);
}
.sidebar__cat-list .list-wrap li.active a span{ color: var(--tg-theme-primary); }


/* === Fix: gambar memanjang di mobile (Single Service/Content images) === */
.services__details-thumb,
.services__details-thumb img,
.services__details-content-top img,
.services__details-content img,
.entry-content img,
.ep-content img,
.wp-block-image img,
.post-thumbnail img,
.single-layanan .wp-post-image,
.single-layanan img.wp-post-image,
.single-service .wp-post-image,
.single-service img.wp-post-image{
  width: 100%;
  max-width: 100%;
  height: auto !important;
  display: block;
}

@media (max-width: 767.98px){
  /* pastikan tidak ada height paksa dari template */
  .services__details-thumb,
  .services__details-thumb img{
    height: auto !important;
  }
}



/* === Contact Page layout (match Beeko contact, keep green skin) === */
.ep-contact-page{ padding: 110px 0 0; }
@media (max-width: 991.98px){ .ep-contact-page{ padding-top: 70px; } }

.ep-contact-page .contact-map{
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #DEE0EE;
  box-shadow: 0 22px 50px rgba(0,0,0,.07);
}

/* Contact intro text */
.ep-contact-page .ep-contact-intro .entry-content p{
  font-size: 18px;
  line-height: 1.75;
  margin-bottom: 0;
}

/* Make the left cards look like Beeko location cards (subtle circles) */
.ep-contact-page .contact__info-item.ep-contact-card{
  position: relative;
}
.ep-contact-page .contact__info-item.ep-contact-card:before,
.ep-contact-page .contact__info-item.ep-contact-card:after{
  content:'';
  position:absolute;
  right:-60px;
  top:50%;
  transform: translateY(-50%);
  width: 180px;
  height: 180px;
  border-radius: 999px;
  background: rgba(244,246,251,.9);
  z-index:-1;
}
.ep-contact-page .contact__info-item.ep-contact-card:after{
  right:-110px;
  width: 260px;
  height: 260px;
  opacity: .55;
}

/* Form title spacing */
.ep-contact-page .contact__form-wrap .title{
  margin-bottom: 18px;
}

/* Add breathing room before CTA section like Beeko */
.ep-contact-page .cta__area-four{
  margin-top: 90px;
}
@media (max-width: 991.98px){
  .ep-contact-page .cta__area-four{ margin-top: 60px; }
}


/* Footer logo size control */
.footer__logo img{
  max-width: 180px;
  height: auto;
}
/* Header logo size control */
.header__logo img, .logo img{
  max-width: 190px;
  height: auto;
}


/* Force default primary buttons to theme green */
.epuskesmas .btn-primary,
.epuskesmas a.btn-primary,
.epuskesmas button.btn-primary{
  background: var(--ep-primary) !important;
  border-color: var(--ep-primary) !important;
  color: #fff !important;
}
.epuskesmas .btn-primary:hover,
.epuskesmas .btn-primary:focus{
  background: var(--ep-secondary) !important;
  border-color: var(--ep-secondary) !important;
  color: #fff !important;
}

/* Konsultasi Dok (hero) */
.ep-konsultasi-page{ padding: 0; margin: 0; }
.ep-konsultasi-page > p{ margin: 0; }
.ep-consult-hero{
  position: relative;
  background-size: cover;
  background-position: center;
  padding: 120px 0;
  min-height: 520px;
  display: flex;
  align-items: center;
  border-radius: 0;
  overflow: hidden;
}
@media (max-width: 991px){
  .ep-consult-hero{ padding: 90px 0; min-height: 480px; }
}
@media (max-width: 575px){
  .ep-consult-hero{ padding: 72px 0; min-height: 420px; }
}
.ep-consult-overlay{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,1);
  pointer-events:none;
}
.ep-consult-wrap{ position: relative; z-index: 2; }
.ep-consult-title{
  margin:0 0 12px;
  color:#fff !important;
  font-weight: 900;
  letter-spacing: -0.6px;
  line-height: 1.06;
  font-size: clamp(34px, 4vw, 56px);
  text-shadow: 0 14px 40px rgba(0,0,0,.35);
}
.ep-consult-desc{
  color: rgba(255,255,255,.88) !important;
  font-size: 16px;
  line-height: 1.7;
  max-width: 680px;
  margin: 0 0 22px;
}
.ep-btn.ep-btn-wa{
  display: inline-flex;
  align-items:center;
  justify-content:center;
  padding: 14px 36px;
  border-radius: 14px;
  font-weight: 800;
  background: var(--ep-primary) !important;
  border: 1px solid var(--ep-primary) !important;
  color: #fff !important;
  text-decoration: none;
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.ep-btn.ep-btn-wa:hover{
  background: var(--ep-secondary) !important;
  border-color: var(--ep-secondary) !important;
  color: #fff !important;
}

/* Ensure Aduan tabs stay green even if other CSS overrides */
.epao .epao-tab.is-active{
  background: var(--ep-primary) !important;
  border-color: var(--ep-primary) !important;
  color: #fff !important;
}

/* =============================
 * ABOUT (Collage fixes)
 * ============================= */

/*
  PERBAIKAN UTAMA (HOME + ABOUT):
  - Gambar ke-2 sering ikut ukuran asli (besar) sehingga menutupi gambar utama.
  - Kita paksa jadi overlay kecil (mirip referensi Beeko).
  - Bar hijau/shape harus terlihat (tidak ketutup).
*/
.about__img-wrap-four{
  position: relative;
  padding-right: 70px !important;
  padding-bottom: 120px !important;
  margin-right: 0 !important;
  z-index: 1;
}
.about__img-wrap-four img{
  max-width: 100% !important;
  height: auto !important;
  display: block;
}
.about__img-wrap-four img:nth-child(1){
  position: relative;
  z-index: 2;
}
.about__img-wrap-four img:nth-child(2){
  position: absolute;
  z-index: 3;
  right: 0 !important;
  bottom: 0 !important;
  width: 72% !important;
  max-width: 520px !important;
  border-radius: 14px;
  box-shadow: 0 16px 50px rgba(0,0,0,.12);
}
/* Bar/kolom hijau wajib terlihat (di depan overlay) */
.about__img-wrap-four::before{
  z-index: 10 !important;
  pointer-events: none;
}

/* Tablet & mobile: amanin jadi STACK biar gak saling ketiban */
@media (max-width: 991.98px){
  .about__img-wrap-four{
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    text-align: left;
  }
  .about__img-wrap-four::before{
    display:none !important;
  }
  .about__img-wrap-four img:nth-child(2){
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 18px !important;
    right: auto !important;
    bottom: auto !important;
    display: block !important;
  }
}

/* About page – Beeko style collage */
.ep-about-page .ep-about-collage{
  position: relative;
  padding-right: 70px;
  padding-bottom: 120px;
}
.ep-about-page .ep-about-collage .ep-about-img-1{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 14px;
}
.ep-about-page .ep-about-collage .ep-about-img-2{
  position: absolute;
  right: 0;
  bottom: 0;
  width: 76%;
  height: auto;
  display: block;
  border-radius: 14px;
  border: 8px solid #fff;
  box-shadow: 0 16px 50px rgba(0,0,0,.12);
}

/* Move the experience badge to center-right (like Beeko screenshot) */
.ep-about-page .ep-about-collage .experience__wrap-five{
  top: 52%;
  right: 10px;
  transform: translateY(-50%);
}

/* Keep profit card visible and not clipped */
.ep-about-page .ep-about-collage .profit__wrap{
  bottom: 82px;
  left: -30px;
}

@media (max-width: 991.98px){
  .ep-about-page .ep-about-collage{
    padding-right: 0;
    padding-bottom: 0;
    margin-bottom: 30px;
  }
  .ep-about-page .ep-about-collage .ep-about-img-2{
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 16px;
    border-width: 0;
    box-shadow: none;
  }
  .ep-about-page .ep-about-collage .experience__wrap-five,
  .ep-about-page .ep-about-collage .profit__wrap{
    position: relative;
    inset: auto;
    transform: none;
    margin-top: 14px;
  }
}

