

:root {
  --bg: #0E2A2E;
  --surface: #143840;
  --text: #EAF4F3;
  --muted: #93B0B3;
  --accent: #F0715A;
  --accent2: #4FA6A0;

  --site-bg: #0E2A2E;
  --site-surface: #143840;
  --site-text: #EAF4F3;
  --site-muted: #93B0B3;
  --site-accent: #F0715A;

  --accent-fundo: #d85c46;          
  --linha: rgba(234,244,243,.12);   
  --borda-cartao: rgba(147,176,179,.28);

  --medida: 680px;                  
  --folga: 96px;                    
  --topo-altura: 64px}

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

html { scroll-behavior: smooth; scroll-padding-top: var(--topo-altura)}

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: "Newsreader", Georgia, serif;
  font-weight: 400;
  font-size: clamp(1.02rem, 0.6vw + 0.9rem, 1.18rem);
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden}

img { max-width: 100%; display: block}

h1, h2, h3, h4, h5, h6 {
  font-family: "Outfit", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
  margin: 0 0 .6em}

h1 { font-size: clamp(2.4rem, 7vw, 4.4rem); font-weight: 300}
h2 { font-size: clamp(1.8rem, 4vw, 2.7rem)}
h3 { font-size: clamp(1.3rem, 2.2vw, 1.7rem)}

p { margin: 0 0 1.1em; max-width: 72ch}

a { color: var(--accent); text-decoration: none}
a:hover { text-decoration: underline}

:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px}

.fgl-risco {
  height: 1px;
  width: 100%;
  background: var(--linha);
  border: 0;
  margin: 1.4rem 0}

.fgl-faixa { padding: var(--folga) 0}

.fgl-faixa_interior {
  width: 100%;
  max-width: var(--medida);
  margin: 0 auto;
  padding: 0 24px}

.fgl-seccao_indice {
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  font-size: clamp(2rem, 5vw, 3rem);
  color: var(--accent2);
  line-height: 1;
  display: inline-block;
  padding-bottom: .35rem;
  border-bottom: 1px solid var(--linha);
  margin-bottom: 1.6rem}

.fgl-cifra {
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  font-size: clamp(2.6rem, 8vw, 4.8rem);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--text);
  display: block}

.fgl-cifra--acento { color: var(--accent)}

.fgl-cifra_rotulo {
  display: block;
  margin-top: .6rem;
  padding-top: .5rem;
  border-top: 1px solid var(--linha);
  font-family: "Outfit", sans-serif;
  font-weight: 400;
  font-size: .78rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted)}

.btn-u0o {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: .95rem;
  letter-spacing: .02em;
  line-height: 1;
  padding: .95rem 1.7rem;
  border: 1px solid transparent;
  border-radius: 0;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
  text-decoration: none}
.btn-u0o:hover { text-decoration: none}

.btn-u0o--primary {
  background: var(--accent);
  color: var(--bg);
  border-color: var(--accent)}
.btn-u0o--primary:hover { background: var(--accent-fundo); border-color: var(--accent-fundo)}

.btn-u0o--ghost {
  background: transparent;
  color: var(--text);
  border-color: var(--muted)}
.btn-u0o--ghost:hover { border-color: var(--accent); color: var(--accent)}

.btn-u0o:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px}
.btn-u0o:disabled, .btn-u0o[aria-disabled="true"] { opacity: .5; cursor: not-allowed}

.control-1xx {
  display: block;
  width: 100%;
  min-width: 0;
  font-family: "Newsreader", serif;
  font-size: 1rem;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--borda-cartao);
  border-radius: 0;
  padding: .85rem 1rem;
  line-height: 1.4}
.control-1xx::placeholder { color: var(--muted)}
.control-1xx:focus-visible { outline: 2px solid var(--accent); outline-offset: 0; border-color: var(--accent)}
textarea.control-1xx { min-height: 150px; resize: vertical}

.fgl-rotulo {
  display: block;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: .82rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: .45rem}

.fgl-campo { margin-bottom: 1.3rem}

.block-p2m {
  background: var(--surface);
  border: 1px solid var(--borda-cartao);
  border-radius: 0;
  padding: clamp(1.6rem, 4vw, 2.6rem)}

