.elementor-kit-15{--e-global-color-primary:#000000;--e-global-color-secondary:#5E6282;--e-global-color-text:#131D3B;--e-global-color-accent:#1556B8;--e-global-color-495bb87:#EEEEEE;--e-global-color-c0f3999:#1867DC;--e-global-color-1c79a81:#BDBDBD;--e-global-color-9e6b27f:#CBDEFA;--e-global-color-65e252e:#E6E6E6;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:42px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.25em;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.5em;--e-global-typography-6ba6f99-font-family:"Poppins";--e-global-typography-6ba6f99-font-size:54px;--e-global-typography-6ba6f99-font-weight:600;--e-global-typography-6ba6f99-line-height:1.2em;--e-global-typography-20b67aa-font-family:"Poppins";--e-global-typography-20b67aa-font-size:18px;--e-global-typography-20b67aa-font-weight:400;--e-global-typography-20b67aa-line-height:1.7em;--e-global-typography-584ef90-font-family:"Poppins";--e-global-typography-584ef90-font-size:14px;--e-global-typography-584ef90-font-weight:400;--e-global-typography-584ef90-line-height:1.5em;--e-global-typography-f3a213a-font-family:"Poppins";--e-global-typography-f3a213a-font-size:42px;--e-global-typography-f3a213a-font-weight:600;--e-global-typography-f3a213a-line-height:1.25em;--e-global-typography-f1ce944-font-family:"Poppins";--e-global-typography-f1ce944-font-size:22px;--e-global-typography-f1ce944-font-weight:600;--e-global-typography-f1ce944-line-height:1.4em;background-color:#F9F9F9;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-15 e-page-transition{background-color:#FFBC7D;}.elementor-kit-15 h1{color:var( --e-global-color-primary );font-size:40px;font-weight:600;}.elementor-kit-15 h2{color:var( --e-global-color-primary );font-size:30px;font-weight:600;}.elementor-kit-15 h3{color:var( --e-global-color-primary );font-size:20px;font-weight:600;}.elementor-kit-15 h4{color:var( --e-global-color-primary );font-size:18px;font-weight:600;}.elementor-kit-15 h5{color:var( --e-global-color-primary );font-size:20px;font-weight:600;}.elementor-kit-15 h6{color:var( --e-global-color-primary );font-size:16px;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-15{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:20px;--e-global-typography-6ba6f99-font-size:42px;--e-global-typography-6ba6f99-line-height:1.3em;--e-global-typography-20b67aa-font-size:17px;--e-global-typography-584ef90-font-size:13px;--e-global-typography-f3a213a-font-size:32px;--e-global-typography-f1ce944-font-size:20px;--e-global-typography-f1ce944-line-height:1.45em;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-15 h1{font-size:32px;}.elementor-kit-15 h2{font-size:26px;}.elementor-kit-15 h3{font-size:21px;}.elementor-kit-15 h4{font-size:18px;}.elementor-kit-15 h5{font-size:17px;}.elementor-kit-15 h6{font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-15{--e-global-typography-primary-font-size:26px;--e-global-typography-secondary-font-size:18px;--e-global-typography-6ba6f99-font-size:28px;--e-global-typography-6ba6f99-line-height:1.35em;--e-global-typography-20b67aa-font-size:16px;--e-global-typography-584ef90-font-size:12px;--e-global-typography-f3a213a-font-size:24px;--e-global-typography-f1ce944-font-size:18px;--e-global-typography-f1ce944-line-height:1.5em;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-15 h1{font-size:32px;}.elementor-kit-15 h2{font-size:25px;}.elementor-kit-15 h3{font-size:21px;}.elementor-kit-15 h4{font-size:18px;}.elementor-kit-15 h5{font-size:17px;}.elementor-kit-15 h6{font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}
.elementor-widget-text-editor a:hover {
   text-decoration: underline;
}

.jet-toggle__content-inner p:last-child {
    margin-bottom: 0;
}

/* ACCENT BUTTONS */
.ns_accent_btn .elementor-button-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
}

.ns_accent_btn .elementor-button-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #fff;
    --ns-btn-icon: 42px;
    min-width: var(--ns-btn-icon);
    max-width: var(--ns-btn-icon);
    min-height: var(--ns-btn-icon);
    max-height: var(--ns-btn-icon);
}

