/* Widget defaults carried by every page stylesheet of this site */
.elementor-widget-image .widget-image-caption{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-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;color:var( --e-global-color-primary );}
.elementor-widget-text-editor{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 );color:var( --e-global-color-text );}
.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}
.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}
.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}
.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}
.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}
.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}
.elementor-widget-image-box .elementor-image-box-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;color:var( --e-global-color-primary );}
.elementor-widget-image-box:has(:hover) .elementor-image-box-title,
					 .elementor-widget-image-box:has(:focus) .elementor-image-box-title{color:var( --e-global-color-primary );}
.elementor-widget-image-box .elementor-image-box-description{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 );color:var( --e-global-color-text );}
.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;}
.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;}
.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}
.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;}
.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;}
.video-play-icon .elementor-custom-embed-play:after {
content: '';
    height: 55px;
    width: 55px;
    background: #2880FC;
    border-radius: 50%;
    z-index: -1;
    position: absolute;
    animation: shadow-pulse 2s infinite;
    left: -22px;
    top: -16px;
}
.video-play-icon .elementor-custom-embed-play i{
    text-shadow: none !important;
    opacity: 1;
}
.heading-shape .elementor-heading-title::after {
    content: "";
    clip-path: polygon(0 0, 0 53%, 53% 0);
    width: 125px;
    height: 125px;
    position: absolute;
    background: #2880fc;
    z-index: -1 !important;
    left:-15PX;
    top: -3px;

}
.project .elementor-counter {
    display: flex;
}
.project .elementor-counter-title{
    text-align: left !important;
    margin-left: 15px;
    margin-top: 5px;
}
.elementor-widget-theme-page-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;color:var( --e-global-color-primary );}
.elementor-widget-accordion .elementor-accordion-icon, .elementor-widget-accordion .elementor-accordion-title{color:var( --e-global-color-primary );}
.elementor-widget-accordion .elementor-accordion-icon svg{fill:var( --e-global-color-primary );}
.elementor-widget-accordion .elementor-active .elementor-accordion-icon, .elementor-widget-accordion .elementor-active .elementor-accordion-title{color:var( --e-global-color-accent );}
.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:var( --e-global-color-accent );}
.elementor-widget-accordion .elementor-accordion-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;}
.elementor-widget-accordion .elementor-tab-content{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 );}
.custom-faq .elementor-accordion-item {
    margin-bottom: 20px;
}
.custom-faq .elementor-active {
    border: 1px solid;
    border-color:#031736;
    box-shadow: none !important;
}
.custom-faq .elementor-tab-title.elementor-active {
    border: 1px solid #031736;
}
.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}
.elementor-widget-form .elementor-field-group > label{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-widget-form .elementor-field-type-html{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-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}
.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{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-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}
.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}
.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}
.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}
.elementor-widget-form .elementor-message{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-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}
.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}
.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}
.message-field textarea {
    border-radius: 15px !important;
}
@media (max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-image-box .elementor-image-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-accordion .elementor-tab-content{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}
@media (max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-image-box .elementor-image-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-accordion .elementor-tab-content{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}
@media screen and (max-width: 767px){.icon-title .elementor-image-box-title{
       margin-top:18px !important;
   }.heading-shape .elementor-heading-title::after {
    display:none;
}}
@media screen and (max-width: 1024px) and (min-width: 767px){.heading-shape .elementor-heading-title::after {
    width: 100px;
    height: 100px;
}}
@media screen and (max-width: 1024px){.project .elementor-counter {
    display:block;
}.project .elementor-counter-title{
    text-align: center !important;
    margin:0px;
}}

/*
 * Replacement layout for the pages whose own Elementor stylesheet was lost with
 * the source server (post-28, 29, 1463, 1628, 2124, 2866, 2985). Elementor
 * containers take their layout from per-element custom properties that lived
 * in those files; these rules set them from the page structure instead, in the
 * same design the surviving pages use (banner, section rhythm, accent color).
 *
 * Template: :is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) = any affected page root, :is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985) = the roots that carry a title
 * banner, :is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)) = a container whose children are all containers (2 or more).,
 * banner, :is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)) = a container whose children are all containers (2 or more)..
 */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con{--display:flex}

/* Section rhythm */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con.e-child{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent+.e-con.e-parent{--padding-top:20px}
/* Full-width sections keep the same side margins as boxed ones */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con-full.e-parent:not(:has(.elementor-widget-template)){--padding-left:max(20px,calc((100vw - 1040px)/2));--padding-right:max(20px,calc((100vw - 1040px)/2))}

/* A container holding only containers lays them out side by side */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)),
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)){--flex-direction:row;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--align-items:stretch}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)):has(.elementor-widget-video,.elementor-widget-image),
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)):has(.elementor-widget-video,.elementor-widget-image){--align-items:center}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget))>.e-con-inner>.e-con,
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget))>.e-con{--width:auto;--flex-grow:1;--flex-basis:0%}
/* A column that only carried a background picture is empty now */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:not(:has(.elementor-widget)){display:none}

