.sign-free-floating-banner { position: fixed; bottom: 120px; right: 24px; z-index: 100; }
.sign-free-floating-banner button { width: 45px; aspect-ratio: 1; position: absolute; z-index: 1; right: 0; top: 0; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; background-color: #fff; color: #505050; border: 0; outline: 0; border-radius: 50rem; transition: background-color 0.15s; }
.sign-free-floating-banner button:hover { background-color: oklch(from currentColor 0.95 c h); }
.sign-free-floating-banner img { width: min(400px, 22vw); aspect-ratio: 4/3; object-fit: cover; border-radius: 25px; box-shadow: 0px 15.14px 60.57px 0px #00000040; }

@media (max-width: 768px) {
	.sign-free-floating-banner { right: 1.5rem; }
	.sign-free-floating-banner button { width: 4rem; font-size: 1.6rem; }
	.sign-free-floating-banner img { width: 50vw; border-radius: 2.5rem; }
}