[data-mobile-menu]{display:none}[data-mobile-menu].is-open{display:flex}[data-floating-cta]{opacity:0;pointer-events:none;transform:translateY(1rem)}[data-floating-cta].is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.contact-dialog{background:transparent;border:0;max-height:100dvh;max-width:none;padding:1rem;width:100%}.contact-dialog::backdrop{background:rgb(0 0 0 / 72%);backdrop-filter:blur(6px)}.contact-panel{background:#fff;border-radius:.75rem;margin:auto;max-width:34rem;padding:1.5rem;position:relative}.contact-close{align-items:center;background:#f3f4f5;border:0;border-radius:.25rem;cursor:pointer;display:flex;height:2.75rem;justify-content:center;position:absolute;right:1rem;top:1rem;width:2.75rem}.contact-form{display:grid;gap:1rem;margin-top:1.5rem}.contact-form label{color:#191c1d;display:grid;font-size:.875rem;font-weight:600;gap:.4rem}.contact-form input{border:1px solid #d0c6ab;border-radius:.25rem;font:inherit;min-height:3rem;padding:.75rem;width:100%}.contact-submit{background:#ffd700;border:0;border-radius:.25rem;color:#221b00;cursor:pointer;font:inherit;font-weight:700;min-height:3.25rem;padding:.85rem 1rem}.form-feedback{font-size:.875rem;min-height:1.25rem}.form-feedback.is-success{color:#137333}.form-feedback.is-error{color:#ba1a1a}@media(min-width:1024px){[data-mobile-menu]{display:none!important}}
.contact-submit:disabled {
  cursor: wait;
  opacity: .65;
}

.contact-success {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: 3rem 1rem 2rem;
  text-align: center;
}

.contact-success-icon {
  color: #137333;
  font-size: 4rem;
  font-variation-settings: "FILL" 1;
  line-height: 1;
}

.contact-success h2 {
  color: #191c1d;
  font-family: "Montserrat", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  margin-top: 1.5rem;
}

.contact-success p {
  color: #5e5e5e;
  line-height: 1.6;
  margin-top: 1rem;
  max-width: 25rem;
}

.contact-success strong {
  color: #191c1d;
}

.contact-success .contact-countdown {
  color: #705d00;
  font-size: .875rem;
  font-weight: 600;
  margin-top: 1.5rem;
}

/* Global square-corner treatment. */
*,
*::before,
*::after {
  border-radius: 0px !important;
}

/* Approved partners and methodology composition. */
.team-methodology {
  --team-bg: #15191a;
  --team-text: #f8faf9;
  --team-muted: #b9c1bf;
  --team-accent: #ffe500;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--team-text);
  background:
    radial-gradient(circle at 14% 28%, rgba(255, 229, 0, .07), transparent 27rem),
    radial-gradient(circle at 91% 76%, rgba(255, 255, 255, .045), transparent 25rem),
    var(--team-bg);
}

.team-methodology::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .22;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to right, #000, transparent 62%);
}

.team-methodology__wrap {
  width: min(1280px, calc(100% - 64px));
  margin: 0 auto;
  padding: 80px 0;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(500px, .96fr);
  gap: 64px;
  align-items: center;
}

.team-visual {
  --team-portrait-size: 290px;
  position: relative;
  height: 700px;
}

.team-visual::after {
  content: "";
  position: absolute;
  inset: 8% 4% 2%;
  z-index: -1;
  background: radial-gradient(circle at 47% 46%, rgba(255, 229, 0, .08), transparent 62%);
  filter: blur(22px);
}

.team-partner {
  position: absolute;
  width: var(--team-portrait-size);
  height: var(--team-portrait-size);
  overflow: visible;
  border: 0;
  border-radius: 50% !important;
  background: transparent;
}

.team-partner img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50% !important;
  filter: saturate(.78) contrast(1.04);
  box-shadow: 0 24px 50px rgba(0,0,0,.38);
  transition: transform .55s ease, filter .55s ease;
}

.team-partner::before {
  content: "";
  position: absolute;
  inset: -2px;
  z-index: 2;
  border: 2px solid var(--team-accent);
  border-radius: 50% !important;
  pointer-events: none;
}

.team-partner::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 50% !important;
  background: linear-gradient(to top, rgba(8,10,11,.18), transparent 52%);
  pointer-events: none;
}

.team-partner:hover img {
  transform: scale(1.025);
  filter: saturate(1) contrast(1.02);
}

.team-partner--juliano { top: 0; left: 24px; }
.team-partner--juliano img { object-position: 52% 31%; }
.team-partner--ricardo { top: 205px; right: 0; }
.team-partner--ricardo img { object-position: 68% 50%; }
.team-partner--luis { bottom: 0; left: 65px; }
.team-partner--luis img { object-position: 50% 31%; }

.team-partner__caption {
  position: absolute;
  z-index: 4;
  width: 235px;
  padding: 17px 19px;
  border: 2px solid var(--team-accent);
  background: rgba(15, 20, 22, .96);
  box-shadow: 0 16px 36px rgba(0,0,0,.28);
}

