@keyframes showModal{0%{transform:translate(110%)}to{transform:translate(0)}}@keyframes hideModal{0%{transform:translate(0)}to{transform:translate(110%)}}.ff-phone{display:flex;flex-direction:column;gap:.4rem}.ff-phone:has(input:focus-visible) .ff-phone__inner{outline:2px solid var(--focusColor,#292424);outline-offset:4px}.ff-phone:has(input:focus,input:focus-visible,input:not(:-moz-placeholder-shown)) label{font-size:1.2rem;top:1.8rem}.ff-phone:has(input:focus,input:focus-visible,input:not(:placeholder-shown)) label{font-size:1.2rem;top:1.8rem}.ff-phone:has(input:valid:not(:-moz-placeholder-shown)) .ff-phone__svg-wrapper{display:flex}.ff-phone:has(input:valid:not(:placeholder-shown)) .ff-phone__svg-wrapper{display:flex}.ff-phone:has(input:valid:not(:-moz-placeholder-shown)) .-valid-input{display:block}.ff-phone:has(input:valid:not(:placeholder-shown)) .-valid-input{display:block}.ff-phone.-invalid .ff-phone__inner{--tw-border-opacity:1;border-color:rgb(241 80 41/var(--tw-border-opacity))}.ff-phone.-invalid .ff-phone__svg-wrapper{display:flex;--tw-bg-opacity:1;background-color:rgb(241 80 41/var(--tw-bg-opacity))}.ff-phone.-invalid .-invalid-input{display:block}.ff-phone.-required label:after{--tw-text-opacity:1;color:rgb(41 36 36/var(--tw-text-opacity));--tw-content:"*";content:var(--tw-content)}.ff-phone__inner{border-radius:99999px;border-width:2px;height:100%;position:relative;--tw-border-opacity:1;border-color:rgb(41 36 36/var(--tw-border-opacity))}.ff-phone__svg-wrapper{align-items:center;border-radius:100%;display:flex;height:1.8rem;justify-content:center;position:absolute;right:1rem;top:50%;width:1.8rem;--tw-bg-opacity:1;background-color:rgb(41 36 36/var(--tw-bg-opacity));transform:translateY(-50%)}.ff-phone__svg-wrapper,.ff-phone__svg-wrapper svg{display:none;--tw-text-opacity:1;color:rgb(250 247 240/var(--tw-text-opacity))}.ff-phone__svg-wrapper svg{height:auto;max-width:55%}.ff-phone input{background-color:transparent;font-size:1.6rem;height:100%;line-height:1;padding:2.4rem 2rem 1.2rem;width:100%}@media (min-width:641px){.ff-phone input{font-size:1.8rem;padding-left:3rem;padding-right:3rem}}.ff-phone input:focus{outline:2px solid transparent;outline-offset:2px}.ff-phone label{font-size:1.6rem;left:2rem;line-height:1;position:absolute;top:50%}@media (min-width:641px){.ff-phone label{font-size:1.8rem;left:3rem}}.ff-phone label{transform:translateY(-50%);transition:top .35s cubic-bezier(.4,.8,.74,1),font-size .35s cubic-bezier(.4,.8,.74,1)}