.ns_accent_btn .elementor-button-icon svg path {
    fill: var(--e-global-color-accent);
}
.ns_accent_btn .elementor-button-icon i {
    color: var(--e-global-color-accent);
}

.ns_accent_btn .elementor-button:hover .elementor-button-icon svg path {
    fill: var(--e-global-color-primary);
}
.ns_accent_btn .elementor-button:hover .elementor-button-icon i {
    color: var(--e-global-color-primary);
}

.ns_accent_btn .elementor-button-text {
    text-align: left;
}


/* SIMPLE BUTTONS */
.ns_simple_btn .elementor-button-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
}

.ns_simple_btn .elementor-button-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--e-global-color-accent);
    --ns-btn-icon: 42px;
    min-width: var(--ns-btn-icon);
    max-width: var(--ns-btn-icon);
    min-height: var(--ns-btn-icon);
    max-height: var(--ns-btn-icon);
}
.ns_simple_btn .elementor-button:hover .elementor-button-icon {
    background-color: #fff;
}

.ns_simple_btn .elementor-button-icon svg path {
    fill: #fff;
}
.ns_simple_btn .elementor-button-icon i {
    color: #fff;
}

.ns_simple_btn .elementor-button:hover .elementor-button-icon svg path {
    fill: var(--e-global-color-accent);
}
.ns_simple_btn .elementor-button:hover .elementor-button-icon i {
    color: var(--e-global-color-accent);
}

.ns_simple_btn .elementor-button-text {
    text-align: left;
}

.ns_services_img,
.ns_services_img a {
    height: 100%;
}

/* SERVICE CATEGORIES GROUP */
.ns_services_img a {
    width: 100%;
}

.ns_services_grouped_wrapper {
    width: 100%;
}

.ns_services_grouped_grid {
    display: grid;
    grid-template-columns: repeat(var(--ns-group-count), minmax(0, 1fr));
    gap: 10px;
    align-items: stretch;
}

.ns_service_group_col,
.ns_services_single_list {
    min-width: 0;
    border-radius: 10px;
    background-color: var(--e-global-color-495bb87);
    padding: 20px;
}

.ns_service_group_title {
    margin: 0 0 16px;
    font-size: 18px;
}

.ns_service_group_list,
.ns_services_single_list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

a.ns_service_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    text-decoration: none;
    color: var(--e-global-color-text);
}
a.ns_service_item:hover {
    color: var(--e-global-color-accent);
}

a.ns_service_item .ns_service_title {
    position: relative;
    display: inline-block;
}
a.ns_service_item .ns_service_title::before {
    content: "";
    position: absolute;
    width: 0px;
    height: 2px;
    left: auto;
    right: 0px;
    bottom: 2px;
    background-color: var(--e-global-color-accent);
    transition: 0.2s;
}
a.ns_service_item:hover .ns_service_title::before {
    width: 100%;
    left: 0px;
    right: auto;
}

