.btn-primary{animation:shine 12s ease-in-out infinite;background:linear-gradient(105deg,transparent 40%,hsla(0,0%,100%,.2) 45%,hsla(0,0%,100%,.1) 50%,transparent 60%),linear-gradient(180deg,rgba(147,197,253,.1),transparent 50%,rgba(30,58,138,.15)),linear-gradient(135deg,#0a0e27,#151e3f 10%,#1e3a8a 30%,#2563eb 50%,#1e40af 70%,#1e3a8a 90%,#0f172a);background-size:200% 200%,100% 100%,150% 150%;border:none;border-radius:10px;box-shadow:0 6px 12px rgba(15,23,42,.4),inset 0 1px 3px hsla(0,0%,100%,.2),inset 0 -1px 3px rgba(0,0,0,.4);color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;letter-spacing:.02em;overflow:hidden;padding:1rem 2.5rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:before{background:linear-gradient(45deg,transparent 30%,hsla(0,0%,100%,.3) 50%,transparent 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg) translateX(-100%);transition:transform .6s;width:200%}.btn-primary:hover{box-shadow:0 10px 20px rgba(15,23,42,.5),inset 0 2px 4px hsla(0,0%,100%,.3),inset 0 -2px 4px rgba(0,0,0,.5),0 0 30px rgba(59,130,246,.4);transform:translateY(-3px) scale(1.02)}.btn-primary:hover:before{transform:rotate(45deg) translateX(100%)}.btn-primary-simple{background:var(--primary);border:none;border-radius:10px;box-shadow:0 4px 14px rgba(59,130,246,.25);color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;letter-spacing:.02em;padding:1rem 2.5rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary-simple:hover{background:var(--primary-dark);box-shadow:0 8px 24px rgba(59,130,246,.35);transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid var(--primary);border-radius:10px;color:var(--primary);cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;letter-spacing:.02em;padding:1rem 2.5rem;text-decoration:none;transition:all .3s}.btn-secondary:hover{background:var(--primary);box-shadow:0 4px 6px rgba(30,58,138,.2);color:#fff;transform:translateY(-2px)}.btn-large{font-size:1.0625rem;padding:1.125rem 3rem}.btn-small{font-size:.875rem;padding:.75rem 1.5rem}.btn-full{text-align:center;width:100%}@media (max-width:768px){.btn-large,.btn-primary,.btn-primary-simple,.btn-secondary{font-size:1rem;padding:1rem 2.5rem}}@media (max-width:480px){.btn-large,.btn-primary,.btn-primary-simple,.btn-secondary{font-size:.9375rem;padding:.9375rem 2rem}}