.elementor-903 .elementor-element.elementor-element-80f5c73{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-70c4a7e *//* =========================================
   FOOTER CSS (UPDATED RESPONSIVE)
   ========================================= */
.ef {
  --c: #5B9BA5;
  --cd: #4A8490;
  --t: #1E2D31;
  --tm: #5F7377;
  --w: #FFF;
  --brd: rgba(91, 155, 165, 0.12);
  background: var(--w);
  border-top: 1px solid var(--brd);
  font-family: 'Outfit', sans-serif;
  color: var(--tm);
  padding: 60px 0 0;
}

.ef-in {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 36px 40px;
  display: grid;
  grid-template-columns: 1.5fr 1fr 1.2fr; /* Layout 3 kolom desktop */
  gap: 40px;
}

/* Brand Section */
.ef-logo img { height: 50px; margin-bottom: 20px; }
.ef-intro { font-size: 14px; line-height: 1.6; margin-bottom: 20px; max-width: 340px; }
.ef-legal { font-size: 13px; color: var(--t); line-height: 1.5; }

/* Titles */
.ef-col h4 {
  color: var(--t);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 25px;
  position: relative;
}

/* Quick Links (Default Desktop: 1 Baris ke Bawah) */
.ef-nav { display: flex; flex-direction: column; gap: 12px; }
.ef-nav a {
  text-decoration: none;
  color: var(--tm);
  font-size: 14px;
  transition: color 0.3s ease;
}
.ef-nav a:hover { color: var(--c); }

/* Contact Info */
.ef-ci p { font-size: 14px; margin-bottom: 12px; display: flex; gap: 10px; }
.ef-ci a { text-decoration: none; color: inherit; }
.ef-ci a:hover { color: var(--c); }

/* Social Icons */
.ef-soc { display: flex; gap: 15px; margin-top: 25px; }
.ef-soc a {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--cl, #EBF4F6);
  color: var(--c);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: all 0.3s ease;
}
.ef-soc a:hover { background: var(--c); color: var(--w); transform: translateY(-3px); }

/* Bottom Bar */
.ef-btm {
  border-top: 1px solid var(--brd);
  padding: 25px 0;
  background: #F9FCFC;
}
.ef-btm-in {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 36px;
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #94a3b8;
}

/* =========================================
   RESPONSIVE RULES
   ========================================= */
@media (max-width: 1024px) {
  .ef-in { grid-template-columns: 1fr 1fr; }
  .ef-brand { grid-column: span 2; border-bottom: 1px solid var(--brd); padding-bottom: 30px; }
  
  /* TAB & MOBILE: Navigasi dipecah paksa jadi 2 kolom sejajar */
  .ef-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 15px; /* Jarak baris dan kolom */
  }
}

@media (max-width: 768px) {
  .ef-in { grid-template-columns: 1fr; text-align: center; gap: 40px; }
  .ef-brand, .ef-intro { margin: 0 auto; }
  .ef-col h4 { margin-bottom: 15px; }
  
  /* Bikin info kontak center-aligned di HP */
  .ef-ci p { justify-content: center; }
  
  /* Pastikan Nav tetap 2 kolom tapi text di-center biar rapi */
  .ef-nav { text-align: center; }
  
  .ef-soc { justify-content: center; }
  .ef-btm-in { flex-direction: column; gap: 10px; text-align: center; }
}/* End custom CSS */