.scp2:hover { transform: translateY(-2px); }
.scp3:hover { border-color: var(--accent); }
.scp4:hover { transform: translateY(-3px); box-shadow: rgba(61, 29, 115, 0.45) 0px 26px 54px -30px; }
.scp5:hover { transform: translateY(-4px); box-shadow: rgba(61, 29, 115, 0.45) 0px 28px 56px -30px; }
.scp6:hover { transform: translateY(-4px); box-shadow: rgba(61, 29, 115, 0.4) 0px 22px 44px -26px; border-color: var(--accent); }
.scp7:hover { color: var(--accent); }
.scp8:hover { background: var(--purple-deep); }
@media (max-width: 900px) {
  .dm-ms-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .dm-ms-line { display: none !important; }
}
@media (max-width: 820px) {
  .dm-csr-grid { grid-template-columns: 1fr !important; height: auto !important; }
  .dm-csr-col { grid-template-rows: auto !important; }
  .dm-csr-poster { min-height: 300px; }
  .dm-csr-photo { height: 240px !important; }
}
@media (max-width: 760px) {
  .dm-group-card { padding: 30px 22px !important; }
  .dm-hyphens-box { padding: 14px 20px !important; max-width: 100% !important; }
  .dm-pillars-grid { grid-template-columns: 1fr !important; }
  .dm-conn-branch { display: none !important; }
  .dm-conn-stem { display: block !important; }
  .dm-org-children { grid-template-columns: 1fr !important; row-gap: 22px !important; }
}
@media (min-width: 641px) and (max-width: 900px) {
  .dm-ops-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 640px) {
  .dm-leaders-grid, .dm-ops-grid { grid-template-columns: 1fr !important; }
  .dm-tl-row { grid-template-columns: 58px 30px 1fr !important; }
  .dm-tl-line { left: 71px !important; }
  .dm-tl-year { font-size: 17px !important; }
  .dm-ms-grid { grid-template-columns: 1fr !important; }
}
@keyframes dmpulse { 
  0%, 100% { opacity: 0.35; transform: scale(1); }
  50% { opacity: 0.7; transform: scale(1.06); }
}
@media (max-width: 900px) {
  .ab-split, .ab-foot { grid-template-columns: 1fr !important; gap: 32px !important; }
}
@media (max-width: 820px) {
  .dm-desktop-nav { display: none !important; }
  .dm-burger { display: inline-block; }
  .dm-nav-shell { padding: 12px 20px !important; }
  .ab-4 { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
  .ab-2, .ab-4 { grid-template-columns: 1fr !important; }
}
