/* ==========================================================================
   Fontes — SF Pro Text
   ========================================================================== */
@font-face { font-family: "SF Pro Text"; font-weight: 300; font-style: normal; font-display: swap; src: url("../assets/fonts/SFProText-Light.woff2") format("woff2"); }
@font-face { font-family: "SF Pro Text"; font-weight: 400; font-style: normal; font-display: swap; src: url("../assets/fonts/SFProText-Regular.woff2") format("woff2"); }
@font-face { font-family: "SF Pro Text"; font-weight: 500; font-style: normal; font-display: swap; src: url("../assets/fonts/SFProText-Medium.woff2") format("woff2"); }
@font-face { font-family: "SF Pro Text"; font-weight: 600; font-style: normal; font-display: swap; src: url("../assets/fonts/SFProText-SemiBold.woff2") format("woff2"); }
@font-face { font-family: "SF Pro Text"; font-weight: 700; font-style: normal; font-display: swap; src: url("../assets/fonts/SFProText-Bold.woff2") format("woff2"); }

/* ==========================================================================
   Base
   ========================================================================== */
:root {
  --green: #8dc63f;
  --green-dark: #78b02d;
  --navy: #05325f;
  --blue-bg: #0a4577;
  --blue-panel: #3086c4;
  --blue-box: #0b3f7e;
  --white: #fff;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--white);
  background: var(--blue-bg);
  -webkit-font-smoothing: antialiased;
}

img { display: block; max-width: 100%; }
h1, p { margin: 0; }

.br-mobile { display: none; }

/* ==========================================================================
   SEÇÃO 1 — HERO + FORMULÁRIO
   --u = 1 "pixel do layout" (desktop: 2000px / mobile: 496px de largura)
   ========================================================================== */
.hero {
  container-type: inline-size;
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #064979 url("../assets/img/hero-desktop.webp") center top / 100% auto no-repeat;
  aspect-ratio: 2720 / 1850;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .hero { aspect-ratio: 2720 / 2000; }
}

@media (min-width: 1901px) {
  .hero { aspect-ratio: 2720 / 1690; }
}

.hero__inner {
  --u: calc(100cqw / 2000);
  position: relative;
  width: 100%;
  height: 100%;
}

.hero__watermark {
  position: absolute;
  left: calc(var(--u) * 406);
  top: calc(var(--u) * 846);
  width: calc(var(--u) * 1192);
  opacity: 1;
  mix-blend-mode: screen;
  pointer-events: none;
}

/* ---------- Cabeçalho (logo, título, texto) ---------- */
.hero__head {
  position: absolute;
  top: 0; left: 0; right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.hero__logo {
  margin-top: calc(var(--u) * 52);
  width: calc(var(--u) * 360);
  height: auto;
}

.hero__title {
  margin-top: calc(var(--u) * 40);
  font-size: 26px;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: -.01em;
}

.hero__text {
  margin-top: calc(var(--u) * 4);
  width: 630px;
  font-size: 14px;
  font-weight: 400;
}

/* ---------- Botão "Quer saber como?" ---------- */
/* No desktop o botão já faz parte da arte de fundo: o link fica sobreposto. */
.hero__cta {
  position: absolute;
  left: calc(var(--u) * 862);
  top: calc(var(--u) * 631);
  width: calc(var(--u) * 277);
  height: calc(var(--u) * 50);
  border-radius: calc(var(--u) * 10);
  color: transparent;
  overflow: hidden;
  text-indent: -999px;
}
.hero__cta:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

.hero__box {
  position: absolute;
  top: calc(var(--u) * 740);
  left: 0; right: 0;
  margin: 0 auto;
  width: 550px;
  text-align: center;
  font-size: 14px;
}
.hero__box strong { font-weight: 700; }

/* ---------- Formulário ---------- */
.lead {
  position: absolute;
  top: calc(var(--u) * 805);
  left: calc(var(--u) * 482);
  width: calc(var(--u) * 1038);
}

.lead__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: calc(var(--u) * 12);
  align-items: start;
  max-width: 1200px;
  margin: 0 auto;
}

.lead__col { display: flex; flex-direction: column; }

.field { margin: 0; padding: 0; border: 0; min-width: 0; }

.field > label:not(.radio),
.field > legend {
  display: block;
  padding: 0;
  font-size: 14px;
  font-weight: 400;
  margin-bottom: calc(var(--u) * 9);
}

.field input[type="text"],
.field input[type="email"],
.field input[type="tel"],
.field select {
  display: block;
  width: 100%;
  height: 32px;
  padding: 0 calc(var(--u) * 10);
  border: 0;
  border-radius: 6px;
  background: #fff;
  color: #1b2a3a;
  font: inherit;
  font-size: max(14px, calc(var(--u) * 15));
  outline: none;
}

.field > input,
.field > .phone,
.field > .select { margin-bottom: calc(var(--u) * 2); }

.field input:focus,
.field select:focus { box-shadow: 0 0 0 calc(var(--u) * 2) rgba(141, 198, 63, .85); }

