/* GERADO POR reescopo.py — não editar à mão; rode o script de novo. */

/* ── botões: a classe .jsld-btn* fica no wrapper; o <a> é o alvo ── */
.elementor-widget.jsld-btn .elementor-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-style: solid;
  border-width: 1px;
  border-radius: var(--jsld-radius-0);
  padding: 16px 24px;
  text-decoration: none;
  cursor: pointer;
  overflow: hidden;
  isolation: isolate;
  font-family: var(--jsld-font-ui);
  font-weight: 400;
  font-size: .94117647rem;
  line-height: 1;
  letter-spacing: .10em;
  text-transform: uppercase;
  transition: background-color var(--jsld-dur-2) var(--jsld-ease),
  border-color var(--jsld-dur-2) var(--jsld-ease),
  color var(--jsld-dur-2) var(--jsld-ease),
  transform var(--jsld-dur-2) var(--jsld-ease),
  box-shadow var(--jsld-dur-3) var(--jsld-ease)
}
.elementor-widget.jsld-btn .elementor-button:hover .elementor-button-icon {
  transform: translateX(5px)
}
.elementor-widget.jsld-btn--primary .elementor-button,
.jsld-on-dark .elementor-widget.jsld-btn--primary .elementor-button {
  background: var(--jsld-teal-700);
  border-color: var(--jsld-teal-700);
  color: #fff !important
}
.elementor-widget.jsld-btn--primary .elementor-button:hover,
.jsld-on-dark .elementor-widget.jsld-btn--primary .elementor-button:hover {
  background: var(--jsld-teal-900);
  border-color: var(--jsld-teal-900);
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: var(--jsld-shadow-teal)
}
.elementor-widget.jsld-btn--primary .elementor-button:active,
.jsld-on-dark .elementor-widget.jsld-btn--primary .elementor-button:active {
  background: var(--jsld-teal-800);
  transform: translateY(0);
  box-shadow: none
}
.elementor-widget.jsld-btn--secondary .elementor-button,
.jsld-on-dark .elementor-widget.jsld-btn--secondary .elementor-button {
  background: var(--jsld-sand-500);
  border-color: var(--jsld-sand-500);
  color: var(--jsld-teal-900) !important
}
.elementor-widget.jsld-btn--secondary .elementor-button:hover,
.jsld-on-dark .elementor-widget.jsld-btn--secondary .elementor-button:hover {
  background: #fff;
  border-color: #fff;
  color: var(--jsld-teal-900) !important;
  transform: translateY(-2px);
  box-shadow: var(--jsld-shadow-2)
}
.elementor-widget.jsld-btn--secondary .elementor-button:active,
.jsld-on-dark .elementor-widget.jsld-btn--secondary .elementor-button:active {
  background: var(--jsld-sand-200);
  transform: translateY(0)
}
.elementor-widget.jsld-btn--legacy .elementor-button,
.jsld-on-dark .elementor-widget.jsld-btn--legacy .elementor-button {
  background: var(--jsld-teal-400);
  border-color: var(--jsld-teal-400);
  color: #fff !important
}
.elementor-widget.jsld-btn--legacy .elementor-button:hover,
.jsld-on-dark .elementor-widget.jsld-btn--legacy .elementor-button:hover {
  background: var(--jsld-ink-900);
  border-color: var(--jsld-ink-900);
  color: #fff !important;
  transform: translateY(-2px)
}
.elementor-widget.jsld-btn--ghost .elementor-button {
  background: transparent;
  border-color: var(--jsld-teal-700);
  color: var(--jsld-teal-700)
}
.elementor-widget.jsld-btn--ghost .elementor-button:hover {
  background: var(--jsld-teal-700);
  color: #fff;
  transform: translateY(-2px)
}
.elementor-widget.jsld-btn--ghost-light .elementor-button,
.jsld-on-dark .elementor-widget.jsld-btn--ghost-light .elementor-button {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .42);
  color: #fff !important
}
.elementor-widget.jsld-btn--ghost-light .elementor-button:hover,
.jsld-on-dark .elementor-widget.jsld-btn--ghost-light .elementor-button:hover {
  background: #fff;
  border-color: #fff;
  color: var(--jsld-teal-900) !important;
  transform: translateY(-2px)
}
.elementor-widget.jsld-btn--link .elementor-button {
  background: none;
  border-color: transparent;
  color: var(--jsld-teal-700);
  padding-inline: 0;
  letter-spacing: .14em
}
.elementor-widget.jsld-btn--link .elementor-button::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 8px;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform var(--jsld-dur-3) var(--jsld-ease-out)
}
.elementor-widget.jsld-btn--link .elementor-button:hover {
  color: var(--jsld-teal-900)
}
.elementor-widget.jsld-btn--link .elementor-button:hover::after {
  transform: scaleX(1);
  transform-origin: left
}
.jsld-on-dark .elementor-widget.jsld-btn--link .elementor-button {
  color: var(--jsld-sand-500) !important
}
.jsld-on-dark .elementor-widget.jsld-btn--link .elementor-button:hover {
  color: #fff !important
}
.elementor-widget.jsld-btn .elementor-button[disabled],
.elementor-widget.jsld-btn.is-disabled .elementor-button {
  background: var(--jsld-paper-alt);
  border-color: var(--jsld-paper-alt);
  color: #5C5E62 !important;
  pointer-events: none;
  opacity: 1
}
.jsld-on-dark .elementor-widget.jsld-btn .elementor-button[disabled],
.jsld-on-dark .elementor-widget.jsld-btn.is-disabled .elementor-button {
  background: rgba(255, 255, 255, .14) !important;
  border-color: rgba(255, 255, 255, .18) !important;
  color: rgba(255, 255, 255, .5) !important
}
.elementor-widget.jsld-btn--sweep .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .32) 50%, transparent 70%);
  background-size: 250% 100%;
  background-position: 180% 0;
  transition: background-position 850ms var(--jsld-ease-out)
}
.elementor-widget.jsld-btn--sweep .elementor-button:hover::before {
  background-position: -70% 0
}
.elementor-widget.jsld-btn--fill .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--jsld-fill, var(--jsld-teal-700));
  transform: translateY(101%);
  transition: transform var(--jsld-dur-3) var(--jsld-ease-out)
}
.elementor-widget.jsld-btn--fill .elementor-button:hover::before {
  transform: translateY(0)
}
.elementor-widget.jsld-btn--slice .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--jsld-slice, var(--jsld-teal-900));
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  transition: clip-path 520ms var(--jsld-ease-out)
}
.elementor-widget.jsld-btn--slice .elementor-button:hover::before {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}
.elementor-widget.jsld-btn--ghost-light.jsld-btn--slice .elementor-button {
  --jsld-slice: #FFFFFF
}
.elementor-widget.jsld-btn--ghost-light.jsld-btn--slice .elementor-button:hover,
.elementor-widget.jsld-btn--ghost-light.jsld-btn--fill .elementor-button:hover {
  background: rgba(255, 255, 255, .08);
  border-color: #fff;
  color: var(--jsld-teal-900) !important
}
.elementor-widget.jsld-btn--ghost-light.jsld-btn--slice .elementor-button:hover .elementor-button-text,
.elementor-widget.jsld-btn--ghost-light.jsld-btn--fill .elementor-button:hover .elementor-button-text {
  color: var(--jsld-teal-900) !important
}
.elementor-widget.jsld-btn--swap .elementor-button .elementor-button-text {
  display: inline-block;
  height: 1.15em;
  line-height: 1.15em;
  overflow: hidden;
  vertical-align: middle
}
.elementor-widget.jsld-btn--swap .elementor-button .elementor-button-text span {
  display: block;
  height: 1.15em;
  line-height: 1.15em;
  transition: transform 420ms var(--jsld-ease-out)
}
.elementor-widget.jsld-btn--swap .elementor-button:hover .elementor-button-text span {
  transform: translateY(-100%)
}
.elementor-widget.jsld-btn--pulse .elementor-button {
  animation: jsld-pulse 2.6s var(--jsld-ease-in-out) infinite
}

/* ── títulos animados: a classe fica no wrapper, o <h*> é o alvo ── */
.elementor-widget.jsld-lines .elementor-heading-title>span {
  display: block;
  overflow: hidden
}
.elementor-widget.jsld-lines .elementor-heading-title>span>i {
  display: block;
  font-style: inherit;
  transform: translateY(105%);
  transition: transform 900ms var(--jsld-ease-out);
  transition-delay: var(--d, 0ms)
}
.elementor-widget.jsld-lines.jsld-in .elementor-heading-title>span>i {
  transform: none
}
@media (prefers-reduced-motion:reduce) {
.elementor-widget.jsld-lines .elementor-heading-title>span>i {
  transform: none
}
}
@media print {
.elementor-widget.jsld-lines .elementor-heading-title span i {
  opacity: 1 !important;
  transform: none !important
}
}
.elementor-widget.jsld-words .elementor-heading-title .jsld-w {
  display: inline-block;
  opacity: 0;
  transform: translateY(.5em) rotate(2deg);
  transition: opacity 620ms var(--jsld-ease-out), transform 620ms var(--jsld-ease-out)
}
.elementor-widget.jsld-words.jsld-in .elementor-heading-title .jsld-w {
  opacity: 1;
  transform: none
}
@media (prefers-reduced-motion:reduce) {
.elementor-widget.jsld-words .elementor-heading-title .jsld-w {
  opacity: 1;
  transform: none
}
}
@media print {
.elementor-widget.jsld-words .elementor-heading-title .jsld-w {
  opacity: 1 !important;
  transform: none !important
}
}

