@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');

body { font-family: 'DM Sans', sans-serif !important; -webkit-font-smoothing: antialiased; }

.elementor-page .entry-title, .elementor-page .page-title { display: none !important; }

.elementor-post__meta-data, .entry-meta, .post-meta, .author-name, .byline, a[rel="author"], .posted-by, .entry-date, .posted-on, .elementor-post-date, .elementor-post-author, .post-date, .post-author, span.posted-on, span.byline, .date, time.entry-date { display: none !important; }

a:focus, button:focus, input:focus, select:focus, textarea:focus { outline: 3px solid #1D9E75 !important; outline-offset: 2px !important; }

::selection { background: #E1F5EE; color: #0A2744; }

.wpforms-field input[type="text"], .wpforms-field input[type="email"], .wpforms-field input[type="tel"], .wpforms-field input[type="number"], .wpforms-field input[type="url"], .wpforms-field input[type="password"], .wpforms-field input[type="date"], .wpforms-field select, .wpforms-field textarea { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; color: #111827 !important; background: #ffffff !important; border: 1.5px solid #9CA3AF !important; border-radius: 6px !important; padding: 11px 14px !important; width: 100% !important; box-shadow: none !important; outline: none !important; }

.wpforms-field input:focus, .wpforms-field select:focus, .wpforms-field textarea:focus { border-color: #1D9E75 !important; box-shadow: 0 0 0 3px rgba(29,158,117,0.12) !important; outline: none !important; }

.wpforms-submit, button.wpforms-submit { font-family: 'DM Sans', sans-serif !important; font-size: 15px !important; font-weight: 600 !important; color: #ffffff !important; background: #1D9E75 !important; border: none !important; border-radius: 10px !important; padding: 14px 32px !important; width: 100% !important; cursor: pointer !important; }

.wpforms-submit:hover, button.wpforms-submit:hover { background: #0F6E56 !important; }

@media (max-width: 768px) {
  .elementor-widget-button {
    text-align: center !important;
  }
  
  .elementor-widget-button .elementor-button-wrapper {
    text-align: center !important;
  }
}

/* Join Our Panel mobile spacing fix */
@media (max-width: 768px) {
  .elementor-widget-text-editor p {
    margin-bottom: 16px;
  }
  .elementor-widget-text-editor strong {
    display: block;
    margin-top: 20px;
  }
}