.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-228 .elementor-element.elementor-element-3115847 .elementor-menu-toggle{margin-left:auto;}.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main .elementor-item:focus{color:#FFFFFF;fill:#FFFFFF;}.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#78D0D1;}.elementor-228 .elementor-element.elementor-element-3115847 .e--pointer-framed .elementor-item:before,
					.elementor-228 .elementor-element.elementor-element-3115847 .e--pointer-framed .elementor-item:after{border-color:#78D0D1;}.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FFFFFF;}.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#78D0D1;}.elementor-228 .elementor-element.elementor-element-3115847 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-228 .elementor-element.elementor-element-3115847 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#78D0D1;}.elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--dropdown .elementor-item, .elementor-228 .elementor-element.elementor-element-3115847 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Plus Jakarta Sans", Sans-serif;font-weight:500;}.elementor-228:not(.elementor-motion-effects-element-type-background), .elementor-228 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#122f3a;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS */.ns-menu {
  --ns-ocean: 18 47 58;
  --ns-agua: #189292;
  --ns-destaque: #22d3d3;
  --ns-titulo: #334b56;
  --ns-platinum: #f4f5f6;
  --ns-borda: 24 146 146;
  --ns-dur: 0.5s;
  --ns-ease: cubic-bezier(0.16, 1, 0.30, 1);
  pointer-events: auto;
}

.ns-menu .elementor-nav-menu--main .elementor-nav-menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(28px, 3.5vw, 57px);
  height: 60px;
  padding: 0 clamp(28px, 4vw, 75px);
  border-radius: 66px;
  background: rgb(255 255 255 / 0.06);
  border: 1px solid rgb(var(--ns-borda) / 0.15);
  backdrop-filter: blur(10px) saturate(140%);
  -webkit-backdrop-filter: blur(10px) saturate(140%);
  transition: background var(--ns-dur) var(--ns-ease), border-color var(--ns-dur) var(--ns-ease);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .ns-menu .elementor-nav-menu--main .elementor-nav-menu {
    background: rgb(var(--ns-ocean) / 0.72);
  }
}

.ns-menu .elementor-nav-menu--main .elementor-nav-menu > li {
  margin: 0;
  position: relative;
}

.ns-menu .elementor-nav-menu--main .elementor-item::before {
  display: none;
}

.ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item {
  position: relative;
  padding: 0;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1.4;
  color: #fff;
  background: none;
  fill: currentColor;
  transition: color 0.25s var(--ns-ease);
}
.ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item:hover,
.ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item:focus {
  color: var(--ns-destaque);
  background: none;
}

.ns-menu .elementor-nav-menu--main a.elementor-item::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -6px;
  width: auto;
  height: 1px;
  background: var(--ns-destaque);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--ns-dur) var(--ns-ease);
}
.ns-menu .elementor-nav-menu--main a.elementor-item:hover::after,
.ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item-active::after {
  transform: scaleX(1);
}

.ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item-active {
  color: var(--ns-agua);
  font-weight: 400;
}

.ns-menu .elementor-nav-menu--main .sub-arrow {
  margin-left: 6px;
  padding: 0;
}
.ns-menu .elementor-nav-menu--main .sub-arrow i,
.ns-menu .elementor-nav-menu--main .sub-arrow svg {
  width: 10px;
  height: 10px;
  font-size: 10px;
  fill: currentColor;
  opacity: 0.85;
}

.ns-menu .elementor-nav-menu--main .elementor-nav-menu ul {
  min-width: 220px;
  padding: 10px;
  border: 1px solid rgb(var(--ns-borda) / 0.18);
  border-radius: 14px;
  background: rgb(var(--ns-ocean) / 0.97);
  box-shadow: 0 24px 60px rgb(0 0 0 / 0.35);
}
.ns-menu .elementor-nav-menu--main .elementor-nav-menu ul a.elementor-sub-item.elementor-sub-item {
  display: block;
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 0.875rem;
  font-weight: 300;
  color: var(--ns-platinum);
  white-space: nowrap;
  transition: background 0.25s, color 0.25s, padding-left 0.25s;
}
.ns-menu .elementor-nav-menu--main .elementor-nav-menu ul a.elementor-sub-item.elementor-sub-item:hover,
.ns-menu .elementor-nav-menu--main .elementor-nav-menu ul a.elementor-sub-item.elementor-item-active {
  background: rgb(var(--ns-borda) / 0.18);
  color: #fff;
  padding-left: 18px;
}
.ns-menu .elementor-nav-menu--main .elementor-nav-menu ul a.elementor-sub-item::after {
  display: none;
}

.nav[data-tone="light"] .ns-menu .elementor-nav-menu--main .elementor-nav-menu {
  background: rgb(255 255 255 / 0.92);
  border-color: rgb(80 101 110 / 0.12);
}
.nav[data-tone="light"] .ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item {
  color: var(--ns-titulo);
}
.nav[data-tone="light"] .ns-menu .elementor-nav-menu--main a.elementor-item.elementor-item:hover {
  color: var(--ns-agua);
}
.nav[data-at-top="false"] .ns-menu .elementor-nav-menu--main .elementor-nav-menu {
  height: 52px;
}