.chip-sgz {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: .74rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent2);
  border: 1px solid var(--borda-cartao);
  border-radius: 0;
  padding: .35rem .7rem}

.fgl-topo {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--topo-altura);
  z-index: 60;
  display: flex;
  align-items: center;
  background: transparent;
  color: var(--text);
  transition: background .3s ease, border-color .3s ease;
  border-bottom: 1px solid transparent}
.fgl-topo.is-scrolled {
  background: var(--surface);
  border-bottom-color: var(--linha)}

.fgl-topo_interior {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: nowrap}

.fgl-topo_marca {
  display: inline-flex;
  align-items: baseline;
  gap: .55rem;
  min-width: 0;
  text-decoration: none;
  color: inherit}
.fgl-topo_marca:hover { text-decoration: none}
.fgl-topo_marca svg { width: 28px; height: 28px; align-self: center}
.fgl-topo_marca_nome {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 1.15rem;
  letter-spacing: -0.01em;
  white-space: nowrap}

.fgl-topo_nav {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(1rem, 2.5vw, 2rem);
  flex-wrap: wrap}
.fgl-topo_nav a {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: .92rem;
  letter-spacing: .02em;
  color: inherit;
  padding: .3rem 0}
.fgl-topo_nav a:hover { color: var(--accent); text-decoration: none}

.fgl-topo_telefone {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: .92rem;
  color: inherit;
  white-space: nowrap}
.fgl-topo_telefone:hover { color: var(--accent); text-decoration: none}

.fgl-topo_hamburguer {
  display: none;
  width: 44px; height: 44px;
  background: transparent;
  border: 0;
  cursor: pointer;
  color: inherit;
  align-items: center;
  justify-content: center}
.fgl-topo_hamburguer span,
.fgl-topo_hamburguer span::before,
.fgl-topo_hamburguer span::after {
  content: "";
  display: block;
  width: 22px; height: 2px;
  background: currentColor;
  position: relative}
.fgl-topo_hamburguer span::before { position: absolute; top: -7px}
.fgl-topo_hamburguer span::after  { position: absolute; top: 7px}

.fgl-gaveta {
  position: fixed;
  top: 0; right: 0;
  height: 100%;
  width: min(320px, 82vw);
  background: var(--surface);
  border-left: 1px solid var(--linha);
  z-index: 80;
  transform: translateX(100%);
  transition: transform .3s ease;
  padding: calc(var(--topo-altura) + 1.5rem) 1.8rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.2rem}
.fgl-gaveta.is-open { transform: translateX(0)}
.fgl-gaveta a {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.15rem;
  color: var(--text)}
.fgl-gaveta a:hover { color: var(--accent); text-decoration: none}
.fgl-gaveta_fechar {
  position: absolute;
  top: 1rem; right: 1rem;
  width: 40px; height: 40px;
  background: transparent;
  border: 0;
  color: var(--text);
  font-size: 1.6rem;
  cursor: pointer}

.fgl-veu {
  position: fixed;
  inset: 0;
  background: rgba(14,42,46,.65);
  z-index: 70;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s ease}
.fgl-veu.is-open { opacity: 1; pointer-events: auto}

.fgl-capa {
  padding-top: calc(var(--topo-altura) + 72px);
  padding-bottom: var(--folga)}

.fgl-capa--texto .fgl-faixa_interior { max-width: 820px}
.fgl-capa_titulo {
  font-weight: 300;
  font-size: clamp(2.8rem, 9vw, 5.4rem);
  margin-bottom: 1rem}
.fgl-capa_lead {
  color: var(--muted);
  font-size: clamp(1.1rem, 1.5vw, 1.35rem);
  max-width: 60ch}
.fgl-capa_estatisticas {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1.5rem, 5vw, 3.5rem);
  margin-top: 3rem}
.fgl-capa_marco { flex: 1 1 140px; min-width: 0}

.fgl-capa--dividida .fgl-faixa_interior {
  max-width: 1080px;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center}
.fgl-capa_coluna { flex: 1 1 320px; min-width: 0}
.fgl-capa_media {
  flex: 1 1 320px;
  min-width: 0;
  aspect-ratio: 4 / 5;
  border: 1px solid var(--borda-cartao);
  overflow: hidden}
.fgl-capa_media img { width: 100%; height: 100%; object-fit: cover}
.fgl-capa--dividida .fgl-capa_estatisticas { margin-top: 2rem; gap: 2rem}