.field.is-invalid input[type="text"],
.field.is-invalid input[type="email"],
.field.is-invalid input[type="tel"],
.field.is-invalid select { box-shadow: 0 0 0 calc(var(--u) * 2) #ff6b6b; }
.field.is-invalid > legend,
.field.is-invalid > label { color: #ffd6d6; }

/* Select com seta pequena */
.select { position: relative; }
.select select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: calc(var(--u) * 24);
  cursor: pointer;
}
.select::after {
  content: "";
  position: absolute;
  right: calc(var(--u) * 8);
  top: 50%;
  margin-top: calc(var(--u) * -2);
  border-left: calc(var(--u) * 3.5) solid transparent;
  border-right: calc(var(--u) * 3.5) solid transparent;
  border-top: calc(var(--u) * 5) solid #222;
  pointer-events: none;
}
.select select:disabled { cursor: not-allowed; }

/* Celular */
.phone { position: relative; }
.phone__flag {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: calc(var(--u) * 58);
  display: flex;
  align-items: center;
  gap: calc(var(--u) * 6);
  padding-left: calc(var(--u) * 8);
  pointer-events: none;
}
.phone__flag svg { width: calc(var(--u) * 24); height: auto; }
.caret {
  border-left: calc(var(--u) * 2.5) solid transparent;
  border-right: calc(var(--u) * 2.5) solid transparent;
  border-top: calc(var(--u) * 3.5) solid #444;
}
.phone input[type="tel"] {
  padding-left: calc(var(--u) * 66);
  border-left: calc(var(--u) * 2) solid var(--green);
  background-clip: padding-box;
}
.phone::before {
  content: "";
  position: absolute;
  left: calc(var(--u) * 57);
  top: 0; bottom: 0;
  width: calc(var(--u) * 2);
  background: var(--green);
  z-index: 1;
  pointer-events: none;
}
.phone input[type="tel"] { border-left: 0; }

/* Rádios */
.field--radio > legend { margin-bottom: calc(var(--u) * 4); }
.field--radio { margin-bottom: calc(var(--u) * 11); }

.radio {
  display: flex;
  align-items: center;
  gap: calc(var(--u) * 6);
  font-size: 14px;
  cursor: pointer;
}
.radio input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.radio span {
  position: relative;
  flex: none;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
}
.radio span::after {
  content: "";
  position: absolute;
  inset: calc(var(--u) * 4);
  border-radius: 50%;
  background: var(--green-dark);
  transform: scale(0);
  transition: transform .15s ease;
}
.radio input:checked + span::after { transform: scale(1); }
.radio input:focus-visible + span { box-shadow: 0 0 0 calc(var(--u) * 2) rgba(141, 198, 63, .9); }

.field--captcha { margin-top: 0; }
.lead__col:first-child .field--radio { margin-top: calc(var(--u) * 11); }

/* Rodapé do form */
.lead__billing { display: none; }

.lead__submit {
  display: block;
  margin: calc(var(--u) * 34) auto 0;
  width: calc(var(--u) * 277);
  height: calc(var(--u) * 46);
  border: calc(var(--u) * 2) solid #fff;
  border-radius: calc(var(--u) * 10);
  background: transparent;
  color: #fff;
  font: inherit;
  font-size: calc(var(--u) * 20);
  font-weight: 400;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
.lead__submit:hover,
.lead__submit:focus-visible { background: #fff; color: var(--navy); outline: none; }
.lead__submit:disabled { opacity: .6; cursor: wait; }

.lead__msg {
  min-height: 1em;
  margin-top: calc(var(--u) * 10);
  text-align: center;
  font-size: max(13px, calc(var(--u) * 15));
}
.lead__msg.is-error { color: #ffd0d0; }
.lead__msg.is-ok { color: #d7f3a6; font-weight: 600; }

/* ==========================================================================
   MOBILE (layout de 496px de largura)
   ========================================================================== */
@media (max-width: 767.98px) {
  .br-mobile { display: inline; }

  .hero {
    aspect-ratio: auto;
    height: auto;
    background: var(--blue-bg);
    overflow: hidden;
  }

  /* arte do topo (foto com asas) */
  .hero::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    aspect-ratio: 1080 / 1512;
    background: url("../assets/img/hero-mobile.webp") center top / 100% 100% no-repeat;
  }

  .hero__inner {
    --u: calc(100cqw / 496);
    height: auto;
    padding-bottom: calc(var(--u) * 42);
  }

  .hero__watermark {
    left: 0;
    top: calc(var(--u) * 701);
    width: calc(var(--u) * 520);
    opacity: 1;
  }

  .hero__head { position: relative; }

  .hero__logo {
    margin-top: calc(var(--u) * 37);
    width: calc(var(--u) * 280);
  }

  .hero__title {
    margin-top: calc(var(--u) * 70);
    font-size: calc(var(--u) * 30);
    font-weight: 500;
    line-height: calc(var(--u) * 40);
    letter-spacing: -.005em;
  }

  .hero__text {
    margin-top: calc(var(--u) * 455);
    width: calc(var(--u) * 424);
    font-size: calc(var(--u) * 20);
    letter-spacing: -.012em;
    line-height: calc(var(--u) * 29);
  }

  .hero__cta {
    position: relative;
    z-index: 2;
    left: auto; top: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 31) auto 0;
    width: calc(var(--u) * 309);
    height: calc(var(--u) * 33);
    border-radius: calc(var(--u) * 8);
    background: var(--green);
    color: #fff;
    text-indent: 0;
    overflow: visible;
    font-size: calc(var(--u) * 20);
    font-weight: 600;
    text-decoration: none;
    letter-spacing: -.01em;
  }

  .hero__box {
    position: relative;
    top: auto;
    margin: calc(var(--u) * -13) auto 0;
    width: calc(var(--u) * 384);
    padding: calc(var(--u) * 35) calc(var(--u) * 14) 8px;
    background: var(--blue-box);
    border-radius: calc(var(--u) * 6) calc(var(--u) * 6) 0 0;
    font-size: 15px;
    line-height: calc(var(--u) * 20);
    text-align: left;
  }

  .lead {
    position: relative;
    top: auto; left: auto;
    margin: 0 auto;
    width: calc(var(--u) * 435);
    padding: calc(var(--u) * 43) calc(var(--u) * 55) calc(var(--u) * 34) calc(var(--u) * 29);
    background: var(--blue-panel);
  }

  .lead__fields { display: flex; flex-direction: column; align-items: stretch; }
  .lead__col { display: contents; }
  .field { order: var(--o); }

  .field > label:not(.radio),
  .field > legend {
    font-size: calc(var(--u) * 17);
    line-height: calc(var(--u) * 21);
    margin-bottom: calc(var(--u) * 5);
  }

  .field input[type="text"],
  .field input[type="email"],
  .field input[type="tel"],
  .field select {
    height: 32px;
    padding: 0 calc(var(--u) * 12);
    border-radius: 6px;
    font-size: max(16px, calc(var(--u) * 17));
  }

  .field > input,
  .field > .phone,
  .field > .select { margin-bottom: calc(var(--u) * 11); }

  .select::after {
    right: calc(var(--u) * 11);
    border-left-width: calc(var(--u) * 4.5);
    border-right-width: calc(var(--u) * 4.5);
    border-top-width: calc(var(--u) * 6.5);
    margin-top: calc(var(--u) * -3);
  }

  .phone__flag { width: calc(var(--u) * 64); padding-left: calc(var(--u) * 9); gap: calc(var(--u) * 7); }
  .phone__flag svg { width: calc(var(--u) * 31); }
  .caret {
    border-left-width: calc(var(--u) * 3.5);
    border-right-width: calc(var(--u) * 3.5);
    border-top-width: calc(var(--u) * 5);
  }
  .phone::before { left: calc(var(--u) * 63); width: calc(var(--u) * 2.5); }
  .phone input[type="tel"] { padding-left: calc(var(--u) * 74); }

  .field--radio { margin-bottom: calc(var(--u) * 20); }
  .field--radio > legend {
    margin: 0 calc(var(--u) * -50) calc(var(--u) * 6) 0;
    font-size: calc(var(--u) * 16.5);
    line-height: calc(var(--u) * 23);
  }

  .radio {
    gap: calc(var(--u) * 7);
    font-size: calc(var(--u) * 17);
    line-height: calc(var(--u) * 25);
  }
  .radio span { width: calc(var(--u) * 19); height: calc(var(--u) * 19); }
  .radio span::after { inset: calc(var(--u) * 4.5); }

  .field--captcha { margin-top: 0; margin-bottom: 0; }

  .lead__billing {
    display: block;
    margin: calc(var(--u) * 30) 0 0;
    width: calc(var(--u) * 340);
    text-align: center;
    font-size: calc(var(--u) * 20);
    font-weight: 700;
    letter-spacing: -.01em;
  }

  .lead__submit {
    margin: calc(var(--u) * 22) 0 0 calc(var(--u) * 14);
    width: calc(var(--u) * 312);
    height: calc(var(--u) * 49);
    border-width: calc(var(--u) * 1.5);
    border-radius: calc(var(--u) * 10);
    font-size: calc(var(--u) * 21);
  }

  .lead__msg { width: calc(var(--u) * 340); font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

.field select:disabled { background: #fff; opacity: 1; }

/* ==========================================================================
   MOBILE (até 767px) — seções 2 em diante
   Regras em unidades --u, escala do layout mobile (390px)
   ========================================================================== */
@media (max-width: 767.98px) {
  .about {
    container-type: inline-size;
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #e9dfd3 100%);
    color: #0d4a7f;
  }
  
  .about__inner {
    --u: calc(100cqw / 1530);
    position: relative;
    display: flow-root;
    min-height: calc(var(--u) * 541);
    padding-bottom: calc(var(--u) * 62);
  }
  
  .about__tab {
    position: absolute;
    left: calc(var(--u) * 342);
    top: 0;
    width: calc(var(--u) * 302);
    height: calc(var(--u) * 79);
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: calc(var(--u) * 2);
    background: #86bc25;
    border-radius: 0 0 calc(var(--u) * 22) calc(var(--u) * 22);
    color: #fff;
    font-size: calc(var(--u) * 24);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .about__text {
    position: relative;
    margin: calc(var(--u) * 109) 0 0 calc(var(--u) * 342);
    width: calc(var(--u) * 385);
    font-size: calc(var(--u) * 19.6);
    line-height: calc(var(--u) * 27.4);
    letter-spacing: -.012em;
  }
  
  .about__text p { margin: 0 0 calc(var(--u) * 14); }
  
  .about__text strong { font-weight: 700; }
  
  .about__btn {
    position: relative;
    margin: calc(var(--u) * 22) 0 0 calc(var(--u) * 340);
    width: calc(var(--u) * 201);
    height: calc(var(--u) * 50);
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2f84c3;
    border-radius: calc(var(--u) * 4);
    color: #fff;
    font-size: calc(var(--u) * 14.5);
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .about__btn:hover, .about__btn:focus-visible { background: #1f6ea9; outline: none; }
  
  .about__img {
    position: absolute;
    left: calc(var(--u) * 838);
    top: calc(var(--u) * 81);
    width: calc(var(--u) * 427);
    height: calc(var(--u) * 317);
    object-fit: cover;
    border-radius: calc(var(--u) * 20);
  }
  
  .about { background: linear-gradient(180deg, #ffffff 0%, #e9dfd3 100%); }
  
    .about__inner { --u: calc(100cqw / 857); height: calc(var(--u) * 1998); min-height: 0; padding: 0; }
  
    .about__tab {
      left: calc(var(--u) * 117);
      width: calc(var(--u) * 623);
      height: calc(var(--u) * 175);
      border-radius: 0 0 calc(var(--u) * 40) calc(var(--u) * 40);
      font-size: calc(var(--u) * 46);
      padding-top: calc(var(--u) * 4);
    }
  
    .about__text {
      position: absolute;
      margin: 0;
      left: calc(var(--u) * 45);
      top: calc(var(--u) * 262);
      width: calc(var(--u) * 772);
      font-size: calc(var(--u) * 35.4);
      line-height: calc(var(--u) * 56.5);
      letter-spacing: -.01em;
    }
    .about__text p { margin-bottom: calc(var(--u) * 52); }
  
    .about__btn {
      position: absolute;
      margin: 0;
      z-index: 2;
      left: calc(var(--u) * 178);
      top: calc(var(--u) * 925);
      width: calc(var(--u) * 501);
      height: calc(var(--u) * 103);
      border-radius: calc(var(--u) * 8);
      font-size: calc(var(--u) * 36);
    }
  
    .about__img {
      left: 0;
      top: calc(var(--u) * 1080);
      width: 100%;
      height: calc(var(--u) * 1118);
      border-radius: 0;
      object-position: 52% 100%;
      -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.55) 12%, #000 26%);
      mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.55) 12%, #000 26%);
      padding-bottom: 85px;
    }
  
  .media {
    container-type: inline-size;
    background: #fff;
    overflow: hidden;
  }
  
  .media__inner {
    --u: calc(100cqw / 1049);
    position: relative;
    display: flow-root;
    min-height: calc(var(--u) * 398);
  }
  
  .media__tab {
    position: absolute;
    left: calc(var(--u) * 177);
    top: 0;
    width: calc(var(--u) * 226);
    height: calc(var(--u) * 63);
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: calc(var(--u) * 2);
    background: #00aeef;
    border-radius: 0 0 calc(var(--u) * 20) calc(var(--u) * 20);
    color: #fff;
    font-size: calc(var(--u) * 17);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .media__list {
    position: absolute;
    left: calc(var(--u) * 177);
    top: calc(var(--u) * 92);
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, calc(var(--u) * 168));
    column-gap: calc(var(--u) * 94);
  }
  
  .media__item a {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: inherit;
    text-decoration: none;
  }
  
  .media__photo {
    width: calc(var(--u) * 168);
    height: calc(var(--u) * 123);
    object-fit: cover;
    border-radius: calc(var(--u) * 12);
    box-shadow: 0 calc(var(--u) * 6) calc(var(--u) * 12) rgba(0, 0, 0, .35);
    transition: transform .25s ease;
  }
  
  .media__item a:hover .media__photo { transform: translateY(calc(var(--u) * -3)); }
  
  .media__logo {
    width: calc(var(--u) * 135 * var(--lw, 1));
    height: auto;
    margin-top: calc(var(--u) * 6);
  }
  
  .media__caption {
    margin: calc(var(--u) * -6) 0 0;
    width: calc(var(--u) * 165);
    font-size: calc(var(--u) * 11.5);
    line-height: calc(var(--u) * 13);
    font-weight: 700;
    letter-spacing: -.005em;
  }
  
  .media__item--globo { --lw: 1; color: #28489a; }
  
  .media__item--valor { --lw: .84; color: #0e6455; }
  
  .media__item--terra { --lw: .85; color: #e8700d; }
  
  .media__item--valor .media__logo { margin-top: calc(var(--u) * 10); }
  
  .media__item--terra .media__logo { margin-top: calc(var(--u) * 8); }
  
  .media__btn {
    position: absolute;
    left: 50%;
    top: calc(var(--u) * 329);
    width: calc(var(--u) * 150);
    height: calc(var(--u) * 37);
    margin-left: calc(var(--u) * -75);
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2f84c3;
    border-radius: calc(var(--u) * 3);
    color: #fff;
    font-size: calc(var(--u) * 10.5);
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .media__btn:hover, .media__btn:focus-visible { background: #1f6ea9; outline: none; }
  
  .media__inner {
      --u: calc(100cqw / 478);
      min-height: 0;
      padding-bottom: calc(var(--u) * 27);
    }
  
    .media__tab {
      left: calc(var(--u) * 63);
      width: calc(var(--u) * 350);
      height: calc(var(--u) * 98);
      border-radius: 0 0 calc(var(--u) * 28) calc(var(--u) * 28);
      font-size: calc(var(--u) * 27);
    }
  
    .media__list {
      position: relative;
      left: auto; top: auto;
      margin: calc(var(--u) * 161) 0 0;
      display: block;
    }
  
    .media__item { padding: 0 calc(var(--u) * 40) 0 calc(var(--u) * 16); }
    .media__item + .media__item {
      margin-top: calc(var(--u) * 31);
      padding-top: calc(var(--u) * 29);
      position: relative;
    }
    .media__item + .media__item::before {
      content: "";
      position: absolute;
      left: calc(var(--u) * 40);
      right: calc(var(--u) * 40);
      top: 0;
      border-top: 1px solid #b9b9b9;
    }
  
    .media__item a {
      display: grid;
      grid-template-columns: calc(var(--u) * 144) 1fr;
      grid-template-rows: auto auto;
      column-gap: calc(var(--u) * 20);
      align-items: start;
      text-align: left;
    }
  
    .media__photo {
      grid-row: 1 / 3;
      width: calc(var(--u) * 144);
      height: calc(var(--u) * 105);
      border-radius: calc(var(--u) * 10);
      box-shadow: 0 calc(var(--u) * 7) calc(var(--u) * 10) rgba(0, 0, 0, .35);
    }
  
    .media__logo {
      width: calc(var(--u) * 205 * var(--lw, 1));
      margin: calc(var(--u) * -6) 0 0 calc(var(--u) * -14);
    }
    .media__item--valor .media__logo, .media__item--terra .media__logo { margin-top: calc(var(--u) * -6); }
  
    .media__caption {
      margin: calc(var(--u) * -4) 0 0;
      width: auto;
      font-size: calc(var(--u) * 15.5);
      line-height: calc(var(--u) * 21);
    }
  
    .media__btn {
      position: relative;
      left: auto; top: auto;
      margin: calc(var(--u) * 41) auto 0;
      width: calc(var(--u) * 257);
      height: calc(var(--u) * 58);
      border-radius: calc(var(--u) * 4);
      font-size: calc(var(--u) * 19);
    }
  
  .videos {
    container-type: inline-size;
    background: linear-gradient(180deg, #ede4dc 0%, #ffffff 100%);
    overflow: hidden;
  }
  
  .videos__inner {
    --u: calc(100cqw / 1606);
    display: flow-root;
    padding: calc(var(--u) * 101) 0 calc(var(--u) * 118);
  }
  
  .videos__list {
    margin: 0 auto;
    padding: 0;
    list-style: none;
    width: calc(var(--u) * 1381);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: calc(var(--u) * 24);
  }
  
  .video {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 442 / 241;
    padding: 0;
    border: 0;
    border-radius: calc(var(--u) * 28);
    background: #1b2a3a;
    overflow: hidden;
    cursor: pointer;
    box-shadow: 0 calc(var(--u) * 24) calc(var(--u) * 28) calc(var(--u) * -6) rgba(0, 0, 0, .3);
  }
  
  .video img, .video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
  }
  
  .video__play {
    position: absolute;
    left: 50%; top: 50%;
    width: calc(var(--u) * 97);
    height: calc(var(--u) * 66);
    margin: calc(var(--u) * -33) 0 0 calc(var(--u) * -48.5);
    border-radius: calc(var(--u) * 18);
    background: #f4132b;
    transition: transform .2s ease, background .2s ease;
  }
  
  .video__play::after {
    content: "";
    position: absolute;
    left: 50%; top: 50%;
    margin: calc(var(--u) * -14) 0 0 calc(var(--u) * -9);
    border-left: calc(var(--u) * 26) solid #fff;
    border-top: calc(var(--u) * 14) solid transparent;
    border-bottom: calc(var(--u) * 14) solid transparent;
  }
  
  .video:hover .video__play, .video:focus-visible .video__play { transform: scale(1.08); background: #d90f25; }
  
  .video--playing { cursor: default; }
  
  .video:focus-visible { outline: 3px solid #2f84c3; outline-offset: 3px; }
  
  .videos__inner { --u: calc(100cqw / 418); padding: calc(var(--u) * 50) 0 calc(var(--u) * 50); }
  
    .videos__list {
      width: calc(var(--u) * 366);
      display: flex;
      flex-direction: column;
      row-gap: calc(var(--u) * 45);
    }
  
    .video {
      aspect-ratio: 366 / 198;
      border-radius: calc(var(--u) * 30);
      box-shadow: 0 calc(var(--u) * 10) calc(var(--u) * 14) calc(var(--u) * -2) rgba(0, 0, 0, .3);
    }
  
    .video__play {
      width: calc(var(--u) * 80);
      height: calc(var(--u) * 55);
      margin: calc(var(--u) * -27.5) 0 0 calc(var(--u) * -40);
      border-radius: calc(var(--u) * 15);
    }
    .video__play::after {
      margin: calc(var(--u) * -11) 0 0 calc(var(--u) * -7);
      border-left-width: calc(var(--u) * 21);
      border-top-width: calc(var(--u) * 11);
      border-bottom-width: calc(var(--u) * 11);
    }
  
  .only-mobile { display: none; }
  
  .br-desktop { display: inline; }
  
  .why {
    container-type: inline-size;
    background: #064b7d;
    color: #fff;
    overflow: hidden;
  }
  
  .why__inner {
    --u: calc(100cqw / 1440);
    position: relative;
    display: flow-root;
    padding-bottom: calc(var(--u) * 19);
  }
  
  .why__tab {
    position: relative;
    z-index: 2;
    margin: 0 auto;
    width: calc(var(--u) * 240);
    height: calc(var(--u) * 54);
    display: flex;
    align-items: center;
    justify-content: center;
    background: #86bc25;
    border-radius: 0 0 calc(var(--u) * 14) calc(var(--u) * 14);
    font-size: calc(var(--u) * 16);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .why__card {
    margin: calc(var(--u) * 21) auto 0;
    width: calc(var(--u) * 582);
    padding: calc(var(--u) * 33) calc(var(--u) * 52) calc(var(--u) * 24) calc(var(--u) * 20);
    background: #fff;
    border-radius: calc(var(--u) * 40);
    color: #0d4a80;
  }
  
  .why__list { margin: 0; padding: 0; list-style: none; }
  
  .why__list li { position: relative; }
  
  .why__list li::before {
    content: "";
    position: absolute;
    left: 0;
    background: no-repeat center / 100% 100%;
  }
  
  .why__list--blue li {
    padding-left: calc(var(--u) * 24);
    font-size: calc(var(--u) * 11.6);
    line-height: calc(var(--u) * 14.5);
    letter-spacing: -.005em;
    margin-bottom: calc(var(--u) * 20);
  }
  
  .why__list--blue li:last-child { margin-bottom: 0; }
  
  .why__list--blue li::before {
    top: calc(var(--u) * -2);
    width: calc(var(--u) * 16);
    height: calc(var(--u) * 19);
    background-image: url("../assets/img/escudo-azul.webp");
  }
  
  .why__intro {
    margin: calc(var(--u) * 27) auto 0;
    width: calc(var(--u) * 574);
    font-size: calc(var(--u) * 11.6);
    line-height: calc(var(--u) * 14.8);
    letter-spacing: -.005em;
  }
  
  .why__list--white {
    margin: calc(var(--u) * 22) auto 0;
    width: calc(var(--u) * 566);
  }
  
  .why__list--white li {
    padding-left: calc(var(--u) * 24);
    font-size: calc(var(--u) * 11.6);
    line-height: calc(var(--u) * 14.8);
    letter-spacing: -.005em;
    margin-bottom: calc(var(--u) * 7.5);
  }
  
  .why__list--white li::before {
    top: calc(var(--u) * -1);
    width: calc(var(--u) * 15);
    height: calc(var(--u) * 17);
    background-image: url("../assets/img/escudo-branco.webp");
  }
  
  .why__list--white strong { font-weight: 700; }
  
  .why__cta-text {
    margin: calc(var(--u) * 25) auto 0;
    text-align: center;
    font-size: calc(var(--u) * 14.5);
    line-height: calc(var(--u) * 16.5);
  }
  
  .why__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 25) auto 0;
    width: calc(var(--u) * 132);
    height: calc(var(--u) * 34);
    background: #2f84c3;
    border-radius: calc(var(--u) * 2);
    color: #fff;
    font-size: calc(var(--u) * 9.5);
    line-height: calc(var(--u) * 12);
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .why__btn:hover, .why__btn:focus-visible { background: #1f6ea9; outline: none; }
  
  .only-mobile { display: list-item; }
    .br-desktop { display: none; }
  
    .why__inner { --u: calc(100cqw / 466); padding-bottom: calc(var(--u) * 52); }
  
    .why__tab {
      width: calc(var(--u) * 386);
      height: calc(var(--u) * 92);
      padding-bottom: calc(var(--u) * 14);
      border-radius: 0 0 calc(var(--u) * 28) calc(var(--u) * 28);
      font-size: calc(var(--u) * 26);
    }
  
    .why__card {
      margin: calc(var(--u) * -27) auto 0;
      width: calc(var(--u) * 400);
      padding: calc(var(--u) * 49) calc(var(--u) * 18) calc(var(--u) * 20) calc(var(--u) * 21);
      border-radius: calc(var(--u) * 22);
    }
  
    .why__list--blue li {
      padding-left: calc(var(--u) * 41);
      font-size: calc(var(--u) * 17.6);
      letter-spacing: -.015em;
      line-height: calc(var(--u) * 22.4);
      margin-bottom: calc(var(--u) * 20);
    }
    .why__list--blue li::before {
      top: calc(var(--u) * 2);
      width: calc(var(--u) * 26);
      height: calc(var(--u) * 31);
    }
  
    .why__intro {
      margin: calc(var(--u) * 31) 0 0 calc(var(--u) * 40);
      width: calc(var(--u) * 392);
      font-size: calc(var(--u) * 17.2);
      letter-spacing: -.015em;
      line-height: calc(var(--u) * 23.3);
    }
  
    .why__list--white {
      margin: calc(var(--u) * 24) 0 0 calc(var(--u) * 39);
      width: calc(var(--u) * 400);
    }
    .why__list--white li {
      padding-left: calc(var(--u) * 37);
      font-size: calc(var(--u) * 17.2);
      letter-spacing: -.015em;
      line-height: calc(var(--u) * 23.7);
      margin-bottom: calc(var(--u) * 22);
    }
    .why__list--white li::before {
      top: calc(var(--u) * 4);
      width: calc(var(--u) * 26);
      height: calc(var(--u) * 30);
    }
  
    .why__cta-text {
      margin: calc(var(--u) * 34) auto 0;
      width: calc(var(--u) * 380);
      font-size: calc(var(--u) * 17.4);
      line-height: calc(var(--u) * 23);
      font-weight: 700;
    }
  
    .why__btn {
      margin: calc(var(--u) * 33) auto 0;
      width: calc(var(--u) * 276);
      height: calc(var(--u) * 68);
      border-radius: calc(var(--u) * 4);
      font-size: calc(var(--u) * 20.5);
      line-height: calc(var(--u) * 28);
    }
  
  .stats {
    container-type: inline-size;
    background: linear-gradient(180deg, #fdfeff 0%, #ede4dc 100%);
    color: #000;
    overflow: hidden;
  }
  
  .stats__inner {
    --u: calc(100cqw / 1235);
    display: flow-root;
    padding: calc(var(--u) * 47) 0 calc(var(--u) * 46);
  }
  
  .stats__list {
    margin: 0 auto;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    column-gap: calc(var(--u) * 139);
  }
  
  .stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .stat__icon {
    width: calc(var(--u) * 98);
    height: calc(var(--u) * 98);
  }
  
  .stat__text {
    margin-top: calc(var(--u) * 12);
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  .stat__text strong {
    font-size: calc(var(--u) * 31);
    line-height: calc(var(--u) * 36);
    font-weight: 700;
    letter-spacing: -.02em;
    white-space: nowrap;
  }
  
  .stat__text span {
    margin-top: calc(var(--u) * -2);
    font-size: calc(var(--u) * 17);
    line-height: calc(var(--u) * 22);
    font-weight: 400;
    letter-spacing: -.01em;
    white-space: nowrap;
  }
  
  .stats__note {
    margin: calc(var(--u) * 41) 0 0;
    text-align: center;
    color: #0d4a80;
    font-size: calc(var(--u) * 23);
    line-height: calc(var(--u) * 30);
    font-weight: 700;
    letter-spacing: -.015em;
  }
  
  .stats__inner { --u: calc(100cqw / 430); padding: calc(var(--u) * 76) 0 calc(var(--u) * 32); }
  
    .stats__list {
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      row-gap: calc(var(--u) * 35);
      padding-left: calc(var(--u) * 39);
    }
  
    .stat {
      flex-direction: row;
      align-items: center;
      text-align: left;
      column-gap: calc(var(--u) * 28);
    }
  
    .stat__icon { width: calc(var(--u) * 118); height: calc(var(--u) * 118); }
  
    .stat__text { margin-top: 0; align-items: flex-start; }
    .stat__text strong { font-size: calc(var(--u) * 41); line-height: calc(var(--u) * 46); }
    .stat__text span { margin-top: calc(var(--u) * -4); font-size: calc(var(--u) * 21); line-height: calc(var(--u) * 26); }
  
    .stats__note {
      margin-top: calc(var(--u) * 82);
      font-size: calc(var(--u) * 21.5);
      line-height: calc(var(--u) * 24);
    }
  
  .services {
    container-type: inline-size;
    background: linear-gradient(180deg, #ffffff 0%, #f4efe9 100%);
    color: #0d4a80;
    overflow: hidden;
  }
  
  .services__inner {
    --u: calc(100cqw / 1265);
    position: relative;
    display: flow-root;
    padding-bottom: calc(var(--u) * 38);
  }
  
  .services__tab {
    position: absolute;
    left: calc(var(--u) * 123);
    top: 0;
    width: calc(var(--u) * 350);
    height: calc(var(--u) * 78);
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: calc(var(--u) * 2);
    background: #00aeef;
    border-radius: 0 0 calc(var(--u) * 20) calc(var(--u) * 20);
    color: #fff;
    font-size: calc(var(--u) * 27);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .services__img {
    position: absolute;
    left: calc(var(--u) * 682);
    top: calc(var(--u) * 46);
    width: calc(var(--u) * 472);
    height: auto;
  }
  
  .services__text {
    margin: calc(var(--u) * 122) 0 0 calc(var(--u) * 132);
    width: calc(var(--u) * 540);
  }
  
  .services__list { margin: 0; padding: 0; list-style: none; }
  
  .services__list li {
    position: relative;
    padding-left: calc(var(--u) * 32);
    font-size: calc(var(--u) * 24);
    line-height: calc(var(--u) * 36.5);
    font-weight: 700;
    letter-spacing: -.015em;
    white-space: nowrap;
  }
  
  .services__list li::before {
    content: "";
    position: absolute;
    left: calc(var(--u) * 2);
    top: 50%;
    width: calc(var(--u) * 7);
    height: calc(var(--u) * 7);
    margin-top: calc(var(--u) * -3.5);
    border-radius: 50%;
    background: currentColor;
  }
  
  .services__text p {
    margin: calc(var(--u) * 38) 0 0;
    font-size: calc(var(--u) * 23);
    line-height: calc(var(--u) * 28);
    letter-spacing: -.015em;
  }
  
  .services__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 114) auto 0;
    width: calc(var(--u) * 233);
    height: calc(var(--u) * 58);
    background: #2f84c3;
    border-radius: calc(var(--u) * 4);
    color: #fff;
    font-size: calc(var(--u) * 16);
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .services__btn:hover, .services__btn:focus-visible { background: #1f6ea9; outline: none; }
  
  .services__inner { --u: calc(100cqw / 388); padding-bottom: calc(var(--u) * 40); }
  
    .services__tab {
      position: relative;
      left: auto;
      margin: 0 auto;
      width: calc(var(--u) * 287);
      height: calc(var(--u) * 82);
      border-radius: 0 0 calc(var(--u) * 22) calc(var(--u) * 22);
      font-size: calc(var(--u) * 23);
    }
  
    .services__img {
      position: relative;
      left: auto; top: auto;
      margin: calc(var(--u) * 21) 0 0 calc(var(--u) * 39);
      width: calc(var(--u) * 325);
    }
  
    .services__text { margin: calc(var(--u) * 30) 0 0 calc(var(--u) * 28); width: calc(var(--u) * 340); }
  
    .services__list li {
      padding-left: calc(var(--u) * 11);
      font-size: calc(var(--u) * 17.4);
      line-height: calc(var(--u) * 24.6);
      letter-spacing: -.02em;
    }
    .services__list li::before { left: 0; width: calc(var(--u) * 5); height: calc(var(--u) * 5); margin-top: calc(var(--u) * -2.5); }
  
    .services__text p {
      margin-top: calc(var(--u) * 24);
      width: calc(var(--u) * 345);
      font-size: calc(var(--u) * 17.4);
      line-height: calc(var(--u) * 23.5);
      letter-spacing: -.02em;
    }
  
    .services__btn {
      margin-top: calc(var(--u) * 38);
      width: calc(var(--u) * 229);
      height: calc(var(--u) * 48);
      background: #2b95e6;
      font-size: calc(var(--u) * 16.5);
    }
  
  .benefits {
    container-type: inline-size;
    background: linear-gradient(180deg, #ffffff 0%, #f3eae1 100%);
    color: #0d4a80;
    overflow: hidden;
  }
  
  .benefits__inner {
    --u: calc(100cqw / 929);
    display: flow-root;
    padding-bottom: calc(var(--u) * 38);
  }
  
  .benefits__tab {
    margin: 0 0 0 calc(var(--u) * 60);
    width: calc(var(--u) * 263);
    height: calc(var(--u) * 65);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding-top: calc(var(--u) * 2);
    background: #86bc25;
    border-radius: 0 0 calc(var(--u) * 14) calc(var(--u) * 14);
    color: #fff;
    font-size: calc(var(--u) * 18);
    line-height: calc(var(--u) * 24);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .benefits__list {
    margin: calc(var(--u) * 32) auto 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: calc(var(--u) * 54) calc(var(--u) * 55);
    width: calc(var(--u) * 803);
  }
  
  .benefit { width: calc(var(--u) * 231); }
  
  .benefit img {
    width: 100%;
    height: auto;
    aspect-ratio: 346 / 219;
    object-fit: cover;
    border-radius: calc(var(--u) * 20);
  }
  
  .benefit h3 {
    margin: calc(var(--u) * 7) 0 0;
    font-size: calc(var(--u) * 13.8);
    line-height: calc(var(--u) * 18);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .benefit p {
    margin: calc(var(--u) * 2) 0 0;
    font-size: calc(var(--u) * 11.4);
    line-height: calc(var(--u) * 14.5);
    letter-spacing: -.01em;
    color: #1d5a8f;
  }
  
  .benefits__note {
    margin: calc(var(--u) * 42) auto 0;
    width: calc(var(--u) * 790);
    text-align: center;
    font-size: calc(var(--u) * 16.5);
    line-height: calc(var(--u) * 19.5);
    font-weight: 700;
    letter-spacing: -.015em;
  }
  
  .benefits__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 27) auto 0;
    width: calc(var(--u) * 175);
    height: calc(var(--u) * 43);
    background: #4fa65f;
    border-radius: calc(var(--u) * 3);
    color: #fff;
    font-size: calc(var(--u) * 11);
    line-height: calc(var(--u) * 14);
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .benefits__btn:hover, .benefits__btn:focus-visible { background: #3d8f4d; outline: none; }
  
  .benefits__inner { --u: calc(100cqw / 368); padding-bottom: calc(var(--u) * 30); }
  
    .benefits__tab {
      margin: 0 auto;
      width: calc(var(--u) * 268);
      height: calc(var(--u) * 76);
      border-radius: 0 0 calc(var(--u) * 20) calc(var(--u) * 20);
      font-size: calc(var(--u) * 20.5);
      line-height: calc(var(--u) * 27);
    }
  
    .benefits__list {
      display: block;
      width: calc(var(--u) * 317);
      margin-top: calc(var(--u) * 55);
    }
  
    .benefit { width: 100%; margin-bottom: calc(var(--u) * 42); }
    .benefit img { border-radius: calc(var(--u) * 18); }
    .benefit h3 {
      margin-top: calc(var(--u) * 12);
      font-size: calc(var(--u) * 17);
      line-height: calc(var(--u) * 22);
    }
    .benefit p {
      margin-top: calc(var(--u) * 3);
      font-size: calc(var(--u) * 14.4);
      line-height: calc(var(--u) * 19.5);
    }
  
    .benefits__note {
      margin-top: calc(var(--u) * -3);
      width: calc(var(--u) * 330);
      font-size: calc(var(--u) * 14.8);
      line-height: calc(var(--u) * 20);
    }
  
    .benefits__btn {
      margin-top: calc(var(--u) * 26);
      width: calc(var(--u) * 244);
      height: calc(var(--u) * 56);
      border-radius: calc(var(--u) * 4);
      font-size: calc(var(--u) * 15.5);
      line-height: calc(var(--u) * 21);
    }
  
  .tech {
    container-type: inline-size;
    background: linear-gradient(180deg, #2d99c7 0%, #03285d 100%);
    color: #fff;
    overflow: hidden;
  }
  
  .tech__inner {
    --u: calc(100cqw / 879);
    display: flow-root;
    padding: calc(var(--u) * 33) 0 calc(var(--u) * 45);
  }
  
  .tech__title {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 20);
    font-weight: 400;
    letter-spacing: -.01em;
  }
  
  .tech__title strong { font-weight: 700; }
  
  .tech__row {
    margin: calc(var(--u) * 42) auto 0;
    width: calc(var(--u) * 468);
    display: flex;
    align-items: center;
    column-gap: calc(var(--u) * 17);
  }
  
  .tech__img {
    flex: none;
    width: calc(var(--u) * 268);
    height: auto;
    aspect-ratio: 268 / 169;
    object-fit: cover;
    border-radius: calc(var(--u) * 22);
  }
  
  .tech__text {
    margin: 0;
    font-size: calc(var(--u) * 16.2);
    line-height: calc(var(--u) * 22.5);
    font-weight: 700;
    letter-spacing: -.012em;
  }
  
  .tech__inner { --u: calc(100cqw / 475); padding: calc(var(--u) * 67) 0 calc(var(--u) * 84); }
  
    .tech__title { font-size: calc(var(--u) * 27); line-height: calc(var(--u) * 28); }
  
    .tech__row {
      margin-top: calc(var(--u) * 52);
      width: calc(var(--u) * 413);
      flex-direction: column;
      align-items: stretch;
      row-gap: calc(var(--u) * 58);
    }
  
    .tech__img { width: 100%; aspect-ratio: 413 / 262; border-radius: calc(var(--u) * 28); }
  
    .tech__text {
      margin: 0 auto;
      width: calc(var(--u) * 425);
      text-align: center;
      font-size: calc(var(--u) * 20.5);
      line-height: calc(var(--u) * 29);
    }
  
  .adv {
    container-type: inline-size;
    background: #fff;
    color: #0d4a80;
    overflow: hidden;
  }
  
  .adv__inner {
    --u: calc(100cqw / 1300);
    display: flow-root;
    padding: calc(var(--u) * 30) 0 calc(var(--u) * 28);
  }
  
  .adv__title,
  .adv__subtitle {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 20.5);
    line-height: calc(var(--u) * 24);
    font-weight: 800;
    letter-spacing: -.02em;
  }
  
  .adv__top {
    margin: calc(var(--u) * 29) auto 0;
    width: calc(var(--u) * 770);
    display: flex;
    align-items: flex-start;
    column-gap: calc(var(--u) * 22);
  }
  
  .adv__img {
    flex: none;
    width: calc(var(--u) * 270);
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: calc(var(--u) * 18);
  }
  
  .adv__copy { flex: 1; min-width: 0; }
  
  .adv__list { margin: calc(var(--u) * 2) 0 0; padding: 0; list-style: none; }
  
  .adv__list li {
    position: relative;
    padding-left: calc(var(--u) * 27);
    margin-bottom: calc(var(--u) * 8.5);
    font-size: calc(var(--u) * 15.2);
    line-height: calc(var(--u) * 19);
    letter-spacing: -.012em;
  }
  
  .adv__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: calc(var(--u) * 1);
    width: calc(var(--u) * 18);
    height: calc(var(--u) * 21);
    background: url("../assets/img/escudo-azul.webp") no-repeat center / 100% 100%;
  }
  
  .adv__list strong, .adv__copy p strong { font-weight: 700; }
  
  .adv__copy p {
    margin: calc(var(--u) * 15) 0 0 calc(var(--u) * 25);
    font-size: calc(var(--u) * 12.6);
    line-height: calc(var(--u) * 17.5);
    letter-spacing: -.01em;
  }
  
  .adv__subtitle { margin-top: calc(var(--u) * 73); }
  
  .adv__cards {
    margin: calc(var(--u) * 28) auto 0;
    padding: 0;
    list-style: none;
    width: calc(var(--u) * 678);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: calc(var(--u) * 13.5) calc(var(--u) * 74);
  }
  
  .adv__cards li {
    width: calc(var(--u) * 302);
    height: calc(var(--u) * 64);
    display: flex;
    align-items: center;
    padding-left: calc(var(--u) * 17);
    background: #1f4f9d;
    border-radius: calc(var(--u) * 14);
    color: #fff;
    font-size: calc(var(--u) * 14.3);
    line-height: calc(var(--u) * 19);
    font-weight: 500;
  }
  
  .adv__cards img, .adv__cards svg {
    flex: none;
    width: calc(var(--u) * 44);
    height: calc(var(--u) * 44);
    margin-right: calc(var(--u) * 14);
    object-fit: contain;
  }
  
  .adv__cards svg { padding: calc(var(--u) * 2) calc(var(--u) * 8); }
  
  .adv__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 46) auto 0;
    width: calc(var(--u) * 175);
    height: calc(var(--u) * 44);
    background: #52b062;
    border-radius: calc(var(--u) * 3);
    color: #fff;
    font-size: calc(var(--u) * 11.4);
    line-height: calc(var(--u) * 16);
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .adv__btn:hover, .adv__btn:focus-visible { background: #3f9a50; outline: none; }
  
  .adv__inner { --u: calc(100cqw / 530); padding: calc(var(--u) * 36) 0 calc(var(--u) * 42); }
  
    .adv__title, .adv__subtitle {
      font-size: calc(var(--u) * 37);
      line-height: calc(var(--u) * 54);
    }
    .adv__title { line-height: calc(var(--u) * 53); }
    .adv__subtitle { margin-top: calc(var(--u) * 52); line-height: calc(var(--u) * 43); }
  
    .adv__top {
      margin-top: calc(var(--u) * 28);
      width: calc(var(--u) * 488);
      flex-direction: column;
      align-items: stretch;
    }
  
    .adv__img { width: 100%; border-radius: calc(var(--u) * 30); }
  
    .adv__copy { margin-top: calc(var(--u) * 30); padding-left: calc(var(--u) * 3); }
  
    .adv__list li {
      padding-left: calc(var(--u) * 41);
      margin-bottom: calc(var(--u) * 15);
      font-size: calc(var(--u) * 19.8);
      line-height: calc(var(--u) * 25);
    }
    .adv__list li::before { top: calc(var(--u) * 2); width: calc(var(--u) * 31); height: calc(var(--u) * 37); }
  
    .adv__copy p {
      margin: calc(var(--u) * 30) 0 0 calc(var(--u) * 7);
      font-size: calc(var(--u) * 20.3);
      line-height: calc(var(--u) * 30);
      letter-spacing: -.012em;
    }
  
    .adv__cards {
      margin-top: calc(var(--u) * 33);
      width: calc(var(--u) * 442);
      flex-direction: column;
      flex-wrap: nowrap;
      row-gap: calc(var(--u) * 25);
    }
    .adv__cards li {
      width: 100%;
      height: calc(var(--u) * 94);
      padding-left: calc(var(--u) * 24);
      border-radius: calc(var(--u) * 16);
      font-size: calc(var(--u) * 20.4);
      line-height: calc(var(--u) * 28);
    }
    .adv__cards img, .adv__cards svg {
      width: calc(var(--u) * 62);
      height: calc(var(--u) * 62);
      margin-right: calc(var(--u) * 24);
    }
    .adv__cards svg { padding: calc(var(--u) * 3) calc(var(--u) * 11); }
  
    .adv__btn {
      margin-top: calc(var(--u) * 49);
      width: calc(var(--u) * 310);
      height: calc(var(--u) * 76);
      border-radius: calc(var(--u) * 4);
      font-size: calc(var(--u) * 21);
      line-height: calc(var(--u) * 32);
    }
  
  .invest {
    container-type: inline-size;
    background: linear-gradient(180deg, #0596cf 0%, #0e2a4f 100%);
    color: #fff;
    overflow: hidden;
  }
  
  .invest__inner {
    --u: calc(100cqw / 1841);
    display: flow-root;
    padding-bottom: calc(var(--u) * 42);
  }
  
  .invest__tab {
    margin: 0 auto;
    width: calc(var(--u) * 318);
    height: calc(var(--u) * 81);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: calc(var(--u) * 2);
    background: #00aeef;
    border-radius: 0 0 calc(var(--u) * 20) calc(var(--u) * 20);
    text-align: center;
    font-size: calc(var(--u) * 20);
    line-height: calc(var(--u) * 25);
    font-weight: 700;
    letter-spacing: -.005em;
  }
  
  .invest__tab span { font-size: calc(var(--u) * 19); }
  
  .plans {
    margin: calc(var(--u) * 62) auto 0;
    padding: 0;
    list-style: none;
    width: calc(var(--u) * 727);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: calc(var(--u) * 26);
    align-items: stretch;
  }
  
  .plan { display: flex; flex-direction: column; }
  
  .plan__media {
    position: relative;
    z-index: 1;
    width: calc(var(--u) * 163);
    margin: 0 auto calc(var(--u) * -30);
  }
  
  .plan__media img {
    width: 100%;
    height: auto;
    aspect-ratio: 486 / 382;
    object-fit: cover;
    border-radius: calc(var(--u) * 14);
  }
  
  .plan__tag {
    position: absolute;
    left: 50%;
    top: calc(var(--u) * -8);
    transform: translateX(-50%);
    padding: 0 calc(var(--u) * 12);
    height: calc(var(--u) * 19);
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: calc(var(--u) * 6);
    color: #1b4a9c;
    font-size: calc(var(--u) * 14.5);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .plan__body {
    flex: 1;
    min-height: calc(var(--u) * 334);
    padding: calc(var(--u) * 45) calc(var(--u) * 8) calc(var(--u) * 20) calc(var(--u) * 8);
    border: calc(var(--u) * 2) solid #e5c79c;
    border-radius: calc(var(--u) * 22);
    background: rgba(20, 70, 140, .35);
  }
  
  .plan__body h3 {
    margin: 0;
    font-size: calc(var(--u) * 12.6);
    line-height: calc(var(--u) * 16);
    font-weight: 700;
    letter-spacing: -.012em;
  }
  
  .plan__body ul { margin: calc(var(--u) * 16) 0 0; padding: 0; list-style: none; }
  
  .plan__body li {
    font-size: calc(var(--u) * 11.2);
    line-height: calc(var(--u) * 21.8);
    letter-spacing: -.01em;
    white-space: nowrap;
  }
  
  .plan__body b { font-weight: 700; }
  
  .invest__note {
    margin: calc(var(--u) * 50) auto 0;
    width: calc(var(--u) * 460);
    text-align: center;
    font-size: calc(var(--u) * 14.2);
    line-height: calc(var(--u) * 18);
    letter-spacing: -.01em;
  }
  
  .invest__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 44) auto 0;
    width: calc(var(--u) * 175);
    height: calc(var(--u) * 44);
    background: #52b062;
    border-radius: calc(var(--u) * 3);
    color: #fff;
    font-size: calc(var(--u) * 11.2);
    line-height: calc(var(--u) * 17);
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .invest__btn:hover, .invest__btn:focus-visible { background: #3f9a50; outline: none; }
  
  .invest__inner { --u: calc(100cqw / 312); padding-bottom: calc(var(--u) * 36); }
  
    .invest__tab {
      width: calc(var(--u) * 270);
      height: calc(var(--u) * 90);
      border-radius: 0 0 calc(var(--u) * 22) calc(var(--u) * 22);
      font-size: calc(var(--u) * 17.5);
      line-height: calc(var(--u) * 29);
    }
    .invest__tab span { font-size: calc(var(--u) * 16.5); }
  
    .plans {
      margin-top: calc(var(--u) * 64);
      width: calc(var(--u) * 268);
      display: flex;
      flex-direction: column;
      row-gap: calc(var(--u) * 50);
    }
  
    .plan__media { width: calc(var(--u) * 195); margin-bottom: calc(var(--u) * -38); }
    .plan__media img { border-radius: calc(var(--u) * 16); }
  
    .plan__tag {
      top: calc(var(--u) * -11);
      height: calc(var(--u) * 22);
      padding: 0 calc(var(--u) * 11);
      border-radius: calc(var(--u) * 6);
      font-size: calc(var(--u) * 16.5);
    }
  
    .plan__body {
      min-height: 0;
      padding: calc(var(--u) * 56) calc(var(--u) * 10) calc(var(--u) * 14) calc(var(--u) * 11);
      border-radius: calc(var(--u) * 24);
    }
  
    .plan__body h3 { font-size: calc(var(--u) * 15.2); line-height: calc(var(--u) * 19); }
  
    .plan__body ul { margin-top: calc(var(--u) * 12); }
    .plan__body li { font-size: calc(var(--u) * 13.3); line-height: calc(var(--u) * 26); }
  
    .invest__note {
      margin-top: calc(var(--u) * 26);
      width: calc(var(--u) * 270);
      font-size: calc(var(--u) * 13.4);
      line-height: calc(var(--u) * 18);
    }
  
    .invest__btn {
      margin-top: calc(var(--u) * 34);
      width: calc(var(--u) * 204);
      height: calc(var(--u) * 44);
      font-size: calc(var(--u) * 13.2);
      line-height: calc(var(--u) * 18);
    }
  
  .cta {
    container-type: inline-size;
    background: #e8ded2;
    color: #13396b;
    overflow: hidden;
  }
  
  .cta__inner {
    --u: calc(100cqw / 1156);
    display: flow-root;
    padding: calc(var(--u) * 41) 0 calc(var(--u) * 40);
    text-align: center;
  }
  
  .cta__inner p { margin: 0; letter-spacing: -.012em; }
  
  .cta__strong {
    font-size: calc(var(--u) * 19.5);
    line-height: calc(var(--u) * 24);
    font-weight: 700;
  }
  
  .cta__text {
    margin-top: calc(var(--u) * 6);
    font-size: calc(var(--u) * 18.6);
    line-height: calc(var(--u) * 28);
    font-weight: 400;
  }
  
  .cta__inner { --u: calc(100cqw / 474); padding: calc(var(--u) * 38) 0 calc(var(--u) * 34); }
  
    .cta__strong { font-size: calc(var(--u) * 23.5); line-height: calc(var(--u) * 32); }
    .cta__text { margin-top: calc(var(--u) * 10); font-size: calc(var(--u) * 22.5); line-height: calc(var(--u) * 32); }
  
  .testi {
    container-type: inline-size;
    background: #064b7d;
    color: #fff;
    overflow: hidden;
  }
  
  .testi__inner {
    --u: calc(100cqw / 1911);
    --t: var(--u);
    display: flow-root;
    padding: calc(var(--u) * 36) 0 calc(var(--u) * 37);
  }
  
  .testi__title {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 27);
    line-height: calc(var(--u) * 31);
    font-weight: 700;
    letter-spacing: -.02em;
  }
  
  .carousel {
    position: relative;
    margin: 0 auto;
    touch-action: pan-y;
    user-select: none;
    -webkit-user-select: none;
  }
  
  .carousel__stage { position: absolute; inset: 0; }
  
  .carousel__arrow {
    position: absolute;
    z-index: 5;
    width: calc(var(--u) * 37);
    height: calc(var(--u) * 37);
    padding: 0;
    border: 0;
    border-radius: calc(var(--u) * 4);
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233aa04b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4 7 12l8 8'/%3E%3C/svg%3E") no-repeat center / 62%;
    box-shadow: 0 calc(var(--u) * 6) calc(var(--u) * 12) rgba(0, 0, 0, .25);
    cursor: pointer;
    transition: transform .15s ease;
  }
  
  .carousel__arrow--prev { left: 0; }
  
  .carousel__arrow--next { right: 0; transform: scaleX(-1); }
  
  .carousel__arrow:hover { transform: scale(1.06); }
  
  .carousel__arrow--next:hover { transform: scaleX(-1.06) scaleY(1.06); }
  
  .carousel__arrow:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
  
  .carousel__dots {
    display: flex;
    justify-content: center;
    column-gap: calc(var(--u) * 4.5);
    margin-top: calc(var(--u) * 9);
  }
  
  .carousel__dots button {
    width: calc(var(--u) * 8);
    height: calc(var(--u) * 8);
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #7c8fa3;
    cursor: pointer;
  }
  
  .carousel__dots button.is-active { background: #fff; }
  
  .carousel__dots button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
  
  .tslide, .vslide {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%) translateX(calc(var(--pos, 0) * var(--step))) scale(1);
    transform-origin: center center;
    transition: transform .45s ease, opacity .45s ease, filter .45s ease;
  }
  
  .tslide[data-pos="-1"], .tslide[data-pos="1"],
  .vslide[data-pos="-1"], .vslide[data-pos="1"] {
    transform: translateX(-50%) translateX(calc(var(--pos) * var(--step))) scale(var(--sc));
    filter: blur(calc(var(--u) * 3.5));
    opacity: .55;
    cursor: pointer;
  }
  
  .tslide[data-pos="hidden"], .vslide[data-pos="hidden"] {
    opacity: 0;
    pointer-events: none;
    transform: translateX(-50%) scale(var(--sc));
  }
  
  .tslide[data-pos="-1"] *, .tslide[data-pos="1"] *,
  .vslide[data-pos="-1"] *, .vslide[data-pos="1"] * { pointer-events: none; }
  
  .carousel--text {
    --step: calc(var(--u) * 310);
    --sc: .775;
    width: calc(var(--u) * 909);
    height: calc(var(--t) * 400);
    margin-top: calc(var(--u) * 24);
  }
  
  .carousel--text .carousel__arrow { top: calc(var(--u) * 151); }
  
  .tslide {
    width: calc(var(--t) * 302);
    height: calc(var(--t) * 315);
  }
  
  .tslide__photo {
    position: relative;
    z-index: 2;
    display: block;
    width: calc(var(--t) * 118);
    height: calc(var(--t) * 104);
    margin: 0 auto;
    border-radius: 18px;
    object-fit: cover;
    background: #e8e8ea;
  }
  
  .tslide__card {
    position: relative;
    margin-top: calc(var(--t) * -30);
    height: calc(var(--t) * 290);
    padding: calc(var(--t) * 42) calc(var(--t) * 28) 0 calc(var(--t) * 29);
    background: #d6ecfc;
    border-radius: 18px;
    color: #0d4a80;
  }
  
  .tslide__card p {
    margin: 0;
    font-size: calc(var(--t) * 14.2);
    line-height: calc(var(--t) * 17.5);
    letter-spacing: -.012em;
  }
  
  .tslide__card footer {
    position: absolute;
    left: calc(var(--t) * 3);
    right: calc(var(--t) * 4);
    bottom: calc(var(--t) * -33);
    height: calc(var(--t) * 46);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #0b2f5c;
    border-radius: calc(var(--t) * 10);
    color: #fff;
    text-align: center;
  }
  
  .tslide__card footer strong {
    font-size: calc(var(--t) * 14.5);
    line-height: calc(var(--t) * 17);
    font-weight: 700;
  }
  
  .tslide__card footer span {
    font-size: calc(var(--t) * 12);
    line-height: calc(var(--t) * 15);
  }
  
  .carousel--video {
    --step: calc(var(--u) * 241);
    --sc: .9;
    width: calc(var(--u) * 696);
    height: calc(var(--u) * 340);
    margin-top: calc(var(--u) * 44);
  }
  
  .carousel--video .carousel__arrow { top: calc(var(--u) * 150); }
  
  .vslide {
    width: calc(var(--u) * 186);
    height: calc(var(--u) * 340);
    border-radius: calc(var(--u) * 28);
    overflow: hidden;
    background: #0b2f5c;
  }
  
  .vslide img, .vslide iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
  }
  
  .vslide__play {
    position: absolute;
    left: 50%; top: 50%;
    width: calc(var(--u) * 75);
    height: calc(var(--u) * 52);
    margin: calc(var(--u) * -26) 0 0 calc(var(--u) * -37.5);
    padding: 0;
    border: 0;
    border-radius: calc(var(--u) * 14);
    background: #f4132b;
    cursor: pointer;
    transition: transform .2s ease;
  }
  
  .vslide__play::after {
    content: "";
    position: absolute;
    left: 50%; top: 50%;
    margin: calc(var(--u) * -10) 0 0 calc(var(--u) * -6);
    border-left: calc(var(--u) * 20) solid #fff;
    border-top: calc(var(--u) * 10.5) solid transparent;
    border-bottom: calc(var(--u) * 10.5) solid transparent;
  }
  
  .vslide__play:hover, .vslide__play:focus-visible { transform: scale(1.08); outline: none; }
  
  .vslide.is-playing .vslide__play { display: none; }
  
  .testi__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 29) auto 0;
    width: calc(var(--u) * 233);
    height: calc(var(--u) * 58);
    background: #52b062;
    border-radius: calc(var(--u) * 3);
    color: #fff;
    font-size: calc(var(--u) * 16.5);
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .testi__btn:hover, .testi__btn:focus-visible { background: #3f9a50; outline: none; }
  
  .testi {
      background:
        radial-gradient(circle at 12% 19%, #20d4df 0, rgba(6, 75, 125, 0) 36%),
        #064b7d;
    }
  
    .testi__inner {
      --u: calc(100cqw / 794);
      --t: calc(var(--u) * 2.07);
      padding: calc(var(--u) * 55) 0 calc(var(--u) * 70);
    }
  
    .testi__title { font-size: calc(var(--u) * 53); line-height: calc(var(--u) * 73); }
  
    .carousel { width: 100%; }
    .carousel__arrow { display: none; }
  
    .carousel--text {
      --step: calc(var(--u) * 588);
      --sc: .8;
      height: calc(var(--t) * 400);
      margin-top: calc(var(--u) * 31);
    }
  
    .carousel--video {
      --step: calc(var(--u) * 387);
      --sc: .9;
      width: 100%;
      height: calc(var(--u) * 714);
      margin-top: calc(var(--u) * 101);
    }
  
    .carousel__dots { margin-top: calc(var(--u) * 17); column-gap: calc(var(--u) * 10); }
    .carousel__dots button { width: calc(var(--u) * 15); height: calc(var(--u) * 15); }
  
    .tslide__card p { font-size: calc(var(--t) * 14.4); }
  
    .vslide { width: calc(var(--u) * 391); height: calc(var(--u) * 714); border-radius: calc(var(--u) * 56); }
    .vslide__play {
      width: calc(var(--u) * 157);
      height: calc(var(--u) * 108);
      margin: calc(var(--u) * -54) 0 0 calc(var(--u) * -78.5);
      border-radius: calc(var(--u) * 28);
    }
    .vslide__play::after {
      margin: calc(var(--u) * -21) 0 0 calc(var(--u) * -13);
      border-left-width: calc(var(--u) * 41);
      border-top-width: calc(var(--u) * 22);
      border-bottom-width: calc(var(--u) * 22);
    }
  
    .testi__btn {
      margin-top: calc(var(--u) * 69);
      width: calc(var(--u) * 491);
      height: calc(var(--u) * 96);
      border-radius: calc(var(--u) * 5);
      font-size: calc(var(--u) * 33);
    }
  
  .journey {
    container-type: inline-size;
    background: linear-gradient(180deg, #ffffff 0%, #ece3d8 100%);
    color: #0b4a7c;
    overflow: hidden;
  }
  
  .journey__inner {
    --u: calc(100cqw / 1382);
    display: flow-root;
    padding: calc(var(--u) * 31) 0 calc(var(--u) * 44);
  }
  
  .journey__title {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 27);
    line-height: calc(var(--u) * 32);
    font-weight: 700;
    letter-spacing: -.02em;
  }
  
  .journey__steps {
    margin: calc(var(--u) * 28) auto 0;
    padding: 0;
    list-style: none;
    width: calc(var(--u) * 399);
    counter-reset: step;
  }
  
  .journey__steps li {
    position: relative;
    height: calc(var(--u) * 53);
    margin: 0 0 calc(var(--u) * 10) calc(var(--u) * 61);
    display: flex;
    align-items: center;
    justify-content: center;
    background: #064a7d;
    border-radius: calc(var(--u) * 14);
    color: #fff;
    font-size: calc(var(--u) * 15);
    font-weight: 700;
    letter-spacing: -.015em;
    counter-increment: step;
  }
  
  .journey__steps li:last-child { margin-bottom: 0; }
  
  .journey__steps li::before {
    content: counter(step);
    position: absolute;
    left: calc(var(--u) * -61);
    top: 50%;
    width: calc(var(--u) * 38);
    height: calc(var(--u) * 38);
    margin-top: calc(var(--u) * -19);
    display: flex;
    align-items: center;
    justify-content: center;
    border: calc(var(--u) * 1.5) solid #064a7d;
    border-radius: 50%;
    color: #064a7d;
    font-size: calc(var(--u) * 20);
    font-weight: 700;
  }
  
  .journey__steps li::after {
    content: "";
    position: absolute;
    left: calc(var(--u) * -23);
    top: 50%;
    width: calc(var(--u) * 23);
    border-top: calc(var(--u) * 1.5) solid #064a7d;
  }
  
  .journey__text {
    margin: calc(var(--u) * 29) auto 0;
    text-align: center;
    font-size: calc(var(--u) * 17.3);
    line-height: calc(var(--u) * 25.5);
    letter-spacing: -.015em;
  }
  
  .journey__text strong, .journey__strong { font-weight: 700; }
  
  .journey__strong {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 17.3);
    line-height: calc(var(--u) * 25.5);
    letter-spacing: -.015em;
  }
  
  .journey__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: calc(var(--u) * 53) auto 0;
    width: calc(var(--u) * 259);
    height: calc(var(--u) * 58);
    background: #52b062;
    border-radius: calc(var(--u) * 4);
    color: #fff;
    font-size: calc(var(--u) * 16);
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .journey__btn:hover, .journey__btn:focus-visible { background: #3f9a50; outline: none; }
  
  .journey__inner { --u: calc(100cqw / 474); padding: calc(var(--u) * 26) 0 calc(var(--u) * 46); }
  
    .journey__title { font-size: calc(var(--u) * 33); line-height: calc(var(--u) * 40); }
  
    .journey__steps { margin-top: calc(var(--u) * 27); width: calc(var(--u) * 400); }
    .journey__steps li { margin-left: calc(var(--u) * 61); width: calc(var(--u) * 339); font-size: calc(var(--u) * 15.5); }
  
    .journey__text {
      margin-top: calc(var(--u) * 28);
      font-size: calc(var(--u) * 19.2);
      line-height: calc(var(--u) * 28);
      padding: 0 calc(var(--u) * 20);
    }
    .journey__strong { font-size: calc(var(--u) * 19.2); line-height: calc(var(--u) * 28); margin-top: calc(var(--u) * 10); }
  
    .journey__btn {
      margin-top: calc(var(--u) * 35);
      width: calc(var(--u) * 321);
      font-size: calc(var(--u) * 20.5);
    }
  
  .faq {
    container-type: inline-size;
    background: #054a7c;
    color: #c4ecf8;
    overflow: hidden;
  }
  
  .faq__inner {
    --u: calc(100cqw / 1204);
    display: flow-root;
    padding: calc(var(--u) * 23) 0 calc(var(--u) * 28);
  }
  
  .faq__title {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 33);
    line-height: calc(var(--u) * 42);
    font-weight: 700;
    letter-spacing: -.01em;
  }
  
  .faq__list {
    margin: calc(var(--u) * 24) auto 0;
    padding: 0;
    list-style: none;
    width: calc(var(--u) * 371);
  }
  
  .faq__item { margin-bottom: calc(var(--u) * 9); }
  
  .faq__item:last-child { margin-bottom: 0; }
  
  .faq__q {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: calc(var(--u) * 49);
    padding: calc(var(--u) * 6) calc(var(--u) * 14);
    border: calc(var(--u) * 2) solid #1a9bbf;
    border-radius: calc(var(--u) * 12);
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: calc(var(--u) * 17);
    font-weight: 700;
    letter-spacing: -.015em;
    text-align: center;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease;
  }
  
  .faq__q:hover { background: rgba(26, 155, 191, .15); }
  
  .faq__q:focus-visible { outline: 2px solid #c4ecf8; outline-offset: 2px; }
  
  .faq__q[aria-expanded="true"] { background: rgba(26, 155, 191, .22); border-color: #3dc0e3; }
  
  .faq__a {
    padding: calc(var(--u) * 14) calc(var(--u) * 16) calc(var(--u) * 4);
    color: #fff;
    font-size: calc(var(--u) * 14);
    line-height: calc(var(--u) * 20);
  }
  
  .faq__a p { margin: 0; }
  
  .faq__inner { --u: calc(100cqw / 431); padding: calc(var(--u) * 28) 0 calc(var(--u) * 88); }
  
    .faq__title { font-size: calc(var(--u) * 45); line-height: calc(var(--u) * 52); }
  
    .faq__list { margin-top: calc(var(--u) * 25); width: calc(var(--u) * 397); }
    .faq__item { margin-bottom: calc(var(--u) * 10); }
  
    .faq__q {
      min-height: calc(var(--u) * 52);
      border-radius: calc(var(--u) * 9);
      font-size: calc(var(--u) * 21.5);
    }
  
    .faq__a { font-size: calc(var(--u) * 18); line-height: calc(var(--u) * 26); }
  
  .awards {
    container-type: inline-size;
    background: #fff;
    color: #0d4a80;
    overflow: hidden;
  }
  
  .awards__inner {
    --u: calc(100cqw / 1080);
    display: flow-root;
    padding: calc(var(--u) * 17) 0 calc(var(--u) * 50);
  }
  
  .awards__title {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 27);
    line-height: calc(var(--u) * 32);
    font-weight: 700;
    letter-spacing: -.02em;
  }
  
  .awards__row {
    margin: calc(var(--u) * -15) auto 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
  
  .award { display: flex; flex-direction: column; align-items: center; }
  
  .award img { display: block; height: auto; }
  
  .award p {
    margin: 0;
    text-align: center;
    font-size: calc(var(--u) * 14.6);
    line-height: calc(var(--u) * 18);
    letter-spacing: -.012em;
    color: #1b5a8c;
  }
  
  .award--top25 { padding-top: calc(var(--u) * 53); width: calc(var(--u) * 195); }
  
  .award--top25 img { width: 100%; }
  
  .award--top25 p { margin-top: calc(var(--u) * 15); width: calc(var(--u) * 190); }
  
  .award--abf { width: calc(var(--u) * 198); margin-left: calc(var(--u) * -3); }
  
  .award--abf img { width: 100%; }
  
  .award--abf p { margin-top: calc(var(--u) * -56); width: calc(var(--u) * 134); }
  
  .awards__title--partners { margin-top: calc(var(--u) * 44); }
  
  .awards__sub {
    margin: calc(var(--u) * 10) 0 0;
    text-align: center;
    font-size: calc(var(--u) * 16.8);
    line-height: calc(var(--u) * 22);
    letter-spacing: -.012em;
    color: #1b5a8c;
  }
  
  .partners {
    margin: calc(var(--u) * 32) auto 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: calc(var(--u) * 57);
  }
  
  .partners img { display: block; width: auto; height: auto; zoom: 1; }
  
  .partners li:nth-child(1) img { width: calc(var(--u) * 111); }
  
  .partners li:nth-child(2) img { width: calc(var(--u) * 127); }
  
  .partners li:nth-child(3) img { width: calc(var(--u) * 96); }
  
  .partners li:nth-child(4) img { width: calc(var(--u) * 115); }
  
  .awards__inner { --u: calc(100cqw / 431); padding: calc(var(--u) * 30) 0 calc(var(--u) * 46); }
  
    .awards__title { font-size: calc(var(--u) * 33); line-height: calc(var(--u) * 40); }
  
    .awards__row { margin-top: calc(var(--u) * -16); }
  
    .award p { font-size: calc(var(--u) * 15.2); line-height: calc(var(--u) * 21); }
  
    .award--top25 { padding-top: calc(var(--u) * 54); width: calc(var(--u) * 197); }
    .award--top25 p { margin-top: calc(var(--u) * 20); width: calc(var(--u) * 222); }
  
    .award--abf { width: calc(var(--u) * 200); margin-left: calc(var(--u) * -4); }
    .award--abf p { margin-top: calc(var(--u) * -48); width: calc(var(--u) * 172); }
  
    .awards__title--partners { margin-top: calc(var(--u) * 38); }
  
    .awards__sub { margin-top: calc(var(--u) * 14); font-size: calc(var(--u) * 18.6); line-height: calc(var(--u) * 27); }
  
    .partners {
      margin-top: calc(var(--u) * 36);
      width: calc(var(--u) * 360);
      display: grid;
      grid-template-columns: 1fr 1fr;
      justify-items: center;
      align-items: center;
      row-gap: calc(var(--u) * 26);
      column-gap: 0;
    }
    .partners li:nth-child(1) img { width: calc(var(--u) * 110); }
    .partners li:nth-child(2) img { width: calc(var(--u) * 128); }
    .partners li:nth-child(3) img { width: calc(var(--u) * 96); }
    .partners li:nth-child(4) img { width: calc(var(--u) * 117); }
  
  .footer {
    container-type: inline-size;
    background: #054a7c;
    color: #fff;
    overflow: hidden;
  }
  
  .footer__inner {
    --u: calc(100cqw / 1289);
    display: flow-root;
    padding: calc(var(--u) * 30) 0 calc(var(--u) * 42);
    text-align: center;
  }
  
  .footer__logo { display: block; margin: 0 auto; width: calc(var(--u) * 204); height: auto; }
  
  .footer__abf { display: block; margin: calc(var(--u) * 33) auto 0; width: calc(var(--u) * 120); height: auto; }
  
  .footer__social {
    margin: calc(var(--u) * 20) 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    column-gap: calc(var(--u) * 15);
  }
  
  .footer__social a { display: block; transition: transform .2s ease; }
  
  .footer__social a:hover, .footer__social a:focus-visible { transform: scale(1.12); outline: none; }
  
  .footer__social img { display: block; width: calc(var(--u) * 30); height: calc(var(--u) * 30); }
  
  .footer__copy {
    margin: calc(var(--u) * 33) 0 0;
    font-size: calc(var(--u) * 12.2);
    line-height: calc(var(--u) * 16);
    letter-spacing: -.005em;
  }
  
  .footer__bar {
    --u: calc(100vw / 1289);
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 100;
    background: #0a3a5f;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, .25);/* Estado inicial: escondida e transparente */
        opacity: 0;
        visibility: hidden;
        transform: translateY(100%);
        transition: all 0.3s ease-in-out;
    }

    /* Classe ativada pelo JS ao rolar */
    .footer__bar.is-visible {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
  
  .footer__bar-inner {
    min-height: calc(var(--u) * 72);
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: calc(var(--u) * 38);
    padding: 0 calc(var(--u) * 20);
  }
  
  .footer__bar p {
    margin: 0;
    font-size: calc(var(--u) * 18.4);
    line-height: calc(var(--u) * 24);
    letter-spacing: -.01em;
  }
  
  .footer__bar a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--u) * 212);
    height: calc(var(--u) * 44);
    background: #52b062;
    border-radius: calc(var(--u) * 3);
    color: #fff;
    font-size: calc(var(--u) * 14);
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  
  .footer__bar a:hover, .footer__bar a:focus-visible { background: #3f9a50; outline: none; }
  
  .footer__inner { --u: calc(100cqw / 430); padding: calc(var(--u) * 36) 0 calc(var(--u) * 36); }
  
    .footer__logo { width: calc(var(--u) * 210); }
    .footer__abf { width: calc(var(--u) * 134); margin-top: calc(var(--u) * 30); }
    .footer__social { margin-top: calc(var(--u) * 20); column-gap: calc(var(--u) * 16); }
    .footer__social img { width: calc(var(--u) * 36); height: calc(var(--u) * 36); }
    .footer__copy { margin: calc(var(--u) * 28) auto 0; width: calc(var(--u) * 300); font-size: calc(var(--u) * 13.5); line-height: calc(var(--u) * 19); }
  
    .footer__bar { --u: calc(100vw / 430); }
    .footer__bar-inner {
      flex-direction: column;
      row-gap: calc(var(--u) * 14);
      padding: calc(var(--u) * 22) calc(var(--u) * 20);
    }
    .footer__bar p { font-size: calc(var(--u) * 18); line-height: calc(var(--u) * 24); text-align: center; }
    .footer__bar a { width: calc(var(--u) * 240); height: calc(var(--u) * 46); font-size: calc(var(--u) * 15); }
  
  /* texto corrido do layout mobile usa peso Medium */
    .about__text, .benefit p, .services__text p, .why__list li, .why__intro,
    .adv__list li, .adv__copy p, .journey__text, .cta__text, .invest__note { font-weight: 500; }
  
    /* Seção 3 */
    .media__item--valor:not(.media__item--extra) { padding-bottom: calc(var(--u) * 8); }
    .media__item--terra:not(.media__item--extra) { padding-top: calc(var(--u) * 36) !important; }
    .media__btn { margin-top: calc(var(--u) * 61); }
  
    /* Seção 4 */
    .videos__inner { padding-bottom: calc(var(--u) * 63); }
  
    /* Seção 5 */
    .why__list--blue li { margin-bottom: calc(var(--u) * 18); }
    .why__card { padding-bottom: calc(var(--u) * 14); }
    .why__list--white li { margin-bottom: calc(var(--u) * 13); }
  
    /* Seção 6 */
    .stat__text span { font-weight: 500; font-size: calc(var(--u) * 23); }
  
    /* Investimento */
    .plans { row-gap: calc(var(--u) * 56); }
    .plan__body li { line-height: calc(var(--u) * 26.6); }
  
    /* Chamada final */
    .cta__inner { --u: calc(100cqw / 538); padding: calc(var(--u) * 39) 0 calc(var(--u) * 40); }
    .cta__strong { font-size: calc(var(--u) * 23); line-height: calc(var(--u) * 36); }
    .cta__text { margin-top: calc(var(--u) * 1); font-size: calc(var(--u) * 22); line-height: calc(var(--u) * 33); }
  
    /* Depoimentos */
    .testi__inner { padding-bottom: calc(var(--u) * 90); }
  
    /* Jornada */
    .journey__text { line-height: calc(var(--u) * 25.6); }
    .journey__strong { margin-top: calc(var(--u) * 8); line-height: calc(var(--u) * 25.6); }
    .journey__btn { margin-top: calc(var(--u) * 33); }
  
    /* Premiações e parceiros — 1u = 1px do layout mobile */
    .awards__inner { --u: calc(100cqw / 390); padding: calc(var(--u) * 33) 0 calc(var(--u) * 22); }
    .awards__title { font-size: calc(var(--u) * 22); line-height: calc(var(--u) * 28); }
    .awards__row { margin: calc(var(--u) * 32) 0 0 calc(var(--u) * 22); justify-content: flex-start; }
    .award p { font-size: calc(var(--u) * 12.6); line-height: calc(var(--u) * 15.6); }
    .award--top25 { padding-top: 0; width: calc(var(--u) * 178); }
    .award--top25 p { margin-top: calc(var(--u) * 24); width: calc(var(--u) * 160); }
    .award--abf { width: calc(var(--u) * 100); margin: calc(var(--u) * -15) 0 0 calc(var(--u) * 40); }
    .award--abf img { width: calc(var(--u) * 84); }
    .award--abf p { margin-top: calc(var(--u) * 20); width: calc(var(--u) * 110); }
    .awards__title--partners { margin-top: calc(var(--u) * 42); }
    .awards__sub { margin-top: calc(var(--u) * 8); font-size: calc(var(--u) * 15.6); line-height: calc(var(--u) * 20.5); }
    .partners {
      margin: calc(var(--u) * 9) 0 0;
      width: 100%;
      grid-template-columns: calc(var(--u) * 196) calc(var(--u) * 194);
      row-gap: calc(var(--u) * 2);
    }
    .partners li { height: calc(var(--u) * 60); display: flex; align-items: center; }
    .partners li:nth-child(1) img { width: calc(var(--u) * 100); }
    .partners li:nth-child(2) img { width: calc(var(--u) * 118); }
    .partners li:nth-child(3) img { width: calc(var(--u) * 87); }
    .partners li:nth-child(4) img { width: calc(var(--u) * 105); }
  
    /* Rodapé — 1u = 1px do layout mobile */
    .footer__inner { --u: calc(100cqw / 390); padding: calc(var(--u) * 25) 0 calc(var(--u) * 10); }
    .footer__logo { width: calc(var(--u) * 164); }
    .footer__abf { width: calc(var(--u) * 96); margin-top: calc(var(--u) * 35); }
    .footer__social { margin-top: calc(var(--u) * 21); column-gap: calc(var(--u) * 14); }
    .footer__social img { width: calc(var(--u) * 24); height: calc(var(--u) * 24); }
    .footer__copy { width: 100%; margin: calc(var(--u) * 27) 0 0; font-size: calc(var(--u) * 11); line-height: calc(var(--u) * 14); }
    .footer__bar { --u: calc(100vw / 390); }
    .footer__bar-inner { row-gap: calc(var(--u) * 14); padding: calc(var(--u) * 16) calc(var(--u) * 20) calc(var(--u) * 14); }
    .footer__bar p { font-size: calc(var(--u) * 16); line-height: calc(var(--u) * 20); }
    .footer__bar a { width: calc(var(--u) * 258); height: calc(var(--u) * 46); font-size: calc(var(--u) * 18); border-radius: calc(var(--u) * 4); }
  
  .journey__text, .cta__text, .invest__note { font-weight: 400; }
    .about__text { top: calc(var(--u) * 262); }
    .about__text p { margin-bottom: calc(var(--u) * 26); }
    .about__btn { top: calc(var(--u) * 935); }
  
  .award--abf { margin-top: calc(var(--u) * -57); }
    .award--abf img { width: calc(var(--u) * 168); max-width: none; }
    .award--abf p { margin-top: calc(var(--u) * -21); }
  
  .award--abf { margin: calc(var(--u) * -40) 0 0 calc(var(--u) * 33); }
    .award--abf p { margin-top: calc(var(--u) * -41); width: calc(var(--u) * 128); }
    .awards__title--partners { margin-top: calc(var(--u) * 37); }
  
  .award--abf p { width: calc(var(--u) * 118); }
    .awards__title--partners { margin-top: calc(var(--u) * 27); }
}

/* ==========================================================================
   DESKTOP (768px+) — seções 2 em diante
   Container: max-width 1200px, margin 0 auto. Valores em px.
   ========================================================================== */

@media (min-width: 768px) {
  :root { --wrap: 1200px; --gutter: 24px; }
  .only-mobile { display: none; }

  /* ---------- Container padrão ---------- */
  .about, .media, .videos, .why, .stats, .services, .benefits, .tech, .adv,
  .invest, .cta, .testi, .journey, .faq, .awards, .footer { padding-inline: var(--gutter); }

  .about__inner, .media__inner, .videos__inner, .why__inner, .stats__inner,
  .services__inner, .benefits__inner, .tech__inner, .adv__inner, .invest__inner,
  .cta__inner, .testi__inner, .journey__inner, .faq__inner, .awards__inner,
  .footer__inner, .footer__bar-inner {
    max-width: var(--wrap);
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
  }

  /* ---------- Abas penduradas no topo ---------- */
  .about__tab, .media__tab, .services__tab, .benefits__tab, .why__tab, .invest__tab {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 375px;
    min-height: 70px;
    margin: 0;
    padding: 10px 16px;
    border-radius: 0 0 20px 20px;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -.01em;
    text-align: center;
  }
  .about__tab, .why__tab, .benefits__tab { background: #86bc25; }
  .media__tab, .services__tab, .invest__tab { background: #00aeef; }

  /* ---------- Botões ---------- */
  .about__btn, .media__btn, .services__btn, .benefits__btn, .why__btn, .adv__btn,
  .invest__btn, .testi__btn, .journey__btn, .footer__bar a {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: fit-content;
    height: 52px;
    padding: 0 24px;
    border-radius: 4px;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s ease;
  }
  .about__btn, .media__btn, .services__btn, .why__btn { background: #2f84c3; }
  .benefits__btn, .adv__btn, .invest__btn, .testi__btn, .journey__btn, .footer__bar a { background: #52b062; }
  .about__btn:hover, .media__btn:hover, .services__btn:hover, .why__btn:hover,
  .about__btn:focus-visible, .media__btn:focus-visible, .services__btn:focus-visible, .why__btn:focus-visible { background: #1f6ea9; outline: none; }
  .benefits__btn:hover, .adv__btn:hover, .invest__btn:hover, .testi__btn:hover, .journey__btn:hover, .footer__bar a:hover,
  .benefits__btn:focus-visible, .adv__btn:focus-visible, .invest__btn:focus-visible, .testi__btn:focus-visible, .journey__btn:focus-visible, .footer__bar a:focus-visible { background: #3f9a50; outline: none; }

  /* ---------- SEÇÃO 2 — Somos a Home Angels ---------- */
  .about { background: linear-gradient(180deg, #ffffff 0%, #e9dfd3 100%); color: #0d4a7f; }
  .about__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 540px);
    column-gap: 160px;
    align-items: start;
    padding-bottom: 72px;
  }
  .about__tab { grid-column: 1 / -1; }
  .about__text { grid-column: 1; margin-top: 44px; font-size: 18px; line-height: 1.6; letter-spacing: -.01em; }
  .about__text p { margin: 0 0 20px; }
  .about__text strong { font-weight: 700; }
  .about__btn { grid-column: 1; width: 200px; margin-top: 12px; }
  .about__img { grid-column: 2; grid-row: 2 / 4; width: 100%; height: auto; aspect-ratio: 560 / 417; object-fit: cover; border-radius: 22px; }

  /* ---------- SEÇÃO 3 — Home Angels na mídia ---------- */
  .media { background: #fff; }
  .media__inner { padding-bottom: 64px; }
  .media__list {
    margin: 52px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 175px;
  }
  .media__item a { display: flex; flex-direction: column; align-items: center; text-align: center; color: inherit; text-decoration: none; }
  .media__photo { width: 100%; height: auto; aspect-ratio: 294 / 216; object-fit: cover; border-radius: 16px; box-shadow: 0 8px 16px rgba(0, 0, 0, .3); transition: transform .25s ease; }
  .media__item a:hover .media__photo { transform: translateY(-4px); }
  .media__logo { height: 56px; width: auto; max-width: 100%; margin-top: 14px; object-fit: contain; }
  .media__caption { margin: 6px 0 0; max-width: 290px; font-size: 16px; font-weight: 700; letter-spacing: -.005em; }
  .media__item--globo { color: #28489a; }
  .media__item--valor { color: #0e6455; }
  .media__item--terra { color: #e8700d; }
  .media__btn { width: fit-content; min-width: 0; height: 46px; margin: 48px auto 0; }

  /* ---------- SEÇÃO 4 — Vídeos (carrossel) ---------- */
  .videos { background: linear-gradient(180deg, #ede4dc 0%, #ffffff 100%); }
  .videos__inner { padding: 72px 0 40px; }
  .carousel--wide { --step: 500px; --sc: .78; width: 100%; max-width: 1200px; height: 330px; }
  .carousel--wide .carousel__arrow { top: 143px; }
  .carousel--wide .vslide { width: 560px; height: 315px; top: 6px; border-radius: 28px; box-shadow: 0 22px 26px -8px rgba(0, 0, 0, .3); }
  .carousel--wide + .carousel__dots .is-active { background: #0d4a80; }
  .carousel--wide + .carousel__dots button { background: #b9b2ab; }
  .carousel--wide + .carousel__dots button.is-active { background: #0d4a80; }

  /* ---------- SEÇÃO 5 — Por que somos diferentes ---------- */
  .why { background: #064b7d; color: #fff; }
  .why__inner { padding-bottom: 64px; }
  .why__tab { margin: 0 auto; }
  .why__card { max-width: 960px; margin: 28px auto 0; padding: 40px 85px 36px 36px; box-sizing: border-box; background: #fff; border-radius: 36px; color: #0d4a80; }
  .why__list { margin: 0; padding: 0; list-style: none; }
  .why__list li { position: relative; padding-left: 38px; font-size: 18px; }
  .why__list li::before { content: ""; position: absolute; left: 0; top: 1px; background: no-repeat center / 100% 100%; }
  .why__list--blue li { margin-bottom: 22px; }
  .why__list--blue li:last-child { margin-bottom: 0; }
  .why__list--blue li::before { width: 21px; height: 25px; background-image: url("../assets/img/escudo-azul.webp"); }
  .why__intro { max-width: 935px; margin: 40px auto 0; font-size: 18px; line-height: 1.3; }
  .why__list--white { max-width: 900px; margin: 28px auto 0; }
  .why__list--white li { margin-bottom: 10px; }
  .why__list--white li::before { width: 20px; height: 23px; background-image: url("../assets/img/escudo-branco.webp"); }
  .why__list--white strong { font-weight: 700; }
  .why__cta-text { margin: 36px auto 0; text-align: center; font-size: 19px; }
  .why__btn { width: 240px; margin: 32px auto 0; }

  /* ---------- SEÇÃO 6 — Números ---------- */
  .stats { background: linear-gradient(180deg, #fdfeff 0%, #ede4dc 100%); color: #000; }
  .stats__inner { padding: 40px 0; }
  .stats__list { max-width: 1000px; margin: 0 auto; padding: 0; list-style: none; display: flex; justify-content: space-between; align-items: flex-start; }
  .stat { display: flex; flex-direction: column; align-items: center; text-align: center; }
  .stat__icon { width: 104px; height: 104px; }
  .stat__text { margin-top: 14px; display: flex; flex-direction: column; align-items: center; }
  .stat__text strong { font-size: 34px; line-height: 1.15; font-weight: 700; letter-spacing: -.02em; white-space: nowrap; }
  .stat__text span { margin-top: -2px; font-size: 18px; line-height: 1.3; letter-spacing: -.01em; white-space: nowrap; }
  .stats__note { margin: 52px 0 0; text-align: center; color: #0d4a80; font-size: 26px; line-height: 1.3; font-weight: 700; letter-spacing: -.015em; }

  /* ---------- SEÇÃO 7 — Nossos Serviços ---------- */
  .services { background: linear-gradient(180deg, #ffffff 0%, #f4efe9 100%); color: #0d4a80; }
  .services__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 480px;
    column-gap: 64px;
    align-items: start;
    padding-bottom: 64px;
  }
  .services__tab { grid-column: 1 / -1; }
  .services__text { grid-column: 1; margin-top: 56px; }
  .services__img { grid-column: 2; grid-row: 2; width: 100%; height: auto; }
  .services__list { margin: 0; padding: 0; list-style: none; }
  .services__list li { position: relative; padding-left: 30px; font-size: 22px; line-height: 1.7; font-weight: 700; letter-spacing: -.015em; }
  .services__list li::before { content: ""; position: absolute; left: 2px; top: 50%; width: 7px; height: 7px; margin-top: -3.5px; border-radius: 50%; background: currentColor; }
  .services__text p { margin: 34px 0 0; max-width: 520px; font-size: 21px; line-height: 1.35; letter-spacing: -.015em; }
  .services__btn { grid-column: 1 / -1; width: 240px; margin: 56px auto 0; }

  /* ---------- SEÇÃO 8 — Benefícios e Serviços Adicionais ---------- */
  .benefits { background: linear-gradient(180deg, #ffffff 0%, #f3eae1 100%); color: #0d4a80; }
  .benefits__inner { padding-bottom: 64px; }
  .benefits__list { margin: 44px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 75px 85px; }
  .benefit { width: calc((100% - 170px) / 3); }
  .benefit img { width: 100%; height: auto; aspect-ratio: 346 / 219; object-fit: cover; border-radius: 22px; }
  .benefit h3 { margin: 12px 0 0; font-size: 18px; line-height: 1.3; font-weight: 700; letter-spacing: -.01em; }
  .benefit p { margin: 4px 0 0; font-size: 15px; color: #14518a; }
  .benefits__note { max-width: 1000px; margin: 52px auto 0; text-align: center; font-size: 20px; font-weight: 700; letter-spacing: -.015em; }
  .benefits__btn { width: 230px; margin: 32px auto 0; }

  /* ---------- Seção Tecnologia ---------- */
  .tech { background: linear-gradient(180deg, #2d99c7 0%, #03285d 100%); color: #fff; }
  .tech__inner { padding: 35px 0 50px; }
  .tech__title { margin: 0; text-align: center; font-size: 26px; line-height: 1.2; font-weight: 400; letter-spacing: -.01em; }
  .tech__title strong { font-weight: 700; }
  .tech__row { display: flex; align-items: center; justify-content: center; column-gap: 32px; margin-top: 44px; }
  .tech__img { flex: none; width: 420px; max-width: 50%; height: auto; aspect-ratio: 401 / 254; object-fit: cover; border-radius: 28px; }
  .tech__text { margin: 0; max-width: 270px; font-size: 20px; line-height: 1.45; font-weight: 700; letter-spacing: -.012em; }

  /* ---------- Seção Outras vantagens ---------- */
  .adv { background: #fff; color: #0d4a80; }
  .adv__inner { padding: 48px 0 72px; }
  .adv__title, .adv__subtitle { margin: 0; text-align: center; font-size: 28px; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; }
  .adv__top { display: flex; align-items: flex-start; justify-content: center; column-gap: 40px; max-width: 960px; margin: 40px auto 0; }
  .adv__img { flex: none; width: 340px; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 22px; }
  .adv__copy { flex: 1; min-width: 0; }
  .adv__list { margin: 0; padding: 0; list-style: none; }
  .adv__list li { position: relative; padding-left: 34px; margin-bottom: 12px; font-size: 18px; line-height: 1.35; letter-spacing: -.012em; }
  .adv__list li::before { content: ""; position: absolute; left: 0; top: 2px; width: 22px; height: 26px; background: url("../assets/img/escudo-azul.webp") no-repeat center / 100% 100%; }
  .adv__list strong, .adv__copy p strong { font-weight: 700; }
  .adv__copy p { margin: 18px 0 0 32px; font-size: 15px; line-height: 1.5; letter-spacing: -.01em; }
  .adv__subtitle { margin-top: 72px; }
  .adv__cards { margin: 36px auto 0; padding: 0; list-style: none; max-width: 860px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 110px; }
  .adv__cards li { display: flex; align-items: center; min-height: 78px; padding: 0 20px; background: #1f4f9d; border-radius: 16px; color: #fff; font-size: 18px; font-weight: 500; }
  .adv__cards li:last-child:nth-child(odd) { grid-column: 1 / -1; justify-self: center; width: calc(50% - 14px); }
  .adv__cards img, .adv__cards svg { flex: none; width: 52px; height: 52px; margin-right: 16px; object-fit: contain; }
  .adv__cards svg { padding: 2px 10px; }
  .adv__btn { width: 230px; margin: 52px auto 0; }

  /* ---------- Seção Investimento ---------- */
  .invest { background: linear-gradient(180deg, #0596cf 0%, #0e2a4f 100%); color: #fff; }
  .invest__inner { padding-bottom: 64px; }
  .invest__tab { margin: 0 auto; width: 340px; min-height: 92px; font-size: 22px; }
  .invest__tab span { font-size: 21px; }
  .plans { margin: 80px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 37px; align-items: stretch; }
  .plan { display: flex; flex-direction: column; }
  .plan__media { position: relative; z-index: 1; width: 210px; margin: 0 auto -44px; }
  .plan__media img { width: 100%; height: auto; aspect-ratio: 486 / 382; object-fit: cover; border-radius: 18px; }
  .plan__tag { position: absolute; left: 50%; top: -12px; transform: translateX(-50%); display: flex; align-items: center; height: 26px; padding: 0 15px; background: #fff; border-radius: 7px; color: #1b4a9c; font-size: 22px; font-weight: 700; }
  .plan__body { flex: 1; padding: 62px 10px 24px; border: 2px solid #e5c79c; border-radius: 28px; background: rgba(20, 70, 140, .35); }
  .plan__body h3 { margin: 0; font-size: 21px; line-height: 1.3; font-weight: 700; }
  .plan__body ul { margin: 16px 0 0; padding: 0; list-style: none; }
  .plan__body li { font-size: 18px; line-height: 1.7; }
  .plan__body b { font-weight: 700; }
  .invest__note { max-width: 560px; margin: 56px auto 0; text-align: center; font-size: 18px; letter-spacing: -.01em; }
  .invest__btn { width: 250px; margin: 40px auto 0; }

  /* ---------- Chamada final ---------- */
  .cta { background: #e8ded2; color: #13396b; }
  .cta__inner { padding: 56px 0 60px; text-align: center; }
  .cta__inner p { margin: 0; letter-spacing: -.012em; }
  .cta__strong { font-size: 26px; line-height: 1.3; font-weight: 700; }
  .cta__text { margin-top: 14px; font-size: 24px; line-height: 1.4; }

  /* ---------- Depoimentos (carrosséis) ---------- */
  .testi { background: #064b7d; color: #fff; }
  .testi__inner { padding: 56px 0 64px; }
  .testi__title { margin: 0; text-align: center; font-size: 32px; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }

  .carousel { position: relative; margin: 0 auto; touch-action: pan-y; user-select: none; -webkit-user-select: none; }
  .carousel__stage { position: absolute; inset: 0; overflow: visible; }
  .carousel__arrow { position: absolute; z-index: 5; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 5px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233aa04b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4 7 12l8 8'/%3E%3C/svg%3E") no-repeat center / 62%; box-shadow: 0 6px 12px rgba(0, 0, 0, .25); cursor: pointer; transition: transform .15s ease; }
  .carousel__arrow--prev { left: 0; }
  .carousel__arrow--next { right: 0; transform: scaleX(-1); }
  .carousel__arrow--prev:hover { transform: scale(1.06); }
  .carousel__arrow--next:hover { transform: scaleX(-1.06) scaleY(1.06); }
  .carousel__arrow:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
  .carousel__dots { display: flex; justify-content: center; column-gap: 6px; margin-top: 12px; }
  .carousel__dots button { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%; background: #7c8fa3; cursor: pointer; }
  .carousel__dots button.is-active { background: #fff; }
  .carousel__dots button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

  .tslide, .vslide {
    position: absolute; left: 50%; top: 0;
    transform: translateX(-50%) translateX(calc(var(--pos, 0) * var(--step))) scale(1);
    transform-origin: center center;
    transition: transform .45s ease, opacity .45s ease, filter .45s ease;
  }
  .tslide[data-pos="-1"], .tslide[data-pos="1"], .vslide[data-pos="-1"], .vslide[data-pos="1"] {
    transform: translateX(-50%) translateX(calc(var(--pos) * var(--step))) scale(var(--sc));
    filter: blur(4px); opacity: .55; cursor: pointer;
  }
  .tslide[data-pos="hidden"], .vslide[data-pos="hidden"] { opacity: 0; pointer-events: none; transform: translateX(-50%) scale(var(--sc)); }
  .tslide[data-pos="-1"] *, .tslide[data-pos="1"] *, .vslide[data-pos="-1"] *, .vslide[data-pos="1"] * { pointer-events: none; }

  .carousel--text { --step: 420px; --sc: .8; width: 100%; max-width: 1100px; height: 480px; margin-top: 36px; }
  .carousel--text .carousel__arrow { top: 190px; }
  .tslide { width: 380px; height: 400px; }
  .tslide__photo { position: relative; z-index: 2; display: block; width: 148px; height: 130px; margin: 0 auto; border-radius: 22px; object-fit: cover; background: #e8e8ea; }
  .tslide__card { position: relative; margin-top: -36px; height: 340px; padding: 54px 34px 0; background: #d6ecfc; border-radius: 22px; color: #0d4a80; }
  .tslide__card p { margin: 0; font-size: 17px; }
  .tslide__card footer { position: absolute; left: 4px; right: 4px; bottom: -42px; height: 58px; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #0b2f5c; border-radius: 12px; color: #fff; text-align: center; }
  .tslide__card footer strong { font-size: 17px; line-height: 1.2; font-weight: 700; }
  .tslide__card footer span { font-size: 14px; line-height: 1.2; }

  .carousel--video { --step: 300px; --sc: .9; width: 100%; max-width: 900px; height: 420px; margin-top: 64px; }
  .carousel--video .carousel__arrow { top: 188px; }
  .vslide { width: 230px; height: 420px; border-radius: 30px; overflow: hidden; background: #0b2f5c; }
  .vslide img, .vslide iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; }
  .vslide__play { position: absolute; left: 50%; top: 50%; width: 80px; height: 56px; margin: -28px 0 0 -40px; padding: 0; border: 0; border-radius: 15px; background: #f4132b; cursor: pointer; transition: transform .2s ease; }
  .vslide__play::after { content: ""; position: absolute; left: 50%; top: 50%; margin: -11px 0 0 -7px; border-left: 21px solid #fff; border-top: 11px solid transparent; border-bottom: 11px solid transparent; }
  .vslide__play:hover, .vslide__play:focus-visible { transform: scale(1.08); outline: none; }
  .vslide.is-playing .vslide__play { display: none; }
  .testi__btn { width: 260px; margin: 40px auto 0; }

  /* ---------- Jornada ---------- */
  .journey { background: linear-gradient(180deg, #ffffff 0%, #ece3d8 100%); color: #0b4a7c; }
  .journey__inner { padding: 35px 0; }
  .journey__title { margin: 0; text-align: center; font-size: 32px; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
  .journey__steps { margin: 36px auto 0; padding: 0 0 0 64px; list-style: none; max-width: 380px; box-sizing: content-box; counter-reset: step; }
  .journey__steps li { position: relative; height: 60px; margin: 0 0 12px; display: flex; align-items: center; justify-content: center; background: #064a7d; border-radius: 16px; color: #fff; font-size: 19px; font-weight: 700; counter-increment: step; }
  .journey__steps li:last-child { margin-bottom: 0; }
  .journey__steps li::before { content: counter(step); position: absolute; left: -64px; top: 50%; width: 40px; height: 40px; margin-top: -20px; display: flex; align-items: center; justify-content: center; border: 1.5px solid #064a7d; border-radius: 50%; color: #064a7d; font-size: 21px; font-weight: 700; }
  .journey__steps li::after { content: ""; position: absolute; left: -24px; top: 50%; width: 24px; border-top: 1.5px solid #064a7d; }
  .journey__text, .journey__strong { margin: 0; text-align: center; font-size: 20px; }
  .journey__text { margin-top: 36px; }
  .journey__text strong, .journey__strong { font-weight: 700; }
  .journey__btn { width: 285px; height: 56px; margin: 40px auto 0; font-size: 16px; }

  /* ---------- FAQ ---------- */
  .faq { background: #054a7c; color: #c4ecf8; }
  .faq__inner { padding: 35px 0; }
  .faq__title { margin: 0; text-align: center; font-size: 40px; line-height: 1.2; font-weight: 700; letter-spacing: -.01em; }
  .faq__list { max-width: 520px; margin: 36px auto 0; padding: 0; list-style: none; }
  .faq__item { margin-bottom: 12px; }
  .faq__item:last-child { margin-bottom: 0; }
  .faq__q { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 56px; padding: 6px 16px; border: 2px solid #1a9bbf; border-radius: 14px; background: transparent; color: inherit; font: inherit; font-size: 18px; font-weight: 700; letter-spacing: -.015em; text-align: center; cursor: pointer; transition: background .2s ease, border-color .2s ease; }
  .faq__q:hover { background: rgba(26, 155, 191, .15); }
  .faq__q:focus-visible { outline: 2px solid #c4ecf8; outline-offset: 2px; }
  .faq__q[aria-expanded="true"] { background: rgba(26, 155, 191, .22); border-color: #3dc0e3; }
  .faq__a { padding: 16px 20px 4px; color: #fff; font-size: 16px; line-height: 1.5; }
  .faq__a p { margin: 0; }

  /* ---------- Premiações e parceiros ---------- */
  .awards { background: #fff; color: #0d4a80; }
  .awards__inner { padding: 30px 0 64px; }
  .awards__title { margin: 0; text-align: center; font-size: 30px; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
  .awards__row { display: flex; justify-content: center; align-items: flex-start; column-gap: 72px; margin-top: 28px; }
  .award { display: flex; flex-direction: column; align-items: center; }
  .award img { display: block; height: auto; }
  .award p { margin: 0; text-align: center; font-size: 15px; line-height: 1.35; letter-spacing: -.012em; color: #1b5a8c; }
  .award--top25 { width: 300px; padding-top: 40px; }
  .award--top25 img { width: 100%; }
  .award--top25 p { margin-top: 18px; width: 270px; }
  .award--abf { width: 220px; }
  .award--abf img { width: 240px; max-width: none; }
  .award--abf p { margin-top: -52px; width: 190px; }
  .awards__title--partners { margin-top: 56px; }
  .awards__sub { margin: 12px 0 0; text-align: center; font-size: 18px; line-height: 1.35; letter-spacing: -.012em; color: #1b5a8c; }
  .partners { margin: 32px auto 0; padding: 0; list-style: none; display: flex; justify-content: center; align-items: center; column-gap: 72px; }
  .partners img { display: block; width: auto; height: 46px; }
  .partners li:nth-child(1) img { height: 30px; }

  /* ---------- Rodapé ---------- */
  .footer { background: #054a7c; color: #fff; }
  .footer__inner { padding: 48px 0 44px; text-align: center; }
  .footer__logo { display: block; margin: 0 auto; width: 210px; height: auto; }
  .footer__abf { display: block; margin: 32px auto 0; width: 130px; height: auto; }
  .footer__social { margin: 22px 0 0; padding: 0; list-style: none; display: flex; justify-content: center; column-gap: 16px; }
  .footer__social a { display: block; transition: transform .2s ease; }
  .footer__social a:hover, .footer__social a:focus-visible { transform: scale(1.12); outline: none; }
  .footer__social img { display: block; width: 32px; height: 32px; }
  .footer__copy { margin: 32px 0 0; font-size: 13px; line-height: 1.3; }

  /* Faixa fixa (acompanha a rolagem) */
  .footer__bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100; background: #0a3a5f; box-shadow: 0 -4px 16px rgba(0, 0, 0, .25); /* Estado inicial: escondida e transparente */
        opacity: 0;
        visibility: hidden;
        transform: translateY(100%);
        transition: all 0.3s ease-in-out;
    }

    /* Classe ativada pelo JS ao rolar */
    .footer__bar.is-visible {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
  .footer__bar-inner { display: flex; align-items: center; justify-content: center; column-gap: 36px; min-height: 68px; padding: 0 var(--gutter); }
  .footer__bar p { margin: 0; font-size: 18px; line-height: 1.3; letter-spacing: -.01em; color: #fff; }
  .footer__bar a { min-width: 0; width: 210px; height: 44px; }
}

@media (min-width: 768px) {
  .why__tab { width: 480px; }
}

@media (min-width: 768px) {
  .about, .media, .videos, .why, .stats, .services, .benefits, .tech, .adv,
  .invest, .cta, .testi, .journey, .faq, .awards, .footer { overflow: hidden; }
}

/* Seção 2 — mobile: a arte (foto + degradê branco no topo) é o fundo da seção */
@media (max-width: 767.98px) {
  .about {
    background: #fff url("../assets/img/secao2-mobile.webp") center bottom / 100% auto no-repeat;
  }
  .about__img { display: none; }
}

/* Google reCAPTCHA (dentro da coluna da direita, abaixo das opções de capital) */
.lead__recaptcha { display: flex; justify-content: flex-start; margin-top: 10px; min-height: 78px; }
.lead__recaptcha.is-invalid { outline: 2px solid #ff6b6b; outline-offset: 2px; border-radius: 4px; }
.lead__submit:disabled { opacity: .6; cursor: not-allowed; }
@media (max-width: 767.98px) {
  .lead__recaptcha { order: 9; margin-top: 18px; margin-left: -10px; min-width: 304px; }
}
.rc-anchor-logo-portrait {
    margin: 3px !important; 
}
/* Seção 4 — mobile: slide central com vizinhos desfocados nas bordas */
@media (max-width: 767.98px) {
  .videos__inner { padding: 44px 0 36px; }
  .carousel--wide { --step: 292px; --sc: .85; width: 100%; height: 186px; margin: 0 auto; }
  .carousel--wide .vslide { width: 300px; height: 169px; top: 6px; border-radius: 22px; box-shadow: 0 14px 18px -6px rgba(0, 0, 0, .3); }
  .carousel--wide + .carousel__dots { margin-top: 18px; }
  .carousel--wide + .carousel__dots button { background: #b9b2ab; width: 9px; height: 9px; }
  .carousel--wide + .carousel__dots button.is-active { background: #0d4a80; }
  .carousel--wide .vslide__play { width: 64px; height: 44px; margin: -22px 0 0 -32px; border-radius: 12px; }
  .carousel--wide .vslide__play::after { margin: -9px 0 0 -6px; border-left-width: 17px; border-top-width: 9px; border-bottom-width: 9px; }
}

/* Seção 3 — botão virou <button> e matérias extras */
.media__btn { border: 0; font-family: inherit; cursor: pointer; }
.media__item[hidden] { display: none; }
@media (min-width: 768px) {
  .media__list { row-gap: 56px; }
}

/* Seção 3 — animação de abrir/fechar */
.media__list.is-animating {
  overflow: clip;
  overflow-clip-margin: 36px;
  transition: height .52s cubic-bezier(.4, 0, .2, 1);
}
.media__item--extra { transition: opacity .45s ease, transform .52s cubic-bezier(.4, 0, .2, 1); }
.media__item--extra.is-anim-out { opacity: 0; transform: translateY(22px); }
@media (prefers-reduced-motion: reduce) {
  .media__list.is-animating, .media__item--extra { transition: none; }
}

/* Seção 3 — veículos sem logo em imagem (nome em texto) */
.media__item--istoe { color: #c8102e; }
.media__item--exame { color: #1a1a1a; }
.media__item--pegn { color: #0b5c8a; }
.media__item--uol { color: #b8730a; }
.media__item--franchising { color: #1d3f8f; }
.media__wordmark {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1;
  white-space: nowrap;
}
.media__item--exame .media__wordmark, .media__item--uol .media__wordmark, .media__item--pegn .media__wordmark { letter-spacing: .02em; }
@media (max-width: 767.98px) {
  .media__wordmark {
    justify-content: flex-start;
    height: calc(var(--u) * 52);
    font-size: calc(var(--u) * 26);
  }
}
@media (min-width: 768px) {
  .media__wordmark { height: 56px; margin-top: 14px; font-size: 28px; }
  .media__item--franchising .media__wordmark, .media__item--istoe .media__wordmark { font-size: 24px; }
}
