.elementor-451 .elementor-element.elementor-element-ft-outer{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-451 .elementor-element.elementor-element-ft-outer:not(.elementor-motion-effects-element-type-background), .elementor-451 .elementor-element.elementor-element-ft-outer > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0D0E1A;}.elementor-451 .elementor-element.elementor-element-ft-main{--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:space-between;--align-items:flex-start;--gap:28px 28px;--row-gap:28px;--column-gap:28px;--flex-wrap:wrap;--padding-top:56px;--padding-bottom:34px;--padding-left:24px;--padding-right:24px;}.elementor-451 .elementor-element.elementor-element-ft-main:not(.elementor-motion-effects-element-type-background), .elementor-451 .elementor-element.elementor-element-ft-main > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0D0E1A;}.elementor-451 .elementor-element.elementor-element-b942e62{--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;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-451 .elementor-element.elementor-element-ft-logo{text-align:left;}.elementor-451 .elementor-element.elementor-element-ft-logo img{width:150px;}.elementor-451 .elementor-element.elementor-element-ft-tagline{width:auto;max-width:auto;}.elementor-451 .elementor-element.elementor-element-ft-social{width:auto;max-width:auto;}.elementor-451 .elementor-element.elementor-element-d9f3129{--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;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-451 .elementor-element.elementor-element-ft-nav-heading > .elementor-widget-container{margin:0px 0px 4px 0px;}.elementor-451 .elementor-element.elementor-element-ft-nav-heading{text-align:left;}.elementor-451 .elementor-element.elementor-element-ft-nav-heading .elementor-heading-title{font-family:"Raleway", Sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:#F4F4FA;}.elementor-451 .elementor-element.elementor-element-ft-nav-links{width:auto;max-width:auto;}.elementor-451 .elementor-element.elementor-element-0fe146a{--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;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-451 .elementor-element.elementor-element-ft-contact-heading > .elementor-widget-container{margin:0px 0px 4px 0px;}.elementor-451 .elementor-element.elementor-element-ft-contact-heading{text-align:left;}.elementor-451 .elementor-element.elementor-element-ft-contact-heading .elementor-heading-title{font-family:"Raleway", Sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:#F4F4FA;}.elementor-451 .elementor-element.elementor-element-ft-contact-info{width:auto;max-width:auto;}.elementor-451 .elementor-element.elementor-element-ft-bottom{--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:space-between;--align-items:center;--flex-wrap:wrap;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#242843;--border-color:#242843;--padding-top:20px;--padding-bottom:20px;--padding-left:40px;--padding-right:40px;}.elementor-451 .elementor-element.elementor-element-ft-bottom:not(.elementor-motion-effects-element-type-background), .elementor-451 .elementor-element.elementor-element-ft-bottom > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#07070E;}.elementor-451 .elementor-element.elementor-element-ft-copy{width:auto;max-width:auto;}.elementor-451 .elementor-element.elementor-element-ft-legal{width:auto;max-width:auto;}.elementor-451 .elementor-element.elementor-element-1b97a06{--display:flex;}.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-451 .elementor-element.elementor-element-ft-main{--padding-top:44px;--padding-bottom:28px;--padding-left:22px;--padding-right:22px;}}@media(max-width:767px){.elementor-451 .elementor-element.elementor-element-ft-main{--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:28px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-451 .elementor-element.elementor-element-b942e62{--width:100%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-451 .elementor-element.elementor-element-d9f3129{--width:48%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-451 .elementor-element.elementor-element-0fe146a{--width:48%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-451 .elementor-element.elementor-element-b942e62{--width:42%;}.elementor-451 .elementor-element.elementor-element-d9f3129{--width:26%;}.elementor-451 .elementor-element.elementor-element-0fe146a{--width:28%;}}@media(max-width:1024px) and (min-width:768px){.elementor-451 .elementor-element.elementor-element-b942e62{--width:100%;}.elementor-451 .elementor-element.elementor-element-d9f3129{--width:48%;}.elementor-451 .elementor-element.elementor-element-0fe146a{--width:48%;}}/* Start custom CSS *//* ============ FOOTER READABILITY ============ */
.elementor-451 .elementor-widget-text-editor,.elementor-451 .elementor-widget-text-editor p{color:#C6C6D6}
.elementor-451 a{color:#D8D8E6}
.elementor-451 a:hover{color:#30E3FF}
.elementor-451 .elementor-heading-title{color:#9DA2BF}
/* ============ FOOTER LOGO: 3D BREATHE ============ */
.elementor-451 .elementor-widget-image{perspective:900px}
.elementor-451 .elementor-widget-image .elementor-widget-container{
  transform-style:preserve-3d;
  animation:pmBreatheFt 6s cubic-bezier(.45,0,.55,1) infinite;
  will-change:transform}
.elementor-451 .elementor-widget-image img{
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.6)) drop-shadow(0 0 26px rgba(48,227,255,.16))}
@keyframes pmBreatheFt{
  0%,100%{transform:perspective(900px) rotateY(-5deg) rotateX(1.5deg) scale(.95)}
  50%{transform:perspective(900px) rotateY(5deg) rotateX(-1.5deg) scale(1.05)}}
@media(prefers-reduced-motion:reduce){.elementor-451 .elementor-widget-image .elementor-widget-container{animation:none!important}}
/* ============ MOBILE FOOTER ============ */
/* Grid at every width. Elementor flex-wrap kept dropping each column to its own row. */
.elementor-451 .elementor-element-ft-main > .e-con-inner{
  display:grid!important;
  grid-template-columns:1.7fr 1fr 1.1fr!important;
  column-gap:36px!important;row-gap:24px!important;
  align-items:start!important}
.elementor-451 .elementor-element-ft-main > .e-con-inner > .e-con{width:auto!important;max-width:none!important;min-width:0!important}

@media(max-width:1024px){
  .elementor-451 .elementor-element-ft-main > .e-con-inner{grid-template-columns:1fr 1fr!important;column-gap:24px!important}
  .elementor-451 .elementor-element-ft-main > .e-con-inner > .e-con:first-child{grid-column:1 / -1!important}
}

@media(max-width:767px){
  .elementor-451 .elementor-element-ft-main > .e-con-inner{grid-template-columns:1fr 1fr!important;column-gap:16px!important;row-gap:18px!important}
  .elementor-451 .elementor-element-ft-main > .e-con-inner > .e-con:first-child{grid-column:1 / -1!important}
  .elementor-451 .elementor-element-ft-main .elementor-widget{min-width:0!important}
  .elementor-451 .elementor-element-ft-main a,.elementor-451 .elementor-element-ft-main p,.elementor-451 .elementor-element-ft-main span{overflow-wrap:anywhere!important}
  .elementor-451 .elementor-element-ft-contact-info a[href^="mailto"]{font-size:12px!important;display:inline-block;max-width:100%}
  .elementor-451 .elementor-widget{margin-bottom:6px!important}
  .elementor-451 .elementor-widget-text-editor{font-size:13px!important;line-height:1.5!important}
  .elementor-451 .elementor-heading-title{font-size:11px!important;margin-bottom:4px!important}
  .elementor-451 .elementor-widget-image img{max-width:66px!important}
  .elementor-451 .elementor-widget-image .elementor-widget-container{animation:none!important}
  .elementor-451 .elementor-element-ft-social div[style*="flex-wrap"]{gap:6px 10px!important;font-size:10.5px!important}
  .elementor-451 .elementor-element-ft-bottom > .e-con-inner{flex-direction:column!important;gap:6px!important;padding:10px 18px!important}
}
.elementor-451,.elementor-451 .e-con,.elementor-451 .e-con-inner{max-width:100%}
/* ============ MOBILE TRIM ============ */
@media(max-width:767px){
  /* the tagline repeats what the header and hero already say */
  .elementor-451 .elementor-element-ft-tagline{display:none!important}

  /* wrapper padding */
  .elementor-451 .elementor-element-ft-main > .e-con-inner{padding:20px 18px 14px!important;row-gap:14px!important}

  /* columns: kill the inter-widget margins and tighten line spacing */
  .elementor-451 .elementor-element-ft-main .elementor-widget{margin-bottom:0!important}
  .elementor-451 .elementor-element-ft-main .e-con{gap:6px!important}
  .elementor-451 .elementor-element-ft-main .elementor-widget-text-editor{font-size:12.5px!important;line-height:1.45!important}
  .elementor-451 .elementor-element-ft-main .elementor-widget-text-editor p{margin:0!important}
  .elementor-451 .elementor-element-ft-main .elementor-heading-title{font-size:10.5px!important;margin-bottom:2px!important}

  /* nav links sit closer together */
  .elementor-451 .elementor-element-ft-nav-links div,.elementor-451 .elementor-element-ft-nav-links p{gap:5px!important;line-height:1.7!important}

  /* contact block was the tallest at 247px */
  .elementor-451 .elementor-element-ft-contact-info div{gap:4px!important}
  .elementor-451 .elementor-element-ft-contact-info a[href^="mailto"]{font-size:11.5px!important}

  /* logo + socials */
  .elementor-451 .elementor-widget-image img{max-width:58px!important}
  .elementor-451 .elementor-element-ft-social div[style*="flex-wrap"]{gap:4px 9px!important;font-size:10px!important}
  .elementor-451 .elementor-element-ft-social p{font-size:9.5px!important;margin-top:4px!important}

  /* bottom bar: 112px for one line of copyright */
  .elementor-451 .elementor-element-ft-bottom{padding-top:0!important;padding-bottom:0!important}
  .elementor-451 .elementor-element-ft-bottom > .e-con-inner{padding:10px 18px!important;flex-direction:column!important;gap:2px!important}
  .elementor-451 .elementor-element-ft-copy,.elementor-451 .elementor-element-ft-legal{font-size:10.5px!important;line-height:1.4!important;margin-bottom:0!important}
}/* End custom CSS */