/* Component refinements & micro-interactions */
.btn { position:relative; isolation:isolate; }
.btn.primary { background:linear-gradient(90deg,var(--accent) 0%,var(--accent-alt) 50%,var(--accent) 100%); background-size:200% 100%; animation:btnShift 6s linear infinite; }
@keyframes btnShift { 0% { background-position:0 0;} 100% { background-position:-200% 0;} }
.btn.primary:after { content:""; position:absolute; inset:-2px; border-radius:inherit; padding:2px; background:linear-gradient(120deg,var(--accent) 0%,rgba(255,255,255,.4) 40%,var(--accent-alt) 80%); -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; opacity:0; transition:.4s opacity; }
.btn.primary:hover:after { opacity:.35; }

.price-card.popular:before { content:"POPULAR"; position:absolute; top:.65rem; right:-2.2rem; transform:rotate(35deg); background:var(--gradient-hot); color:#111; font-size:.55rem; letter-spacing:1px; font-weight:700; padding:.35rem 2.8rem; box-shadow:var(--shadow); }

.market-block, .feature-card, .price-card, .testimonial, .faq-item { transition:.4s border-color,.4s background,.4s transform; }
.market-block:hover, .feature-card:hover, .price-card:hover, .testimonial:hover, .faq-item:hover { border-color:var(--accent); }
.feature-card:hover { transform:translateY(-4px); }

.ticker::-webkit-scrollbar, .carousel-track::-webkit-scrollbar { width:6px; height:6px; }
.ticker::-webkit-scrollbar-thumb, .carousel-track::-webkit-scrollbar-thumb { background:#243347; border-radius:20px; }

.carousel-track { scroll-behavior:smooth; }
.carousel-track:active { cursor:grabbing; }

.faq-q { background:linear-gradient(90deg,#182332,#121a26); }
.faq-item.open .faq-q { background:linear-gradient(90deg,#1d2b3d,#162233); }
.faq-q:hover { filter:brightness(1.1); }

/* Reduced motion */
@media (prefers-reduced-motion:reduce) {
  .btn.primary { animation:none; }
  .scroll-indicator { animation:none; }
}
