.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-eaab904:#86C3FF;--e-global-color-e68215f:#FFFFFF;--e-global-color-7ebd17f:#FFFFFFB8;--e-global-color-b6afec6:#000000;--e-global-color-e04479f:#071B36;--e-global-color-a37d4d4:#EDF5FF;--e-global-color-83c8d9d:#0B4FAC;--e-global-color-9966c69:#FFFFFF0F;--e-global-color-1078980:#FFFFFF4D;--e-global-color-fe83e01:#FFFFFF94;--e-global-color-cf61f5b:#FFFFFF24;--e-global-color-ea21b60:#0B2B57;--e-global-color-31cf9a5:#63748A;--e-global-color-972158b:#F6F9FD;--e-global-color-a351312:#081F3D21;--e-global-color-df1d12a:#1D6FF2;--e-global-color-95519b4:#0A1D35;--e-global-color-35a96ec:#FFFFFF9E;--e-global-color-66b0f71:#FFFFFFD1;--e-global-color-b3170ec:#6EB0FF;--e-global-color-6f56855:#FFFFFF8C;--e-global-color-309d20e:#DFEBF9;--e-global-color-27cc086:#B9CBE0;--e-global-color-feaae66:#0B2D5A;--e-global-color-8ae613e:#F7F9FC;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-923db0b-font-family:"Inter";--e-global-typography-923db0b-font-size:clamp(0.88rem, 1.08vw, 1.35rem);--e-global-typography-923db0b-font-weight:800;--e-global-typography-923db0b-text-transform:uppercase;--e-global-typography-923db0b-line-height:1.3em;--e-global-typography-9ca6a49-font-family:"Inter";--e-global-typography-9ca6a49-font-size:clamp(3rem, 6vw, 4rem);--e-global-typography-9ca6a49-font-weight:800;--e-global-typography-9ca6a49-line-height:1.05em;--e-global-typography-56e9d29-font-family:"Inter";--e-global-typography-56e9d29-font-size:clamp(.86rem,calc(.23rem + .74vw),1.16rem);--e-global-typography-56e9d29-font-weight:800;--e-global-typography-56e9d29-line-height:1.15em;--e-global-typography-0b5f785-font-family:"Inter";--e-global-typography-0b5f785-font-size:clamp(1.3rem, 1.5vw, 2rem);--e-global-typography-0b5f785-font-weight:800;--e-global-typography-0b5f785-line-height:1.05em;--e-global-typography-335d520-font-family:"Inter";--e-global-typography-335d520-font-size:clamp(1.35rem, 1.25vw, 1.9rem);--e-global-typography-335d520-font-weight:800;--e-global-typography-335d520-line-height:1.15em;--e-global-typography-335d520-letter-spacing:-0.025em;--e-global-typography-9a4550b-font-family:"Inter";--e-global-typography-9a4550b-font-size:clamp(1rem,calc(.88rem + .4vw),1.5rem);--e-global-typography-9a4550b-line-height:1.55em;--e-global-typography-d02c32d-font-family:"Inter";--e-global-typography-d02c32d-font-size:clamp(1.75rem, 3vw, 3rem);--e-global-typography-d02c32d-font-weight:800;--e-global-typography-d02c32d-line-height:1.15em;--e-global-typography-d02c32d-letter-spacing:-0.066em;--e-global-typography-f060276-font-family:"Inter";--e-global-typography-f060276-font-size:clamp(1.35rem, 1.25vw, 1.5rem);--e-global-typography-f060276-font-weight:800;--e-global-typography-f060276-line-height:1.08em;--e-global-typography-f060276-letter-spacing:-0.03em;--e-global-typography-94d4069-font-family:"Inter";--e-global-typography-94d4069-font-size:clamp(1.75rem, 1.75vw, 1.9rem);--e-global-typography-94d4069-font-weight:800;--e-global-typography-94d4069-line-height:1.02em;--e-global-typography-94d4069-letter-spacing:-0.04em;--e-global-typography-a312433-font-family:"Inter";--e-global-typography-a312433-font-size:clamp(0.7rem, .9vw, 1.15rem);--e-global-typography-a312433-font-weight:800;--e-global-typography-a312433-line-height:1.1em;--e-global-typography-598d383-font-family:"Inter";--e-global-typography-598d383-font-size:clamp(.9rem, calc(.25rem + 1.05vw), 1.65rem);--e-global-typography-598d383-font-weight:400;--e-global-typography-598d383-line-height:1.05em;--e-global-typography-415fac0-font-family:"Inter";--e-global-typography-415fac0-font-size:clamp(.86rem, calc(.33rem + .84vw), 1.26rem);--e-global-typography-415fac0-font-weight:700;--e-global-typography-415fac0-line-height:1.25em;--e-global-typography-415fac0-letter-spacing:-0.015em;--e-global-typography-7afab67-font-family:"Inter";--e-global-typography-7afab67-font-size:clamp(1rem, 1.05vw, 1.55rem);--e-global-typography-7afab67-font-weight:700;--e-global-typography-7afab67-line-height:1.2em;--e-global-typography-7afab67-letter-spacing:0.08em;--e-global-typography-7849744-font-family:"Inter";--e-global-typography-7849744-font-size:clamp(1.75rem, 2.4vw, 4rem);--e-global-typography-7849744-font-weight:800;--e-global-typography-7849744-line-height:1.1em;--e-global-typography-7849744-letter-spacing:-0.035em;color:var( --e-global-color-31cf9a5 );font-family:"Inter", Sans-serif;font-size:clamp(1rem,calc(.72rem + .4vw),1.5rem );line-height:1.68em;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   GLOBAL CSS FOUNDATION
   Mobile / Laptop / Desktop / 2K / 4K
   ========================================================= */


