/* Newsletter UI Styles */
.nl-hero {
  max-width: 1100px;
  margin: 0 auto var(--spacing-8);
  padding: var(--spacing-10) var(--spacing-6);
  background: linear-gradient(135deg, rgba(240,176,0,0.1), rgba(0,212,255,0.08));
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-xl);
}
.nl-hero h1 {
  font-size: var(--font-size-4xl);
  line-height: 1.1;
  margin-bottom: var(--spacing-3);
}
.nl-hero p {
  color: var(--gray-300);
}
.nl-actions {
  display: flex;
  gap: var(--spacing-3);
  margin-top: var(--spacing-6);
}
.nl-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--spacing-6);
}
.nl-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-xl);
  padding: var(--spacing-6);
  transition: transform var(--transition-normal), box-shadow var(--transition-normal);
}
.nl-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-xl); }
.nl-card h3 { margin-bottom: var(--spacing-2); }
.nl-card p { color: var(--gray-300); }
.nl-card .nl-card-actions { display:flex; gap: var(--spacing-2); margin-top: var(--spacing-4); }

/* Subscribe/Manage forms */
.nl-form {
  max-width: 720px;
  margin: 0 auto;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-xl);
  padding: var(--spacing-6);
}
.nl-form .form-row { display:grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-4); }
.nl-form .form-group { margin-bottom: var(--spacing-4); }
.nl-form label { display:block; margin-bottom: var(--spacing-2); color: var(--gray-200); font-weight:600; }
.nl-form input[type="text"],
.nl-form input[type="email"],
.nl-form textarea,
.nl-form select {
  width: 100%;
  padding: var(--spacing-3) var(--spacing-4);
  border-radius: var(--radius-lg);
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(0,0,0,0.2);
  color: var(--white);
}
.nl-checkboxes { display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--spacing-3); }
.nl-checkbox { display:flex; align-items:center; gap: var(--spacing-2); background: rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); padding: var(--spacing-3); border-radius: var(--radius); }

/* Issues listing */
.nl-issue { background: rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-radius: var(--radius-xl); padding: var(--spacing-6); }
.nl-issue h3 { margin-bottom: var(--spacing-2); }
.nl-issue small { color: var(--gray-400); }
.nl-issue .content { margin-top: var(--spacing-3); color: var(--gray-100); }

@media (max-width: 768px) {
  .nl-form .form-row { grid-template-columns: 1fr; }
  .nl-actions { flex-direction: column; }
}