.fgl-afirmacao .fgl-faixa_interior {
  max-width: 1000px;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: flex-start}
.fgl-afirmacao_frase {
  flex: 1 1 300px;
  min-width: 0;
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  line-height: 1.15}
.fgl-afirmacao_texto { flex: 1 1 300px; min-width: 0; color: var(--muted)}

.fgl-afirmacao--unica .fgl-faixa_interior { max-width: 900px}
.fgl-afirmacao--unica p {
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  font-size: clamp(2rem, 5.5vw, 3.6rem);
  line-height: 1.12;
  color: var(--text);
  max-width: none;
  margin: 0}

.fgl-calculo_total {
  margin-top: 1.4rem;
  padding-top: 1.2rem;
  border-top: 1px solid var(--linha);
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem}
.fgl-calculo_total .fgl-cifra { color: var(--accent)}
.fgl-calculo_total_rotulo {
  font-family: "Outfit", sans-serif;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: .82rem;
  color: var(--muted)}

.fgl-calculo--lado {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1.5rem, 4vw, 2.5rem);
  align-items: stretch}
.fgl-calculo--lado .fgl-calculo_campos { flex: 1 1 300px; min-width: 0}
.fgl-calculo_resultado {
  flex: 1 1 240px;
  min-width: 0;
  background: var(--bg);
  border: 1px solid var(--accent2);
  padding: clamp(1.6rem, 4vw, 2.4rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .6rem}

.fgl-vozes_lista {
  display: flex;
  flex-wrap: wrap;
  gap: 1.4rem}
.fgl-vozes_cartao { flex: 1 1 190px; min-width: 0}
.fgl-vozes_cartao blockquote {
  margin: 0 0 1rem;
  font-style: italic;
  font-size: 1.05rem}
.fgl-vozes_autor {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: .9rem;
  color: var(--accent2)}

.fgl-vozes--grande blockquote {
  margin: 0;
  font-family: "Newsreader", serif;
  font-weight: 300;
  font-style: italic;
  font-size: clamp(1.5rem, 3.5vw, 2.3rem);
  line-height: 1.3}
.fgl-vozes--grande .fgl-vozes_autor { margin-top: 1.5rem; font-size: 1rem}

.fgl-vozes--duplo .fgl-vozes_lista .fgl-vozes_cartao { flex: 1 1 280px}

.fgl-confianca .fgl-faixa_interior {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.8rem}
.fgl-confianca_nota { display: flex; align-items: baseline; gap: .7rem}
.fgl-confianca_nota .fgl-cifra { font-size: clamp(2.2rem, 6vw, 3.4rem)}
.fgl-confianca_estrelas { color: var(--accent); font-size: 1rem; letter-spacing: .1em}
.fgl-confianca_selos { display: flex; flex-wrap: wrap; gap: .6rem}

.fgl-confianca--garantias .fgl-faixa_interior {
  justify-content: flex-start;
  gap: clamp(1.5rem, 4vw, 2.5rem)}
.fgl-confianca_garantia {
  flex: 1 1 220px;
  min-width: 0;
  border-top: 1px solid var(--linha);
  padding-top: 1rem}
.fgl-confianca_garantia h3 { color: var(--accent2)}
.fgl-confianca_garantia p { color: var(--muted); margin: 0}

.fgl-vantagens_item {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1rem, 3vw, 2rem);
  align-items: baseline;
  padding: 1.6rem 0;
  border-bottom: 1px solid var(--linha)}
.fgl-vantagens_item:first-child { border-top: 1px solid var(--linha)}
.fgl-vantagens_item .fgl-cifra {
  flex: 0 0 auto;
  color: var(--accent2);
  font-size: clamp(2rem, 6vw, 3.2rem)}
.fgl-vantagens_corpo { flex: 1 1 260px; min-width: 0}
.fgl-vantagens_corpo p { margin: .3rem 0 0; color: var(--muted)}

.fgl-vantagens--pratos .fgl-vantagens_lista {
  display: flex;
  flex-wrap: wrap;
  gap: 1.4rem}