/* =========================================================
   GLOBAL RESPONSIVE SYSTEM
   ========================================================= */

:root {
    /*--shell: min(*/
    /*    112rem,*/
    /*    calc(100vw - clamp(2rem, 5vw, 8rem))*/
    /*);*/
    
    --shell: min(
    90rem,
    calc(100vw - clamp(1.5rem, 4vw, 6rem))
    );
}


/* =========================================================
   SAFE RESET
   ========================================================= */

html {
    box-sizing: border-box;

    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;

    /*
     * Fluid REM system:
     * 16px minimum
     * scales progressively on large screens
     * 32px maximum
     */
    font-size: clamp(
        100%,
        calc(.55vw + .5rem),
        200%
    );
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

html,
body {
    margin: 0;
    padding: 0;
    min-height: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}



/* =========================================================
   RESPONSIVE MEDIA
   ========================================================= */

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

video,
iframe {
    max-width: 100%;
}


/* =========================================================
   FORMS
   ========================================================= */

button,
input,
textarea,
select {
    font: inherit;
    color: inherit;
}

textarea {
    resize: vertical;
}

button,
input[type="button"],
input[type="submit"],
input[type="reset"],
[role="button"] {
    cursor: pointer;
}

button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
    cursor: default;
}


/* =========================================================
   MISC
   ========================================================= */

[hidden] {
    display: none !important;
}

a,
button,
input,
textarea,
select {
    -webkit-tap-highlight-color: transparent;
}


/* =========================================================
   GLOBAL RESPONSIVE CONTENT SHELL
   ========================================================= */

.elementor a:not(.elementor-button) {
    color: #0B4FAC;
}

.elementor a:not(.elementor-button):hover {
    color:#1D6FF2;
}


.site-shell {
    width: var(--shell) !important;
    max-width: none !important;
    min-width: 0;
    margin-inline: auto !important;
}