/* Page banner, as on the pages that kept their stylesheet */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title){--min-height:450px;--justify-content:center;--align-items:center;--overlay-opacity:.6;--padding-top:0px;--padding-bottom:0px;--background-overlay:'';background-image:url("inner-banner-00f6ddc98a.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title)::before{background-color:var(--e-global-color-primary)}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985) :is(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title){text-align:center;position:relative;z-index:1}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985) :is(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title) .elementor-heading-title{font-family:"Rajdhani",Sans-serif;line-height:95px;color:var(--e-global-color-secondary);text-transform:capitalize}

/* Widgets */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-heading .elementor-heading-title{margin:0}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-text-editor p{margin:0 0 14px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-button .elementor-button{border-radius:50px;padding:12px 40px;text-transform:uppercase;fill:var(--e-global-color-secondary);color:var(--e-global-color-secondary)}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var(--e-global-color-accent);color:var(--e-global-color-secondary);fill:var(--e-global-color-secondary);font-size:38px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon.elementor-view-stacked .elementor-icon svg{fill:var(--e-global-color-secondary)}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.elementor-widget-icon),
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.elementor-widget-icon){--align-items:center;--text-align:center;text-align:center;align-self:stretch}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon{text-align:center}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var(--e-global-color-accent);width:18px;height:18px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon-list .elementor-icon-list-item{padding:4px 0}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon-list .elementor-icon-list-text{color:var(--e-global-color-text);font-family:"Rajdhani",Sans-serif;font-size:22px;font-weight:500;line-height:32px;padding-left:10px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-video{width:100%}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-video .elementor-wrapper{--video-aspect-ratio:1.77777;border-radius:12px;overflow:hidden}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-image img{max-width:100%;height:auto;border-radius:12px}

/* Products: the two plans are cards; the store's stock line went with the store */
.elementor-2124 .e-con.e-child:is(.elementor-element-a8a7bb6,.elementor-element-7252768){background-color:#F3F7FF;border-radius:16px;--padding-top:36px;--padding-bottom:36px;--padding-left:36px;--padding-right:36px;--gap:16px 16px;--row-gap:16px;height:100%}
.elementor-2124 :is(.elementor-element-a8a7bb6,.elementor-element-7252768)>.elementor-widget-heading .elementor-heading-title{font-size:40px;line-height:44px}
.elementor-2124 :is(.elementor-element-0249fa2,.elementor-element-d370d1a){--gap:6px 6px;--row-gap:6px}
.elementor-2124 :is(.elementor-element-0249fa2,.elementor-element-d370d1a) .elementor-widget-text-editor{color:var(--e-global-color-accent);font-weight:700;font-size:26px}
.elementor-2124 :is(.elementor-element-0249fa2,.elementor-element-d370d1a) .elementor-widget-button{margin-top:14px}
.elementor-2124 :is(.elementor-element-ee597ec,.elementor-element-8d10bb9) .elementor-widget-text-editor{font-size:17px;line-height:25px}
.elementor-2124 .elementor-widget-woocommerce-product-stock{display:none}
.elementor-2124 .elementor-element-c54e876 .elementor-widget-heading .elementor-heading-title{font-size:40px;line-height:46px}
/* Product cards were sized around a photo that no longer exists: the card is
   as tall as its text and the button sits at its foot */
.elementor-2124 .e-loop-item{display:flex;flex-direction:column}
.elementor-2124 .e-loop-item>.e-con:first-child{flex:1 1 auto}
.elementor-2124 .e-loop-item>.e-con:not(:first-child){display:none}
.elementor-2124 .e-loop-item>.e-con:first-child>.e-con-inner{height:100%}
.elementor-2124 .elementor-2172 .elementor-element.elementor-element-3eff82e{--min-height:0px;--padding-top:14px;height:100%}
.elementor-2124 .elementor-2172 .elementor-element.elementor-element-3eff82e>.e-con-inner{height:100%}
.elementor-2124 .elementor-2172 .elementor-element.elementor-element-f385b60.elementor-absolute{position:relative;inset:auto;width:auto;max-width:none;align-self:stretch;margin:auto 0 0;padding-top:18px}
.elementor-2124 .e-loop-item .elementor-widget-theme-post-featured-image:not(:has(img)){display:none}

/* Rescue Cases: the archive title is a plain heading, so it gets the banner by position */
.elementor-1463>.e-con.e-parent:first-child{--min-height:450px;--justify-content:center;--align-items:center;--overlay-opacity:.6;--padding-top:0px;--padding-bottom:0px;--background-overlay:'';background-image:url("inner-banner-00f6ddc98a.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover}
.elementor-1463>.e-con.e-parent:first-child::before{background-color:var(--e-global-color-primary)}
.elementor-1463>.e-con.e-parent:first-child .elementor-widget-heading{text-align:center;position:relative;z-index:1}
.elementor-1463>.e-con.e-parent:first-child .elementor-heading-title{font-family:"Rajdhani",Sans-serif;color:var(--e-global-color-secondary);text-transform:capitalize}
.elementor-1463>.e-con.e-parent:first-child+.e-con.e-parent{--padding-top:80px}
/* A rescue story opens straight on its title */
.elementor-1628>.e-con.e-parent:has(.elementor-widget-theme-post-title){--padding-top:60px;--gap:24px 24px;--row-gap:24px}
.elementor-1628 .elementor-widget-theme-post-content{color:var(--e-global-color-text);font-size:18px;line-height:30px}
/* Single-column notice pages read centered */
:is(.elementor-2866,.elementor-2985)>.e-con.e-parent+.e-con.e-parent:not(:has(.elementor-widget-theme-page-title,.elementor-widget-template)){--align-items:center;--text-align:center;text-align:center;--gap:18px 18px;--row-gap:18px;--padding-top:80px}
/* The notices that replaced the retired ZIP finder and photo upload */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) p:is(:has(~.elementor-button-wrapper),.elementor-button-wrapper~p){font-family:"Rajdhani",Sans-serif;font-size:20px;line-height:30px;color:var(--e-global-color-text)}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-button-wrapper>.elementor-button{background-color:var(--e-global-color-accent);border-radius:50px;padding:12px 40px;text-transform:uppercase;font-family:"Rajdhani",Sans-serif;font-size:16px;font-weight:600;color:var(--e-global-color-secondary)}
:is(.elementor-2866,.elementor-2985)>.e-con.e-parent:not(:has(.elementor-widget-theme-page-title,.elementor-widget-template))>.e-con-inner>.elementor-widget{max-width:760px}

@media (max-width:1024px){
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title){--min-height:380px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985) :is(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title) .elementor-heading-title{line-height:62px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent{--padding-top:60px;--padding-bottom:60px}
}
@media (max-width:767px){
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)),
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget)){--flex-direction:column;--gap:24px 24px;--row-gap:24px;--column-gap:24px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con-inner>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget))>.e-con-inner>.e-con,
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:has(>.e-con~.e-con):not(:has(>.elementor-widget,>.e-con-inner>.elementor-widget))>.e-con{--width:100%;--flex-basis:auto}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-2124,.elementor-2866,.elementor-2985) :is(.elementor-widget-theme-page-title,.elementor-widget-theme-archive-title) .elementor-heading-title{line-height:48px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent{--padding-top:50px;--padding-bottom:50px}
}