.fgl-prato_cartao {
  flex: 1 1 260px;
  min-width: 0;
  background: var(--surface);
  border: 1px solid var(--borda-cartao);
  padding: clamp(1.5rem, 3vw, 2rem);
  transition: transform .25s ease, border-color .25s ease}
.fgl-prato_cartao:hover { transform: translateY(-4px); border-color: var(--accent)}
.fgl-prato_cartao-destaque { border-color: var(--accent2)}
.fgl-prato_cartao_preco {
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  color: var(--accent);
  display: block;
  margin-top: 1rem;
  padding-top: .5rem;
  border-top: 1px solid var(--linha)}

.fgl-vantagens--duplo .fgl-vantagens_lista {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 3rem}
.fgl-vantagens--duplo .fgl-vantagens_entrada {
  flex: 1 1 260px;
  min-width: 0;
  border-top: 1px solid var(--linha);
  padding-top: 1.1rem}
.fgl-vantagens--duplo .fgl-vantagens_entrada h3 { font-size: 1.25rem}
.fgl-vantagens--duplo .fgl-vantagens_entrada p { color: var(--muted); margin: .3rem 0 0}

.fgl-apelo--faixa {
  border-top: 1px solid var(--linha);
  border-bottom: 1px solid var(--linha);
  text-align: center}
.fgl-apelo--faixa h2 { margin-inline: auto}
.fgl-apelo_acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin-top: 1.8rem}

.fgl-apelo--cartao .fgl-faixa_interior { text-align: center}
.fgl-apelo--cartao .block-p2m { max-width: 560px; margin: 0 auto}

.fgl-apelo--dividida .fgl-faixa_interior {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(2rem, 5vw, 3.5rem);
  align-items: center}
.fgl-apelo_texto { flex: 1 1 300px; min-width: 0}
.fgl-apelo_contacto { flex: 1 1 240px; min-width: 0}
.fgl-apelo_contacto a { display: block; margin-bottom: .5rem; color: var(--text)}
.fgl-apelo_contacto a:hover { color: var(--accent)}

.fgl-apelo--escolha .fgl-apelo_acoes { gap: 1.4rem}
.fgl-apelo--escolha .fgl-apelo_opcao {
  flex: 1 1 240px;
  min-width: 0;
  text-align: center}

.fgl-paginacapa {
  padding-top: calc(var(--topo-altura) + 80px);
  padding-bottom: var(--folga);
  text-align: center}
.fgl-paginacapa p { margin-inline: auto; color: var(--muted)}

.fgl-contacto .fgl-faixa_interior {
  max-width: 1000px;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: flex-start}
.fgl-contacto_form { flex: 1 1 340px; min-width: 0}
.fgl-contacto_morada { flex: 1 1 260px; min-width: 0}
.fgl-contacto_morada a { display: block; margin-bottom: .6rem; color: var(--text)}
.fgl-contacto_morada a:hover { color: var(--accent)}
.fgl-contacto_morada address { font-style: normal; color: var(--muted); line-height: 1.8}

.fgl-legal { padding-top: calc(var(--topo-altura) + 80px)}
.fgl-legal h1 { margin-bottom: 1.5rem}
.fgl-legal h2 { margin-top: 2.5rem; font-size: 1.5rem}
.fgl-legal p, .fgl-legal li { color: var(--muted)}
.fgl-legal a { color: var(--accent)}

.fgl-rodape {
  background: var(--text);
  color: var(--bg);
  padding: clamp(72px, 14vw, 160px) 0}
.fgl-rodape_interior {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(2rem, 5vw, 4rem)}
.fgl-rodape_coluna { flex: 2 1 320px; min-width: 0}
.fgl-rodape_ligacoes { flex: 1 1 160px; min-width: 0}
.fgl-rodape_legal { flex: 1 1 160px; min-width: 0}

.fgl-rodape_marca {
  display: inline-flex;
  align-items: baseline;
  gap: .55rem;
  color: var(--bg);
  margin-bottom: 1rem}
