.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--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;}.elementor-kit-5 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);}@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;}}:root { --ff-head:Archivo; --ff-body:IBM Plex Sans; --ff-icon:Material Symbols Outlined; --c-navy:#0b2942; --c-navy-2:#123a5c; --c-teal:#1288b0; --c-teal-dark:#0d6c8e; --c-gold:#a8801f; --c-white:#ffffff; --c-paper:#f5f7f8; --c-paper-2:#eaeff2; --c-body:#3b4a55; --c-line:#dde4e9; --c-line-dark:#1f4a6b; --c-mist:#b9cad6; --c-scrim-a:rgba(8,29,47,0.82); --c-scrim-b:rgba(8,29,47,0.42); --c-shadow:rgba(11,41,66,0.14); --c-field:#fbfcfd; --fs-hero:54px; --fs-h1:42px; --fs-h2:32px; --fs-h3:21px; --fs-h4:17px; --fs-lead:19px; --fs-body:16px; --fs-sm:14px; --fs-xs:12px; --fs-stat:30px; --fs-mega:64px; --fs-marquee:72px; --t-hero:var(--fs-hero); --t-h1:var(--fs-h1); --t-h2:var(--fs-h2); --t-lead:var(--fs-lead); --t-mega:var(--fs-mega); --t-marquee:var(--fs-marquee); --lh-tight:1.1; --lh-head:1.2; --lh-body:1.65; --ls-wide:0.12em; --ls-tight:-0.01em; --sp-xxs:4px; --sp-xs:8px; --sp-sm:12px; --sp-md:16px; --sp-lg:24px; --sp-xl:32px; --sp-2xl:48px; --sp-3xl:72px; --pad-y:var(--sp-3xl); --pad-x:var(--sp-2xl); --w-desktop:1280px; --w-tablet:834px; --w-mobile:390px; --w-content:1120px; --w-prose:640px; --b-third:300px; --b-half:420px; --b-quarter:220px; --b-step:240px; --b-team:320px; --card-basis:var(--b-third); --split-basis:var(--b-half); --team-basis:var(--b-team); --step-basis:var(--b-step); --h-hero:540px; --h-hero-md:420px; --h-hero-sm:400px; --h-hero-cur:var(--h-hero); --h-img-lg:400px; --h-img-md:260px; --h-img-sm:200px; --h-img-cur:var(--h-img-lg); --h-logo:38px; --h-logo-lg:56px; --h-logo-sm:30px; --h-tap:48px; --h-field:46px; --h-textarea:130px; --h-rule:1px; --h-bar:3px; --w-dot:7px; --r-sm:3px; --r-md:6px; --r-pill:999px; --bw-1:1px; --bw-2:2px; --bw-3:3px; --max-full:100%; --w-underline:52px; --w-avatar:64px; --h-promo:380px; --h-card-img:210px; --w-badge:48px; --h-team-img:320px; --lift:-8px; --e-gv-4b06917:calc(var(--w-content) + var(--pad-x) + var(--pad-x)); --c-teal-tint:#e7f3f7; }
/* Start custom CSS *//* ssipin animations and sticky header */
@keyframes ssipin-rise { from { opacity: 0; translate: 0 28px; } to { opacity: 1; translate: 0 0; } }
@keyframes ssipin-reveal { from { opacity: 0; translate: 0 44px; } to { opacity: 1; translate: 0 0; } }
@keyframes ssipin-kenburns { from { scale: 1.02; } to { scale: 1.14; } }
@media (prefers-reduced-motion: no-preference) {
  body:not(.home) .hero .eyebrow, body:not(.home) .hero .hero-title, body:not(.home) .hero .hero-text { animation: ssipin-rise 900ms cubic-bezier(0.2, 0.7, 0.2, 1) both; }
  body:not(.home) .hero .hero-title { animation-delay: 140ms; }
  body:not(.home) .hero .hero-text { animation-delay: 280ms; }
  body:not(.home) .hero .hero-photo { animation: ssipin-kenburns 12s ease-out both; }
  .overlap .feature-card { animation: ssipin-rise 800ms cubic-bezier(0.2, 0.7, 0.2, 1) both; }
  .overlap .feature-card:nth-child(2) { animation-delay: 120ms; }
  .overlap .feature-card:nth-child(3) { animation-delay: 240ms; }
  .overlap .feature-card:nth-child(4) { animation-delay: 360ms; }
  @supports (animation-timeline: view()) {
    .section .section-head, .section .split-col, .svc-card, .cat-tile, .card-photo, .office-card, .team-card, .process-step, .cta-inner { animation: ssipin-reveal linear both; animation-timeline: view(); animation-range: entry 0% cover 22%; }
  }
}
@media (min-width: 1200px) { #masthead { position: sticky; top: -42px; z-index: 999; } }
@media (min-width: 922px) and (max-width: 1199px) { #masthead { position: sticky; top: -76px; z-index: 999; } }
@media (max-width: 921px) { #masthead { position: sticky; top: var(--ssipin-topbar-mobile, -76px); z-index: 999; } }
#masthead .ast-primary-header-bar { box-shadow: 0 8px 24px rgba(11, 41, 66, 0.08); }
/* ssipin mega menu */
@media (min-width: 922px) {
  .ast-desktop .main-header-menu > .menu-item.ssipin-mega > .sub-menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 640px; padding: 20px 12px 16px; }
  .ast-desktop .main-header-menu > .ssipin-mega > .sub-menu > .menu-item { border-bottom: 0; }
  .ast-desktop .main-header-menu > .ssipin-mega > .sub-menu > .menu-item + .menu-item { border-left: 1px solid #dde4e9; }
  .ast-desktop .main-header-menu > .ssipin-mega > .sub-menu > .menu-item > .menu-link { font-family: Archivo, sans-serif; font-weight: 700; font-size: 16px; color: #0b2942; pointer-events: none; padding-bottom: 6px; }
  .ast-desktop .main-header-menu > .ssipin-mega > .sub-menu > .menu-item > .menu-link .dropdown-menu-toggle, .ast-desktop .main-header-menu > .ssipin-mega > .sub-menu > .menu-item > .ast-menu-toggle { display: none; }
  .ast-desktop .main-header-menu > .ssipin-mega .sub-menu .sub-menu { position: static; visibility: inherit; opacity: 1; transform: none; box-shadow: none; border: 0; width: auto; left: auto; right: auto; top: auto; }
  .ast-desktop .main-header-menu > .ssipin-mega .sub-menu .sub-menu .menu-item { border-bottom: 1px solid #eef2f5; }
  .ast-desktop .main-header-menu > .ssipin-mega .sub-menu .sub-menu .menu-item:last-child { border-bottom: 0; }
  .ast-desktop .main-header-menu > .ssipin-mega .sub-menu .sub-menu .menu-link { color: #3b4a55; font-size: 14px; padding-top: 9px; padding-bottom: 9px; }
  .ast-desktop .main-header-menu > .ssipin-mega .sub-menu .sub-menu .menu-link:hover { color: #1288b0; }
}
/* ssipin hero clip */
.hero { position: relative; overflow: hidden; }
.hero-carousel .swiper-slide { overflow: hidden; }
/* ssipin translucent sticky header */
#masthead .ast-primary-header-bar.main-header-bar, .ast-header-break-point #masthead .ast-primary-header-bar.main-header-bar { background-color: rgba(255, 255, 255, 0.78); -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px); }
#masthead .ast-primary-header-bar .sub-menu { background-color: #ffffff; }/* End custom CSS */