.dark-bg{
    background: linear-gradient(135deg,#06172f,#0b356c);
}

/* =========================================================
   GLOBAL LAYOUT UTILITIES
   ========================================================= */

.pad-tight {
    padding-block: clamp(2.5rem, 4vw, 4.5rem);
}

.pad-normal {
    padding-block: clamp(4rem, 6vw, 7rem);
}

.pad-large {
    padding-block: clamp(5rem, 8vw, 9rem);
}

.pad-hero {
    /*padding-block:*/
    /*   clamp(7rem, 10vw, 8rem);*/
     padding-block: clamp(2.5rem, 4vw, 4.5rem);
}


.scrollable {
    overflow: auto;
}


.no-overlay *{
    z-index: 2;
}

/*
 * Optional.
 * Usually NOT needed when the element
 * is already inside .site-shell.
 */
.page-padding {
    padding-inline: clamp(1rem, 3vw, 3rem);
}


/* =========================================================
   MOBILE SPACING
   0 – 767px
   ========================================================= */

@media (max-width: 767px) {

    .pad-tight {
        padding-block: clamp(2.5rem, 10vw, 3rem);
    }

    .pad-normal {
        padding-block: clamp(3rem, 12vw, 4rem);
    }

    .pad-large {
        padding-block: clamp(4rem, 15vw, 5rem);
    }

    .pad-hero {
        padding-block:
            clamp(6rem, 20vw, 8rem)
            clamp(3rem, 12vw, 4rem);
    }
}


.general-gap{
    gap:clamp(1rem, 2.2vw, 3rem)
}

.pad-block{
      padding-block:
        clamp(1.25rem, 1.8vw, 2.75rem);
}

.pad-inline{
    padding-inline:
        clamp(1.25rem, 1.8vw, 2.75rem);
}



/* =========================================================
   OPTIONAL MEDIA RATIO UTILITIES
   ========================================================= */

/* 16:9 image/video */

.hero-media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.hero-media img,
.hero-media video {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* 4:3 card image */

.card-image {
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}




/* ==========================================
   IMAGE SLIDER MEDIA
   ========================================== */

.image-slider .swiper-slide {
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.image-slider .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}


/* =========================================================
   BACKGROUND IMAGE UTILITY
   ========================================================= */

.hero-bg {
    position: relative;

    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}


/* =========================================================
   REUSABLE BACKGROUND OVERLAY
   ========================================================= */

.image-overlay {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.image-overlay::after {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 1;
    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(2, 14, 31, .94) 0%,
            rgba(3, 18, 39, .78) 43%,
            rgba(3, 18, 39, .25) 72%,
            rgba(3, 18, 39, .42) 100%
        ),
        linear-gradient(
            180deg,
            rgba(2, 14, 31, .18) 0%,
            rgba(2, 14, 31, .10) 53%,
            rgba(2, 14, 31, .92) 100%
        );
}


.image-overlay2 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    border-radius: clamp(1rem, 1.5vw, 2rem);

    overflow: hidden;
}


/* Image */
.image-overlay2 img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}


/* Blue gradient overlay */
.image-overlay2::after {

    content:"";
    position:absolute;
    inset:0;

    z-index:2;
    pointer-events:none;

    background:
        linear-gradient(180deg, transparent, rgba(4, 16, 35, .7))

}



/* Content must stay above the overlay */

.image-overlay > .site-shell,
.image-overlay > .overlay-content {
    position: relative;
    z-index: 2;
}


/* =========================================================
   RESPONSIVE HERO HEIGHT
   ========================================================= */

/*.hero-height {*/
/*    min-height: clamp(46rem, 78vh, 58rem);*/
/*}*/


/* Mobile */

@media (max-width: 767px) {

    .hero-height {
        /* fallback */
        min-height: clamp(38rem, 82vh, 48rem);

        /* modern mobile viewport */
        min-height: clamp(38rem, 82svh, 48rem);
    }
}


/* Laptop */

@media (min-width: 768px) and (max-width: 1199px) {

    .hero-height {
        min-height: clamp(42rem, 76vh, 50rem);
    }
}


/* ==========================================
   RANK MATH BREADCRUMB
   ========================================== */

.rank-math-breadcrumb {
    font-size: clamp(1rem, 1.08vw, 1.35rem);

    line-height: 1.4;
    font-weight: 600;
}

.rank-math-breadcrumb p {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .45em;

    margin: 0;
    padding: 0;
}