.team-partner__caption::before {
  content: "";
  position: absolute;
  left: -34px;
  top: 50%;
  width: 32px;
  border-top: 2px solid var(--team-accent);
}

.team-partner__caption::after {
  content: "";
  position: absolute;
  left: -45px;
  top: calc(50% - 8px);
  width: 13px;
  height: 13px;
  border: 3px solid var(--team-accent);
  border-radius: 50% !important;
  background: var(--team-bg);
}

.team-partner--juliano .team-partner__caption {
  top: 46px;
  left: 315px;
}

.team-partner--ricardo .team-partner__caption {
  top: 115px;
  right: 315px;
}

.team-partner--ricardo .team-partner__caption::before {
  right: -34px;
  left: auto;
}

.team-partner--ricardo .team-partner__caption::after {
  right: -45px;
  left: auto;
}

.team-partner--luis .team-partner__caption {
  top: 155px;
  left: 315px;
}

.team-partner__name {
  margin: 0 0 5px;
  color: #fff;
  font-size: 18px;
  font-weight: 750;
  line-height: 1.2;
  letter-spacing: -.02em;
}

.team-partner__name::before {
  content: "";
  display: block;
  width: 30px;
  height: 4px;
  margin-bottom: 10px;
  background: var(--team-accent);
}

.team-partner__role {
  margin: 0;
  color: var(--team-accent);
  font-size: 10px;
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.team-content {
  min-width: 0;
  max-width: 600px;
}

.team-content__accent {
  width: 32px;
  height: 3px;
  margin-bottom: 24px;
  background: var(--team-accent);
}

.team-content h2 {
  margin: 0 0 30px;
  max-width: 570px;
  color: var(--team-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(34px, 3.2vw, 52px);
  font-weight: 760;
  line-height: 1.06;
  letter-spacing: -.045em;
}

.team-content__copy {
  display: grid;
  gap: 16px;
}

.team-content__copy p {
  margin: 0;
  color: var(--team-muted);
  font-size: 15.5px;
  line-height: 1.66;
  overflow-wrap: break-word;
}

.team-content__copy strong {
  color: #fff;
  font-weight: 700;
}

.team-content__insight {
  position: relative;
  margin-top: 4px !important;
  padding-left: 20px;
  color: #e4e9e7 !important;
  font-weight: 550;
}

.team-content__insight::before {
  content: "";
  position: absolute;
  inset: 3px auto 3px 0;
  width: 3px;
  background: var(--team-accent);
}

.team-content__closing {
  margin-top: 26px;
  padding: 23px 24px;
  border: 1px solid rgba(255,255,255,.11);
  background: linear-gradient(135deg, rgba(255,255,255,.065), rgba(255,255,255,.025));
  box-shadow: inset 0 1px rgba(255,255,255,.04);
}

.team-content__closing p {
  margin: 0;
  color: #fff;
  font-size: 15.5px;
  font-weight: 570;
  line-height: 1.6;
}

.team-content__closing strong { color: var(--team-accent); }

@media (max-width: 1050px) {
  .team-methodology__wrap {
    width: min(780px, calc(100% - 48px));
    grid-template-columns: 1fr;
    gap: 56px;
  }

  .team-visual { height: 720px; }
  .team-content { max-width: none; }
}

@media (max-width: 640px) {
  .team-methodology__wrap {
    width: min(calc(100% - 32px), 520px);
    padding: 64px 0;
    gap: 42px;
  }

  .team-visual {
    --team-portrait-size: clamp(180px, 50vw, 220px);
    height: 590px;
  }

  .team-partner--juliano { top: 0; left: 0; }
  .team-partner--ricardo { top: 185px; right: 0; }
  .team-partner--luis { bottom: 0; left: 0; }

  .team-partner__caption {
    width: clamp(150px, 42vw, 200px);
    padding: 12px 13px;
  }

  .team-partner--juliano .team-partner__caption,
  .team-partner--luis .team-partner__caption {
    top: 52px;
    left: calc(var(--team-portrait-size) - 24px);
  }

  .team-partner--ricardo .team-partner__caption {
    top: 74px;
    right: calc(var(--team-portrait-size) - 24px);
  }

  .team-partner__caption::before,
  .team-partner__caption::after { display: none; }

  .team-partner__name { font-size: 12.5px; }
  .team-partner__name::before { width: 22px; height: 3px; margin-bottom: 7px; }
  .team-partner__role { font-size: 8px; }
  .team-content__accent { margin-bottom: 18px; }
  .team-content h2 { margin-bottom: 24px; font-size: 34px; }
  .team-content__copy p,
  .team-content__closing p { font-size: 15px; }
  .team-content__closing { padding: 20px; }
}
.contact-honeypot,
.contact-form input[name="company_url"] {
  display: none !important;
  height: 1px !important;
  left: -10000px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  width: 1px !important;
}