/*
 * Polish pass (2026-10-06). Brand is fixed (navy, signal blue, Rajdhani), so
 * the work is rhythm and legibility, plus one signature taken from the
 * product itself: the numbered steps read as radio beacons on a signal path.
 */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-text-editor{color:#46536B;font-size:18px;line-height:1.65;max-width:820px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-icon-list .elementor-icon-list-text{color:#46536B;font-size:19px;line-height:28px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-widget-heading h2.elementor-heading-title{letter-spacing:-.01em}

/* Step sections sit on a tinted band and are centered */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent{counter-reset:step}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-view-stacked){background-color:#F3F7FF;--padding-top:72px;--padding-bottom:76px;margin-bottom:80px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-view-stacked)+.e-con.e-parent:has(.elementor-view-stacked){margin-top:-80px;border-top:1px solid #DCE5F5}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-view-stacked) .elementor-widget-heading{text-align:center;align-self:center}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-view-stacked) .e-con:has(>.e-con-inner>.e-con){--gap:44px 40px;--row-gap:44px}
/* The beacon: icon, two signal rings, its step number */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:is(:has(>.elementor-view-stacked),:has(>.e-con-inner>.elementor-view-stacked)){counter-increment:step;--gap:22px 22px;--row-gap:22px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-view-stacked .elementor-icon{position:relative;box-shadow:0 0 0 9px rgba(40,128,252,.16),0 0 0 20px rgba(40,128,252,.07)}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-view-stacked .elementor-icon::after{content:counter(step);position:absolute;top:-8px;right:-8px;width:28px;height:28px;border-radius:50%;background:var(--e-global-color-primary);color:#fff;font:700 15px/28px "Rajdhani",Sans-serif;text-align:center;box-shadow:0 0 0 3px #F3F7FF}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:is(:has(>.elementor-view-stacked),:has(>.e-con-inner>.elementor-view-stacked)) .elementor-widget-text-editor{font-size:18px;line-height:1.5;color:#27344D;font-weight:500;max-width:300px}
/* The signal path between one beacon and the next */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:is(:has(>.elementor-view-stacked),:has(>.e-con-inner>.elementor-view-stacked))+.e-con:is(:has(>.elementor-view-stacked),:has(>.e-con-inner>.elementor-view-stacked))::after{content:"";position:absolute;top:37px;right:calc(50% + 64px);width:calc(100% + 40px - 128px);border-top:2px dashed #A9C4F3}

/* A section that is one short paragraph is a callout */
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:not(:has(.elementor-widget:nth-child(2))):has(>.e-con-inner>.elementor-widget-text-editor)>.e-con-inner{background-color:#F3F7FF;border:1px solid #DCE5F5;border-radius:16px;padding:26px 32px;align-items:center}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:not(:has(.elementor-widget:nth-child(2))):has(>.e-con-inner>.elementor-widget-text-editor) .elementor-widget-text-editor{max-width:none;text-align:center;font-size:20px;color:#27344D}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:not(:has(.elementor-widget:nth-child(2))):has(>.e-con-inner>.elementor-widget-text-editor) .elementor-widget-text-editor p:last-child{margin:0}

/* Products */
.elementor-2124 .elementor-element-c54e876>.e-con-inner{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;grid-auto-flow:column;gap:8px 48px}
.elementor-2124 .elementor-element-c54e876 .elementor-widget-heading .elementor-heading-title{font-size:30px;line-height:36px}
.elementor-2124 :is(.elementor-element-a8a7bb6,.elementor-element-7252768){border:1px solid #DCE5F5}
.elementor-2124 .elementor-2172 .elementor-element.elementor-element-f385b60 .elementor-button{background-image:none;background-color:var(--e-global-color-accent);text-shadow:none}
.elementor-2124 .elementor-2172 .elementor-element.elementor-element-f385b60 .elementor-button:hover{background-color:#fff;color:var(--e-global-color-primary)}

@media (max-width:767px){
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .e-con:is(:has(>.elementor-view-stacked),:has(>.e-con-inner>.elementor-view-stacked))+.e-con:is(:has(>.elementor-view-stacked),:has(>.e-con-inner>.elementor-view-stacked))::after{top:-36px;right:auto;left:50%;width:0;height:26px;border-top:0;border-left:2px dashed #A9C4F3}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-view-stacked){--padding-top:52px;--padding-bottom:56px;margin-bottom:50px}
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985)>.e-con.e-parent:has(.elementor-view-stacked)+.e-con.e-parent:has(.elementor-view-stacked){margin-top:-50px}
.elementor-2124 .elementor-element-c54e876>.e-con-inner{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}
}
@media (prefers-reduced-motion:no-preference){
:is(.elementor-28,.elementor-29,.elementor-1463,.elementor-1628,.elementor-2124,.elementor-2866,.elementor-2985) .elementor-view-stacked .elementor-icon{animation:beacon-rings 1.4s ease-out .3s both}
}
@keyframes beacon-rings{from{box-shadow:0 0 0 0 rgba(40,128,252,.45),0 0 0 0 rgba(40,128,252,.3)}to{box-shadow:0 0 0 9px rgba(40,128,252,.16),0 0 0 20px rgba(40,128,252,.07)}}
