/* ==========================================================================
   BUSINESS UNITS PAGE — Directory List (mandiri, tanpa card)
   ========================================================================== */

.bu-hero .sect-head{ text-align:left; margin:0; max-width:680px; }

.bu-grid-section{ background:var(--c-surface); }

/* ---------- Directory list wrapper ---------- */
.bu-directory{
  border-top:1px solid var(--c-border);
}

.bu-row{
  --bu-accent:var(--c-primary);
  --bu-accent-soft:var(--c-primary-light);
  position:relative;
  display:flex;
  align-items:center;
  gap:1.75rem;
  padding:2rem 0;
  border-bottom:1px solid var(--c-border);
  transition:padding-left .35s ease;
}
.bu-row::before{
  content:"";
  position:absolute; left:0; top:0; bottom:0;
  width:3px;
  background:linear-gradient(180deg, var(--bu-accent), var(--stage-accent-2));
  transform:scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.2,.7,.2,1);
}
.bu-row:hover{ padding-left:1.5rem; }
.bu-row:hover::before{ transform:scaleY(1); }

/* Nomor urut tipis */
.bu-row-num{
  flex:0 0 auto;
  width:36px;
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:.82rem;
  color:var(--c-border);
  transition:color .35s ease;
}
.bu-row:hover .bu-row-num{ color:var(--stage-accent-2); }

/* Plate logo */
.bu-plate{
  flex:0 0 auto;
  width:92px; height:92px;
  border-radius:var(--r-md);
  background:var(--c-surface-alt);
  border:1px solid var(--c-border);
  display:flex; align-items:center; justify-content:center;
  padding:.9rem;
  transition:background-color .3s ease, border-color .3s ease;
}
.bu-row:hover .bu-plate{ background:var(--bu-accent-soft); border-color:transparent; }

.bu-logo-img{
  max-width:100%; max-height:44px; width:auto;
  object-fit:contain;
  filter:grayscale(1) opacity(.55);
  transition:filter .35s ease, transform .35s ease;
}
.bu-row:hover .bu-logo-img{ filter:grayscale(0) opacity(1); transform:scale(1.06); }

.bu-logo-text{
  width:44px; height:44px;
  border-radius:var(--r-sm);
  display:flex; align-items:center; justify-content:center;
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:.95rem;
  background:var(--bu-logo-soft, var(--bu-accent-soft));
  color:var(--bu-logo-color, var(--bu-accent));
  transition:transform .35s ease;
}
.bu-row:hover .bu-logo-text{ transform:scale(1.06); }

.bu-logo-group{ display:flex; align-items:center; gap:.7rem; }
.bu-logo-group .bu-logo-img{ max-height:32px; }
.bu-logo-divider{
  width:5px; height:5px; border-radius:50%;
  background:var(--stage-accent-2); opacity:.7; flex:0 0 auto;
}

/* Konten tengah */
.bu-info{ flex:1; min-width:0; }
.bu-top-line{
  display:flex; align-items:center; gap:.7rem; flex-wrap:wrap;
  margin-bottom:.35rem;
}
.bu-name{ font-size:1.08rem; font-weight:800; color:var(--c-ink); }
.bu-cert{
  display:inline-flex; align-items:center; gap:.3rem;
  font-size:.68rem; font-weight:700; color:var(--bu-accent);
  text-transform:uppercase; letter-spacing:.04em;
}
.bu-cert i{ font-size:.72rem; }

.bu-category{
  display:block;
  font-size:.78rem; font-weight:600; color:var(--c-muted);
  margin-bottom:.55rem;
}
.bu-desc{
  font-size:.9rem; color:var(--c-body); line-height:1.65;
  max-width:60ch;
  margin-bottom:.75rem;
}

.bu-domains{ display:flex; flex-wrap:wrap; gap:.45rem; }
.bu-domain-tag{
  font-size:.72rem; font-weight:600; color:var(--c-body);
  border:1px solid var(--c-border);
  border-radius:6px;
  padding:.28rem .65rem;
  transition:border-color .25s ease, color .25s ease;
}
.bu-row:hover .bu-domain-tag{ border-color:var(--bu-accent); color:var(--bu-accent); }

/* Tombol kanan */
.bu-visit-btn{
  flex:0 0 auto;
  display:inline-flex; align-items:center; gap:.5rem;
  font-size:.86rem; font-weight:700;
  color:var(--c-ink);
  padding:.7rem 0;
  white-space:nowrap;
  transition:color .25s ease, gap .25s ease;
}
.bu-visit-btn i{
  font-size:.85rem;
  transition:transform .3s cubic-bezier(.2,.7,.2,1);
}
.bu-row:hover .bu-visit-btn{ color:var(--bu-accent); gap:.75rem; }
.bu-row:hover .bu-visit-btn i{ transform:translate(3px,-3px); }

/* ---------- Responsive ---------- */
@media (max-width:991.98px){
  .bu-row{ flex-wrap:wrap; }
  .bu-row-num{ display:none; }
  .bu-visit-btn{
    width:100%;
    justify-content:space-between;
    padding-top:1rem;
    border-top:1px solid var(--c-border);
    margin-top:.5rem;
  }
}
@media (max-width:575.98px){
  .bu-row{ gap:1rem; padding:1.6rem 0; }
  .bu-plate{ width:64px; height:64px; padding:.6rem; }
  .bu-logo-img{ max-height:32px; }
}
@media (prefers-reduced-motion: reduce){
  .bu-row, .bu-row::before, .bu-plate, .bu-logo-img, .bu-logo-text,
  .bu-domain-tag, .bu-visit-btn, .bu-visit-btn i{ transition:none; }
}