/* ===== CTA SECTION ===== */
.cta-section { padding: 0 20px 80px; }
.cta-card {
  background: var(--background);
  border: 1px solid var(--grey);
  border-radius: var(--radius-large);
  overflow: hidden;
  display: flex;
  max-width: 1280px;
  margin: 0 auto;
}
.cta-card-body {
  flex: 1;
  padding: 60px 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.cta-card-body h2 { font-size: 32px; font-weight: 700; line-height: 1.2; margin-bottom: 16px; }
.cta-card-body .subtitle {
  font-size: 20px;
  font-family: 'Georgia', serif;
  line-height: 1.4;
  margin-bottom: 32px;
}
.cta-form { display: flex; gap: 12px; max-width: 513px; }
.cta-input {
  flex: 1;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--navy);
  padding: 10px 0;
  font-size: 16px;
  font-family: 'Satoshi', sans-serif;
  color: var(--navy);
  outline: none;
  transition: border-color 0.2s;
}
.cta-input:focus { border-color: var(--orange); }
.cta-input::placeholder { color: var(--navy); opacity: .5; }
.cta-form-note { font-size: 12px; margin-top: 12px; opacity: .5; }
.cta-card-img { flex: 1; min-height: 400px; }
.cta-card-img img { width: 100%; height: 100%; object-fit: cover; }
.form-success {
  display: none;
  padding: 16px 0;
  color: #00b67a;
  font-weight: 700;
  font-size: 16px;
}
.form-success.show { display: block; }

/* CF7 form styling within CTA section */
.cta-card-body .wpcf7-form {
  display: flex;
  gap: 12px;
  max-width: 513px;
}
.cta-card-body .wpcf7-form p { margin: 0; }
.cta-card-body .wpcf7-form input[type="email"] {
  flex: 1;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--navy);
  padding: 10px 0;
  font-size: 16px;
  font-family: 'Satoshi', sans-serif;
  color: var(--navy);
  outline: none;
  transition: border-color 0.2s;
}
.cta-card-body .wpcf7-form input[type="email"]:focus { border-color: var(--orange); }
.cta-card-body .wpcf7-form input[type="submit"] {
  background: var(--navy);
  color: var(--background);
  font-weight: 500;
  padding: 10px 24px;
  border-radius: 50px;
  font-size: 16px;
  border: 1px solid var(--navy);
  cursor: pointer;
  font-family: 'Satoshi', sans-serif;
  transition: opacity .2s, transform 0.2s;
}
.cta-card-body .wpcf7-form input[type="submit"]:hover { opacity: .85; transform: scale(1.02); }
.cta-card-body .wpcf7-response-output { margin-top: 12px; font-size: 14px; }

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .cta-card { flex-direction: column; }
  .cta-card-img { min-height: 300px; }
}
@media (max-width: 768px) {
  .cta-card-body { padding: 32px 24px; }
  .cta-card-body h2 { font-size: 26px; }
  .cta-form { flex-direction: column; }
  .cta-form .btn-navy { justify-content: center; }
  .cta-card-body .wpcf7-form { flex-direction: column; }
}
