.newsletter-slide-in{
  position:fixed;
  z-index:25;
  right:clamp(16px,3vw,36px);
  bottom:clamp(16px,3vw,36px);
  width:clamp(360px,30vw,420px);
  max-width:calc(100vw - 32px);
  border:1px solid #cbd0df;
  border-radius:16px;
  background:#fff;
  color:#10183d;
  box-shadow:0 18px 55px rgba(12,22,58,.24);
  opacity:0;
  transform:translateY(18px);
  transition:opacity .18s ease,transform .18s ease;
}
.newsletter-slide-in[hidden]{display:none}
.newsletter-slide-in.is-visible{opacity:1;transform:translateY(0)}
.newsletter-slide-in__content{padding:28px}
.newsletter-slide-in h2{margin:0 34px 10px 0;font-size:clamp(1.55rem,3vw,2rem);line-height:1.02;letter-spacing:-.035em}
.newsletter-slide-in__content>p{margin:0;color:#59627d;line-height:1.5}
.newsletter-slide-in__close{position:absolute;top:10px;right:10px;display:grid;width:44px;min-height:44px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#10183d;font-size:1.7rem;line-height:1}
.newsletter-slide-in__close:hover{background:#eef0f6}
.newsletter-slide-in__form{display:grid;gap:10px;margin-top:20px}
.newsletter-slide-in__form label{font-size:.8rem;font-weight:800;letter-spacing:.015em}
.newsletter-slide-in__form input{width:100%;min-height:48px}
.newsletter-slide-in__form button[type="submit"]{width:100%;min-height:48px;border-radius:4px;background:#10183d;color:#fff}
.newsletter-slide-in__form button[type="submit"]:hover{background:#f08a18;color:#111}
.newsletter-slide-in__form button[disabled]{cursor:wait;opacity:.65}
.newsletter-slide-in__form small{color:#68708a;font-size:.76rem;line-height:1.4}
.newsletter-slide-in__feedback{min-height:0;margin:0;color:#283252;font-size:.88rem;line-height:1.45}
.newsletter-slide-in__feedback:empty{display:none}

@media(max-width:600px){
  .newsletter-slide-in{right:8px;bottom:8px;left:8px;width:auto;max-width:none;max-height:calc(100svh - 16px);overflow:auto;border-radius:16px}
  .newsletter-slide-in__content{padding:22px 20px 20px}
  .newsletter-slide-in h2{font-size:clamp(1.4rem,7vw,1.8rem)}
  .newsletter-slide-in__form{margin-top:16px}
}

@media(max-width:340px){
  .newsletter-slide-in__content{padding:18px 16px 16px}
  .newsletter-slide-in h2{margin-right:38px;font-size:1.35rem}
  .newsletter-slide-in__content>p{font-size:.9rem}
  .newsletter-slide-in__form{gap:8px;margin-top:12px}
  .newsletter-slide-in__form input,.newsletter-slide-in__form button[type="submit"]{min-height:44px}
}

@media(prefers-reduced-motion:reduce){.newsletter-slide-in{transition:none}}
