/*
Theme Name: Jetista
Description: Jetista child theme for Hello Elementor.
Template: hello-elementor
Version: 0.1.1
Text Domain: jetista
*/

/* Elementor Theme Builder header: transparent over the hero, light when scrolled. */
.elementor-location-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
}

.admin-bar .elementor-location-header {
  top: 32px;
}

.elementor-location-header .elementor-element-34d51296 {
  background-color: transparent !important;
  border-bottom-color: transparent !important;
  transition: background-color 180ms ease, border-color 180ms ease;
}

.elementor-location-header.is-scrolled .elementor-element-34d51296 {
  background-color: rgba(255, 255, 255, 0.94) !important;
  border-bottom-color: rgba(14, 19, 48, 0.1) !important;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

.elementor-location-header [data-interaction-id="1d8924a5"],
.elementor-location-header.is-scrolled [data-interaction-id="67a8eeff"] {
  display: none !important;
}

.elementor-location-header.is-scrolled [data-interaction-id="1d8924a5"] {
  display: flex !important;
}

/* The Theme Builder header uses Elementor's native Nav Menu widget. */
.elementor-location-header .elementor-widget-nav-menu {
  flex: 0 0 261px;
  width: 261px;
  transform: translateX(-34px);
}

.elementor-location-header .elementor-element-2be532ab {
  flex: 0 0 auto;
  width: max-content;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu {
  flex-wrap: nowrap;
  gap: 32px;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item,
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: #fff;
  font-family: Manrope, sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.14px;
  line-height: 19px;
  padding: 6px 0;
  white-space: nowrap;
}

.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item,
.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: #0e1330;
}

.elementor-location-header.is-scrolled [data-id="64722633"] {
  color: #0e1330 !important;
  border-color: rgba(14, 19, 48, 0.18) !important;
  background-color: transparent !important;
}

.elementor-location-header.is-scrolled [data-id="2ea8f39e"] {
  color: #fff !important;
  background-color: #0e1330 !important;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle {
  color: #fff;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 999px;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle svg {
  fill: #fff;
}

.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-menu-toggle {
  color: #0e1330;
  border-color: rgba(14, 19, 48, 0.18);
}

.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-menu-toggle svg {
  fill: #0e1330;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
  background: #0e1330;
}

.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item {
  color: #fff;
  font-family: Manrope, sans-serif;
}

.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(14, 19, 48, 0.1);
  box-shadow: 0 10px 30px rgba(14, 19, 48, 0.12);
}

.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item {
  color: #0e1330;
}

.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item.elementor-item-active:hover,
.elementor-location-header.is-scrolled .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item.elementor-item-active:focus-visible {
  color: #fff;
  background-color: #0e1330;
}

@media (max-width: 1024px) {
  .elementor-location-header .elementor-element-34d51296 {
    justify-content: flex-start;
  }

  .elementor-location-header .elementor-element-2be532ab {
    order: 2;
    margin-left: auto;
  }

  .elementor-location-header .elementor-widget-nav-menu {
    order: 3;
    flex: 0 0 40px !important;
    width: 40px !important;
    position: relative;
    transform: none;
  }

  .elementor-location-header .elementor-widget-nav-menu .elementor-menu-toggle {
    margin: 0;
  }

  .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
    position: absolute;
    right: 0;
    top: 100%;
    min-width: 180px;
    margin-top: 8px;
    z-index: 10;
  }
}

@media (max-width: 782px) {
  .admin-bar .elementor-location-header {
    top: 46px;
  }
}

/* Services cards reveal their Elementor content on hover or keyboard focus. */
#services article {
  justify-content: flex-start;
  transition: transform 240ms ease;
}

#services article > img {
  transform-origin: center;
  transition: transform 240ms ease;
}

#services article > span {
  margin-bottom: auto;
}

#services article::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: rgba(14, 19, 48, 0.82);
  opacity: 0;
  pointer-events: none;
  transition: opacity 250ms ease;
}