.rank-math-breadcrumb a {
    color: rgba(255, 255, 255, .72)!important;
    font: inherit;
    text-decoration: none;

    transition: color .3s ease;
}

.rank-math-breadcrumb a:hover {
    color: #fff!important;
}

.rank-math-breadcrumb .separator {
    color: rgba(255, 255, 255, .38);
}

.rank-math-breadcrumb .last {
    color: #fff!important;
    font: inherit;
    font-weight: 800;
}


/*==== BUTTON STYLES ======*/
.btn-base .elementor-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: clamp(3.2rem, 3vw, 4.2rem);
    padding:
        0 clamp(1.35rem, 1.8vw, 2.2rem);
    border-radius: 999px;
    transition:
        transform .25s ease,
        background-color .25s ease,
        color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;

    box-sizing: border-box;

    transition:
        transform .25s ease,
        background-color .3s ease,
        color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}
 
.primary-button .elementor-button{
    background: #ffffff;
    color: #071b36;
    border:
        .0625rem solid #ffffff;
    box-shadow:
        0 .8rem 2rem rgba(29,111,242,.22);
}

.dark-blue-btn .elementor-button{
    background: #071B36;
}

.primary-button .elementor-button:hover,.transparent-btn .elementor-button:hover, .dark-blue-btn .elementor-button:hover{
    background: #0b4fac;
    border-color: #0b4fac;
    color: #fff;
    transform: translateY(-.15rem);
    box-shadow:
        0 1rem 2.5rem rgba(29,111,242,.3);
}

.transparent-btn .elementor-button{
    background: #ffffff0f;
    border:
        .0625rem solid #ffffff4d;
     box-shadow:
        0 .8rem 2rem rgba(29,111,242,.22);    
}


/*=== Overview Cards ===*/
.overview-cards-grid{
    gap: clamp(.8rem, 1vw, 1.4rem);
}
.overview-card{
    min-height: clamp(13rem, 6vw, 17rem);
    padding: clamp(1.25rem, 1vw, 2rem);
    border-radius: 1.2rem;
    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.overview-card:hover {
    transform: translateY(-.25rem);

    border-color: rgba(29, 111, 242, .28);

    box-shadow:
        0 1.2rem 3rem rgba(5, 31, 66, .09);
}

/*=== Path Cards +===*/
.path-card{
    position: relative;
    overflow: hidden;
    min-height: clamp(16rem, 20vw, 19rem);
    padding: clamp(1.3rem, 1.6vw, 1.8rem);
    border-radius: 1.75rem;
    border: 1px solid rgb(8 31 61 / 10%);
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,250,253,.98));
    box-shadow: 0 1.4rem 4rem rgba(7,27,54,.07);
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.path-card::before{
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at 100% 0%, rgba(29, 111, 242, .10), transparent 28%), linear-gradient(135deg, rgba(255, 255, 255, .45), transparent 44%);
}
.path-card:hover{
    transform: translateY(-.28rem);
    box-shadow: 0 1.8rem 5rem rgba(7,27,54,.11);
    border-color:rgba(29,111,242,.22)
}

.featured-path {
    background:
        /* vertical grid */
        repeating-linear-gradient(
            90deg,
            rgba(255, 255, 255, .065) 0,
            rgba(255, 255, 255, .065) 1.5px,
            transparent 1.5px,
            transparent 4rem
        ),

        /* horizontal grid */
        repeating-linear-gradient(
            180deg,
            rgba(255, 255, 255, .065) 0,
            rgba(255, 255, 255, .065) 1.5px,
            transparent 1.5px,
            transparent 4rem
        ),

        /* blue glow */
        radial-gradient(
            circle at 18% 22%,
            rgba(79, 141, 255, .20),
            transparent 28rem
        ),

        /* white glow */
        radial-gradient(
            circle at 82% 18%,
            rgba(255, 255, 255, .08),
            transparent 20rem
        ),

        /* base */
        linear-gradient(
            145deg,
            #10284d 0%,
            #0a1d39 42%,
            #08172e 100%
        ) !important;

    border-radius: 1.75rem;

    outline: 1px solid rgba(255, 255, 255, .14);
    outline-offset: -1rem;

    box-shadow:
        0 2rem 5rem rgba(7, 27, 54, .18);
}

