/* PAE Icon Box */
.pae-icon-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
  border-radius: 12px;
  padding: 36px 28px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-decoration: none;
  color: inherit;
  position: relative;
}
.pae-icon-pos-left  { flex-direction: row; align-items: flex-start; text-align: left !important; }
.pae-icon-pos-right { flex-direction: row-reverse; align-items: flex-start; text-align: right !important; }
.pae-icon-box-icon {
  width: 72px; height: 72px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; margin-bottom: 18px;
  transition: background-color 0.3s ease;
}
.pae-icon-pos-left  .pae-icon-box-icon { margin-bottom: 0; margin-right: 18px; margin-top: 4px; }
.pae-icon-pos-right .pae-icon-box-icon { margin-bottom: 0; margin-left: 18px; margin-right: 0; margin-top: 4px; }
.pae-icon-shape-square .pae-icon-box-icon { border-radius: 12px; }
.pae-icon-shape-none   .pae-icon-box-icon { background: transparent !important; width: auto; height: auto; }
.pae-icon-box-icon svg,
.pae-icon-box-icon i   { width: 28px; height: 28px; font-size: 28px; transition: color 0.3s ease; }
.pae-icon-box-text     { flex: 1; }
.pae-icon-box-title    { font-size: 18px; font-weight: 700; margin: 0 0 10px; color: #1e1e2e; }
.pae-icon-box-desc     { font-size: 14px; line-height: 1.7; color: #64748b; margin: 0; }
.pae-icon-box-link-text { display: inline-block; margin-top: 12px; font-size: 13px; font-weight: 600; color: var(--pae-primary); }
.pae-icon-badge { position: absolute; top: 12px; right: 14px; background: var(--pae-primary); color: #fff; font-size: 10px; font-weight: 700; padding: 3px 10px; border-radius: 100px; text-transform: uppercase; }
/* Hover effects */
.pae-hover-lift:hover  { transform: translateY(-6px); box-shadow: 0 12px 36px rgba(79,70,229,0.14); }
.pae-hover-grow:hover  { transform: scale(1.04); }
.pae-hover-glow:hover  { box-shadow: 0 0 0 4px rgba(79,70,229,0.15), 0 8px 24px rgba(79,70,229,0.1); }
.pae-hover-bounce:hover .pae-icon-box-icon { animation: paeIconBounce 0.55s ease; }
.pae-hover-rotate:hover .pae-icon-box-icon svg,
.pae-hover-rotate:hover .pae-icon-box-icon i { transform: rotate(360deg); transition: transform 0.55s ease; }
@keyframes paeIconBounce { 0%,100%{transform:translateY(0)} 40%{transform:translateY(-10px)} 70%{transform:translateY(-4px)} }
