/**
 * Elementor compatibility - zero extra spacing so DAP sections stay pixel-perfect.
 */

.elementor-page .elementor-section.elementor-section-boxed > .elementor-container {
  max-width: none;
}

.elementor-page .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 0;
}

.elementor-page .elementor-widget-wrap {
  padding: 0;
}

.elementor-page .elementor-section,
.elementor-page .elementor-column,
.elementor-page .elementor-widget {
  margin-bottom: 0;
}

.elementor-page [class*="elementor-widget-dap_"] {
  width: 100%;
}

.elementor-page .elementor-section-stretched {
  left: 0 !important;
  width: 100% !important;
}

/* Prevent body text color leaking into DAP footer/nav widgets. */
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] footer,
.elementor-page [class*="elementor-widget-dap_"][class*="nav"] nav {
  color: rgba(255, 255, 255, 0.55);
}

/* Social icon color inherits from Elementor Style tab (theme sets color on child i). */
.elementor-page [class*="elementor-widget-dap_"] .social-btn i,
.elementor-page [class*="elementor-widget-dap_"] .soc i {
  color: inherit !important;
}

/* Default footer colors when Style tab values are empty (home layout). */
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .footer-desc,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-desc,
.elementor-page .elementor-widget-dap_home_footer .footer-desc,
.elementor-page .elementor-widget-dap_home_footer .foot-desc {
  color: rgba(255, 255, 255, 0.38) !important;
}

.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .footer-col h5,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-col h5,
.elementor-page .elementor-widget-dap_home_footer .footer-col h5 {
  color: rgba(255, 255, 255, 0.28) !important;
}

.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .footer-col a,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-col a,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-links a,
.elementor-page .elementor-widget-dap_home_footer .footer-col a,
.elementor-page .elementor-widget-dap_home_footer .footer-col a:visited {
  color: rgba(255, 255, 255, 0.55) !important;
}

.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .footer-col a:hover,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-col a:hover,
.elementor-page .elementor-widget-dap_home_footer .footer-col a:hover {
  color: rgba(255, 255, 255, 0.9) !important;
}

.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .footer-bottom p,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-bottom p,
.elementor-page .elementor-widget-dap_home_footer .footer-bottom p {
  color: rgba(255, 255, 255, 0.25) !important;
}

.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-badge,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .foot-pill,
.elementor-page .elementor-widget-dap_home_footer .foot-badge {
  color: rgba(255, 255, 255, 0.3) !important;
}

.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .social-btn,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .social-btn i,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .soc,
.elementor-page [class*="elementor-widget-dap_"][class*="footer"] .soc i,
.elementor-page .elementor-widget-dap_home_footer .social-btn,
.elementor-page .elementor-widget-dap_home_footer .social-btn i {
  color: rgba(255, 255, 255, 0.5) !important;
}

/* Privacy / Terms - natural page scroll (no nested scroll trap on mobile) */
.page-template-template-privacy-policy-php .elementor,
.page-template-template-privacy-policy-php .elementor-section-wrap,
.page-template-template-privacy-policy-php .elementor-section,
.page-template-template-privacy-policy-php .elementor-container,
.page-template-template-privacy-policy-php .elementor-column,
.page-template-template-privacy-policy-php .elementor-column-wrap,
.page-template-template-privacy-policy-php .elementor-widget-wrap,
.page-template-template-privacy-policy-php .elementor-element,
.page-template-template-privacy-policy-php .elementor-widget-container,
.page-template-template-terms-php .elementor,
.page-template-template-terms-php .elementor-section-wrap,
.page-template-template-terms-php .elementor-section,
.page-template-template-terms-php .elementor-container,
.page-template-template-terms-php .elementor-column,
.page-template-template-terms-php .elementor-column-wrap,
.page-template-template-terms-php .elementor-widget-wrap,
.page-template-template-terms-php .elementor-element,
.page-template-template-terms-php .elementor-widget-container {
  overflow: visible !important;
  min-height: 0 !important;
  max-height: none !important;
  height: auto !important;
}

.page-template-template-privacy-policy-php .elementor-widget-dap_legal_body_privacy,
.page-template-template-privacy-policy-php .elementor-widget-dap_legal_body_terms,
.page-template-template-terms-php .elementor-widget-dap_legal_body_privacy,
.page-template-template-terms-php .elementor-widget-dap_legal_body_terms {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}

@media screen and (max-width: 991px) {
  .page-template-template-privacy-policy-php .elementor-widget-dap_legal_body_privacy .wrap,
  .page-template-template-privacy-policy-php .elementor-widget-dap_legal_body_terms .wrap,
  .page-template-template-terms-php .elementor-widget-dap_legal_body_privacy .wrap,
  .page-template-template-terms-php .elementor-widget-dap_legal_body_terms .wrap {
    width: 100%;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .page-template-template-privacy-policy-php .legal-body,
  .page-template-template-terms-php .legal-body {
    width: 100%;
    max-width: 100%;
  }

  .page-template-template-privacy-policy-php .legal-content,
  .page-template-template-terms-php .legal-content {
    width: 100%;
    max-width: 100%;
  }
}