/* ── regras de tag nua re-emitidas para o título do widget:
      o frontend do Elementor as vencia com
      `.elementor-heading-title{margin:0;line-height:1}` ── */
h1.elementor-heading-title,
h2.elementor-heading-title,
h3.elementor-heading-title,
h4.elementor-heading-title,
h5.elementor-heading-title,
h6.elementor-heading-title {
  margin: 0 0 var(--jsld-sp-4);
  color: var(--jsld-teal-900);
  font-family: var(--jsld-font-display)
}
h1.elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 700;
  font-size: var(--jsld-fs-h1);
  line-height: 1.12em;
  letter-spacing: -.018em;
  text-transform: none
}
h2.elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 700;
  font-size: var(--jsld-fs-h2);
  line-height: 1.18em;
  letter-spacing: -.014em;
  text-transform: none
}
h3.elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 600;
  font-size: var(--jsld-fs-h3);
  line-height: 1.24em;
  letter-spacing: -.010em;
  text-transform: none
}
h4.elementor-heading-title {
  font-family: var(--jsld-font-sans);
  font-weight: 600;
  font-size: var(--jsld-fs-h4);
  line-height: 1.30em;
  letter-spacing: -.004em;
  text-transform: none
}
h5.elementor-heading-title {
  font-family: var(--jsld-font-sans);
  font-weight: 600;
  font-size: var(--jsld-fs-h5);
  line-height: 1.35em;
  letter-spacing: 0;
  text-transform: none
}
h6.elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-weight: 400;
  font-size: var(--jsld-fs-h6);
  line-height: 1.25em;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
p.elementor-heading-title {
  margin: 0 0 var(--jsld-sp-4)
}
strong.elementor-heading-title {
  font-weight: 700;
  color: var(--jsld-teal-900)
}

/* ── classes que caem no WRAPPER do widget. O prefixo é DUPLO
      (.elementor-widget.elementor-widget) porque o frontend do
      Elementor zera margem de widget com uma regra 0,3,0:
      `.e-con .elementor-widget.elementor-widget{margin-block-end:0}`
      — margem física e lógica são a MESMA propriedade, então
      qualquer margin-bottom do DS a 0,2,0 morre calado. ── */