.ns-menu .elementor-menu-toggle.elementor-menu-toggle {
  position: relative;
  z-index: 60;
  width: 52px;
  height: 52px;
  margin-left: auto;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.08);
  border: 1px solid rgb(var(--ns-borda) / 0.2);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  transition: width var(--ns-dur) var(--ns-ease), height var(--ns-dur) var(--ns-ease);
}
.ns-menu .elementor-menu-toggle.elementor-menu-toggle i,
.ns-menu .elementor-menu-toggle.elementor-menu-toggle svg {
  width: 22px;
  height: 22px;
  font-size: 22px;
  color: #fff;
  fill: #fff;
}
.nav[data-tone="light"] .ns-menu .elementor-menu-toggle.elementor-menu-toggle {
  background: rgb(255 255 255 / 0.72);
  border-color: rgb(80 101 110 / 0.12);
}
.nav[data-tone="light"] .ns-menu .elementor-menu-toggle.elementor-menu-toggle i,
.nav[data-tone="light"] .ns-menu .elementor-menu-toggle.elementor-menu-toggle svg {
  color: var(--ns-titulo);
  fill: var(--ns-titulo);
}
.nav[data-at-top="false"] .ns-menu .elementor-menu-toggle.elementor-menu-toggle {
  width: 44px;
  height: 44px;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  z-index: 55;
  margin: 0;
  padding: 8px 20px 28px;
  border: 0;
  border-radius: 0;
  box-shadow: 0 30px 60px rgb(0 0 0 / 0.45);
  background: #122f3a;
}

.elementor-menu-toggle.elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
  max-height: calc(100vh - 116px);
}

@media (min-width: 1024px) {
  .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    display: none;
  }
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-item.elementor-item,
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-sub-item.elementor-sub-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid rgb(244 245 246 / 0.1);
  border-radius: 0;
  background: none;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  font-size: 1.125rem;
  font-weight: 300;
  color: #fff;
  white-space: normal;
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-sub-item.elementor-sub-item {
  padding-left: 16px;
  font-size: 0.9375rem;
  color: rgb(244 245 246 / 0.72);
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-item.elementor-item-active,
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-sub-item.elementor-item-active {
  color: #22d3d3;
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-item:hover,
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-sub-item:hover {
  background: none;
  color: #22d3d3;
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-item::after {
  display: none;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu ul {
  flex-direction: column;
  min-width: 0;
  padding: 0 0 4px;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  margin: 0 -6px 0 0;
  padding: 0;
  border-radius: 999px;
  background: rgb(244 245 246 / 0.06);
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-arrow i,
.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-arrow svg {
  width: 11px;
  height: 11px;
  font-size: 11px;
  fill: currentColor;
  transition: transform 0.3s ease;
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container a[aria-expanded="true"] .sub-arrow i,
.elementor-nav-menu--dropdown.elementor-nav-menu__container a[aria-expanded="true"] .sub-arrow svg {
  transform: rotate(180deg);
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container a[aria-expanded="true"].elementor-item {
  color: #22d3d3;
}

.ns-logo { position: relative; z-index: 60; }
.ns-logo img { width: 100%; height: auto; display: block; }

/* O menu do Elementor anima max-height por padrão e o botão usa blur.
   Em touch isso disputa composição com a página longa; a resposta deve
   ser imediata e o painel já tem fundo sólido suficiente. */
@media (max-width: 1023px) {
  .ns-menu { --ns-dur: 0.2s; }

  .ns-menu .elementor-menu-toggle.elementor-menu-toggle {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    transition: none;
  }

  .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    box-shadow: none;
    transition: none !important;
  }
}
@media (max-width: 1023px) {
  .ns-logo.ns-logo { width: 44px; }
  .ns-logo .nav__logo-full.nav__logo-full.nav__logo-full.nav__logo-full { display: none; }
  .ns-logo .nav__logo-sym.nav__logo-sym.nav__logo-sym.nav__logo-sym { display: block; }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Plus Jakarta Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-300-1.eot');
	src: url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-300-1.eot?#iefix') format('embedded-opentype'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-300-1.woff2') format('woff2'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-300-1.woff') format('woff'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-300-1.ttf') format('truetype'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-300-1.svg#PlusJakartaSans') format('svg');
}
@font-face {
	font-family: 'Plus Jakarta Sans';
	font-style: normal;
	font-weight: normal;
	font-display: swap;
	src: url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-400-1.eot');
	src: url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-400-1.eot?#iefix') format('embedded-opentype'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-400-1.woff2') format('woff2'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-400-1.woff') format('woff'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-400-1.ttf') format('truetype'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-400-1.svg#PlusJakartaSans') format('svg');
}
@font-face {
	font-family: 'Plus Jakarta Sans';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-700-1.eot');
	src: url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-700-1.eot?#iefix') format('embedded-opentype'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-700-1.woff2') format('woff2'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-700-1.woff') format('woff'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-700-1.ttf') format('truetype'),
		url('https://nsengenharia.com.br/wp-content/uploads/2026/09/plus-jakarta-sans-700-1.svg#PlusJakartaSans') format('svg');
}
/* End Custom Fonts CSS */