.fgl-rodape_marca svg { width: 26px; height: 26px; align-self: center; color: var(--accent)}
.fgl-rodape_marca_nome {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  font-size: 1.2rem}
.fgl-rodape_coluna p { color: #4c6163; max-width: 48ch}

.fgl-rodape h4 {
  font-family: "Outfit", sans-serif;
  font-size: .8rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #4c6163;
  margin-bottom: 1rem}
.fgl-rodape a { color: var(--bg); display: block; margin-bottom: .55rem}
.fgl-rodape a:hover { color: var(--accent-fundo)}
.fgl-rodape address { font-style: normal; line-height: 1.8; color: #2b4446}

.fgl-rodape_nota {
  flex: 1 1 100%;
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(14,42,46,.15);
  font-family: "Outfit", sans-serif;
  font-size: .82rem;
  color: #4c6163}

#float-bar-2ec {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 55;
  display: flex;
  flex-direction: column;
  gap: 10px}
#float-bar-2ec a,
#float-bar-2ec button {
  width: 50px; height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--accent);
  color: var(--bg);
  border: 0;
  border-radius: 0;
  cursor: pointer;
  font-size: 1.15rem;
  text-decoration: none;
  transition: background .2s ease}
#float-bar-2ec a:hover,
#float-bar-2ec button:hover { background: var(--accent-fundo)}
#float-bar-2ec .fgl-flutua_escrever { background: var(--accent2); color: var(--bg)}
#float-bar-2ec .fgl-flutua_escrever:hover { background: #3d8580}
#scroll-up-z5y {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--linha);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, background .2s ease}
#scroll-up-z5y.is-visible { opacity: 1; pointer-events: auto}

[data-collapse-item] { border-bottom: 1px solid var(--linha)}
[data-toggler] {
  width: 100%;
  background: transparent;
  border: 0;
  color: var(--text);
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.15rem;
  text-align: left;
  padding: 1.2rem 0;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  gap: 1rem}
[data-toggler]::after { content: "+"; color: var(--accent); font-weight: 300}
[data-collapse-item].is-open [data-toggler]::after { content: "–"}

.fgl-acordeao_corpo {
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease}
[data-collapse-item].is-open .fgl-acordeao_corpo { max-height: 600px}
.fgl-acordeao_corpo p { padding-bottom: 1.2rem; color: var(--muted); margin: 0}

.reel-md3 { padding-bottom: 2.5rem}
.reel-md3 .swiper-slide { height: auto}
.swiper-pagination-bullet { background: var(--muted); opacity: .5}
.swiper-pagination-bullet-active { background: var(--accent); opacity: 1}
.swiper-button-prev, .swiper-button-next { color: var(--accent)}
.swiper-button-prev::after, .swiper-button-next::after { font-size: 1.4rem}

.site-modal,
.overlay-box-5y6 {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(14,42,46,.82);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease}
.site-modal.is-open,
.overlay-box-5y6.is-open { opacity: 1; pointer-events: auto}

.site-modal .fgl-modal_janela,
.overlay-box-5y6 .fgl-modal_janela,
.site-modal__dialog {
  background: var(--surface);
  border: 1px solid var(--borda-cartao);
  border-radius: 0;
  padding: clamp(1.8rem, 5vw, 3rem);
  max-width: 480px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  position: relative}
.fgl-modal_fechar {
  position: absolute;
  top: .8rem; right: .8rem;
  width: 40px; height: 40px;
  background: transparent;
  border: 0;
  color: var(--muted);
  font-size: 1.5rem;
  cursor: pointer}
.fgl-modal_fechar:hover { color: var(--accent)}

@media (max-width: 860px) {
  .fgl-topo_nav { display: none}
  .fgl-topo_telefone { display: none}
  .fgl-topo_hamburguer { display: inline-flex}
  .fgl-topo_interior { justify-content: space-between}
  :root { --folga: 72px}
}

@media (min-width: 861px) {
  .fgl-gaveta, .fgl-veu { display: none}
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto}
}

