/* Nima 2026: approved graphic and button refinements only. */
body .aux-button,
body .aux-button .aux-overlay,
body .aux-modern-button,
body .aux-modern-button .aux-overlay,
body .aux-modern-button .aux-overlay::after,
body .aux-modern-button .aux-overlay::before,
body .elementor-button,
body .elementor-button::before,
body .elementor-button::after,
body .bdt-ep-button,
body .bdt-ep-button::before,
body .bdt-ep-button::after,
body .bdt-button,
body .wp-block-button__link,
body .wpcf7 input[type="submit"],
body .wpcf7 button[type="submit"],
body .elementor-form button[type="submit"],
body .aux-contact-form input[type="submit"],
body input[type="submit"],
body input[type="button"],
body input[type="reset"],
body button[type="submit"],
body .nima-page .btn,
body .nima-btn,
body .nima-cta-btn,
body .nima-demo-btn {
    border-radius: 13px !important;
}

/* Nima banner and footer: a continuous blue field with soft white edges. */
.elementor-83 .elementor-element.elementor-element-2e181957::after {
    content: "";
    position: absolute;
    inset: auto 0 -1px;
    height: clamp(220px, 24vw, 380px);
    background: url("banner-white-transition-v4.svg") center bottom / 100% 100% no-repeat;
    pointer-events: none;
    z-index: 0;
}
.elementor-83 .elementor-element.elementor-element-2e181957 > .elementor-container,
.elementor-76 .elementor-element.elementor-element-770c6dfe > .elementor-container {
    position: relative;
    z-index: 1;
}
.elementor-76 .elementor-element.elementor-element-770c6dfe {
    background-color: #2C95B3;
}
.elementor-76 .elementor-element.elementor-element-770c6dfe::before {
    content: "";
    position: absolute;
    inset: -1px 0 auto;
    height: clamp(170px, 17vw, 230px);
    background: url("footer-white-transition-v4.svg") center top / 100% 100% no-repeat;
    pointer-events: none;
    z-index: 0;
}

/* Keep footer artwork visible on narrow screens without stretching it to the full column height. */
@media (max-width: 767px) {
    .elementor-76 .elementor-element.elementor-element-770c6dfe:not(.elementor-motion-effects-element-type-background),
    .elementor-76 .elementor-element.elementor-element-770c6dfe > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-size: auto 1000px;
        background-position: 30% top;
    }
}

/* Preserve vertical parallax and its full image shadow, while clipping only horizontal overspill. */
.elementor-83 .elementor-element.elementor-element-2e181957 {
    overflow-x: clip;
    overflow-y: visible;
}
/* Fade artwork into the copyright strip so the shared footer has no rectangular seam. */
.elementor-76 .elementor-element.elementor-element-770c6dfe:not(.elementor-motion-effects-element-type-background),
.elementor-76 .elementor-element.elementor-element-770c6dfe > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: linear-gradient(to bottom, transparent calc(100% - 150px), #2C95B3 100%), url("footer-atmosphere-v4.svg");
}
.elementor-76 .elementor-element.elementor-element-770c6dfe::after {
    content: "";
    position: absolute;
    inset: auto 0 10px;
    height: 180px;
    background: url("footer-learning-icons-v4.svg") center / auto 180px no-repeat;
    pointer-events: none;
    z-index: 0;
}
@media (max-width: 767px) {
    .elementor-76 .elementor-element.elementor-element-770c6dfe::after {
        height: 150px;
        background-size: auto 150px;
        background-position: 45% center;
    }
}
/* Dissolve the final transparent shadow pixels, including the image's own straight lower boundary. */
.elementor-83 .elementor-element.elementor-element-aec6631 img {
    -webkit-mask-image: linear-gradient(to bottom, #000 83%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 83%, transparent 100%);
}