/* ==========================================
   FEATURED CARD SERVICE TAGS
   ========================================== */

.featured-path-container, .normal-path-container, .path-cards-grid {
    gap: clamp(.8rem, 1vw, 1.4rem);
}

.tags-style1 {
    width: auto !important;
    flex: 0 0 auto;
}

.tags-style1 .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: clamp(2.35rem, 1.25vw, 2.75rem);

    padding:
        clamp(.58rem, .45rem + .18vw, .72rem)
        clamp(.9rem, .7rem + .3vw, 1.1rem);

    border: .0625rem solid rgba(255, 255, 255, .24);
    border-radius: 999rem;

    background: rgba(255, 255, 255, .06);
    color: #fff;

    font-size: clamp(.78rem, .62vw, .95rem);
    font-weight: 800;
    line-height: 1.1em;

    white-space: nowrap;

    transition:
        background-color .25s ease,
        color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.tags-style1 .elementor-button:hover {
    background: #fff;
    color: #071b36;
    border-color: #fff;

    box-shadow:
        0 .5rem 1.4rem rgba(0, 0, 0, .14);
}

.tags-style1 .elementor-button:focus-visible {
    outline: .125rem solid #72b5ff;
    outline-offset: .18rem;
}

.tags-style2{
   border: 1px solid #1D6FF2;
   border-radius: 999rem;
}

