
/* Elementor bridge: lets Elementor sections and buttons use the approved design classes */
body .elementor-section.mt-section > .elementor-container{max-width:1280px;margin:0 auto;padding:0 32px;box-sizing:border-box}
body .elementor-section.mt-hero .elementor-column,
body .elementor-section.mt-cta .elementor-column{position:static}
body .elementor-section.mt-hero{padding-top:110px;padding-bottom:70px}
body .elementor-section.mt-paper{background:var(--paper);border-top:1px solid var(--line)}
body .elementor-section.mt-raw,
body .elementor-section.mt-raw > .elementor-container,
body .elementor-section.mt-raw .elementor-column,
body .elementor-section.mt-raw .elementor-widget-wrap{padding:0!important;margin:0!important;max-width:none!important;width:100%!important;gap:0}
body .elementor-section.mt-raw .elementor-widget:not(:last-child){margin-bottom:0}
body .elementor-widget .elementor-widget-container .hero-bg{position:absolute;inset:0;pointer-events:none}
body .mt-btn .elementor-button{display:inline-flex;align-items:center;gap:12px;border:2px solid transparent;border-radius:999px;padding:15px 26px;font-weight:800;font-size:15px;line-height:1.2;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s;box-shadow:none}
body .mt-btn:hover .elementor-button{transform:translateY(-2px)}
body .mt-btn-lime .elementor-button{background:var(--lime);color:var(--navy)}
body .mt-btn-lime .elementor-button:hover{background:var(--lime-2)}
body .mt-btn-navy .elementor-button{background:var(--navy);color:var(--white)}
body .mt-btn-navy .elementor-button:hover{background:var(--navy-3)}
body .mt-btn-line .elementor-button{border-color:currentColor;background:transparent;color:var(--white)}
body .elementor-section.reveal, body .elementor-column.reveal{opacity:1}

/* v1.3: columns that hold absolutely positioned decoration must not become the positioning box */
body .mt-static, body .elementor-column.mt-static, body .elementor-widget-wrap.mt-static { position: static !important; }
body .elementor-column.mt-static > .elementor-widget-wrap { position: static; }

/* v1.4: the design's own CSS grids, applied to the Elementor containers so the layout matches exactly */
body .elementor-section.mt-hero > .elementor-container,
body .elementor-section.mt-who > .elementor-container,
body .elementor-section.mt-sol > .elementor-container,
body .elementor-section.mt-ladder > .elementor-container { display: grid; align-items: center; }
body .elementor-section.mt-hero > .elementor-container { grid-template-columns: 1.15fr .85fr; gap: 60px; }
body .elementor-section.mt-who > .elementor-container { grid-template-columns: 1.1fr .9fr; gap: 80px; }
body .elementor-section.mt-sol > .elementor-container { grid-template-columns: 1fr 1fr; gap: 70px; }
body .elementor-section.mt-ladder > .elementor-container { grid-template-columns: .85fr 1.15fr; gap: 60px; }
body .elementor-section[class*="mt-"] > .elementor-container > .elementor-column { width: auto !important; }
body .elementor-section.mt-hero .elementor-widget-container,
body .elementor-section.mt-hero .elementor-widget-container * { color: inherit; }
body .elementor-section.mt-hero { color: #FFFFFF; }
body .elementor-section.mt-ladder { color: #FFFFFF; }
body .elementor-section.mt-ladder .elementor-widget-container * { color: inherit; }
@media (max-width: 1024px) {
  body .elementor-section.mt-hero > .elementor-container,
  body .elementor-section.mt-who > .elementor-container,
  body .elementor-section.mt-sol > .elementor-container,
  body .elementor-section.mt-ladder > .elementor-container { grid-template-columns: 1fr; }
}
