/*
 * ITK homepage compatibility repair, 2026-09-30.
 * ElementsKit Lite 4.0.7 is loading split assets while Pro 3.5.0's
 * flip-box layout stylesheet is absent. Restore only the homepage
 * service-card layout; preserve all Elementor content, images and links.
 */
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box {
    position: relative;
    width: 100%;
    -webkit-perspective: 1000px;
    perspective: 1000px;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-inner {
    position: relative;
    width: 100%;
    height: 100%;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    transition: transform .75s ease-in-out;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front,
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    margin: 0 !important;
    padding: 24px !important;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front {
    align-items: flex-end;
    -webkit-transform: rotateX(0deg);
    transform: rotateX(0deg);
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back {
    align-items: center;
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-inner-wrap {
    position: relative;
    width: 100%;
    z-index: 2;
    -webkit-transform: none;
    transform: none;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front::after,
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    border-radius: inherit;
    pointer-events: none;
    opacity: 1;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front::after {
    background: linear-gradient(180deg, rgba(0,0,0,.06) 30%, rgba(0,0,0,.35) 55%, rgba(0,0,0,.88) 78%, rgba(0,0,0,.94) 100%) !important;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back::after {
    background: rgba(6,17,36,.92) !important;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front-title {
    margin: 0 !important;
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 700;
    line-height: 1.5 !important;
    text-shadow: 0 2px 4px rgba(0,0,0,.65);
    overflow-wrap: anywhere;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front-sub-title {
    margin: 0 !important;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back .ekit-flip-box-inner-wrap {
    max-height: 100%;
    overflow-y: auto;
    scrollbar-width: thin;
    overscroll-behavior: contain;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back-title {
    margin: 0 0 12px !important;
    color: #fff !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    overflow-wrap: anywhere;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back-description {
    margin: 0 !important;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    box-sizing: border-box;
    margin: 18px 0 0 !important;
    padding: 10px 18px !important;
    color: #fff !important;
    line-height: 1.5 !important;
}
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box.box_hover:hover .ekit-flip-box-inner,
body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box.box_hover:focus-within .ekit-flip-box-inner {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
}
@media (max-width: 767px) {
    body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-front-title,
    body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-back-title {
        font-size: 18px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.page-id-25 .elementor-25 .elementor-element-dd72b80 .ekit-flip-box-inner {
        transition: none !important;
    }
}