/*=== Process Cards ===*/
.process-cards-grid{
    gap: clamp(.8rem, 1vw, 1.4rem);
}
.process-card{
  /*clamp(18rem, 18vw, 24rem);*/
    height: auto;
  padding: clamp(1.35rem, 1.2vw, 2rem);
  border: .0625rem solid rgba(255,255,255,.17);
  border-radius: clamp(1rem, .9vw, 1.35rem);
  background: rgba(255,255,255,.055);
  transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.process-card:hover {
    transform: translateY(-.3rem);
    border-color: rgba(134,195,255,.42);
    background: rgba(255,255,255,.09);
}

.process-number .elementor-heading-title{
    display: grid;
    place-items: center;
    width: clamp(2.9rem, 2.9vw, 4.1rem);
    height: clamp(2.9rem, 2.9vw, 4.1rem);
    border: .0625rem solid rgba(134,195,255,.5);
    border-radius: 50%;
    background: #092a56;
}

.process-pill .elementor-heading-title {
    display: inline-flex;
    align-items: center;

    padding:
        clamp(.42rem, .4vw, .58rem)
        clamp(.62rem, .55vw, .85rem);

    border: .0625rem solid rgba(255,255,255,.68);
    border-radius: 999rem;
    color: rgba(255,255,255,.68);
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: .09em;
}


/*=== Support Services ===*/
.support-services-grid{
    gap: clamp(.8rem, 1vw, 1.4rem);
}
.support-service-card{
    min-height: clamp(13rem, 13.5vw, 17rem);
    padding: clamp(
        1.45rem,
        1.6vw,
        2.25rem
    );

    border: .0625rem solid rgba(8, 49, 95, .14);

    border-radius: clamp(
        1rem,
        1vw,
        1.5rem
    );
    background: #f7faff;
        box-shadow:
        0 1.25rem 3rem rgba(8, 49, 95, .045);

    overflow: hidden;

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease,
        background-color .25s ease;
}

.support-service-card:hover {
    transform: translateY(-.2rem);

    border-color: rgba(29, 111, 242, .30);

    box-shadow:
        0 1.5rem 3.5rem rgba(8, 49, 95, .08);
}


/* ==========================================
   GLOBAL ACCORDION BASE
   ========================================== */

.accordion-base {

    --accordion-gap: clamp(.55rem, .5vw, .8rem);

    --accordion-title-padding:
        clamp(1.05rem, 1.1vw, 1.6rem)
        clamp(1.15rem, 1.25vw, 1.9rem);

    --accordion-content-padding:
        clamp(1.05rem, 1.1vw, 1.6rem)
        clamp(1.15rem, 1.25vw, 1.9rem)
        clamp(1.3rem, 1.35vw, 2rem);

    --icon-box:
        clamp(2.45rem,2.45vw,3.6rem);

    --icon-size:
        clamp(1.05rem,1.05vw,1.55rem);
}



/* Accordion wrapper */

.accordion-base .e-n-accordion {

    display:flex;
    flex-direction:column;

    gap:var(--accordion-gap);

}



/* Title */

.accordion-base .e-n-accordion-item-title {

    padding:
    var(--accordion-title-padding)!important;

    display:flex;
    align-items:center;

    gap:
    clamp(.8rem,.9vw,1.4rem);

}



.accordion-base .e-n-accordion-item-title-header {

    flex:1;
    min-width:0;

}


/* Elementor accordion icon color control */
.accordion-base .e-n-accordion-item-title-icon {
    --n-accordion-icon-color: currentColor !important;
}

.accordion-base .e-n-accordion-item-title-icon svg path {
    fill: currentColor !important;
}



/* Content */

.accordion-base .e-n-accordion-item > .e-con {
    padding:
    var(--accordion-content-padding)!important;
    gap:
    clamp(.7rem,.7vw,1rem);

}



/* ==========================================
   ICON SIZE + CENTER
   ========================================== */


.accordion-base .e-n-accordion-item-title-icon {

    width:var(--icon-box)!important;
    height:var(--icon-box)!important;

    min-width:var(--icon-box)!important;
    min-height:var(--icon-box)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:0!important;
    border-radius:50%;

}


.accordion-base 
.e-n-accordion-item-title-icon svg {

    width:var(--icon-size)!important;
    height:var(--icon-size)!important;
    display:block!important;
    margin:0!important;
    fill:currentColor;

}


/* SVG path */

.accordion-base 
.e-n-accordion-item-title-icon svg path {

    fill:currentColor!important;

}

.accordion-base .e-n-accordion-item {
    border-radius:
        clamp(.8rem, .7vw, 1.05rem);
    overflow:hidden;

}

.accordion-base
.e-n-accordion-item-title {

    border-radius:
        clamp(.8rem, .7vw, 1.05rem);

}

.accordion-base
.e-n-accordion-item[open] 
.e-con {

    border-radius:
        0 0 clamp(.8rem, .7vw, 1.05rem)
        clamp(.8rem, .7vw, 1.05rem);

}


.accordion-base
.e-n-accordion-item:not([open])
.e-n-accordion-item-title {

    border-radius:
        clamp(.8rem, .7vw, 1.05rem);

}

/* ==========================================
   ELEMENTOR + / - STATE CONTROL
   ========================================== */


/* closed */

.accordion-base
.e-n-accordion-item-title-icon .e-closed {

    display:flex!important;
    align-items:center;
    justify-content:center;

}


/* hide minus */

.accordion-base
.e-n-accordion-item-title-icon .e-opened {

    display:none!important;

}



/* opened */

.accordion-base
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon .e-closed {

    display:none!important;

}


.accordion-base
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon .e-opened {

    display:flex!important;
    align-items:center;
    justify-content:center;

}

/* ==========================================
   PERMIT ACCORDION
   ========================================== */

.permit-accordion .e-n-accordion-item {

background:#fff;
border:
.0625rem solid rgba(8,49,95,.16);
box-shadow:
0 .55rem 1.6rem rgba(0,22,52,.08);

}

/* ==========================================
   ACCORDION ICON
   ========================================== */


.permit-accordion 
.e-n-accordion-item-title-icon {

    background:#edf5ff;
    border:
    .0625rem solid rgba(29,111,242,.18);
    color:#1d6ff2;
}


.permit-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon {

    background:#1d6ff2;
    border-color:#1d6ff2;
    color:#fff;
}

.permit-accordion
.e-n-accordion-item-title:hover
.e-n-accordion-item-title-icon {

    background:#1d6ff2;
    border-color:#1d6ff2;
    color:#fff;
}

/* ==========================================
   FAQ ACCORDION
   ========================================== */

.faq-accordion .e-n-accordion-item {

background:#fff;
border:
.0625rem solid rgba(8,49,95,.16);
box-shadow:
0 .55rem 1.6rem rgba(0,22,52,.08);

}

/* ==========================================
  ACCORDION ICON
   ========================================== */


.faq-accordion 
.e-n-accordion-item-title-icon {

    background:#fff;
    border:
    .0625rem solid #dce2e8;
    color:#fff;
    box-shadow: 0 .3rem .8rem rgba(8, 31, 58, .05);
}

/* Normal closed (+) */

.faq-accordion
.e-n-accordion-item-title-icon
.e-closed svg path {

    fill:#071b36 !important;
}

/* Closed hover (+ becomes white) */

.faq-accordion
.e-n-accordion-item:not([open])
.e-n-accordion-item-title:hover
.e-n-accordion-item-title-icon
.e-closed svg path {
    fill:#fff !important;
}

.faq-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon,
.faq-accordion
.e-n-accordion-item:hover
.e-n-accordion-item-title-icon{

    background:#0b63f6 !important;
    border-color:#0b63f6 !important;
}


/*=== Pills Styles ===*/
/* ==========================================
   PROJECT INTAKE PILLS
   ========================================== */

.pills,.pills2 {
    display: inline-flex;
    align-items: center;
}

/* Actual heading text */
.pills .elementor-heading-title {

    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding:
        clamp(.45rem, .45vw, .65rem)
        clamp(.9rem, 1vw, 1.35rem);

    min-height: clamp(2rem, 2vw, 2.5rem);

    border-radius: 999px;

    border: 1px solid rgba(8,49,95,.14);

    background: #ffffff;

    color: #071b36;

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease,
        transform .25s ease;
}

/* First pill */
.pills:first-child .elementor-heading-title {
    background: #edf5ff;
    border-color: rgba(29,111,242,.25);
}

/* Hover */
.pills:hover .elementor-heading-title {

    background: #1d6ff2;

    border-color: #1d6ff2;

    color: #fff!important;

    transform: translateY(-2px);
}
/*=== Swiper Style ===*/
.swiper-style .elementor-swiper-button{
    width: clamp(2.5rem, 3vw, 4.5rem);
    height: clamp(2.5rem, 3vw, 4.5rem);
     display:flex;
    align-items:center;
    justify-content:center;
}

/* Arrow SVG */
.elementor-swiper-button svg {

    width: clamp(1.05rem, 1.05vw, 1.55rem) !important;
    height: clamp(1.05rem, 1.05vw, 1.55rem) !important;

}

/* ==========================================
   GLOBAL ICON CIRCLE STYLE
   Cards + Features
   Mobile → 4K
   ========================================== */

.icon-style .elementor-icon {

    width: clamp(3rem, 3.5vw, 4.5rem);
    height: clamp(3rem, 3.5vw, 4.5rem);

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #edf5ff 100%
        );

    border: clamp(1px, .08vw, 2px) solid rgba(184,220,255,.28);
    box-shadow: 0 .8rem 2rem rgba(0,0,0,.2),inset 0 0 0 .22rem rgba(255,255,255,.05);

    transition: transform .3s ease, box-shadow .3s ease;
}


