.newsletter-banner{background:linear-gradient(135deg,#f5f5f7,#fff 50%,#fafafa);overflow:hidden;padding:2rem 0;position:relative}.newsletter-banner:before{top:0}.newsletter-banner:after,.newsletter-banner:before{background:linear-gradient(90deg,transparent,#ff6e0d 50%,transparent);content:"";height:2px;left:0;opacity:.3;position:absolute;right:0}.newsletter-banner:after{bottom:0}.newsletter-banner__container{margin:0 auto;max-width:var(--container-max-width,1400px);padding:0 var(--container-padding,2rem)}.newsletter-banner__content{align-items:center;display:flex;gap:3rem;justify-content:space-between;margin:0 auto;max-width:1200px}.newsletter-banner__text{flex:1;max-width:500px}.newsletter-banner__title{background:linear-gradient(135deg,#1d1d1f,#ff6e0d);-webkit-background-clip:text;font-size:3rem;font-weight:700;line-height:1.1;margin:0 0 .5rem;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.newsletter-banner__subtitle{color:#6e6e73;font-size:1.125rem;font-weight:400;line-height:1.5;margin:0}.newsletter-banner__form-wrapper{flex:1;max-width:550px}.newsletter-banner__form{width:100%}.newsletter-banner__field-wrapper{align-items:stretch;background:#fff;border:1px solid #d2d2d7;border-radius:var(--radius-sm);box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;gap:.5rem;padding:.375rem;transition:all .3s ease}.newsletter-banner__field-wrapper:focus-within{background:#fff;border-color:#ff6e0d;box-shadow:0 0 0 4px rgba(255,110,13,.1),0 2px 12px rgba(0,0,0,.08)}.newsletter-banner__field{flex:1;position:relative}.newsletter-banner__input{background:transparent;border:none;color:#1d1d1f;font-size:1rem;outline:none;padding:1rem 1.25rem;transition:all .3s ease;width:100%}.newsletter-banner__input::placeholder{color:#86868b;font-weight:400}.newsletter-banner__button{background:linear-gradient(135deg,#ff6e0d,#ff8b21);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;outline:none;overflow:hidden;padding:1rem 2.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.newsletter-banner__button:before{background:linear-gradient(135deg,#ff8b21,#ffa042);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.newsletter-banner__button:hover:before{opacity:1}.newsletter-banner__button:hover{box-shadow:0 12px 32px rgba(255,110,13,.4);transform:translateY(-2px)}.newsletter-banner__button:active{transform:translateY(0)}.newsletter-banner__button span{position:relative;z-index:1}.newsletter-banner__message{border-radius:12px;font-size:.875rem;margin-top:1rem;padding:.75rem 1rem;text-align:center}.newsletter-banner__message--error{background:rgba(220,38,38,.1);border:1px solid rgba(220,38,38,.3);color:#fca5a5}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}@media (max-width:1024px){.newsletter-banner{padding:1.5rem 0}.newsletter-banner__content{gap:2rem}.newsletter-banner__title{font-size:2.5rem}.newsletter-banner__subtitle{font-size:1rem}}@media (max-width:768px){.newsletter-banner{padding:1.25rem 0}.newsletter-banner__content{flex-direction:column;gap:2rem;text-align:center}.newsletter-banner__text{max-width:100%}.newsletter-banner__title{font-size:2rem}.newsletter-banner__subtitle{font-size:.95rem}.newsletter-banner__form-wrapper{max-width:100%;width:100%}.newsletter-banner__field-wrapper{flex-direction:column;gap:.5rem;padding:.5rem}.newsletter-banner__input{font-size:.95rem;padding:.875rem 1rem}.newsletter-banner__button{font-size:.95rem;padding:.875rem 1.5rem;width:100%}}@media (max-width:480px){.newsletter-banner{padding:1rem 0}.newsletter-banner__container{padding:0 1rem}.newsletter-banner__title{font-size:1.75rem}.newsletter-banner__subtitle{font-size:.9rem}}