/* PAE Newsletter */
.pae-newsletter-wrap { background: #fff; border-radius: 14px; padding: 44px 40px; }
.pae-nl-layout-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 0; padding: 0; }
.pae-nl-split-aside  { background: var(--pae-primary); min-height: 380px; display: flex; align-items: center; justify-content: center; border-radius: 14px 0 0 14px; overflow: hidden; }
.pae-nl-split-aside img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pae-nl-split-content { padding: 48px 40px; }
.pae-nl-title    { font-size: clamp(20px,2.5vw,30px); font-weight: 800; color: #1e1e2e; margin: 0 0 10px; }
.pae-nl-subtitle { font-size: 14px; line-height: 1.7; color: #64748b; margin: 0 0 24px; }
.pae-nl-form     { display: flex; flex-direction: column; gap: 10px; }
.pae-nl-field    { width: 100%; }
.pae-nl-field-row { display: flex; gap: 8px; }
.pae-nl-email-wrap { flex: 1; }
.pae-nl-input {
  width: 100%; padding: 13px 16px; border-radius: 8px;
  border: 1.5px solid #e2e8f0; background: #f8fafc;
  font-size: 14px; color: #374151; outline: none;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.pae-nl-input:focus { border-color: var(--pae-primary); box-shadow: 0 0 0 3px rgba(79,70,229,0.1); }
.pae-nl-submit {
  padding: 13px 24px; background: var(--pae-primary); color: #fff;
  border: none; border-radius: 8px; font-size: 14px; font-weight: 600;
  cursor: pointer; transition: background 0.25s ease; white-space: nowrap;
  display: flex; align-items: center; gap: 8px;
}
.pae-nl-submit:hover { background: var(--pae-primary-dark); }
.pae-nl-gdpr   { font-size: 12px; color: #94a3b8; margin: 4px 0 0; }
.pae-nl-message { margin-top: 10px; font-size: 13px; font-weight: 500; display: none; }
.pae-nl-message.pae-show { display: block; }
.pae-nl-success { color: #166534; }
.pae-nl-error   { color: #991b1b; }
.pae-nl-btn-loading { display: none; }
.pae-nl-submit.pae-loading .pae-nl-btn-text    { display: none; }
.pae-nl-submit.pae-loading .pae-nl-btn-loading { display: inline; }
@media (max-width: 767px) {
  .pae-nl-layout-split { grid-template-columns: 1fr; }
  .pae-nl-split-aside  { min-height: 180px; border-radius: 14px 14px 0 0; }
  .pae-nl-field-row    { flex-direction: column; }
}
