.elementor-325 .elementor-element.elementor-element-bce9ebc{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:1rem;--padding-bottom:1rem;--padding-left:0rem;--padding-right:0rem;}.elementor-325 .elementor-element.elementor-element-0ef3a17{--display:flex;}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5rem/2);}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5rem/2);}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5rem/2);}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5rem/2);}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5rem/2);}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-325 .elementor-element.elementor-element-0355354{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-item > a{font-family:"Montserrat", Sans-serif;font-size:1.5rem;font-weight:500;}.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-text{color:var( --e-global-color-ef91fe3 );transition:color 0.3s;}.elementor-325 .elementor-element.elementor-element-9156eca{--display:flex;}.elementor-325 .elementor-element.elementor-element-cdc9c16{--display:flex;}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5rem/2);}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5rem/2);}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5rem/2);}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5rem/2);}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5rem/2);}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-325 .elementor-element.elementor-element-2a30021{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-item > a{font-family:"Montserrat", Sans-serif;font-size:1.5rem;font-weight:500;}.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-text{color:var( --e-global-color-ef91fe3 );transition:color 0.3s;}.elementor-325 .elementor-element.elementor-element-b42dd13{--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;}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-menu-toggle{margin:0 auto;background-color:#FFFFFF40;}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu .elementor-item{font-family:"Montserrat", Sans-serif;font-weight:600;}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-f3c6183 );fill:var( --e-global-color-f3c6183 );}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a, .elementor-325 .elementor-element.elementor-element-2339305 .elementor-menu-toggle{color:var( --e-global-color-ef91fe3 );fill:var( --e-global-color-ef91fe3 );}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-46da979 );}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a:hover,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a:focus,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-menu-toggle:hover,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-menu-toggle:focus{color:var( --e-global-color-46da979 );}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a:hover,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a:focus,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a.highlighted{background-color:var( --e-global-color-ef91fe3 );}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown a.elementor-item-active{color:var( --e-global-color-46da979 );background-color:var( --e-global-color-ef91fe3 );}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown .elementor-item, .elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Montserrat", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-325 .elementor-element.elementor-element-2339305 div.elementor-menu-toggle{color:var( --e-global-color-46da979 );}.elementor-325 .elementor-element.elementor-element-2339305 div.elementor-menu-toggle svg{fill:var( --e-global-color-46da979 );}.elementor-325 .elementor-element.elementor-element-2339305 div.elementor-menu-toggle:hover, .elementor-325 .elementor-element.elementor-element-2339305 div.elementor-menu-toggle:focus{color:#7847AA;}.elementor-325 .elementor-element.elementor-element-2339305 div.elementor-menu-toggle:hover svg, .elementor-325 .elementor-element.elementor-element-2339305 div.elementor-menu-toggle:focus svg{fill:#7847AA;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-325 .elementor-element.elementor-element-b42dd13{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-around;--align-items:center;--padding-top:1rem;--padding-bottom:1rem;--padding-left:1.5rem;--padding-right:1.5rem;}.elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-325 .elementor-element.elementor-element-2339305 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:1.2rem !important;}.elementor-325 .elementor-element.elementor-element-2339305{--nav-menu-icon-size:3rem;}}@media(min-width:768px){.elementor-325 .elementor-element.elementor-element-0ef3a17{--width:40%;}.elementor-325 .elementor-element.elementor-element-9156eca{--width:10%;}.elementor-325 .elementor-element.elementor-element-cdc9c16{--width:40%;}}/* Start custom CSS for icon-list, class: .elementor-element-0355354 *//* 1. Container Setup - Ensures the underline and dot are not clipped within this widget */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-item, 
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button-content-wrapper {
    overflow: visible !important;
}

/* 2. Target the Link Text - Base positioning for custom elements only in this widget */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-text, 
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button-text {
    position: relative !important;
    display: inline-block !important;
    padding-bottom: 8px !important; /* Space between text and line */
    transition: color 0.3s ease !important;
    cursor: pointer;
}

/* 3. The Animated Underline (3px Thick Line) */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-text::after, 
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button-text::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    height: 3px !important; /* Thickness of the line */
    width: 0 !important;    /* Starting width before hover */
    background: linear-gradient(to right, #ffffff, #a855f7) !important;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 1 !important;
}

/* 4. The Sliding Dot (10px Circle) */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-text::before, 
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button-text::before {
    content: "" !important;
    position: absolute !important;
    
    /* Vertical alignment to center the 10px dot on a 3px line */
    bottom: -3.5px !important; 
    
    left: 0 !important;
    width: 10px !important;  /* Dot size */
    height: 10px !important; /* Dot size */
    background-color: #a855f7 !important; /* Matches end of gradient */
    border-radius: 50% !important;
    opacity: 0 !important;
    z-index: 2 !important;
    
    /* Smooth transition for movement and fade-in */
    transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s !important;
    
    /* Subtle glow for the dot */
    box-shadow: 0 0 8px rgba(168, 85, 247, 0.6) !important;
}

/* 5. Hover State Trigger for this specific widget */
/* Animates the line width to 100% */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-item:hover .elementor-icon-list-text::after,
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button:hover .elementor-button-text::after {
    width: 100% !important;
}

/* Animates the dot movement to the end of the line */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-item:hover .elementor-icon-list-text::before,
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button:hover .elementor-button-text::before {
    opacity: 1 !important;
    /* Move dot to the end minus half its width to prevent overshoot */
    left: calc(100% - 5px) !important;
}

/* 6. Text Color Polish on Hover */
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-icon-list-item:hover .elementor-icon-list-text,
.elementor-325 .elementor-element.elementor-element-0355354 .elementor-button:hover .elementor-button-text {
    color: #ffffff !important;
}/* End custom CSS */
/* Start custom CSS for icon-list, class: .elementor-element-2a30021 *//* 1. Container Setup - Ensures the underline and dot are not clipped within this widget */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-item, 
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button-content-wrapper {
    overflow: visible !important;
}

/* 2. Target the Link Text - Base positioning for custom elements only in this widget */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-text, 
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button-text {
    position: relative !important;
    display: inline-block !important;
    padding-bottom: 8px !important; /* Space between text and line */
    transition: color 0.3s ease !important;
    cursor: pointer;
}

/* 3. The Animated Underline (3px Thick Line) */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-text::after, 
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button-text::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    height: 3px !important; /* Thickness of the line */
    width: 0 !important;    /* Starting width before hover */
    background: linear-gradient(to right, #ffffff, #a855f7) !important;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 1 !important;
}

/* 4. The Sliding Dot (10px Circle) */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-text::before, 
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button-text::before {
    content: "" !important;
    position: absolute !important;
    
    /* Vertical alignment to center the 10px dot on a 3px line */
    bottom: -3.5px !important; 
    
    left: 0 !important;
    width: 10px !important;  /* Dot size */
    height: 10px !important; /* Dot size */
    background-color: #a855f7 !important; /* Matches end of gradient */
    border-radius: 50% !important;
    opacity: 0 !important;
    z-index: 2 !important;
    
    /* Smooth transition for movement and fade-in */
    transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s !important;
    
    /* Subtle glow for the dot */
    box-shadow: 0 0 8px rgba(168, 85, 247, 0.6) !important;
}

/* 5. Hover State Trigger for this specific widget */
/* Animates the line width to 100% */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-item:hover .elementor-icon-list-text::after,
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button:hover .elementor-button-text::after {
    width: 100% !important;
}

/* Animates the dot movement to the end of the line */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-item:hover .elementor-icon-list-text::before,
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button:hover .elementor-button-text::before {
    opacity: 1 !important;
    /* Move dot to the end minus half its width to prevent overshoot */
    left: calc(100% - 5px) !important;
}

/* 6. Text Color Polish on Hover */
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-icon-list-item:hover .elementor-icon-list-text,
.elementor-325 .elementor-element.elementor-element-2a30021 .elementor-button:hover .elementor-button-text {
    color: #ffffff !important;
}/* End custom CSS */