/* ===== Base alignment for inline SVG icon ===== */
.inline-svg-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  vertical-align:-.12em;
}
.inline-svg-icon svg{
  display:block;
  width:1em;
  height:1em;
  fill:currentColor;
}

/* Optional spacing in common contexts */
.wp-block-button__link .inline-svg-icon{ margin-right:.4em; }
.wp-block-read-more .inline-svg-icon{ margin-left:.35em; }

/* ===== Attention Zoom Effect ===== */
@keyframes mcd-attn-zoom {
  0%, 100% { transform: scale(1); }
  50%      { transform: scale(var(--mcd-attn-scale, 1.15)); }
}
.attn-zoom{
  --mcd-attn-scale: 1.15;
  --mcd-attn-duration: 1.2s;
  --mcd-attn-iter: infinite;
  --mcd-attn-delay: 0s;
  will-change: transform;
  animation: mcd-attn-zoom var(--mcd-attn-duration) ease-in-out var(--mcd-attn-delay) var(--mcd-attn-iter);
}

/* hover mode: only animate on hover */
.attn-zoom[data-fx-mode="hover"]{
  animation: none;
}
.attn-zoom[data-fx-mode="hover"]:hover{
  animation: mcd-attn-zoom var(--mcd-attn-duration) ease-in-out var(--mcd-attn-delay) infinite;
}

/* scroll mode: animate only when in viewport */
.attn-zoom[data-fx-mode="scroll"]{
  animation: none;
}
.attn-zoom.is-inview{
  animation: mcd-attn-zoom var(--mcd-attn-duration) ease-in-out var(--mcd-attn-delay) var(--mcd-attn-iter);
}

/* Accessibility: respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .attn-zoom,
  .attn-zoom:hover,
  .attn-zoom.is-inview{
    animation: none !important;
  }
}