.elementor-widget.jsld-caption {
  font-family: var(--jsld-font-sans);

  font-weight: 400;

  font-size: var(--jsld-fs-caption);

  line-height: 1.45;

  letter-spacing: .02em;

  color: var(--jsld-sand-700)
}
.elementor-widget.jsld-caption .elementor-heading-title {
  font-family: var(--jsld-font-sans);
  font-weight: 400;
  font-size: var(--jsld-fs-caption);
  line-height: 1.45;
  letter-spacing: .02em;
  color: var(--jsld-sand-700)
}
.elementor-widget.jsld-eyebrow {
  display: inline-flex;

  align-items: center;

  gap: .6rem;

  font-family: var(--jsld-font-ui);

  font-size: var(--jsld-fs-label);

  letter-spacing: .24em;

  text-transform: uppercase;

  color: var(--jsld-teal-700);
  margin: 0
}
.elementor-widget.jsld-eyebrow > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-bottom: var(--jsld-sp-3)
}
.elementor-widget.jsld-eyebrow .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: var(--jsld-fs-label);
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
.elementor-widget.jsld-eyebrow::before {
  content: "";

  width: 28px;

  height: 1px;

  background: var(--jsld-sand-500)
}
.jsld-on-dark .elementor-widget.jsld-eyebrow {
  color: var(--jsld-sand-500)
}
.jsld-on-dark .elementor-widget.jsld-eyebrow .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.jsld-on-dark .elementor-widget.jsld-eyebrow::before {
  background: var(--jsld-teal-400)
}
.jsld-on-dark .elementor-widget.jsld-caption {
  color: var(--jsld-dark-text-2)
}
.jsld-on-dark .elementor-widget.jsld-caption .elementor-heading-title {
  color: var(--jsld-dark-text-2)
}
.jsld-light .elementor-widget.jsld-eyebrow {
  color: var(--jsld-teal-700)
}
.jsld-light .elementor-widget.jsld-eyebrow .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.jsld-light .elementor-widget.jsld-caption {
  color: var(--jsld-sand-700)
}
.jsld-light .elementor-widget.jsld-caption .elementor-heading-title {
  color: var(--jsld-sand-700)
}
.elementor-widget.jsld-reveal {
  opacity: 0;

  transform: translate3d(0, 26px, 0);

  transition: opacity var(--jsld-dur-4) var(--jsld-ease-out), transform var(--jsld-dur-4) var(--jsld-ease-out);

  transition-delay: var(--d, 0ms);

  will-change: opacity, transform
}
.elementor-widget.jsld-reveal.jsld-in {
  opacity: 1;

  transform: none
}
.elementor-widget.jsld-lines>span {
  display: block;

  overflow: hidden
}
.elementor-widget.jsld-lines>span>i {
  display: block;

  font-style: inherit;

  transform: translateY(105%);

  transition: transform 900ms var(--jsld-ease-out);

  transition-delay: var(--d, 0ms)
}
.elementor-widget.jsld-lines>span>i .elementor-heading-title {
  font-style: inherit
}
.elementor-widget.jsld-lines.jsld-in>span>i {
  transform: none
}
.elementor-widget.jsld-draw path,
.elementor-widget.jsld-draw line,
.elementor-widget.jsld-draw circle,
.elementor-widget.jsld-draw polyline {
  stroke-linecap: round;

  stroke-linejoin: round;

  stroke-dasharray: var(--len, 1400);

  stroke-dashoffset: var(--len, 1400);

  transition: stroke-dashoffset 2.8s cubic-bezier(0.37, 0, 0.21, 1);

  transition-delay: var(--d, 0ms)
}
.elementor-widget.jsld-draw.jsld-in path,
.elementor-widget.jsld-draw.jsld-in line,
.elementor-widget.jsld-draw.jsld-in circle,
.elementor-widget.jsld-draw.jsld-in polyline {
  stroke-dashoffset: 0
}
@media (prefers-reduced-motion:reduce) {
.elementor-widget.jsld-reveal {
  opacity: 1;

  transform: none;

  filter: none
}
}
@media (prefers-reduced-motion:reduce) {
.elementor-widget.jsld-lines>span>i {
  transform: none
}
}
@media (prefers-reduced-motion:reduce) {
.elementor-widget.jsld-draw path {
  stroke-dashoffset: 0
}
}
.elementor-widget.jsld-badge {
  display: inline-flex;

  align-items: center;

  gap: .4rem;

  padding: .28rem .7rem;

  font-family: var(--jsld-font-ui);

  font-size: .6rem;

  letter-spacing: .14em;

  text-transform: uppercase;

  border: 1px solid transparent;

  border-radius: var(--jsld-radius-pill);

  white-space: nowrap;

  transition: all var(--jsld-dur-2) var(--jsld-ease)
}
.elementor-widget.jsld-badge .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .6rem;
  letter-spacing: .14em;
  text-transform: uppercase
}
.elementor-widget.jsld-badge--outline {
  border-color: var(--jsld-teal-700);

  color: var(--jsld-teal-700)
}
.elementor-widget.jsld-badge--outline .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.elementor-widget.jsld-badge--sand {
  background: var(--jsld-sand-500);

  color: var(--jsld-teal-900)
}
.elementor-widget.jsld-badge--sand .elementor-heading-title {
  color: var(--jsld-teal-900)
}
.elementor-widget.jsld-badge:hover {
  transform: translateY(-2px)
}
.elementor-widget.jsld-check {
  list-style: none;

  padding: 0;

  display: flex;

  flex-direction: column;

  gap: .55rem;
  margin: 0
}
.elementor-widget.jsld-check > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0
}
.elementor-widget.jsld-check li {
  position: relative;

  padding-left: 1.5rem;

  font-size: .9rem;

  line-height: 1.5
}
.elementor-widget.jsld-check li .elementor-heading-title {
  font-size: .9rem;
  line-height: 1.5
}
.elementor-widget.jsld-check li::before {
  content: "";

  position: absolute;

  left: 0;

  top: 0.25em;

  width: 14px;

  height: 14px;

  border: 1px solid var(--jsld-teal-700);

  background: var(--jsld-teal-050);

  box-sizing: border-box;
  width: auto
}
@media print {
.elementor-widget.jsld-reveal,
.elementor-widget.jsld-lines span i {
  opacity: 1 !important;

  transform: none !important
}
}
.elementor-widget.jsld-check input {
  position: absolute;

  opacity: 0;

  width: 0;

  height: 0;
  width: auto
}
.elementor-widget.jsld-check input:checked+.jsld-check__box {
  background: var(--jsld-teal-700);

  border-color: var(--jsld-teal-700)
}
.elementor-widget.jsld-check input:checked+.jsld-check__box i {
  transform: scale(1)
}
.elementor-widget.jsld-check input:focus-visible+.jsld-check__box {
  box-shadow: 0 0 0 3px var(--jsld-teal-a24)
}
.elementor-widget.jsld-check input:checked+.jsld-switch {
  background: var(--jsld-teal-700)
}
.elementor-widget.jsld-check input:checked+.jsld-switch::after {
  transform: translateX(20px)
}
.jsld-area:hover .elementor-widget.jsld-area__icon {
  color: var(--jsld-sand-500);

  transform: translateY(-4px) rotate(-6deg)
}
.jsld-area:hover .elementor-widget.jsld-area__icon .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.jsld-area:hover .elementor-widget.jsld-area__num {
  color: rgba(255, 255, 255, .22)
}
.jsld-area:hover .elementor-widget.jsld-area__num .elementor-heading-title {
  color: rgba(255, 255, 255, .22)
}
.elementor-widget.jsld-area__icon {
  font-size: 1.5rem;

  color: var(--jsld-teal-700);

  display: block;

  transition: color var(--jsld-dur-3) var(--jsld-ease), transform var(--jsld-dur-3) var(--jsld-ease-out);
  margin: 0
}
.elementor-widget.jsld-area__icon > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-bottom: .9rem
}
.elementor-widget.jsld-area__icon .elementor-heading-title {
  font-size: 1.5rem;
  color: var(--jsld-teal-700)
}
.elementor-widget.jsld-area__num {
  position: absolute;

  top: .7rem;

  right: .9rem;

  font-family: var(--jsld-font-display);

  font-weight: 700;

  font-size: 2.4rem;

  line-height: 1;

  color: var(--jsld-teal-a12);

  transition: color var(--jsld-dur-3) var(--jsld-ease);
  width: auto
}
.elementor-widget.jsld-area__num .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
  color: var(--jsld-teal-a12)
}
.elementor-widget.jsld-hero__title {
  font-family: var(--jsld-font-display);

  font-weight: 700;

  font-size: clamp(2.6rem, 1.2rem + 5.4vw, 4.6rem);

  line-height: 1.02;

  letter-spacing: -.026em;

  color: #fff;
  margin: 0
}
.elementor-widget.jsld-hero__title > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0 0 var(--jsld-sp-5)
}
.elementor-widget.jsld-hero__title .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 700;
  font-size: clamp(2.6rem, 1.2rem + 5.4vw, 4.6rem);
  line-height: 1.02;
  letter-spacing: -.026em;
  color: #fff
}
.elementor-widget.jsld-hero__title em {
  font-style: italic;

  font-weight: 400;

  background: var(--jsld-grad-text);

  -webkit-background-clip: text;

  background-clip: text;

  color: transparent;

  padding-right: .08em
}
.elementor-widget.jsld-hero__title em .elementor-heading-title {
  font-style: italic;
  font-weight: 400;
  color: transparent
}
.elementor-widget.jsld-hero__lead {
  max-width: 52ch;

  font-size: var(--jsld-fs-body-lg);

  color: rgba(255, 255, 255, .8);
  margin: 0
}
.elementor-widget.jsld-hero__lead > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 52ch;
  margin-bottom: var(--jsld-sp-6)
}
.elementor-widget.jsld-hero__lead .elementor-heading-title {
  font-size: var(--jsld-fs-body-lg);
  color: rgba(255, 255, 255, .8)
}
.elementor-widget.jsld-hero__symbol {
  position: absolute;

  right: -6vw;

  top: 50%;

  width: min(46vw, 620px);

  transform: translateY(-50%);

  opacity: .28;

  z-index: 1;

  pointer-events: none;

  filter: drop-shadow(0 0 12px rgba(183, 174, 165, .35));

  animation: jsld-float 14s var(--jsld-ease-in-out) infinite alternate;
  width: auto
}
.elementor-widget.jsld-hero__badge {
  position: absolute;

  left: var(--jsld-sp-5);

  bottom: var(--jsld-sp-5);

  z-index: 2;

  display: inline-flex;

  align-items: center;

  gap: .5rem;

  padding: .4rem .8rem;

  background: rgba(0, 55, 66, .8);

  border: 1px solid rgba(255, 255, 255, .24);

  font-family: var(--jsld-font-ui);

  font-size: .6rem;

  letter-spacing: .2em;

  text-transform: uppercase;

  color: #fff;
  width: auto
}
.elementor-widget.jsld-hero__badge .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .6rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #fff
}
.elementor-widget.jsld-hero__badge i {
  color: var(--jsld-sand-500)
}
.elementor-widget.jsld-hero__badge i .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.elementor-widget.ph__tag {
  font-family: var(--jsld-font-ui);

  font-size: .62rem;

  letter-spacing: .3em;

  text-transform: uppercase;

  color: var(--jsld-teal-700);

}
.elementor-widget.ph__tag .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .62rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
.elementor-widget.ph__dir {
  font-size: .78rem;

  line-height: 1.55;

  max-width: 30ch;

  color: var(--jsld-sand-700);
;
  margin: 0
}
.elementor-widget.ph__dir > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 30ch
}
.elementor-widget.ph__dir .elementor-heading-title {
  font-size: .78rem;
  line-height: 1.55;
  color: var(--jsld-sand-700)
}
.elementor-widget.ph__specs {
  font-family: var(--jsld-font-mono);

  font-size: .62rem;

  color: var(--jsld-sand-500);

  letter-spacing: .04em;

}
.elementor-widget.ph__specs .elementor-heading-title {
  font-family: var(--jsld-font-mono);
  font-size: .62rem;
  color: var(--jsld-sand-500);
  letter-spacing: .04em
}
.ph--dark .elementor-widget.ph__tag { color: var(--jsld-sand-500);

}
.ph--dark .elementor-widget.ph__tag .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.ph--dark .elementor-widget.ph__dir { color: rgba(255, 255, 255, .66);

}
.ph--dark .elementor-widget.ph__dir .elementor-heading-title {
  color: rgba(255, 255, 255, .66)
}
.ph--dark .elementor-widget.ph__specs { color: rgba(255, 255, 255, .38);

}
.ph--dark .elementor-widget.ph__specs .elementor-heading-title {
  color: rgba(255, 255, 255, .38)
}
.elementor-widget.jsld-hero__title--long { font-size: clamp(2.3rem, 1rem + 4.2vw, 3.8rem);

}
.elementor-widget.jsld-hero__title--long .elementor-heading-title {
  font-size: clamp(2.3rem, 1rem + 4.2vw, 3.8rem)
}
.page-hero__crumb .elementor-widget.sep { color: var(--jsld-sand-500);

}
.page-hero__crumb .elementor-widget.sep .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.elementor-widget.page-hero__lead {
  font-size: var(--jsld-fs-body-lg);

  line-height: 1.75;

  color: var(--jsld-ink-400);

  max-width: 58ch;
;
  margin: 0
}
.elementor-widget.page-hero__lead > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 58ch;
  margin: 0
}
.elementor-widget.page-hero__lead .elementor-heading-title {
  font-size: var(--jsld-fs-body-lg);
  line-height: 1.75;
  color: var(--jsld-ink-400)
}
.page-hero--deep .elementor-widget.page-hero__lead { color: rgba(255, 255, 255, .78);

}
.page-hero--deep .elementor-widget.page-hero__lead .elementor-heading-title {
  color: rgba(255, 255, 255, .78)
}
.elementor-widget.page-hero__mark {
  position: absolute;

  right: -6%;

  bottom: -11%;

  width: clamp(280px, 34vw, 540px);

  opacity: .07;

  z-index: -1;

  pointer-events: none;
;
  width: auto
}
.elementor-widget.ed-lead {
  font-family: var(--jsld-font-display);

  font-weight: 400;

  font-style: italic;

  font-size: clamp(1.35rem, 1rem + 1.6vw, 1.9rem);

  line-height: 1.5;

  color: var(--jsld-teal-900);

  max-width: 30ch;
;
  margin: 0
}
.elementor-widget.ed-lead > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 30ch;
  margin: 0
}
.elementor-widget.ed-lead .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 400;
  font-style: italic;
  font-size: clamp(1.35rem, 1rem + 1.6vw, 1.9rem);
  line-height: 1.5;
  color: var(--jsld-teal-900)
}
.cred-list .elementor-widget.ic {
  flex: 0 0 auto;

  width: 18px;

  height: 18px;

  color: var(--jsld-teal-700);
;
  margin: 0
}
.elementor-widget:has(+ .cred-list .elementor-widget.ic) > :is(p, ul, ol, blockquote, .elementor-heading-title) {
  margin-bottom: 0
}
.cred-list .elementor-widget.ic > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-top: .15rem
}
.cred-list .elementor-widget.ic .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.elementor-widget.post-card__title {
  font-family: var(--jsld-font-display);

  font-weight: 600;

  font-size: 1.22rem;

  line-height: 1.32;

  letter-spacing: -.008em;

  color: var(--jsld-teal-900);
;
  margin: 0
}
.elementor-widget.post-card__title > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0
}
.elementor-widget.post-card__title .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 600;
  font-size: 1.22rem;
  line-height: 1.32;
  letter-spacing: -.008em;
  color: var(--jsld-teal-900)
}
.post-card:hover .elementor-widget.post-card__title { color: var(--jsld-teal-700);

}
.post-card:hover .elementor-widget.post-card__title .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.elementor-widget.post-card__excerpt {
  font-size: var(--jsld-fs-body-sm);

  color: var(--jsld-ink-400);

  flex: 1;
;
  margin: 0
}
.elementor-widget.post-card__excerpt > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0
}
.elementor-widget.post-card__excerpt .elementor-heading-title {
  font-size: var(--jsld-fs-body-sm);
  color: var(--jsld-ink-400)
}
.elementor-widget.post-card__foot {
  display: flex;

  align-items: center;

  gap: .5rem;

  font-family: var(--jsld-font-ui);

  font-size: .66rem;

  letter-spacing: .2em;

  text-transform: uppercase;

  color: var(--jsld-teal-700);

}
.elementor-widget.post-card__foot .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .66rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
.elementor-widget.post-card__foot .elementor-widget.ic { width: 14px;
 height: 14px;
 transition: transform var(--jsld-dur-2) var(--jsld-ease);

}
.post-card:hover .elementor-widget.post-card__foot .elementor-widget.ic { transform: translateX(4px);

}
.contact-info__item .elementor-widget.ic {
  flex: 0 0 auto;

  width: 20px;

  height: 20px;

  color: var(--jsld-teal-700);
;
  margin: 0
}
.elementor-widget:has(+ .contact-info__item .elementor-widget.ic) > :is(p, ul, ol, blockquote, .elementor-heading-title) {
  margin-bottom: 0
}
.contact-info__item .elementor-widget.ic > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-top: .2rem
}
.contact-info__item .elementor-widget.ic .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.elementor-widget.ic {
  display: inline-block;

  vertical-align: middle;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.6;

  stroke-linecap: round;

  stroke-linejoin: round;

}
.elementor-widget.ic--20 { width: 20px;
 height: 20px;

}
.elementor-widget.ic--24 { width: 24px;
 height: 24px;

}
.elementor-widget.ic--brand { fill: currentColor;
 stroke: none;

}
.elementor-widget.footer-list { list-style: none;
 padding: 0;
 display: flex;
 flex-direction: column;
 gap: .55rem;
 font-size: .84rem;
;
  margin: 0
}
.elementor-widget.footer-list > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0
}
.elementor-widget.footer-list .elementor-heading-title {
  font-size: .84rem
}
.elementor-widget.footer-list li { display: flex;
 gap: .6rem;
 align-items: baseline;
 line-height: 1.65;

}
.elementor-widget.footer-list li .elementor-heading-title {
  line-height: 1.65
}
.elementor-widget.footer-list .elementor-widget.ic { width: 13px;
 height: 13px;
 flex: 0 0 auto;
 transform: translateY(2px);
 color: var(--jsld-sand-500);

}
.elementor-widget.footer-list .elementor-widget.ic .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.elementor-widget.measure { max-width: 62ch;
;
  margin: 0
}
.elementor-widget.measure > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 62ch
}
.jsld-social .elementor-widget.ic { width: 16px !important;
 height: 16px !important;

}
.elementor-widget.team-card__role {
  font-family: var(--jsld-font-ui);

  font-size: .62rem;

  letter-spacing: .22em;

  text-transform: uppercase;

  color: var(--jsld-teal-700);
;
  margin: 0
}
.elementor-widget.team-card__role > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0 0 .9rem
}
.elementor-widget.team-card__role .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .62rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
.team-card__link .elementor-widget.ic { width: 16px;
 height: 16px;

}
.jsld-media__body .elementor-widget.jsld-caption { color: rgba(255, 255, 255, .78);
;
  margin: 0
}
.jsld-media__body .elementor-widget.jsld-caption > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0
}
.jsld-media__body .elementor-widget.jsld-caption .elementor-heading-title {
  color: rgba(255, 255, 255, .78)
}
.elementor-widget.quote-card__mark { width: 54px;
 height: auto;

}
.elementor-widget.quote-card__quote {
  font-family: var(--jsld-font-display);

  font-style: italic;

  font-weight: 400;

  font-size: clamp(1.5rem, 1rem + 2.2vw, 2.4rem);

  line-height: 1.35;

  letter-spacing: -.01em;

  color: #fff;

  max-width: 24ch;
;
  margin: 0
}
.elementor-widget.quote-card__quote > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 24ch;
  margin: 0
}
.elementor-widget.quote-card__quote .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.5rem, 1rem + 2.2vw, 2.4rem);
  line-height: 1.35;
  letter-spacing: -.01em;
  color: #fff
}
.elementor-widget.quote-card__eyebrow {
  font-family: var(--jsld-font-ui);

  font-size: .64rem;

  letter-spacing: .3em;

  text-transform: uppercase;

  color: var(--jsld-sand-500);
;
  margin: 0
}
.elementor-widget.quote-card__eyebrow > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0 0 1rem
}
.elementor-widget.quote-card__eyebrow .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .64rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--jsld-sand-500)
}
.jsld-area--t3 .elementor-widget.jsld-area__icon { color: var(--jsld-sand-500);

}
.jsld-area--t3 .elementor-widget.jsld-area__icon .elementor-heading-title {
  color: var(--jsld-sand-500)
}
.jsld-area--t3 .elementor-widget.jsld-area__num {
  position: static;

  order: -1;

  font-size: 2.9rem;

  font-weight: 300;

  color: rgba(255, 255, 255, .26);

  transition: color var(--jsld-dur-3) var(--jsld-ease);
;
  margin: 0
}
.jsld-area--t3 .elementor-widget.jsld-area__num > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-bottom: .9rem
}
.jsld-area--t3 .elementor-widget.jsld-area__num .elementor-heading-title {
  font-size: 2.9rem;
  font-weight: 300;
  color: rgba(255, 255, 255, .26)
}
.jsld-area--t3:hover .elementor-widget.jsld-area__num { color: rgba(183, 174, 165, .55);

}
.jsld-area--t3:hover .elementor-widget.jsld-area__num .elementor-heading-title {
  color: rgba(183, 174, 165, .55)
}
.post-card--noimg .elementor-widget.post-card__title {
  font-size: 1.5rem;

  line-height: 1.26;

  letter-spacing: -.012em;

}
.post-card--noimg .elementor-widget.post-card__title .elementor-heading-title {
  font-size: 1.5rem;
  line-height: 1.26;
  letter-spacing: -.012em
}
.elementor-widget.post-card__date {
  font-family: var(--jsld-font-ui);

  font-size: .62rem;

  letter-spacing: .22em;

  text-transform: uppercase;

  color: var(--jsld-sand-700);

  white-space: nowrap;

}
.elementor-widget.post-card__date .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: .62rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--jsld-sand-700)
}
.elementor-widget.footer-list--mt {;
  margin: 0
}
.elementor-widget:has(+ .elementor-widget.footer-list--mt) > :is(p, ul, ol, blockquote, .elementor-heading-title) {
  margin-bottom: 0
}
.elementor-widget.footer-list--mt > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-top: 1.4rem
}
.elementor-widget.jsld-card__num {
  position: absolute;
 top: .9rem;
 right: 1.1rem;

  font-family: var(--jsld-font-display);
 font-weight: 300;
 font-size: 2.4rem;

  line-height: 1;
 color: var(--jsld-teal-100);
 pointer-events: none;
;
  width: auto
}
.elementor-widget.jsld-card__num .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-weight: 300;
  font-size: 2.4rem;
  line-height: 1;
  color: var(--jsld-teal-100)
}
.page-hero--area .elementor-widget.page-hero__lead { font-family: var(--jsld-font-display);
 font-style: italic;
 color: var(--jsld-teal-700);

}
.page-hero--area .elementor-widget.page-hero__lead .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-style: italic;
  color: var(--jsld-teal-700)
}
.elementor-widget.area-sub {
  font-family: var(--jsld-font-ui);
 font-size: var(--jsld-fs-h6);

  letter-spacing: .16em;
 text-transform: uppercase;
 color: var(--jsld-teal-700);
;
  margin: 0
}
.elementor-widget:has(+ .elementor-widget.area-sub) > :is(p, ul, ol, blockquote, .elementor-heading-title) {
  margin-bottom: 0
}
.elementor-widget.area-sub > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: var(--jsld-sp-6) 0 .6rem
}
.elementor-widget.area-sub .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: var(--jsld-fs-h6);
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
.elementor-widget.area-sub:first-child {;
  margin: 0
}
.elementor-widget.area-sub:first-child > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-top: 0
}
.elementor-widget.area-escopo__title {
  font-family: var(--jsld-font-ui);
 font-size: var(--jsld-fs-h6);

  letter-spacing: .18em;
 text-transform: uppercase;
 color: var(--jsld-teal-700);
 padding-bottom: .7rem;
 border-bottom: 1px solid var(--jsld-sand-500);
;
  margin: 0
}
.elementor-widget.area-escopo__title > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin: 0 0 1rem
}
.elementor-widget.area-escopo__title .elementor-heading-title {
  font-family: var(--jsld-font-ui);
  font-size: var(--jsld-fs-h6);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--jsld-teal-700)
}
.elementor-widget.area-destaque__intro { color: var(--jsld-ink-400);
;
  margin: 0
}
.elementor-widget:has(+ .elementor-widget.area-destaque__intro) > :is(p, ul, ol, blockquote, .elementor-heading-title) {
  margin-bottom: 0
}
.elementor-widget.area-destaque__intro > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  margin-top: .8rem
}
.elementor-widget.area-destaque__intro .elementor-heading-title {
  color: var(--jsld-ink-400)
}
.elementor-widget.area-instrumentos { columns: 2;
 column-gap: clamp(2rem, 4vw, 4rem);

}
.elementor-widget.area-instrumentos li { break-inside: avoid;

}
@media (max-width: 900px) {
.elementor-widget.area-instrumentos { columns: 1;

}
}
.area-cta__inner .elementor-widget.ed-lead { max-width: 46ch;
;
  margin: 0
}
.area-cta__inner .elementor-widget.ed-lead > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 46ch
}
.elementor-widget.ed-lead--light { color: #fff;

}
.elementor-widget.ed-lead--light .elementor-heading-title {
  color: #fff
}
.elementor-widget.area-row__num { font-family: var(--jsld-font-mono, monospace);
 font-size: var(--jsld-fs-caption);
 color: var(--jsld-sand-500);

}
.elementor-widget.area-row__num .elementor-heading-title {
  font-family: var(--jsld-font-mono, monospace);
  font-size: var(--jsld-fs-caption);
  color: var(--jsld-sand-500)
}
.elementor-widget.area-row__icon { color: var(--jsld-teal-700);
 display: grid;
 place-items: center;

}
.elementor-widget.area-row__icon .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.elementor-widget.area-row__tag { font-family: var(--jsld-font-display);
 font-style: italic;
 color: var(--jsld-teal-700);
 font-size: var(--jsld-fs-body-sm);

}
.elementor-widget.area-row__tag .elementor-heading-title {
  font-family: var(--jsld-font-display);
  font-style: italic;
  color: var(--jsld-teal-700);
  font-size: var(--jsld-fs-body-sm)
}
.elementor-widget.area-row__desc { font-size: var(--jsld-fs-body-sm);
 color: var(--jsld-ink-400);
 max-width: 62ch;
;
  margin: 0
}
.elementor-widget.area-row__desc > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6, span, strong, b, em, blockquote) {
  max-width: 62ch
}
.elementor-widget.area-row__desc .elementor-heading-title {
  font-size: var(--jsld-fs-body-sm);
  color: var(--jsld-ink-400)
}
.elementor-widget.area-row__go { color: var(--jsld-teal-700);
 transition: transform var(--jsld-dur-2) var(--jsld-ease-out);

}
.elementor-widget.area-row__go .elementor-heading-title {
  color: var(--jsld-teal-700)
}
.area-row:hover .elementor-widget.area-row__go { transform: translateX(5px);

}
@media (max-width: 700px) {
.elementor-widget.area-row__icon { grid-row: 1;

}
}
@media (max-width: 700px) {
.elementor-widget.area-row__go { display: none;

}
}