/* SVG sizing */
.icon-style .elementor-icon svg {

    width: clamp(1.25rem, 1.5vw, 2rem);
    height: clamp(1.25rem, 1.5vw, 2rem);

}


/* Hover */
@media (hover:hover){

    .icon-style:hover .elementor-icon {

        transform: translateY(-3px);

        box-shadow:
            0 clamp(.8rem,1vw,1.5rem)
            clamp(2rem,3vw,4rem)
            rgba(29,111,242,.18);

    }

}

/* ==========================================
   ICON COLORS
   ========================================== */

.icon-light-blue .elementor-icon svg path {

    fill:#b8dcff;
}

.icon-light-blue .elementor-icon{
    background: linear-gradient(145deg,rgba(255,255,255,.18),rgba(94,164,255,.08));
}

.icon-blue .elementor-icon svg path{
   fill: #1677ff;
}

.icon-blue .elementor-icon{
    background: linear-gradient(145deg,rgba(255,255,255,.18),rgba(94,164,255,.08));
}


/* ==========================================
   PROCESS STEP
   ========================================== */

.process-step {

    position: relative;

    padding:
        clamp(1rem,1.5vw,1.8rem)
        clamp(.8rem,1.5vw,1.5rem);

    border-radius:
        clamp(.5rem,1vw,1rem);

    transition:
        transform .35s ease,
        background .35s ease,
        box-shadow .35s ease;
        
    gap:
        clamp(1rem, 2.2vw, 3rem);

}