.ns_service_arrow {
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.ns_service_item:hover .ns_service_arrow {
    transform: translateX(4px);
}

.ns_category_title .elementor-heading-title {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ns_services_img img {
    transition: opacity 0s ease-in-out;
    opacity: 1;
}

.ns_category_title .elementor-heading-title {
    transition: opacity 0s ease-in-out;
    opacity: 1;
}

.ns_service_item:hover .ns_service_img img,
.ns_service_item:hover .ns_category_title .elementor-heading-title {
    opacity: 0.5;
}

@media (max-width: 1024px) {
    .ns_services_grouped_grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .ns_simple_btn .elementor-button-icon,
    .ns_accent_btn .elementor-button-icon {
        --ns-btn-icon: 42px;
    }
}

@media (max-width: 767px) {
    .ns_services_grouped_grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    
    .ns_service_group_col,
    .ns_services_single_list {
        border-radius: 8px;
        padding: 16px;
    }
    
    .ns_simple_btn .elementor-button-icon,
    .ns_accent_btn .elementor-button-icon {
        --ns-btn-icon: 40px;
    }
}


/* CUSTOM TEXT STYLE */
.ns_text_style a {
    color: var(--e-global-color-accent);
}
.ns_text_style a:hover {
    text-decoration: underline;
    color: var(--e-global-color-c0f3999);
}

/* H2 HEADING */


.ns_text_style h2 {
    margin-bottom: 24px;
}

.ns_text_style h2:not(:first-child) {
    padding-top: 32px;
    margin-top: 32px;
    border-top: 2px dashed var(--e-global-color-accent);
}

/* H3 HEADING */
.ns_text_style h3:not(:first-child) {
    margin-top: 16px;
}

/* UNORDERED LIST */
.ns_text_style ul {
    list-style: none;
    padding-left: 1em;
}

.ns_text_style ul li {
    position: relative;
    margin-bottom: 0.5em;
}

.ns_text_style ul li::before {
    content: "";
    position: absolute;
    left: -1em;
    top: 0.55em;
    width: 0.5em;
    height: 0.5em;
    background-color: var(--e-global-color-accent);
    border-radius: 50%;
}

/* ORDERED LIST */
.ns_text_style ol {
    list-style: none;
    counter-reset: item;
    padding-left: 1.5em;
}

.ns_text_style ol li {
    counter-increment: item;
    position: relative;
    margin-bottom: 0.6em;
}

.ns_text_style ol li::before {
    content: counter(item);
    position: absolute;
    left: -1.9em;
    top: 0.23em;
    width: 1.4em;
    height: 1.4em;
    line-height: 1.5em;
    background-color: var(--e-global-color-accent);
    color: #ffffff;
    text-align: center;
    font-weight: 600;
    font-size: 85%;
    border-radius: 4px;
}

/* BLOCKQUOTE */
.trg_text_style blockquote {
    border-radius: 0;
    background-color: var(--e-global-color-495bb87);
    border-left: 4px solid var(--e-global-color-accent);
    padding: 20px 20px;
    margin: 32px 0;
    border-radius: 8px;
}

.trg_text_style blockquote p:last-child {
    margin-bottom: 0;
}


/* JET ACCORDION */

/* CUSTOM TEXT STYLE */

.ns_accordion .jet-toggle__content-inner a {
    color: var(--e-global-color-secondary);
}
.ns_accordion .jet-toggle__content-inner a:hover {
    text-decoration: underline;
    color: var(--e-global-color-b54d4dd);
}

/* UNORDERED LIST */
.ns_accordion .jet-toggle__content-inner ul {
    list-style: none;
    padding-left: 1em;
}

.ns_accordion .jet-toggle__content-inner ul li {
    position: relative;
    margin-bottom: 0.3em;
}

.ns_accordion .jet-toggle__content-inner ul li::before {
    content: "";
    position: absolute;
    left: -1em;
    top: 0.6em;
    width: 0.5em;
    height: 0.5em;
    background-color: var(--e-global-color-accent);
    border-radius: 50%;
}

/* ORDERED LIST */
.ns_accordion .jet-toggle__content-inner ol {
    list-style: none;
    counter-reset: item;
    padding-left: 1.5em;
}

.ns_accordion .jet-toggle__content-inner ol li {
    counter-increment: item;
    position: relative;
    margin-bottom: 0.3em;
}

.ns_accordion .jet-toggle__content-inner ol li::before {
    content: counter(item);
    position: absolute;
    left: -1.9em;
    top: 0.4em;
    width: 1.4em;
    height: 1.4em;
    line-height: 1.4em;
    background-color: var(--e-global-color-accent);
    color: #ffffff;
    text-align: center;
    font-weight: 600;
    font-size: 85%;
    border-radius: 4px;
}



/* SERVICE MENU CATEGORIES GROUP */
.ns_services_img_menu a {
    width: 100%;
}

.ns_services_grouped_wrapper_menu {
    width: 100%;
}

.ns_services_grouped_grid_menu {
    display: grid;
    grid-template-columns: repeat(var(--ns-group-count), minmax(0, 1fr));
    gap: 10px;
    align-items: stretch;
}

.ns_service_group_col_menu,
.ns_services_single_list_menu {
    min-width: 0;
    border-radius: 10px;
    background-color: var(--e-global-color-495bb87);
    padding: 20px;
}

.ns_service_group_title_menu {
    margin: 0 0 16px;
    font-size: 18px;
}

.ns_service_group_list_menu,
.ns_services_single_list_menu {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

a.ns_service_item_menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    text-decoration: none;
    color: var(--e-global-color-text);
}
a.ns_service_item_menu:hover {
    color: var(--e-global-color-accent);
}

a.ns_service_item_menu .ns_service_title_menu {
    position: relative;
    display: inline-block;
}
a.ns_service_item_menu .ns_service_title_menu::before {
    content: "";
    position: absolute;
    width: 0px;
    height: 2px;
    left: auto;
    right: 0px;
    bottom: 2px;
    background-color: var(--e-global-color-accent);
    transition: 0.2s;
}
a.ns_service_item_menu:hover .ns_service_title_menu::before {
    width: 100%;
    left: 0px;
    right: auto;
}

.ns_service_arrow_menu {
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.ns_service_item_menu:hover .ns_service_arrow_menu {
    transform: translateX(4px);
}

.ns_category_title_menu .elementor-heading-title {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ns_services_img_menu img {
    transition: opacity 0s ease-in-out;
    opacity: 1;
}

.ns_category_title_menu .elementor-heading-title {
    transition: opacity 0s ease-in-out;
    opacity: 1;
}

.ns_service_item_menu:hover .ns_service_img_menu img,
.ns_service_item_menu:hover .ns_category_title_menu .elementor-heading-title {
    opacity: 0.5;
}

@media (max-width: 1024px) {
    .ns_services_grouped_grid_menu {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .ns_services_grouped_grid_menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    
    .ns_service_group_col_menu,
    .ns_services_single_list_menu {
        border-radius: 8px;
        padding: 16px;
    }

}


/* FOOTER MENU */
.ns_footer_menu li.menu-item a {
    position: relative;
    display: inline-block;
}
.ns_footer_menu li.menu-item a::before {
    content: "";
    position: absolute;
    width: 0px;
    height: 2px;
    left: auto;
    right: 0px;
    bottom: 2px;
    background-color: var(--e-global-color-accent);
    transition: 0.2s;
}
.ns_footer_menu li.menu-item a:hover::before {
    width: 100%;
    left: 0px;
    right: auto;
}



/* Mobile horizontal scroll for service grouped grid */
@media (max-width: 1024px) {
  .ns_services_grouped_grid,
  .ns_services_grouped_grid_menu {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    max-width: 100%;
    padding: 0 16px 12px 0;

    /* Touch scrolling */
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    touch-action: pan-x;
  }

  .ns_services_grouped_grid .ns_service_group_col,
  .ns_services_grouped_grid_menu .ns_service_group_col_menu {
    flex: 0 0 280px;
    min-width: 280px;
    max-width: 280px;
    scroll-snap-align: start;
  }
  
  .ns_services_grouped_grid .ns_service_group_col:first-child,
  .ns_services_grouped_grid_menu .ns_service_group_col_menu:first-child {
    margin-left: 16px !important;
  }

  /* Prevent child content from shrinking badly */
  .ns_services_grouped_grid .ns_service_item,
  .ns_services_grouped_grid_menu .ns_service_item_menu {
    white-space: nowrap;
  }

  /* Firefox scrollbar */
  .ns_services_grouped_grid,
  .ns_services_grouped_grid_menu {
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 0, 0, 0.35) rgba(0, 0, 0, 0.08);
  }

  /* Chrome, Safari, Edge scrollbar */
  .ns_services_grouped_grid::-webkit-scrollbar,
  .ns_services_grouped_grid_menu::-webkit-scrollbar {
    height: 6px;
  }

  .ns_services_grouped_grid::-webkit-scrollbar-track,
  .ns_services_grouped_grid_menu::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.08);
    border-radius: 999px;
  }

  .ns_services_grouped_grid::-webkit-scrollbar-thumb,
  .ns_services_grouped_grid_menu::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.35);
    border-radius: 999px;
  }

  .ns_services_grouped_grid::-webkit-scrollbar-thumb:hover,
  .ns_services_grouped_grid_menu::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.5);
  }
}/* End custom CSS */