.subscription-form-wrapper{display:flex;flex-direction:column;align-items:center;margin-top:2rem;padding:0 1rem}.subscription-form{display:flex;align-items:center;border:2px solid var(--primary);border-radius:50px;overflow:hidden;max-width:600px;width:100%;box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.form-step{display:flex;flex-grow:1;align-items:center}.form-step.hidden{display:none}.subscription-form input[type=email],.subscription-form input[type=text]{flex-grow:1;flex-shrink:1;flex-basis:0%;padding:1rem 1.2rem;border:none;outline:none;font-size:1rem;color:var(--text);background-color:var(--background);min-width:0;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.name-fields input:first-child{border-right:1px solid var(--background-alt)}.subscription-form input::placeholder{color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subscription-form button{background-color:var(--primary);color:#fff;border:none;padding:1rem 1.5rem;font-size:1rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background-color var(--transition-normal);border-radius:0 50px 50px 0;margin-left:-2px;display:flex;align-items:center;justify-content:center;position:relative}.subscription-form button:hover{background-color:var(--primary-dark)}.subscription-form button:disabled{opacity:.7;cursor:not-allowed}.subscription-form button .button-text{transition:opacity .3s ease}.spinner{border:3px solid rgba(255,255,255,.3);border-top:3px solid #fff;border-radius:50%;width:1.2rem;height:1.2rem;animation:spin 1s linear infinite;position:absolute;opacity:0;transition:opacity .3s ease}.spinner.hidden{display:none}.subscription-form button.loading .button-text{opacity:0}.subscription-form button.loading .spinner{opacity:1;display:block}.form-message{margin-top:1rem;padding:.8rem 1.2rem;border-radius:var(--radius-sm);font-size:.9rem;width:100%;max-width:600px;text-align:center;opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease}.form-message.hidden{display:none}.form-message.show{opacity:1;transform:translateY(0)}.form-message.success{background-color:#4caf501a;color:#4caf50;border:1px solid #4caf50}.form-message.error{background-color:#f443361a;color:#f44336;border:1px solid #f44336}@media (max-width: 768px){.subscription-form{max-width:95%;padding:0 .5rem}.subscription-form input{padding:.6rem .8rem;font-size:.9rem}.subscription-form button{padding:.6rem 1rem;font-size:.9rem}.subscription-form button .button-text{font-size:.9rem}}@media (max-width: 600px){.subscription-form.name-step-active{flex-direction:column;border-radius:var(--radius-md);padding:1rem}.subscription-form.name-step-active .form-step{width:100%;flex-direction:column}.subscription-form.name-step-active input{width:100%;margin-bottom:.75rem;border-radius:var(--radius-sm);padding:.8rem 1rem;font-size:1rem}.subscription-form.name-step-active .name-fields input:first-child{border-right:none;border-bottom:1px solid var(--background-alt)}.subscription-form.name-step-active .name-fields input:last-child{margin-bottom:0}.subscription-form.name-step-active button{width:100%;border-radius:var(--radius-sm);margin-left:0;margin-top:.75rem;padding:.8rem 1rem;font-size:1rem}.subscription-form.name-step-active button .spinner{width:1.2rem;height:1.2rem}}@media (max-width: 420px){.subscription-form{padding:0 .2rem;flex-direction:column;border-radius:var(--radius-md)}.form-step{width:100%;flex-direction:column}.subscription-form input{padding:.6rem .8rem;font-size:.85rem;width:100%;border-radius:var(--radius-sm);margin-bottom:.5rem}.name-fields input:first-child{border-right:none;border-bottom:1px solid var(--background-alt)}.name-fields input:last-child{border-bottom:none}.subscription-form button{width:calc(100% - 4px);border-radius:var(--radius-sm);margin-left:0;margin-top:.5rem;padding:.6rem 1rem;font-size:.9rem}.subscription-form button .button-text{font-size:.9rem}.spinner{width:1rem;height:1rem}}@media (max-width: 480px){.subscription-form{padding:0 .2rem}.subscription-form input{padding:.4rem .5rem;font-size:.8rem}.subscription-form button{padding:.4rem .6rem;font-size:.8rem}.subscription-form button .button-text{font-size:.8rem}.spinner{width:.8rem;height:.8rem}}@media (max-width: 400px){.subscription-form input[type=text],.subscription-form button,.subscription-form button .button-text{font-size:.7rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