/* ── layout: as classes abaixo caem em containers (.e-con), que
      vencia as regras do DS por ordem de carga ── */
.e-con.jsld-container {
  width: min(100% - 2.5rem, var(--jsld-container));
  margin-inline: auto
}
.e-con.jsld-section {
  position: relative;
  padding: var(--jsld-sp-9) 0;
  overflow: hidden;
  isolation: isolate
}
.e-con.jsld-section__head {
  max-width: 62ch;
  margin-bottom: var(--jsld-sp-7);
  position: relative;
  z-index: 2
}
.e-con.jsld-grid {
  display: grid;
  gap: var(--jsld-sp-5)
}
.e-con.jsld-grid--2 {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr))
}
.e-con.jsld-grid--3 {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr))
}
.e-con.jsld-grid--4 {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr))
}
.e-con.jsld-stack {
  display: flex;
  flex-wrap: wrap;
  gap: var(--jsld-sp-4);
  align-items: flex-start;
  flex-direction: row
}
.e-con.jsld-on-dark {
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark h1,
.e-con.jsld-on-dark h2,
.e-con.jsld-on-dark h3,
.e-con.jsld-on-dark h4,
.e-con.jsld-on-dark h5 {
  color: #fff
}
.e-con.jsld-on-dark h6 {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark strong {
  color: #fff
}
.e-con.jsld-on-dark p {
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark .jsld-eyebrow {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-eyebrow::before {
  background: var(--jsld-teal-400)
}
.e-con.jsld-on-dark .jsld-label {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-helper {
  color: var(--jsld-dark-text-2)
}
.e-con.jsld-on-dark .jsld-caption {
  color: var(--jsld-dark-text-2)
}
.e-con.jsld-on-dark .jsld-mono {
  color: var(--jsld-dark-text-2)
}
.e-con.jsld-on-dark .jsld-body-lg,
.e-con.jsld-on-dark .jsld-body-sm {
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark a {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark a:hover {
  color: #fff
}
.e-con.jsld-on-dark .jsld-rule {
  background: linear-gradient(90deg, transparent, var(--jsld-teal-400), var(--jsld-sand-500), transparent)
}
.e-con.jsld-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  overflow: hidden
}
.e-con.jsld-bg__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(6px);
  opacity: .5;
  animation: jsld-orb-drift 26s var(--jsld-ease-in-out) infinite alternate
}
.e-con.jsld-bg__orb--a {
  width: 38vw;
  height: 38vw;
  left: -8vw;
  top: -10vw;
  background: radial-gradient(circle at 35% 35%, var(--jsld-teal-a12), transparent 68%)
}
.e-con.jsld-bg__orb--b {
  width: 30vw;
  height: 30vw;
  right: -6vw;
  bottom: -12vw;
  background: radial-gradient(circle at 60% 40%, var(--jsld-sand-a24), transparent 70%);
  animation-delay: -9s;
  animation-duration: 34s
}
.e-con.jsld-bg__grid {
  position: absolute;
  inset: -2px;
  opacity: .5;
  background-image: linear-gradient(var(--jsld-teal-a08) 1px, transparent 1px),
  linear-gradient(90deg, var(--jsld-teal-a08) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 10%, transparent 78%);
  mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 10%, transparent 78%);
  animation: jsld-grid-breathe 18s var(--jsld-ease-in-out) infinite alternate
}
.e-con.jsld-bg__monogram {
  position: absolute;
  inset: 0;
  opacity: .06;
  pointer-events: none
}
.e-con.jsld-bg__monogram svg {
  width: 100%;
  height: 100%;
  display: block
}
.e-con.jsld-bg__sweep {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 32%, rgba(255, 255, 255, .055) 48%, transparent 62%);
  background-size: 280% 100%;
  animation: jsld-sweep 14s var(--jsld-ease-in-out) infinite
}
.e-con.jsld-bg__threads {
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(90deg, transparent 0 118px, var(--jsld-sand-a12) 118px 119px);
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 30%, #000 70%, transparent);
  mask-image: linear-gradient(180deg, transparent, #000 30%, #000 70%, transparent);
  animation: jsld-threads 24s linear infinite
}
.e-con.jsld-surface--sand {
  background: var(--jsld-grad-sand)
}
.e-con.jsld-surface--deep {
  background: var(--jsld-grad-deep)
}
.e-con.jsld-reveal {
  opacity: 0;
  transform: translate3d(0, 26px, 0);
  transition: opacity var(--jsld-dur-4) var(--jsld-ease-out), transform var(--jsld-dur-4) var(--jsld-ease-out);
  transition-delay: var(--d, 0ms);
  will-change: opacity, transform
}
.e-con.jsld-reveal.jsld-in {
  opacity: 1;
  transform: none
}
.e-con.jsld-reveal--right {
  transform: translate3d(34px, 0, 0)
}
.e-con.jsld-reveal--zoom {
  transform: scale(.94)
}
@media (prefers-reduced-motion:reduce) {
.e-con.jsld-reveal {
  opacity: 1;
  transform: none;
  filter: none
}
}
.e-con.jsld-card {
  position: relative;
  background: var(--jsld-paper);
  border: 1px solid var(--jsld-teal-a08);
  padding: var(--jsld-sp-5);
  transition: transform var(--jsld-dur-3) var(--jsld-ease-out),
  box-shadow var(--jsld-dur-3) var(--jsld-ease-out), border-color var(--jsld-dur-3) var(--jsld-ease)
}
.e-con.jsld-card::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 3px;
  height: 100%;
  background: var(--jsld-teal-700);
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform var(--jsld-dur-3) var(--jsld-ease-out)
}
.e-con.jsld-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--jsld-shadow-2);
  border-color: var(--jsld-teal-a24)
}
.e-con.jsld-card:hover::after {
  transform: scaleY(1);
  transform-origin: top
}
.e-con.jsld-on-dark .e-con.jsld-card {
  background: rgba(255, 255, 255, .055);
  border-color: var(--jsld-dark-line)
}
.e-con.jsld-on-dark .e-con.jsld-card::after {
  background: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-spec th,
.e-con.jsld-on-dark .jsld-spec td {
  border-bottom-color: var(--jsld-dark-line);
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark .jsld-spec thead th {
  color: var(--jsld-sand-500);
  border-bottom-color: var(--jsld-dark-line-2)
}
.e-con.jsld-on-dark .jsld-spec tbody tr:hover {
  background: rgba(255, 255, 255, .07)
}
.e-con.jsld-on-dark .jsld-spec strong {
  color: #fff
}
.e-con.jsld-on-dark .jsld-code,
.e-con.jsld-on-dark .jsld-spec code {
  background: rgba(255, 255, 255, .16);
  color: #fff
}
.e-con.jsld-on-dark .jsld-note {
  background: rgba(255, 255, 255, .07);
  border-left-color: var(--jsld-sand-500);
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark .jsld-note--alert {
  background: rgba(158, 59, 50, .18);
  border-left-color: #E38B82
}
.e-con.jsld-on-dark .jsld-demo {
  background: rgba(255, 255, 255, .06);
  border-color: var(--jsld-dark-line-2)
}
.e-con.jsld-on-dark .jsld-btn--primary,
.e-con.jsld-on-dark a.jsld-btn--primary {
  background: var(--jsld-teal-700);
  border-color: var(--jsld-teal-700);
  color: #fff !important
}
.e-con.jsld-on-dark .jsld-btn--primary:hover,
.e-con.jsld-on-dark a.jsld-btn--primary:hover {
  background: var(--jsld-teal-900);
  border-color: var(--jsld-teal-900);
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: var(--jsld-shadow-teal)
}
.e-con.jsld-on-dark .jsld-btn--primary:active {
  background: var(--jsld-teal-800);
  transform: translateY(0);
  box-shadow: none
}
.e-con.jsld-on-dark .jsld-btn--secondary,
.e-con.jsld-on-dark a.jsld-btn--secondary {
  background: var(--jsld-sand-500);
  border-color: var(--jsld-sand-500);
  color: var(--jsld-teal-900) !important
}
.e-con.jsld-on-dark .jsld-btn--secondary:hover,
.e-con.jsld-on-dark a.jsld-btn--secondary:hover {
  background: #fff;
  border-color: #fff;
  color: var(--jsld-teal-900) !important;
  transform: translateY(-2px);
  box-shadow: var(--jsld-shadow-2)
}
.e-con.jsld-on-dark .jsld-btn--secondary:active {
  background: var(--jsld-sand-200);
  transform: translateY(0)
}
.e-con.jsld-on-dark .jsld-btn--legacy,
.e-con.jsld-on-dark a.jsld-btn--legacy {
  background: var(--jsld-teal-400);
  border-color: var(--jsld-teal-400);
  color: #fff !important
}
.e-con.jsld-on-dark .jsld-btn--legacy:hover,
.e-con.jsld-on-dark a.jsld-btn--legacy:hover {
  background: var(--jsld-ink-900);
  border-color: var(--jsld-ink-900);
  color: #fff !important;
  transform: translateY(-2px)
}
.e-con.jsld-on-dark a.jsld-btn--ghost-light {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .42);
  color: #fff !important
}
.e-con.jsld-on-dark a.jsld-btn--ghost-light:hover {
  background: #fff;
  border-color: #fff;
  color: var(--jsld-teal-900) !important;
  transform: translateY(-2px)
}
.e-con.jsld-on-dark .jsld-btn--link {
  color: var(--jsld-sand-500) !important
}
.e-con.jsld-on-dark .jsld-btn--link:hover {
  color: #fff !important
}
.e-con.jsld-on-dark .jsld-btn[disabled],
.e-con.jsld-on-dark .jsld-btn.is-disabled,
.e-con.jsld-on-dark a.jsld-btn.is-disabled {
  background: rgba(255, 255, 255, .14) !important;
  border-color: rgba(255, 255, 255, .18) !important;
  color: rgba(255, 255, 255, .5) !important
}
.e-con.jsld-card:hover>.jsld-card__copy-group {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.e-con.jsld-on-dark .jsld-card__copy-btn {
  background: rgba(255, 255, 255, .12);
  border-color: rgba(255, 255, 255, .2);
  color: #fff;
}
.e-con.jsld-on-dark .jsld-card__copy-btn:hover {
  background: var(--jsld-sand-500);
  color: var(--jsld-teal-900);
}
.e-con.jsld-on-dark .jsld-demo--dark .jsld-badge--success,
.e-con.jsld-on-dark .jsld-table .jsld-badge--success {
  background: #D7E7DF;
  color: #22513F;
  border-color: #D7E7DF
}
.e-con.jsld-on-dark .jsld-demo--dark .jsld-badge--warning,
.e-con.jsld-on-dark .jsld-table .jsld-badge--warning {
  background: #F1E3CB;
  color: #6B4E1C;
  border-color: #F1E3CB
}
.e-con.jsld-on-dark .jsld-demo--dark .jsld-badge--danger,
.e-con.jsld-on-dark .jsld-table .jsld-badge--danger {
  background: #F3DAD7;
  color: #7C2B24;
  border-color: #F3DAD7
}
@media print {
.e-con.jsld-bg,
.e-con.jsld-scrollcue {
  display: none !important
}
}
@media print {
.e-con.jsld-section {
  padding: 1.2cm 0 !important;
  break-inside: avoid
}
}
@media print {
.e-con.jsld-on-dark,
.e-con.jsld-surface--deep {
  background: #fff !important;
  color: #000 !important
}
}
@media print {
.e-con.jsld-reveal {
  opacity: 1 !important;
  transform: none !important
}
}
.e-con.jsld-area {
  position: relative;
  padding: var(--jsld-sp-5);
  border: 1px solid var(--jsld-teal-a12);
  background: var(--jsld-paper);
  overflow: hidden;
  isolation: isolate;
  color: var(--jsld-ink-700);
  transition: color var(--jsld-dur-3) var(--jsld-ease), transform var(--jsld-dur-3) var(--jsld-ease-out),
  box-shadow var(--jsld-dur-3) var(--jsld-ease-out)
}
.e-con.jsld-area::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--jsld-grad-deep);
  clip-path: circle(0% at 88% 88%);
  transition: clip-path 640ms var(--jsld-ease-out)
}
.e-con.jsld-area h4,
.e-con.jsld-on-dark .e-con.jsld-area h4 {
  margin: 0 0 .5rem;
  font-size: 1.08rem;
  color: var(--jsld-teal-900);
  transition: color var(--jsld-dur-3) var(--jsld-ease)
}
.e-con.jsld-area p,
.e-con.jsld-on-dark .e-con.jsld-area p {
  margin: 0;
  font-size: var(--jsld-fs-body-sm);
  color: var(--jsld-ink-700);
  transition: color var(--jsld-dur-3) var(--jsld-ease)
}
.e-con.jsld-area:hover {
  color: #fff;
  transform: translateY(-6px);
  box-shadow: var(--jsld-shadow-3)
}
.e-con.jsld-area:hover::before {
  clip-path: circle(150% at 88% 88%)
}
.e-con.jsld-area:hover h4,
.e-con.jsld-on-dark .e-con.jsld-area:hover h4 {
  color: #fff
}
.e-con.jsld-area:hover p,
.e-con.jsld-on-dark .e-con.jsld-area:hover p {
  color: rgba(255, 255, 255, .88)
}
.e-con.jsld-area:hover .jsld-area__icon {
  color: var(--jsld-sand-500);
  transform: translateY(-4px) rotate(-6deg)
}
.e-con.jsld-area:hover .jsld-area__num {
  color: rgba(255, 255, 255, .22)
}
.e-con.jsld-media {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--jsld-teal-a08);
  background: var(--jsld-teal-900)
}
.e-con.jsld-media__img {
  aspect-ratio: 16/10;
  overflow: hidden
}
.e-con.jsld-media__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.85) brightness(.9);
  transform: scale(1.05);
  transition: transform 1.2s var(--jsld-ease-out), filter var(--jsld-dur-4) var(--jsld-ease)
}
.e-con.jsld-media:hover .e-con.jsld-media__img img {
  transform: scale(1.14);
  filter: grayscale(0) brightness(1)
}
.e-con.jsld-media__body {
  position: absolute;
  inset: auto 0 0 0;
  padding: var(--jsld-sp-5);
  background: linear-gradient(transparent, rgba(0, 55, 66, .94));
  color: #fff
}
.e-con.jsld-media__body h4,
.e-con.jsld-on-dark .e-con.jsld-media__body h4 {
  color: #fff;
  margin: 0 0 .25rem
}
.e-con.jsld-media__body p {
  color: rgba(255, 255, 255, .78);
  margin: 0
}
.e-con.jsld-on-dark .elementor-icon-list-icon {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-acc,
.e-con.jsld-on-dark .jsld-acc__item {
  border-color: var(--jsld-dark-line)
}
.e-con.jsld-on-dark .jsld-acc__btn {
  color: #fff
}
.e-con.jsld-on-dark .jsld-acc__btn:hover {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-acc__btn i {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-acc__panel>div {
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark .jsld-tabs__nav {
  border-bottom-color: var(--jsld-dark-line)
}
.e-con.jsld-on-dark .jsld-tabs__btn {
  color: var(--jsld-dark-text-2)
}
.e-con.jsld-on-dark .jsld-tabs__btn:hover {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-tabs__btn.is-active {
  color: #fff
}
.e-con.jsld-on-dark .jsld-tabs__btn::after {
  background: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-alert {
  background: rgba(255, 255, 255, .08);
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark .jsld-timeline {
  border-left-color: var(--jsld-dark-line)
}
.e-con.jsld-on-dark .jsld-timeline__date {
  color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-timeline__title {
  color: #fff
}
.e-con.jsld-on-dark .jsld-table-wrap {
  background: rgba(255, 255, 255, .05);
  border-color: var(--jsld-dark-line)
}
.e-con.jsld-on-dark .jsld-table td {
  border-bottom-color: var(--jsld-dark-line);
  color: var(--jsld-dark-text)
}
.e-con.jsld-on-dark .jsld-table tr:hover td {
  background: rgba(255, 255, 255, .08)
}
.e-con.jsld-on-dark .jsld-skeleton {
  background: linear-gradient(90deg, rgba(255, 255, 255, .1) 25%, rgba(255, 255, 255, .2) 50%, rgba(255, 255, 255, .1) 75%);
  background-size: 200% 100%
}
.e-con.jsld-on-dark .jsld-spinner {
  border-color: rgba(255, 255, 255, .2);
  border-top-color: var(--jsld-sand-500)
}
.e-con.jsld-on-dark .jsld-playground {
  background: rgba(255, 255, 255, .05);
  border-color: var(--jsld-dark-line)
}
.e-con.jsld-on-dark .jsld-playground__controls {
  border-bottom-color: var(--jsld-dark-line)
}
.e-con.jsld-hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: center;
  padding: 8rem 0 5rem;
  background: var(--jsld-grad-deep);
  color: #fff;
  overflow: hidden;
  isolation: isolate;
  flex-direction: row
}
.e-con.jsld-hero__inner {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: var(--jsld-sp-7);
  align-items: center;
  position: relative;
  z-index: 3
}
@media (max-width:940px) {
.e-con.jsld-hero__inner {
  grid-template-columns: 1fr;
  gap: var(--jsld-sp-6)
}
}
.e-con:has(+ .e-con.jsld-hero__meta) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.jsld-hero__meta) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.jsld-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--jsld-sp-6);
  margin-top: var(--jsld-sp-7);
  padding-top: var(--jsld-sp-5);
  border-top: 1px solid rgba(255, 255, 255, .14);
  flex-direction: row
}
.e-con.jsld-hero__stat {
  min-width: 118px
}
.e-con.jsld-hero__stat b {
  display: block;
  font-family: var(--jsld-font-display);
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
  color: #fff;
  font-variant-numeric: tabular-nums
}
.e-con.jsld-hero__stat span {
  font-family: var(--jsld-font-ui);
  font-size: .62rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--jsld-sand-500)
}
.e-con.jsld-hero__card {
  position: relative;
  border: 1px solid rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .05);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  padding: var(--jsld-sp-5);
  box-shadow: var(--jsld-shadow-3);
  transform-style: preserve-3d;
  transition: transform 600ms var(--jsld-ease-out)
}
.e-con.jsld-hero__card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(130deg, rgba(255, 255, 255, .16), transparent 45%);
  opacity: 0;
  transition: opacity var(--jsld-dur-3) var(--jsld-ease)
}
.e-con.jsld-hero__card:hover::before {
  opacity: 1
}
.e-con.jsld-hero__figure {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/3;
  background: var(--jsld-grad-dusk)
}
.e-con.jsld-hero__figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) contrast(1.06) brightness(.82);
  transform: scale(1.06);
  transition: transform 1.4s var(--jsld-ease-out), filter 700ms var(--jsld-ease)
}
.e-con.jsld-hero__card:hover .e-con.jsld-hero__figure img {
  transform: scale(1);
  filter: grayscale(.15) contrast(1.02) brightness(.95)
}
.e-con.jsld-hero__figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(200deg, rgba(0, 55, 66, .10), rgba(0, 55, 66, .62));
  mix-blend-mode: multiply
}
.e-con.jsld-hero__spot {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 40%), rgba(183, 174, 165, .16), transparent 62%);
  transition: background 260ms linear
}
.e-con.jsld-scrollcue {
  position: absolute;
  left: 50%;
  bottom: 1.6rem;
  transform: translateX(-50%);
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem;
  font-family: var(--jsld-font-ui);
  font-size: .56rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .62)
}
.e-con.jsld-scrollcue span {
  display: block;
  width: 1px;
  height: 44px;
  background: linear-gradient(180deg, var(--jsld-sand-500), transparent);
  animation: jsld-cue 2.4s var(--jsld-ease-in-out) infinite
}
.e-con.ph {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  text-align: center;
  background:
  linear-gradient(rgba(247, 245, 242, .92), rgba(247, 245, 242, .92)),
  url('../img/padrao-pontilhado-01.svg') center/420px repeat;
  border: 1px solid var(--jsld-sand-200);
  color: var(--jsld-sand-700);
  overflow: hidden;
  isolation: isolate;
  padding: 1.4rem;
}
.e-con.ph::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url('../img/simbolo-linha.svg') center/46% no-repeat;
  opacity: .16;
}
.e-con.ph--32 { aspect-ratio: 3 / 2;
}
.e-con.jsld-hero__figure .e-con.ph { position: absolute; inset: 0; border: 0; aspect-ratio: auto; height: 100%;
}
.e-con.jsld-hero__figure > img { position: absolute; inset: 0;
}
.e-con.page-hero {
  position: relative;
  padding: 9.5rem 0 4.2rem;
  background: var(--jsld-sand-050);
  border-bottom: 1px solid var(--jsld-sand-200);
  overflow: hidden;
  isolation: isolate;
}
.e-con.page-hero__crumb {
  display: flex;
  align-items: center;
  gap: .55rem;
  font-family: var(--jsld-font-ui);
  font-size: .64rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--jsld-sand-700);
  margin-bottom: var(--jsld-sp-5);;
  flex-direction: row
}
.e-con.page-hero__crumb a { color: inherit;
}
.e-con.page-hero__crumb a:hover { color: var(--jsld-teal-700);
}
.e-con.page-hero__crumb .sep { color: var(--jsld-sand-500);
}
.page-hero--deep .e-con.page-hero__crumb { color: rgba(255, 255, 255, .6);
}
.page-hero--deep .e-con.page-hero__crumb a:hover { color: #fff;
}
.e-con.page-hero h1 {
  font-size: clamp(2.4rem, 1.4rem + 4vw, 4rem);
  line-height: 1.05;
  letter-spacing: -.022em;
  max-width: 18ch;
  margin: 0 0 var(--jsld-sp-4);
}
.e-con.ed-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
}
.e-con.ed-split--article { grid-template-columns: .9fr 1.1fr;
}
@media (max-width: 900px) {
.e-con.ed-split,
.e-con.ed-split--article { grid-template-columns: 1fr;
}
}
.e-con.strip {
  border-top: 1px solid var(--jsld-sand-200);
  border-bottom: 1px solid var(--jsld-sand-200);
  background: var(--jsld-paper);
  padding: 1.1rem 0;
}
.e-con.strip__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .9rem 2.6rem;
  font-family: var(--jsld-font-ui);
  font-size: .66rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--jsld-sand-700);;
  flex-direction: row
}
.e-con.strip__row i { color: var(--jsld-sand-500); font-style: normal;
}
.e-con.post-card {
  display: flex;
  flex-direction: column;
  background: var(--jsld-paper);
  border: 1px solid var(--jsld-sand-200);
  transition: transform var(--jsld-dur-3) var(--jsld-ease-out),
  box-shadow var(--jsld-dur-3) var(--jsld-ease-out),
  border-color var(--jsld-dur-3) var(--jsld-ease);
}
.e-con.post-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--jsld-shadow-2);
  border-color: var(--jsld-sand-500);
}
.e-con.post-card__body { padding: 1.5rem 1.6rem 1.7rem; display: flex; flex-direction: column; gap: .7rem; flex: 1;
}
.e-con.post-card__meta {
  display: flex;
  align-items: center;
  gap: .8rem;
  font-family: var(--jsld-font-ui);
  font-size: .62rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--jsld-sand-700);;
  flex-direction: row
}
.e-con.post-card:hover .post-card__title { color: var(--jsld-teal-700);
}
.e-con.post-card:hover .post-card__foot .ic { transform: translateX(4px);
}
.e-con.post-card .e-con.ph { border: 0; border-bottom: 1px solid var(--jsld-sand-200);
}
.e-con.contact-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
}
@media (max-width: 900px) {
.e-con.contact-grid { grid-template-columns: 1fr;
}
}
.e-con.contact-info { display: flex; flex-direction: column; gap: 0;
}
.e-con.contact-info__item {
  display: flex;
  gap: 1.1rem;
  padding: 1.15rem 0;
  border-bottom: 1px solid var(--jsld-sand-200);;
  flex-direction: row
}
.e-con.contact-info__item:first-child { padding-top: 0;
}
.e-con:has(+ .e-con.contact-info__item .ic) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.contact-info__item .ic) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.contact-info__item .ic {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  margin-top: .2rem;
  color: var(--jsld-teal-700);
}
.e-con.contact-info__item h4 {
  font-family: var(--jsld-font-ui);
  font-size: .66rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--jsld-sand-700);
  margin: 0 0 .3rem;
}
.e-con.contact-info__item p { margin: 0; font-size: var(--jsld-fs-body-sm); line-height: 1.7;
}
.e-con.cta-band { text-align: center;
}
.e-con.cta-band h2 {
  color: #fff;
  font-size: clamp(2rem, 1.2rem + 3.4vw, 3.4rem);
  letter-spacing: -.02em;
  max-width: 20ch;
  margin: 0 auto var(--jsld-sp-4);
}
.e-con.cta-band p { color: rgba(255, 255, 255, .72); max-width: 52ch; margin: 0 auto var(--jsld-sp-6);
}
.e-con.section-pad { padding: var(--jsld-sp-9) 0;
}
@media (max-width: 768px) {
.e-con.section-pad { padding: var(--jsld-sp-8) 0;
}
}
.e-con:has(+ .e-con.team-grid) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.team-grid) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.team-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.2rem, 2.5vw, 2rem);
  margin-top: var(--jsld-sp-7);
}
.e-con.team-card {
  display: grid;
  grid-template-columns: minmax(150px, 190px) 1fr;
  background: #fff;
  border: 1px solid var(--jsld-teal-a08);
  transition: transform var(--jsld-dur-3) var(--jsld-ease), box-shadow var(--jsld-dur-3) var(--jsld-ease);
}
.e-con.team-card:hover { transform: translateY(-5px); box-shadow: var(--jsld-shadow-2);
}
.e-con.team-card .e-con.ph {
  border: 0;
  border-right: 1px solid var(--jsld-sand-200);
  aspect-ratio: auto;
  height: 100%;
  min-height: 220px;
}
.e-con.team-card__body {
  padding: clamp(1.2rem, 2vw, 1.7rem) clamp(1.2rem, 2.2vw, 1.8rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.e-con.team-card__body h3 {
  font-size: var(--jsld-fs-h5);
  margin: 0 0 .3rem;
}
.e-con.team-card__links { display: flex; gap: .55rem;;
  flex-direction: row
}
.e-con.team-card__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--jsld-teal-a24);
  color: var(--jsld-teal-700);
  transition: background var(--jsld-dur-2) var(--jsld-ease), color var(--jsld-dur-2) var(--jsld-ease), border-color var(--jsld-dur-2) var(--jsld-ease);;
  flex-direction: row
}
.e-con.team-card__link .ic { width: 16px; height: 16px;
}
.e-con.team-card__link:hover,
.e-con.team-card__link:focus-visible {
  background: var(--jsld-teal-700);
  border-color: var(--jsld-teal-700);
  color: #fff;
}
@media (max-width: 900px) {
.e-con.team-grid { grid-template-columns: 1fr;
}
}
@media (max-width: 480px) {
.e-con.team-card { grid-template-columns: 1fr;
}
}
@media (max-width: 480px) {
.e-con.team-card .e-con.ph { border-right: 0; border-bottom: 1px solid var(--jsld-sand-200); aspect-ratio: 4 / 3; height: auto; min-height: 0;
}
}
.e-con.jsld-media--169 .e-con.jsld-media__img { aspect-ratio: 16 / 9;
}
.e-con.jsld-media--43 .e-con.jsld-media__img { aspect-ratio: 4 / 3;
}
.e-con.jsld-media--34 .e-con.jsld-media__img { aspect-ratio: 3 / 4;
}
.jsld-media--32 .e-con.jsld-media__img { aspect-ratio: 3 / 2;
}
.e-con.jsld-media__body .jsld-caption { color: rgba(255, 255, 255, .78); margin: 0;
}
.e-con.post-card .e-con.jsld-media {
  border: 0;
  border-bottom: 1px solid var(--jsld-sand-200);
}
.e-con.post-card:hover .e-con.jsld-media__img img {
  transform: scale(1.14);
  filter: grayscale(0) brightness(1);
}
@media (prefers-reduced-motion: reduce) {
.e-con.jsld-media .e-con.jsld-media__img img,
.e-con.jsld-media:hover .e-con.jsld-media__img img { transform: none;
}
}
.e-con.jsld-media__body .jsld-media__kicker {
  display: block;
  font-family: var(--jsld-font-ui);
  font-size: .6rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--jsld-sand-500);
  margin-bottom: .45rem;
}
.e-con.quote-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(140deg, #00252D 0%, #003742 58%, #004854 100%);
  color: #fff;
  padding: clamp(2.4rem, 5vw, 4.2rem);
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem, 3vw, 2.6rem);
  border: 1px solid rgba(255, 255, 255, .08);
}
.e-con.quote-card__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .07;
  pointer-events: none;
}
.e-con.quote-card__foot {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  font-family: var(--jsld-font-ui);
  font-size: .64rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .6);;
  flex-direction: row
}
.e-con.post-card--t2 { position: relative; background: var(--jsld-sand-050);
}
.e-con.post-card--t2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--jsld-teal-700);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform var(--jsld-dur-3) var(--jsld-ease-out);
  z-index: 2;
}
.e-con.post-card--t2:hover::before { transform: scaleY(1);
}
.e-con.post-card__rule {
  width: 46px;
  height: 3px;
  background: var(--jsld-sand-500);
  margin: 0 0 .2rem;
}
.e-con.jsld-on-dark .jsld-area--t3 h4,
.e-con.jsld-on-dark .jsld-area--t3 p { color: #fff;
}
.e-con.post-card--noimg { background: var(--jsld-sand-050);
}
.e-con.post-card--noimg::before { transform: scaleY(1);
}
.e-con.post-card--noimg .e-con.post-card__body { padding: 1.9rem 1.9rem 1.7rem; gap: .9rem;
}
.e-con:has(+ .e-con.post-card--noimg .e-con.post-card__rule) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.post-card--noimg .e-con.post-card__rule) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.post-card--noimg .e-con.post-card__rule { margin-top: 1.6rem;
}
.e-con.post-card--noimg .post-card__title {
  font-size: 1.5rem;
  line-height: 1.26;
  letter-spacing: -.012em;
}
.e-con.post-card__footrow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;;
  flex-direction: row
}
.e-con.jsld-stack--center { justify-content: center;
}
.e-con:has(+ .e-con.jsld-stack--mt) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.jsld-stack--mt) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.jsld-stack--mt { margin-top: 1.6rem;
}
.e-con:has(+ .e-con.jsld-grid--mt) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.jsld-grid--mt) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.jsld-grid--mt { margin-top: var(--jsld-sp-7);
}
.e-con.jsld-card--cta {
  display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
  gap: 1rem; background: var(--jsld-grad-deep); border: 0;
}
.e-con.jsld-card--cta p { color: rgba(255,255,255,.78); margin: 0; font-size: var(--jsld-fs-body-sm);
}
.e-con:has(+ .e-con.founder-sig) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.founder-sig) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.founder-sig { display: flex; flex-direction: column; gap: .1rem; margin: 1rem 0 0;
}
.e-con.founder-sig strong { font-family: var(--jsld-font-display); font-size: var(--jsld-fs-h5); font-weight: 500; color: var(--jsld-teal-900);
}
.e-con.founder-sig span { font-family: var(--jsld-font-ui); font-size: var(--jsld-fs-label); letter-spacing: .2em; text-transform: uppercase; color: var(--jsld-sand-700);
}
.e-con.page-hero--area .page-hero__lead { font-family: var(--jsld-font-display); font-style: italic; color: var(--jsld-teal-700);
}
.e-con.area-escopo { display: grid; gap: clamp(1.6rem, 3vw, 3rem);
}
.e-con.area-escopo--1 { grid-template-columns: minmax(0, 62ch);
}
.e-con.area-escopo--2 { grid-template-columns: repeat(2, 1fr);
}
.e-con.area-escopo--3 { grid-template-columns: repeat(3, 1fr);
}
.e-con.area-escopo__col { min-width: 0;
}
@media (max-width: 900px) {
.e-con.area-escopo--2,
.e-con.area-escopo--3 { grid-template-columns: 1fr;
}
}
.e-con.area-destaque__card h4 { margin: 0 0 .6rem;
}
.e-con.area-destaque__card p { margin: 0; font-size: var(--jsld-fs-body-sm); color: var(--jsld-ink-400);
}
.e-con.area-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: clamp(1.5rem, 4vw, 3.5rem); flex-wrap: wrap;;
  flex-direction: row
}
.e-con.area-cta__inner .ed-lead { max-width: 46ch;
}
.e-con.area-index-list { display: flex; flex-direction: column; border-top: 1px solid var(--jsld-sand-200);
}
.e-con.area-row {
  display: grid; grid-template-columns: auto auto 1fr auto; align-items: center;
  gap: clamp(.9rem, 2vw, 1.8rem); padding: clamp(1.1rem, 2.2vw, 1.7rem) .2rem;
  border-bottom: 1px solid var(--jsld-sand-200); color: inherit; text-decoration: none;
  transition: background var(--jsld-dur-2) var(--jsld-ease-out), padding-left var(--jsld-dur-2) var(--jsld-ease-out);
}
.e-con.area-row:hover,
.e-con.area-row:focus-visible { background: var(--jsld-teal-050); padding-left: 1rem;
}
.e-con.area-row__body { display: flex; flex-direction: column; gap: .15rem; min-width: 0;
}
.e-con.area-row__body strong { font-family: var(--jsld-font-display); font-size: var(--jsld-fs-h4); font-weight: 400; color: var(--jsld-teal-900);
}
.e-con.area-row:hover .area-row__go { transform: translateX(5px);
}
@media (max-width: 700px) {
.e-con.area-row { grid-template-columns: auto 1fr; row-gap: .5rem;
}
}
@media (max-width: 700px) {
.e-con.area-row__body { grid-column: 1 / -1;
}
}
.e-con:has(+ .e-con.contact-map) {
  margin-bottom: 0
}
.elementor-widget:has(+ .e-con.contact-map) > :is(p, ul, ol, blockquote, h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0
}
.e-con.contact-map { margin-top: 1.4rem;
}
.e-con.ed-split--article > :first-child { position: sticky; top: 104px;
}
@media (max-width: 900px) {
.e-con.ed-split--article > :first-child { position: static;
}
}
.e-con.jsld-hero__stat b .jsld-count,
.e-con.jsld-hero__stat b span { font-size: inherit; letter-spacing: normal; text-transform: none;
  font-family: inherit; color: inherit;
}
