/* ParsUptime – Licenses Hub v1.1.1 (responsive fix) */
.parsu-licenses-hub{ display:block; }
.plh-intro{ text-align:center; margin-bottom:1rem; }
.plh-intro-title{ color: var(--primary-color,#0D6EFD); font-weight:900; margin:.5rem 0; font-size:1.35rem; }
.plh-intro-desc{ color: var(--text-muted,#6c7a91); font-size:1rem; }

.plh-tabs{ display:flex; gap:1rem; justify-content:center; align-items:center; flex-wrap:wrap; margin: .75rem 0 1.25rem; }
.plh-tabs .tab-link{
  display:inline-block; padding:.25rem .75rem; border:1px solid var(--border-color,#E2EDFE);
  border-radius:999px; text-decoration:none; color: var(--primary-color,#0D6EFD);
  background: rgba(13,110,253,.05);
}
.plh-tabs .tab-link:hover{ background: rgba(13,110,253,.08); }

.plh-section{ margin-bottom:2.25rem; }
.plh-heading{ font-weight:900; color: var(--primary-color,#0D6EFD); font-size:1.125rem; margin-bottom:1rem; }

.plh-grid{ display:grid; gap:1.25rem; }
.parsu-licenses-hub.cols-1 .plh-grid{ grid-template-columns: repeat(1,minmax(0,1fr)); }
.parsu-licenses-hub.cols-2 .plh-grid{ grid-template-columns: repeat(2,minmax(0,1fr)); }
.parsu-licenses-hub.cols-3 .plh-grid{ grid-template-columns: repeat(3,minmax(0,1fr)); }

/* --- Responsive overrides (higher specificity + !important) --- */
@media (max-width: 991.98px){
  .parsu-licenses-hub .plh-grid,
  .parsu-licenses-hub.cols-2 .plh-grid,
  .parsu-licenses-hub.cols-3 .plh-grid{
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width: 576px){
  .parsu-licenses-hub .plh-grid,
  .parsu-licenses-hub.cols-2 .plh-grid,
  .parsu-licenses-hub.cols-3 .plh-grid{
    grid-template-columns: 1fr !important;
  }
}

.plh-card{
  background: var(--bg-body,#fff);
  border:1px solid var(--border-color,#E2EDFE);
  border-radius: var(--border-radius,20px);
  padding: 1.25rem 1.25rem 1rem;
  text-align:center;
  box-shadow: 0 10px 30px rgba(0,0,0,.03);
  transition: transform .15s ease, box-shadow .2s linear;
}
.plh-card:hover{ transform: translateY(-2px); box-shadow: 0 14px 36px rgba(0,0,0,.06); }

.plh-logo{ height:54px; margin-bottom:.75rem; display:flex; align-items:center; justify-content:center; }
.plh-logo img{ max-height:54px; max-width:100%; object-fit:contain; }
.plh-logo--ph{ display:flex; align-items:center; justify-content:center; width:100%; height:54px; color: var(--text-muted,#737C99); border:1px dashed var(--border-color,#E2EDFE); border-radius:12px; font-size:.875rem; }

.plh-title{ font-size:1rem; font-weight:800; color: var(--primary-color,#0D6EFD); margin:.25rem 0 .25rem; }
.plh-desc{ color: var(--text-muted,#6c7a91); font-size:.9375rem; line-height:1.9; min-height:2.9em; }

.plh-specs{ margin:.5rem 0 .75rem; }
.spec-label{ font-size:.8125rem; color: var(--text-muted,#6c7a91); margin-bottom:.2rem; }
.plh-specs .spec-row{ display:flex; gap:.5rem; justify-content:center; flex-wrap:wrap; margin-bottom:.35rem; }
.badge.spec{
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.25rem .6rem; border-radius:999px;
  border:1px solid rgba(13,110,253,.15);
  color: var(--primary-color,#0D6EFD);
  font-size:.8125rem; line-height:1.2; background: rgba(13,110,253,.05);
}
.badge.spec .ico{ display:inline-flex; }

.plh-cta{ margin-top:.6rem; }
.btn.btn-primary{ color:#fff; }

/* Extra small tweaks for very small screens */
@media (max-width: 400px){
  .plh-card{ padding: 1rem .9rem .9rem; }
  .plh-desc{ font-size:.9rem; }
  .badge.spec{ font-size:.78rem; padding:.22rem .5rem; }
}