#services article > p,
#services article > a {
  position: relative;
  z-index: 1;
}

#services article > p {
  display: none;
  max-width: 430px;
  margin: 12px 0 18px;
  color: rgba(255, 255, 255, 0.88);
  font: 400 15px/1.5 Manrope, sans-serif;
}

#services article > a {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

#services article:is(:hover, :focus-within) {
  box-shadow: none;
}

#services article:has(:focus-visible) {
  transform: translateY(-4px);
}

#services article:has(:focus-visible) > img {
  transform: scale(1.035);
}

@media (hover: hover) and (pointer: fine) {
  #services article:hover {
    transform: translateY(-4px);
  }

  #services article:hover > img {
    transform: scale(1.035);
  }
}

#services article:is(:hover, :focus-within)::after {
  opacity: 1;
}

#services article:is(:hover, :focus-within) > p {
  display: block;
}

#services article:is(:hover, :focus-within) > a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  min-width: 200px;
  width: auto;
  height: 45px;
  padding: 0 22px;
  overflow: visible;
  clip-path: none;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: #0e1330;
  font: 500 12.5px/1 Manrope, sans-serif;
  text-decoration: none;
}

#services article > a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

#services [data-id="9cde017"] article > p {
  margin: 9px 0 13px;
  font-size: 13px;
  line-height: 1.4;
}

#services [data-id="9cde017"] article:is(:hover, :focus-within) > a {
  height: 40px;
  padding: 0 17px;
  font-size: 11.5px;
}

@media (hover: none), (max-width: 767px) {
  #services article::after {
    opacity: 1;
  }

  #services article > p {
    display: block;
  }

  #services article > a {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    min-width: 200px;
    width: auto;
    height: 45px;
    padding: 0 22px;
    overflow: visible;
    clip-path: none;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: #0e1330;
    font: 500 12.5px/1 Manrope, sans-serif;
    text-decoration: none;
  }

  #services [data-id="9cde017"] article > a {
    height: 40px;
    padding: 0 17px;
    font-size: 11.5px;
  }

  #services [data-id="7105d14b"] {
    display: none;
  }
}

@media (max-width: 767px) {
  #services article {
    min-height: 350px;
  }
}

/* Home CTAs use a small lift while retaining their Elementor color changes. */
body.home .elementor-17 :is([data-id="6c2e3a4f"], [data-id="b2c0196"], [data-id="6c036e51"], [data-id="42366124"]) {
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

body.home .elementor-17 :is([data-id="6c2e3a4f"], [data-id="b2c0196"], [data-id="6c036e51"], [data-id="42366124"]):focus-visible {
  transform: translateY(-2px);
}

@media (hover: hover) and (pointer: fine) {
  body.home .elementor-17 :is([data-id="6c2e3a4f"], [data-id="b2c0196"], [data-id="6c036e51"], [data-id="42366124"]):hover {
    transform: translateY(-2px);
  }
}

@media (prefers-reduced-motion: reduce) {
  #services article,
  #services article > img,
  body.home .elementor-17 :is([data-id="6c2e3a4f"], [data-id="b2c0196"], [data-id="6c036e51"], [data-id="42366124"]) {
    transition: none !important;
    transform: none !important;
  }

  body.home .elementor-17 :is([data-id="37b569ba"], [data-id="13432621"], [data-id="3aaa524d"], [data-id="63a6f4ca"], [data-id="788c3bda"], [data-id="5e43b5b6"], [data-id="e5f9e10"], [data-id="3a6b2f3e"]) {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  body.home .elementor-17 [data-id="4dd3d54d"] {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
  }
}

/* Elementor's flexbox base adds bottom padding to the footer divider row. */
.elementor-location-footer [data-id="58c3cb31"] {
  padding-block-end: 0 !important;
}

/* The shared navy SVG is rendered white over the transparent header and footer. */
.elementor-location-header [data-interaction-id="67a8eeff"] img,
.elementor-location-footer [data-id="1d84f8a"] {
  filter: brightness(0) invert(1);
}
