.elementor-45 .elementor-element.elementor-element-82efcca{--display:flex;--min-height:10px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-82efcca:not(.elementor-motion-effects-element-type-background), .elementor-45 .elementor-element.elementor-element-82efcca > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-be8395e );}.elementor-45 .elementor-element.elementor-element-0b36245{--display:grid;--min-height:9px;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:10;}.elementor-45 .elementor-element.elementor-element-eb59547{--display:flex;--min-height:9px;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-icon i{color:#FFFFFF;transition:color 0.3s;}.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-icon svg{fill:#FFFFFF;transition:fill 0.3s;}.elementor-45 .elementor-element.elementor-element-67b1499{--e-icon-list-icon-size:17px;--icon-vertical-offset:0px;}.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-item > a{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;}.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-text{color:#FFFFFF;transition:color 0.3s;}.elementor-45 .elementor-element.elementor-element-49750e8{--display:flex;--min-height:9px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-be2dd79{--display:flex;--min-height:9px;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:-10px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-2ec8671{--grid-template-columns:repeat(0, auto);text-align:center;--icon-size:17px;--grid-column-gap:0px;--grid-row-gap:0px;}.elementor-45 .elementor-element.elementor-element-2ec8671 .elementor-social-icon{background-color:#000000;}.elementor-45 .elementor-element.elementor-element-2ec8671 .elementor-social-icon i{color:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-2ec8671 .elementor-social-icon svg{fill:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-2ec8671 .elementor-social-icon:hover i{color:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-2ec8671 .elementor-social-icon:hover svg{fill:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-8b65f72{--display:flex;--min-height:15px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-8b65f72:not(.elementor-motion-effects-element-type-background), .elementor-45 .elementor-element.elementor-element-8b65f72 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-dec552a{--display:grid;--min-height:15px;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:start;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-26dc3a6{--display:flex;--min-height:15px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:2px 2px;--row-gap:2px;--column-gap:2px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-45 .elementor-element.elementor-element-9c9e1ef{text-align:left;}.elementor-45 .elementor-element.elementor-element-9c9e1ef img{width:100%;}.elementor-45 .elementor-element.elementor-element-0292547{--display:flex;--min-height:15px;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-45 .elementor-element.elementor-element-0e73eb8{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-menu-toggle{margin:0 auto;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu .elementor-item{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:600;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-f972b5e );fill:var( --e-global-color-f972b5e );padding-left:10px;padding-right:10px;padding-top:7px;padding-bottom:7px;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-f972b5e );fill:var( --e-global-color-f972b5e );}.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-be8395e );}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed .elementor-item:before,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-be8395e );}.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:var( --e-global-color-be8395e );}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:var( --e-global-color-be8395e );}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed .elementor-item:before{border-width:3px;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 3px 3px;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:3px 3px 0 0;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:3px 0 0 3px;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 3px 3px 0;}.elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-underline .elementor-item:after,
					 .elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-overline .elementor-item:before,
					 .elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-double-line .elementor-item:before,
					 .elementor-45 .elementor-element.elementor-element-0e73eb8 .e--pointer-double-line .elementor-item:after{height:3px;}.elementor-45 .elementor-element.elementor-element-e308924{--display:flex;--min-height:15px;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button{background-color:var( --e-global-color-be8395e );font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:500;transition-duration:0s;border-radius:10px 10px 10px 10px;}.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover, .elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:focus{background-color:#000000;color:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover svg, .elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:focus svg{fill:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-edb7bdc{--display:flex;--min-height:15px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-45 .elementor-element.elementor-element-edb7bdc:not(.elementor-motion-effects-element-type-background), .elementor-45 .elementor-element.elementor-element-edb7bdc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-45 .elementor-element.elementor-element-0a5dfca{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-45 .elementor-element.elementor-element-a3cf9e9{--display:flex;}.elementor-45 .elementor-element.elementor-element-29b56b2{text-align:left;}.elementor-45 .elementor-element.elementor-element-29b56b2 img{width:100%;}.elementor-45 .elementor-element.elementor-element-719e303{--display:flex;}.elementor-45 .elementor-element.elementor-element-b6f081d .elementor-button{background-color:var( --e-global-color-be8395e );font-family:"Montserrat", Sans-serif;font-weight:500;}.elementor-45 .elementor-element.elementor-element-b6f081d .elementor-button:hover, .elementor-45 .elementor-element.elementor-element-b6f081d .elementor-button:focus{background-color:var( --e-global-color-f972b5e );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-45 .elementor-element.elementor-element-eb59547{--width:45vw;}.elementor-45 .elementor-element.elementor-element-be2dd79{--width:77%;}.elementor-45 .elementor-element.elementor-element-26dc3a6{--width:70%;}.elementor-45 .elementor-element.elementor-element-0292547{--width:38vw;}.elementor-45 .elementor-element.elementor-element-e308924{--width:80%;}}@media(max-width:1024px){.elementor-45 .elementor-element.elementor-element-0b36245{--grid-auto-flow:row;}.elementor-45 .elementor-element.elementor-element-dec552a{--grid-auto-flow:row;}.elementor-45 .elementor-element.elementor-element-0a5dfca{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-45 .elementor-element.elementor-element-0b36245{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-45 .elementor-element.elementor-element-dec552a{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-45 .elementor-element.elementor-element-0a5dfca{--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-45 .elementor-element.elementor-element-a3cf9e9{--justify-content:center;}.elementor-45 .elementor-element.elementor-element-719e303{--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:flex-end;--align-items:center;}.elementor-45 .elementor-element.elementor-element-b6f081d .elementor-button{font-size:20px;}}/* Start custom CSS for icon-list, class: .elementor-element-67b1499 *//* Smooth white underline hover effect (keeps icon + text aligned) */
.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-item {
  display: flex;
  align-items: center;
}

.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-text {
  position: relative;
  display: inline-block;
  padding-bottom: 2px; /* keeps underline below text */
}

.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-text::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background: #ffffff;
  transition: width 0.3s ease;
}

/* Hover triggers underline */
.elementor-45 .elementor-element.elementor-element-67b1499 .elementor-icon-list-item:hover .elementor-icon-list-text::after {
  width: 100%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-82efcca */.elementor-45 .elementor-element.elementor-element-82efcca::after { content: ""; position: absolute; top: 0; right: -25px; width: 700px; height: 700px
; background-color: #000000; transform: skewX(-20deg); z-index: 1; }
.elementor-45 .elementor-element.elementor-element-82efcca {
  position: relative;
  overflow: hidden; /* prevents the skew from overflowing */
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-0e73eb8 *//* Base menu item styling */
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

/* Underline effect (hidden by default) */
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -2px; /* adjust spacing below text */
  width: 0;
  height: 2px;
  background: #ffffff; /* underline colour */
  border-radius: 2px;
  transform: translateX(-50%);
  transition: width 0.3s ease;
}

/* Hover + focus state */
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu a:hover::after,
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu a:focus::after {
  width: 40%; /* underline length — adjust as needed */
}

/* Active/current menu item underline */
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu .current-menu-item > a::after,
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu .current_page_item > a::after,
.elementor-45 .elementor-element.elementor-element-0e73eb8 .elementor-nav-menu .elementor-item-active::after {
  width: 40%; /* same length as hover */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-17d4698 *//* Elegant slow left→right slide + glass shine (Elementor button) */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button {
  position: relative;
  overflow: hidden;
  background: #0047AB;        /* base blue */
  color: #fff;
  border: 0;
  border-radius: 8px;
  padding: 12px 28px;
  font-weight: 600;
  letter-spacing: 0.4px;
  transition: transform .12s ease, color .25s ease;
  -webkit-tap-highlight-color: transparent;
}

/* place text above overlays */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button .elementor-button-text,
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button span {
  position: relative;
  z-index: 3;
}

/* sliding black overlay */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;               /* start fully left off-screen */
  width: 100%;
  height: 100%;
  background: #000;          /* black slide */
  z-index: 1;
  transition: left 0.95s cubic-bezier(.2,.8,.2,1); /* slow, smooth */
  pointer-events: none;
}

/* glassy sheen (narrow, skewed) */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button::after {
  content: "";
  position: absolute;
  top: -30%;
  left: -60%;
  width: 40%;
  height: 160%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.35) 45%,
    rgba(255,255,255,0.6) 50%,
    rgba(255,255,255,0.35) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-20deg);
  z-index: 2;
  transition: left 1s cubic-bezier(.2,.8,.2,1), opacity .6s ease;
  opacity: 0.95;
  pointer-events: none;
}

/* Hover state: slide overlay across left→right and sweep sheen */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover::before {
  left: 0; /* overlay moves into view (covering from left) */
}

.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover::after {
  left: 140%; /* sheen moves across to the right */
  opacity: 1;
}

/* Optional subtle lift on hover */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover {
  transform: translateY(-3px);
}

/* Ensure readable text when overlay covers (keeps contrast) */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover .elementor-button-text,
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:hover span {
  color: #fff;
  z-index: 4;
}

/* Focus/active accessibility */
.elementor-45 .elementor-element.elementor-element-17d4698 .elementor-button:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,71,171,0.12);
}/* End custom CSS */