/* Hover effect only */

.process-step:hover {

    transform: translateX(
        clamp(.25rem,.4vw,.6rem)
    );

    background:
        rgba(255,255,255,.06);

    box-shadow:
        0 0 clamp(1rem,2vw,2rem)
        rgba(255,255,255,.05);

}


/* Number */

.process-step .step-number {

    transition:transform .35s ease;

}


.process-step:hover .step-number {

    transform:translateX(
        clamp(.15rem,.3vw,.4rem)
    );

}

.step-number {
     color:
        rgba(255,255,255,.12);

    transition:
        color .35s ease,
        transform .35s ease;
}


/*================= row hover style =========================*/
.contact-route {
    transition:
        background-color 300ms ease,
        transform 300ms ease,
        box-shadow 300ms ease;
}

.contact-route:hover {
    background-color: #f3f6fa;
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}





/* ==========================================
   IPERMIT SERVICE CARD
========================================== */

.service-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: clamp(1.1rem, 1.35vw, 1.5rem);
    min-height: clamp(28rem, 27vw, 35rem); 

    border-radius: clamp(1rem, 1.2vw, 1.5rem);
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.service-card:hover {
    transform: translateY(-.25rem);

    box-shadow:
        0 1.5rem 3rem rgba(8,28,55,.25);
}

/* ==========================================
    IPERMIT SERVICE CARD IMAGE
========================================== */

.service-card .service-card-image {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    z-index: 0;
}


.service-card .service-card-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* ==========================================
   IPERMIT SERVICE CARD OVERLAY
========================================== */

.service-card::after {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 1;

    background:
       rgba(8,28,55,0.65);
}


/* ==========================================
    IPERMIT SERVICE CARD CONTENT
========================================== */

.service-card .service-card-content {
    position: relative;

    z-index: 2;

    color: #fff;
}


/* ==========================================
    IPERMIT SERVICE CARD TAGS
========================================== */

.service-card .service-card-tag {
    display: inline-flex;
    align-items: center;

    width: fit-content;

    padding:
        clamp(.35rem,.5vw,.5rem)
        clamp(.7rem,1vw,1rem);

    border-radius: 999px;

    background: rgba(255,255,255,.12);

    border: 1px solid rgba(255,255,255,.2);

    backdrop-filter: blur(8px);

    color: #fff;
}


/*======= Card Style 2 ======*/
.cards2{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-width: 0;
    border: .0625rem solid rgba(10, 29, 53, .11);
 
    box-shadow: 0 .8rem 2.3rem rgba(4, 25, 57, .045);
    overflow: hidden;
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, opacity .2s ease;
}
.cards2:hover{
    z-index: 2;
    transform: translateY(-.35rem);
    border-color: rgba(29, 111, 242, .28);
    box-shadow: 0 1.7rem 4rem rgba(4, 25, 57, .12);
}

.cards2 .pad-block {
    display: flex;
    flex-direction: column;
    flex: 1;
}
.cards2 .elementor-button {
    margin-top: auto;
}





.blog-card{
box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.blog-card:hover{
box-shadow: 0 0 30px 0 rgba(0,0,0,.15);
}/* End custom CSS */