.elementor-1279 .elementor-element.elementor-element-c3974f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:10px;--padding-right:10px;}.elementor-1279 .elementor-element.elementor-element-c3974f1:not(.elementor-motion-effects-element-type-background), .elementor-1279 .elementor-element.elementor-element-c3974f1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B1B1B;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1279 .elementor-element.elementor-element-1e71ca0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:36px;font-weight:600;color:#FFFFFF;}.elementor-1279 .elementor-element.elementor-element-f535a21{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-1279 .elementor-element.elementor-element-efeb39d{--display:flex;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-1279 .elementor-element.elementor-element-6fa989c{--divider-border-style:solid;--divider-color:#248EC8;--divider-border-width:2px;}.elementor-1279 .elementor-element.elementor-element-6fa989c .elementor-divider-separator{width:58%;margin:0 auto;margin-center:0;}.elementor-1279 .elementor-element.elementor-element-6fa989c .elementor-divider{text-align:center;padding-block-start:12px;padding-block-end:12px;}.elementor-1279 .elementor-element.elementor-element-4d6d71f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-1279 .elementor-element.elementor-element-e96b75f{--display:flex;}.elementor-1279 .elementor-element.elementor-element-d08f79a{--divider-border-style:solid;--divider-color:#248EC8;--divider-border-width:2px;}.elementor-1279 .elementor-element.elementor-element-d08f79a .elementor-divider-separator{width:58%;margin:0 auto;margin-center:0;}.elementor-1279 .elementor-element.elementor-element-d08f79a .elementor-divider{text-align:center;padding-block-start:12px;padding-block-end:12px;}.elementor-1279 .elementor-element.elementor-element-a27ad8e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-1279 .elementor-element.elementor-element-1a9fbba{--display:flex;}.elementor-1279 .elementor-element.elementor-element-beb2e91{--divider-border-style:solid;--divider-color:#248EC8;--divider-border-width:2px;}.elementor-1279 .elementor-element.elementor-element-beb2e91 .elementor-divider-separator{width:58%;margin:0 auto;margin-center:0;}.elementor-1279 .elementor-element.elementor-element-beb2e91 .elementor-divider{text-align:center;padding-block-start:12px;padding-block-end:12px;}.elementor-1279 .elementor-element.elementor-element-b832cd7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}@media(max-width:767px){.elementor-1279 .elementor-element.elementor-element-c3974f1{--padding-top:80px;--padding-bottom:80px;--padding-left:15px;--padding-right:15px;}}/* Start custom CSS for shortcode, class: .elementor-element-c99c525 */.service-sec.sec-1 .service-sec-container {
    display: flex;
    align-items: flex-start;
    gap: 40px;
    max-width: 1200px;
    margin: auto;
    flex-wrap: wrap;
}

/* Left Text – large width */
.service-sec.sec-1 .text {
    flex: 1 1 60%;
}

.service-sec.sec-1 .text h2 {
    font-size: 28px;
    margin-bottom: 16px;
}

.service-sec.sec-1 .text p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 16px;
}

.service-sec.sec-1 .service-btn {
    display: inline-block;
    padding: 10px 22px;
    background: #0073aa;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
}

/* Right Image – small width */
.service-sec.sec-1 .image {
    flex: 0 0 35%;
    text-align: center;
}

.service-sec.sec-1 .image img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* MOBILE */
@media (max-width: 768px) {
    .service-sec.sec-1 .service-sec-container {
        flex-direction: column;
        gap: 24px;
    }

    .service-sec.sec-1 .text,
    .service-sec.sec-1 .image {
        flex: 1 1 100%;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3f4842a *//* SECTION 2 – IMAGE BOX GRID */


.service-box-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
    max-width: 1200px;
    margin: auto;
}

.service-box {
    background: #fff;
    border-radius: 12px;
    padding: 24px 20px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.service-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 45px rgba(0,0,0,.12);
}

.service-box-image img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.service-box-title {
    font-size: 18px;
    margin: 18px 0 12px;
}

.service-box-btn {
    display: inline-block;
    margin-top: 12px;
    padding: 10px 22px;
    background: #248ec8;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
}
.service-box-btn:hover {
    display: inline-block;
    margin-top: 12px;
    padding: 10px 22px;
    background: #248ec8;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
}

/* MOBILE OPTIMIZATION */
@media (max-width: 768px) {
    .service-box-grid {
        padding: 10px 15px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-40b42dc */.service-sec-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    max-width: 1200px;
    margin: auto;
    flex-wrap: wrap; /* allows mobile stacking */
}

.service-sec .text {
    flex: 1 1 480px;
}

.service-sec .text h2 {
    font-size: 28px;
    margin-bottom: 16px;
}

.service-sec .text p {
    font-size: 16px;
    line-height: 1.6;
}

.service-sec .image {
    flex: 1 1 480px;
    text-align: center;
}

.service-sec .image img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

/* MOBILE */
@media (max-width: 768px) {
    .service-sec-container {
        flex-direction: column-reverse;
        gap: 24px;
    }

    .service-sec .text,
    .service-sec .image {
        flex: 1 1 100%;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-71a5797 */.service-sec.sec-4 .service-sec-container {
    display: flex;
    align-items: flex-start;
    gap: 40px;
    max-width: 1200px;
    margin: auto;
    flex-wrap: wrap;
}

/* Left Image – small width */
.service-sec.sec-4 .image {
    flex: 0 0 35%; /* small width */
    text-align: center;
}

.service-sec.sec-4 .image img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* Right Text – large width */
.service-sec.sec-4 .text {
    flex: 1 1 60%; /* large width */
}

.service-sec.sec-4 .text h2 {
    font-size: 28px;
    margin-bottom: 16px;
}

.service-sec.sec-4 .text p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 16px;
}

.service-sec.sec-4 .service-btn {
    display: inline-block;
    padding: 10px 22px;
    background: #0073aa;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
}

/* MOBILE */
@media (max-width: 768px) {
    .service-sec.sec-4 .service-sec-container {
        flex-direction: column;
        gap: 24px;
    }

    .service-sec.sec-4 .image,
    .service-sec.sec-4 .text {
        flex: 1 1 100%;
    }
}/* End custom CSS */