@font-face {
  font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/poppins-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: normal; font-weight: 500; font-display: swap;
  src: url('../fonts/poppins-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('../fonts/poppins-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('../fonts/poppins-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: normal; font-weight: 800; font-display: swap;
  src: url('../fonts/poppins-800.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: normal; font-weight: 900; font-display: swap;
  src: url('../fonts/poppins-900.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: italic; font-weight: 400; font-display: swap;
  src: url('../fonts/poppins-400-italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins'; font-style: italic; font-weight: 600; font-display: swap;
  src: url('../fonts/poppins-600-italic.woff2') format('woff2');
}
html { scroll-behavior: smooth; }
.cta-pulse { animation: ctapulse 2s infinite; }
@keyframes ctapulse {
  0%,100% { transform: scale(1); box-shadow: 0 10px 30px -5px rgba(244,245,23,.45); }
  50% { transform: scale(1.03); box-shadow: 0 14px 38px -4px rgba(244,245,23,.65); }
}
.accordion-content { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
#slidesTrack { transition: transform .45s ease; }
.btn-cta { transition: all .3s ease-in-out; }
.btn-cta:hover { transform: translateY(-3px) scale(1.02); filter: brightness(1.06); box-shadow: 0 16px 40px -6px rgba(244,245,23,.6); }
.price-card { transition: all .3s ease-in-out; }
.price-card:hover { transform: translateY(-6px); box-shadow: 0 28px 55px -18px rgba(0,0,0,.45); }
.float-card { transition: all .3s ease-in-out; }
.float-card:hover { transform: scale(1.05); }
.ribbon { position: absolute; top: 14px; right: -42px; transform: rotate(45deg); width: 170px; text-align: center; font-size: 10px; font-weight: 800; letter-spacing: .08em; padding: 6px 0; text-transform: uppercase; z-index: 10; }
