/* NEWSLETTER (NEW DESIGN) – External stylesheet
   Save as: /css/newsletter.css
   Purpose: identical rendering across pages
*/
:root{
  --brand-primary:#0A4C6A;
  --brand-primary-dark:#06364b;
  --brand-accent:#F59E0B;
  --brand-bg:#f5f7fb;
  --card-border:#e1e6ee;
  --text-main:#111827;
  --text-muted:#4b5563;
}

/* ===== NEWSLETTER SECTION (NEW DESIGN) ===== */
.newsletter-section{
  padding: 40px 0 60px;
  background: #ffffff;
}
.newsletter-section .section-header{
  text-align:center;
  margin-bottom: 18px;
}
.newsletter-section .section-header h2{
  font-size: 1.5rem;
  color: var(--brand-primary);
  margin: 0 0 6px;
  font-weight: 800;
}
.newsletter-section .section-header p{
  font-size: 0.96rem;
  color: var(--text-muted);
  margin: 0;
  line-height: 1.7;
}
.newsletter-card{
  max-width: 720px;
  margin: 0 auto;
  background: var(--brand-bg);
  border-radius: 18px;
  padding: 20px 18px 22px;
  border: 1px solid var(--card-border);
  box-shadow: 0 10px 26px rgba(15,23,42,0.04);
}
.newsletter-form .form-group{
  margin-bottom: 12px;
  font-size: 0.95rem;
}
.newsletter-form label{
  display:block;
  margin-bottom: 4px;
  color: var(--text-main);
  font-weight: 600;
}
.newsletter-form input[type="text"],
.newsletter-form input[type="email"],
.newsletter-form input[type="tel"]{
  width:100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #d0d5dd;
  font-family: inherit;
  font-size: 0.95rem;
  background: #ffffff;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.newsletter-form input:focus{
  border-color: rgba(10,76,106,.55);
  box-shadow: 0 0 0 4px rgba(10,76,106,.10);
}
.checkbox-group .checkbox-label{
  display:flex;
  align-items:flex-start;
  gap: 8px;
  font-size: 0.9rem;
  color: var(--text-muted);
  line-height: 1.6;
}
.checkbox-group input[type="checkbox"]{
  margin-top: 4px;
  transform: translateY(1px);
}
.checkbox-group a{
  color: var(--brand-primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.checkbox-group a:hover{
  color: var(--brand-primary-dark);
}

/* Button compatible with your existing .btn + .btn-primary convention */
.btn.btn-primary{
  background: var(--brand-primary);
  color:#ffffff;
  border: 1px solid var(--brand-primary);
  padding: 9px 16px;
  border-radius: 999px;
  font-weight: 700;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, transform .15s ease;
  width: 100%;
}
.btn.btn-primary:hover{
  background: var(--brand-primary-dark);
  border-color: var(--brand-primary-dark);
  transform: translateY(-1px);
}