.ck-pqb-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;transition:.25s;z-index:9998}
.ck-pqb-overlay.is-open{opacity:1;visibility:visible}
.ck-pqb-panel{position:fixed;background:var(--site-surface,#fff);color:var(--site-text,#1a1a1a);
  box-shadow:0 20px 60px rgba(0,0,0,.28);padding:24px;opacity:0;visibility:hidden;transition:.25s;z-index:9999}
.ck-pqb-panel.is-open{opacity:1;visibility:visible}
.ck-pqb-panel h3{margin:0 0 8px;font-size:1.2rem}
.ck-pqb-panel>p{margin:0 0 16px;color:var(--site-muted,#666);font-size:.95rem}
.ck-pqb-cat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid rgba(128,128,128,.2)}
.ck-pqb-cat h4{margin:0 0 2px;font-size:.98rem}
.ck-pqb-cat p{margin:0;color:var(--site-muted,#777);font-size:.85rem}
.ck-pqb-switch{position:relative;flex:0 0 auto;width:44px;height:24px}
.ck-pqb-switch input{opacity:0;width:0;height:0;position:absolute}
.ck-pqb-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:.2s;cursor:pointer}
.ck-pqb-switch span::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.ck-pqb-switch input:checked+span{background:var(--site-accent,#2b7)}
.ck-pqb-switch input:checked+span::before{transform:translateX(20px)}
.ck-pqb-switch input:disabled+span{opacity:.6;cursor:not-allowed}
.ck-pqb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.ck-pqb-actions button{flex:1;min-width:140px;padding:11px 16px;border:none;border-radius:10px;font:inherit;font-weight:600;cursor:pointer}
.ck-pqb-actions #ck-pqb-all{background:var(--site-accent,#2b7);color:#fff}
.ck-pqb-actions #ck-pqb-save{background:transparent;color:var(--site-text,#222);border:1px solid rgba(128,128,128,.4)}
.ck-pqb-links{display:flex;gap:16px;margin-top:14px;font-size:.85rem}
.ck-pqb-links a{color:var(--site-accent,#2b7);text-decoration:underline}
.ck-pqb-trigger{position:fixed;left:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--site-surface,#fff);color:var(--site-accent,#2b7);box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9997;font-size:1.1rem}

.ck-pqb-overlay{background:rgba(0,0,0,.5)}
.ck-pqb-panel{left:50%;bottom:24px;transform:translate(-50%,20px);width:min(560px,calc(100% - 32px));border-radius:16px}
.ck-pqb-panel.is-open{transform:translate(-50%,0)}
@media(max-width:520px){.ck-pqb-actions button{min-width:100%}}
#float-bar-2ec{left:auto !important;right:18px !important}
@media(max-width:520px){#float-bar-2ec{right:12px !important}}

.form-done-7sa{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,10,14,.55);backdrop-filter:blur(2px)}
.form-done-7sa.is-open{display:flex}
.form-done-7sa__box{width:min(420px,100%);background:var(--site-surface,#fff);color:var(--site-text,#15181d);
  border-radius:16px;padding:32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);
  animation:form-done-7sa-in .22s ease-out}
@keyframes form-done-7sa-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.form-done-7sa__mark{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:26px;line-height:1;
  background:var(--site-accent,#2e7d5b);color:#fff}
.form-done-7sa__title{margin:0 0 10px;font-size:1.35rem;line-height:1.25}
.form-done-7sa__text{margin:0 0 24px;line-height:1.6;color:var(--site-muted,#5b6472)}
.form-done-7sa__close{display:inline-block;cursor:pointer;border:0;border-radius:999px;
  padding:12px 30px;font:inherit;font-weight:600;background:var(--site-accent,#2e7d5b);color:#fff}
.form-done-7sa__close:hover{filter:brightness(1.08)}
.form-done-7sa__close:focus-visible{outline:2px solid var(--site-text,#15181d);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.form-done-7sa__box{animation:none}}

*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%}
img,svg,video,iframe,canvas{max-width:100%}
table{max-width:100%}

.simpleParallax{display:block;width:100%;height:100%}
.simpleParallax img{width:100%;height:100%;object-fit:cover}

blockquote, figure { margin-left: 0; margin-right: 0}

figure > blockquote, figure > figcaption { margin-left: 0; margin-right: 0}

html.no-aos [data-aos]{opacity:1 !important;transform:none !important}

@media(prefers-reduced-motion:reduce){
  [data-aos]{opacity:1 !important;transform:none !important;transition:none !important}
}

.legal-doc{max-width:72ch;margin:0 auto;padding:64px 20px;line-height:1.7}
.legal-doc h1{margin:0 0 .6em}
.legal-doc h2{margin:1.8em 0 .5em}
.legal-doc h3{margin:1.4em 0 .4em}
.legal-doc p,.legal-doc li{margin:0 0 .8em}
.legal-doc ul,.legal-doc ol{padding-left:1.4em;margin:0 0 1em}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 1.2em}
.legal-doc th,.legal-doc td{border:1px solid currentColor;padding:.5em;text-align:left}

@media (max-width: 720px) {
  body { overflow-x: hidden}
  h1, h2, h3, p, li, td { overflow-wrap: break-word}
  
  input, select, textarea { max-width: 100%; min-width: 0}
  
  img, svg, video, iframe, table { max-width: 100%}
}

#drawer-ot6{position:fixed;top:0;right:0;bottom:0;width:min(84vw,360px);padding:72px 28px 28px;background:var(--site-surface,#fff);color:var(--site-text,#111);box-shadow:-12px 0 40px rgba(0,0,0,.18);transform:translateX(100%);visibility:hidden;transition:transform .28s ease,visibility .28s;z-index:9999;overflow-y:auto}
#drawer-ot6.is-open{transform:none;visibility:visible}
#drawer-ot6 a{display:block;padding:.6em 0;font-size:1.1rem;color:inherit;text-decoration:none}
#veil-m1d{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:.25s;z-index:9998}
#veil-m1d.is-open{opacity:1;visibility:visible}
#burger-406{appearance:none;-webkit-appearance:none;background:none;border:0;padding:.4em;color:inherit;font:inherit;cursor:pointer;line-height:1}
#drawer-close-0an{appearance:none;-webkit-appearance:none;background:none;border:0;padding:.4em;color:inherit;font:inherit;cursor:pointer;line-height:1}

@media (max-width: 720px) {
  
.btn-u0o,
.chip-sgz,
.fgl-topo,
.fgl-topo_marca,
.fgl-topo_telefone,
.fgl-gaveta,
.fgl-calculo_resultado,
.fgl-confianca_nota,
.fgl-rodape_marca,
#float-bar-2ec,
#float-bar-2ec a, #float-bar-2ec button,
[data-toggler],
.site-modal, .overlay-box-5y6,
.ck-pqb-cat,
.ck-pqb-links,
.form-done-7sa.is-open,
.form-done-7sa__mark { flex-wrap: wrap}
  
.btn-u0o > *,
.chip-sgz > *,
.fgl-topo > *,
.fgl-topo_marca > *,
.fgl-topo_telefone > *,
.fgl-gaveta > *,
.fgl-calculo_resultado > *,
.fgl-confianca_nota > *,
.fgl-rodape_marca > *,
#float-bar-2ec > *,
#float-bar-2ec a, #float-bar-2ec button > *,
[data-toggler] > *,
.site-modal, .overlay-box-5y6 > *,
.ck-pqb-cat > *,
.ck-pqb-links > *,
.form-done-7sa.is-open > *,
.form-done-7sa__mark > * { min-width: 0}
}

.ck-pqb-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;transition:.25s;z-index:9998;}
.ck-pqb-overlay.is-open{opacity:1;visibility:visible;}
.ck-pqb-panel{position:fixed;background:var(--site-surface,#fff);color:var(--site-text,#1a1a1a);
  box-shadow:0 20px 60px rgba(0,0,0,.28);padding:24px;opacity:0;visibility:hidden;transition:.25s;z-index:9999;}
.ck-pqb-panel.is-open{opacity:1;visibility:visible;}
.ck-pqb-panel h3{margin:0 0 8px;font-size:1.2rem;}
.ck-pqb-panel>p{margin:0 0 16px;color:var(--site-muted,#666);font-size:.95rem;}
.ck-pqb-cat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid rgba(128,128,128,.2);}
.ck-pqb-cat h4{margin:0 0 2px;font-size:.98rem;}
.ck-pqb-cat p{margin:0;color:var(--site-muted,#777);font-size:.85rem;}
.ck-pqb-switch{position:relative;flex:0 0 auto;width:44px;height:24px;}
.ck-pqb-switch input{opacity:0;width:0;height:0;position:absolute;}
.ck-pqb-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:.2s;cursor:pointer;}
.ck-pqb-switch span::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;}
.ck-pqb-switch input:checked+span{background:var(--site-accent,#2b7);}
.ck-pqb-switch input:checked+span::before{transform:translateX(20px);}
.ck-pqb-switch input:disabled+span{opacity:.6;cursor:not-allowed;}
.ck-pqb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.ck-pqb-actions button{flex:1;min-width:140px;padding:11px 16px;border:none;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;}
.ck-pqb-actions #ck-pqb-all{background:var(--site-accent,#2b7);color:#fff;}
.ck-pqb-actions #ck-pqb-save{background:transparent;color:var(--site-text,#222);border:1px solid rgba(128,128,128,.4);}
.ck-pqb-links{display:flex;gap:16px;margin-top:14px;font-size:.85rem;}
.ck-pqb-links a{color:var(--site-accent,#2b7);text-decoration:underline;}
.ck-pqb-trigger{position:fixed;left:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--site-surface,#fff);color:var(--site-accent,#2b7);box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9997;font-size:1.1rem;}

.ck-pqb-overlay{background:rgba(0,0,0,.5);}
.ck-pqb-panel{left:50%;bottom:24px;transform:translate(-50%,20px);width:min(560px,calc(100% - 32px));border-radius:16px;}
.ck-pqb-panel.is-open{transform:translate(-50%,0);}
@media(max-width:520px){.ck-pqb-actions button{min-width:100%;}}
#float-bar-2ec{left:auto !important;right:18px !important;}
@media(max-width:520px){#float-bar-2ec{right:12px !important;}}

.form-done-7sa{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,10,14,.55);backdrop-filter:blur(2px);}
.form-done-7sa.is-open{display:flex;}
.form-done-7sa__box{width:min(420px,100%);background:var(--site-surface,#fff);color:var(--site-text,#15181d);
  border-radius:16px;padding:32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);
  animation:form-done-7sa-in .22s ease-out;}
@keyframes form-done-7sa-in{from{opacity:0;transform:translateY(12px) scale(.97);}to{opacity:1;transform:none;}}
.form-done-7sa__mark{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:26px;line-height:1;
  background:var(--site-accent,#2e7d5b);color:#fff;}
.form-done-7sa__title{margin:0 0 10px;font-size:1.35rem;line-height:1.25;}
.form-done-7sa__text{margin:0 0 24px;line-height:1.6;color:var(--site-muted,#5b6472);}
.form-done-7sa__close{display:inline-block;cursor:pointer;border:0;border-radius:999px;
  padding:12px 30px;font:inherit;font-weight:600;background:var(--site-accent,#2e7d5b);color:#fff;}
.form-done-7sa__close:hover{filter:brightness(1.08);}
.form-done-7sa__close:focus-visible{outline:2px solid var(--site-text,#15181d);outline-offset:3px;}
@media(prefers-reduced-motion:reduce){.form-done-7sa__box{animation:none;}}

*,*::before,*::after{box-sizing:border-box;}
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%;}
img,svg,video,iframe,canvas{max-width:100%;}
table{max-width:100%;}

.simpleParallax{display:block;width:100%;height:100%;}
.simpleParallax img{width:100%;height:100%;object-fit:cover;}

blockquote, figure { margin-left: 0; margin-right: 0; }

figure > blockquote, figure > figcaption { margin-left: 0; margin-right: 0; }

html.no-aos [data-aos]{opacity:1 !important;transform:none !important;}

@media(prefers-reduced-motion:reduce){
  [data-aos]{opacity:1 !important;transform:none !important;transition:none !important;}
}

.legal-doc{max-width:72ch;margin:0 auto;padding:64px 20px;line-height:1.7;}
.legal-doc h1{margin:0 0 .6em;}
.legal-doc h2{margin:1.8em 0 .5em;}
.legal-doc h3{margin:1.4em 0 .4em;}
.legal-doc p,.legal-doc li{margin:0 0 .8em;}
.legal-doc ul,.legal-doc ol{padding-left:1.4em;margin:0 0 1em;}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 1.2em;}
.legal-doc th,.legal-doc td{border:1px solid currentColor;padding:.5em;text-align:left;}

@media (max-width: 720px) {
  body { overflow-x: hidden; }
  h1, h2, h3, p, li, td { overflow-wrap: break-word; }
  
  input, select, textarea { max-width: 100%; min-width: 0; }
  
  img, svg, video, iframe, table { max-width: 100%; }
}

.site-modal__close {
  position: absolute;
  top: .8rem;
  right: .8rem;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  padding: 0;
  color: var(--muted);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}
.site-modal__close:hover { color: var(--accent); }
