
/* ── Text Animation ── */
.pl-ta-wrap { position:relative; }
.pl-ta__canvas { display:block; width:100%; }
.pl-ta__typewriter-wrap { display:inline; }
@keyframes pl-ib-bounce { 0%{transform:none}30%{transform:scale(1.2) translateY(-5px)}60%{transform:scale(0.95)}100%{transform:none} }

/* ── Icon Box ── */
.pl-ib { display:block; position:relative; }
.pl-ib__icon-wrap { display:flex; align-items:center; justify-content:center; }
.pl-ib--icon-top-center .pl-ib__icon-wrap { margin-left:auto; margin-right:auto; }
.pl-ib--gradient-bg .pl-ib__title,
.pl-ib--gradient-bg .pl-ib__desc,
.pl-ib--dark .pl-ib__title,
.pl-ib--dark .pl-ib__desc { color:inherit; }

/* ── Feature Tiles ── */
.pl-tile { transition:transform 300ms ease, box-shadow 300ms ease; }
.pl-tile__desc--reveal { transition:opacity 300ms ease, transform 300ms ease; }
.pl-tile:hover .pl-tile__desc--reveal { opacity:1!important; transform:translateY(0)!important; }
.pl-tile__shine { pointer-events:none; }
.pl-tile:hover .pl-tile__shine { transform:translateX(100%)!important; }

/* ── Flip Box ── */
.pl-flip-box { display:block; }
.pl-flip-front, .pl-flip-back { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.pl-flip__icon-wrap { display:flex; align-items:center; justify-content:center; }
.pl-flip__btn { display:inline-flex; align-items:center; justify-content:center; padding:10px 24px; border-radius:8px; font-weight:600; text-decoration:none; }

/* ── Slide Box ── */
.pl-sb { display:block; position:relative; overflow:hidden; }
.pl-sb__base, .pl-sb__reveal, .pl-sb__shutter { transition-property:clip-path, transform, opacity; }
.pl-sb__reveal-body { display:flex; flex-direction:column; }
