.subscription-banner{background:linear-gradient(135deg,#1e3a5f,#0f172a);overflow:hidden;padding:50px 20px;position:relative}.subscription-banner__bg{background-image:radial-gradient(circle at 20% 50%,rgba(59,130,246,.15) 0,transparent 50%),radial-gradient(circle at 80% 80%,rgba(16,185,129,.1) 0,transparent 50%);bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.subscription-banner__container{margin:0 auto;max-width:800px;position:relative;text-align:center}.subscription-banner__icon{animation:bounce 2s ease infinite;font-size:64px;margin-bottom:24px}.subscription-banner__title{color:#fff;font-size:36px;font-weight:700;line-height:1.3;margin:0 0 16px}@media (max-width:640px){.subscription-banner__title{font-size:28px}}.subscription-banner__highlight{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;background-clip:text}.subscription-banner__text{color:hsla(0,0%,100%,.8);font-size:18px;line-height:1.6;margin:0 auto 32px;max-width:600px}@media (max-width:640px){.subscription-banner__text{font-size:16px}}.subscription-banner__form{margin:0 auto;max-width:500px}.subscription-banner__input-wrap{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;display:flex;gap:12px;padding:8px}@media (max-width:500px){.subscription-banner__input-wrap{flex-direction:column;gap:8px}}.subscription-banner__input{background:#fff;border:none;border-radius:8px;color:#1f2937;flex:1;font-size:16px;outline:none;padding:16px 20px}.subscription-banner__input::-moz-placeholder{color:#9ca3af}.subscription-banner__input::placeholder{color:#9ca3af}.subscription-banner__input:focus{box-shadow:0 0 0 3px rgba(59,130,246,.3)}.subscription-banner__button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:16px 32px;transition:transform .2s,box-shadow .2s;white-space:nowrap}.subscription-banner__button:hover{box-shadow:0 4px 12px rgba(16,185,129,.4);transform:translateY(-2px)}.subscription-banner__button:disabled{cursor:not-allowed;opacity:.7;transform:none}.subscription-banner__button--verify{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.subscription-banner__button--verify:hover{box-shadow:0 4px 12px rgba(59,130,246,.4)}@media (max-width:500px){.subscription-banner__button{width:100%}}.subscription-banner__button-loader{animation:spin 1s linear infinite;display:inline-flex}.subscription-banner__hint{align-items:center;color:hsla(0,0%,100%,.6);display:flex;font-size:13px;gap:6px;justify-content:center;margin:16px 0 0}.subscription-banner__hint svg{opacity:.7}.subscription-banner__error{background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.4);border-radius:8px;color:#fca5a5;font-size:14px;margin:12px 0 0;padding:12px 16px}.subscription-banner__verify{margin:0 auto;max-width:400px}.subscription-banner__verify-text{color:hsla(0,0%,100%,.9);font-size:16px;margin:0 0 24px}.subscription-banner__verify-text strong{color:#fff}.subscription-banner__code-input{display:flex;gap:12px;justify-content:center}@media (max-width:400px){.subscription-banner__code-input{flex-direction:column}}.subscription-banner__code{background:hsla(0,0%,100%,.1);border:2px solid hsla(0,0%,100%,.3);border-radius:8px;color:#fff;font-size:24px;font-weight:700;letter-spacing:8px;outline:none;padding:16px;text-align:center;width:160px}.subscription-banner__code:focus{background:hsla(0,0%,100%,.15);border-color:#3b82f6}.subscription-banner__code::-moz-placeholder{color:hsla(0,0%,100%,.3);letter-spacing:8px}.subscription-banner__code::placeholder{color:hsla(0,0%,100%,.3);letter-spacing:8px}@media (max-width:400px){.subscription-banner__code{width:100%}}.subscription-banner__resend{color:hsla(0,0%,100%,.6);font-size:14px;margin:16px 0 0}.subscription-banner__resend a{color:#60a5fa;text-decoration:none}.subscription-banner__resend a:hover{text-decoration:underline}.subscription-banner__success{margin:0 auto;max-width:400px}.subscription-banner__success-icon{align-items:center;animation:pop .4s ease;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;font-size:32px;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.subscription-banner__success-text{color:hsla(0,0%,100%,.9);font-size:16px;margin:0 0 16px}.subscription-banner__promo{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;display:inline-flex;gap:12px;margin-bottom:16px;padding:16px 24px}.subscription-banner__promo-code{color:#92400e;font-size:28px;font-weight:700;letter-spacing:2px}.subscription-banner__copy{align-items:center;background:rgba(0,0,0,.1);border:none;border-radius:6px;color:#92400e;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background .2s}.subscription-banner__copy:hover{background:rgba(0,0,0,.15)}.subscription-banner__promo-hint{color:hsla(0,0%,100%,.7);font-size:14px;margin:0}.subscription-banner__features{display:flex;flex-wrap:wrap;gap:32px;justify-content:center;margin-top:48px}@media (max-width:640px){.subscription-banner__features{gap:16px}}.subscription-banner__feature{align-items:center;color:hsla(0,0%,100%,.7);display:flex;font-size:14px;gap:8px}.subscription-banner__feature-icon{font-size:20px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pop{0%{transform:scale(0)}70%{transform:scale(1.1)}to{transform:scale(1)}}.spinner{animation:spin 1s linear infinite}
