/* CTA & Footer UI/UX Enhancements */
/* CTA Banner improvements */
.cta-banner {
  padding: 80px 3% 120px;
  background-position: center center;
  background-size: cover;
  position: relative;
  overflow: visible;
}

.cta-overlay {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 36px;
  border-radius: 20px;
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 28px;
  align-items: center;
  background: linear-gradient(135deg, rgba(27,56,43,0.95), rgba(33,98,58,0.92));
  box-shadow: 0 25px 60px rgba(11,30,22,0.45);
}

.cta-content h2 { font-size: 2.4rem; line-height: 1.05; }
.cta-content p  { font-size: 1.05rem; color: rgba(230,255,240,0.95); }

/* Buttons: primary and secondary more prominent, consistent sizes */
.cta-buttons { display:flex; flex-direction: column; gap: 12px; }
.cta-buttons a { display:flex; align-items:center; justify-content:center; gap:10px; padding: 14px 20px; border-radius: 12px; font-weight:800; font-size:1rem; }

.cta-btn.primary-btn { background: linear-gradient(90deg,#ffffff,#eefaf0); color: #10321f; box-shadow: 0 10px 30px rgba(0,0,0,0.12); }
.cta-btn.primary-btn:hover { transform: translateY(-3px); box-shadow: 0 18px 48px rgba(0,0,0,0.18); }

.cta-btn.secondary-btn { background: transparent; border: 2px solid rgba(255,255,255,0.18); color: #fff; }
.cta-btn.secondary-btn:hover { background: rgba(255,255,255,0.06); transform: translateY(-3px); }

/* Quick contact panel inside CTA for fast actions */
.cta-quick-contact { background: rgba(255,255,255,0.06); padding: 18px; border-radius: 12px; display:flex; flex-direction:column; gap:10px; }
.cta-quick-contact a { display:flex; align-items:center; gap:10px; color: #eafff0; text-decoration:none; font-weight:700; }
.cta-quick-contact a .icon { width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; border-radius:8px; background: rgba(255,255,255,0.08); }

/* CTA stats refinement */
.cta-stats { display:flex; gap:18px; justify-content:flex-start; margin-top:10px; }
.cta-stat { background: rgba(255,255,255,0.03); padding:8px 12px; border-radius:10px; color: rgba(255,255,255,0.95); font-weight:700; }

/* Responsive adjustments for CTA */
@media (max-width: 980px) {
  .cta-overlay { grid-template-columns: 1fr; padding:28px; }
  .cta-buttons { flex-direction:row; justify-content:center; }
  .cta-buttons a { flex:1; }
}

/* Smooth reveal for CTA elements */
.cta-overlay, .cta-overlay * { transition: transform 0.28s ease, opacity 0.28s ease; }

/* FOOTER Improvements */
.footer {
  padding: 48px 5% 30px;
  background: linear-gradient(180deg, #0d2a20, #0f3426);
  color: #dff9ea;
}

.footer-top { display:grid; grid-template-columns: 320px 1fr 260px; gap: 28px; align-items:start; }

.footer-brand p { color: rgba(223,249,231,0.9); max-width: 420px; }

.footer-links ul { column-count: 2; column-gap: 20px; }
.footer-links a { color: rgba(223,249,231,0.95); display:inline-block; padding:6px 0; }

/* Quick contact box */
.footer-quick-contact { background: rgba(255,255,255,0.04); padding: 18px; border-radius: 12px; display:flex; flex-direction:column; gap:8px; }
.footer-quick-contact a { color:#eafff0; font-weight:700; display:flex; gap:10px; align-items:center; text-decoration:none; }
.footer-quick-contact a .cf-icon { width:38px; height:38px; border-radius:8px; background: linear-gradient(135deg,#4fc874,#2fa05a); display:inline-flex; align-items:center; justify-content:center; color:#fff; font-weight:800; }

/* Footer bottom: compact and useful */
.footer-bottom { display:flex; flex-direction:column; align-items:center; gap:10px; padding-top:18px; border-top: 1px solid rgba(255,255,255,0.04); }
.footer-bottom .legal { color: rgba(218,241,224,0.6); font-size:0.9rem; }

/* Back to top / Floating CTA adjustments */
.floating-actions .whatsapp { box-shadow: 0 10px 30px rgba(79,200,116,0.18); }
.floating-actions .scroll-top { background: rgba(255,255,255,0.95); color: #10321f; border-radius: 12px; padding:10px; }

/* Accessibility: focus styles */
.cta-btn:focus, .footer-quick-contact a:focus, .cta-quick-contact a:focus { outline: 3px solid rgba(79,200,116,0.18); outline-offset:4px; }

@media (max-width: 768px) {
  .footer-top { grid-template-columns: 1fr; }
  .footer-links ul { column-count: 1; }
  .cta-overlay { padding:22px; border-radius:14px; }
}
