

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

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

html { overflow-x: hidden; }

a, button { -webkit-tap-highlight-color: transparent; }

body {
  background: var(--noite);
  color: var(--creme);
  font-family: var(--f-body);
  font-size: var(--t-body);
  line-height: var(--lh-body);
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

h1, h2, h3, h4 { font-family: var(--f-display); font-weight: 600; line-height: var(--lh-head); }
img, svg, video { display: block; max-width: 100%; }
a { color: inherit; }

.wrap { max-width: var(--largura); margin-inline: auto; padding-inline: var(--gutter); }

.sr {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

.pular {
  position: absolute; left: var(--gutter); top: -100px;
  background: var(--coral); color: var(--noite); font-weight: 700;
  padding: 12px 20px; border-radius: var(--r-md); z-index: calc(var(--z-topo) + 10);
  transition: top var(--t-rapido) var(--ease-suave);
}
.pular:focus { top: 16px; }

.topo {
  position: fixed; inset-inline: 0; top: 0; z-index: var(--z-topo);
  
  padding-block: clamp(1rem, .6rem + 1.4vw, 1.75rem);
  padding-inline: 26px;
  transition: padding var(--t-medio) var(--ease-suave);
  pointer-events: none;               
}
.topo > * { pointer-events: auto; }

.topo-inner {
  max-width: var(--largura);
  margin-inline: auto;
  
  
  position: relative;
  
  padding: 12px;
  display: flex; align-items: center; justify-content: space-between;
  gap: clamp(1rem, .5rem + 1.5vw, 2rem);
  
  border-radius: 38px;
  transition: max-width var(--t-lento) var(--ease-suave);
}

.topo-inner::before {
  content: '';
  
  position: absolute;
  top: 0; bottom: 0; left: -26px; right: -26px;
  border: 1px solid transparent;
  border-radius: 38px;   
  opacity: 0;
  transition: opacity var(--t-medio) var(--ease-suave);
  pointer-events: none;
  z-index: -1;
}

.topo.encolhido .topo-inner::before {
  opacity: 1;
  background: rgba(11, 29, 65, .94);
  border-color: rgba(36, 64, 110, .9);
  
  box-shadow: 0 6px 22px rgba(4, 9, 20, .30);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
          backdrop-filter: blur(16px) saturate(140%);
}

.topo.encolhido .topo-inner { max-width: 980px; }

.marca { display: flex; align-items: center; gap: 10px; text-decoration: none; flex-shrink: 0; }
.marca img {
  height: clamp(38px, 30px + 2vw, 54px); width: auto;
  transition: height var(--t-medio) var(--ease-suave);
}
.topo.encolhido .marca img { height: clamp(34px, 28px + 1.4vw, 44px); }

.marca .so-nome { display: none; }
@media (max-width: 860px) {
  .marca .completo { display: none; }
  .marca .so-nome  { display: block; width: auto; }

  
  .marca .so-nome                 { height: 26px; }
  .topo.encolhido .marca .so-nome { height: 20px; }
  .topo.menu-aberto .marca .so-nome { height: 26px; }
}
@media (max-width: 380px) {
  .marca .so-nome                 { height: 23px; }
  .topo.encolhido .marca .so-nome { height: 18px; }
  .topo.menu-aberto .marca .so-nome { height: 23px; }
}

.hamburguer {
  display: none;
  width: 48px; height: 48px; padding: 0;
  
  background: rgba(232, 115, 74, .12);
  border: 1px solid rgba(232, 115, 74, .55);
  border-radius: var(--r-full);
  cursor: pointer; position: relative; flex-shrink: 0;
  transition: border-color var(--t-rapido) var(--ease-suave),
              background var(--t-rapido) var(--ease-suave);
}

.hamburguer svg {
  width: 24px; height: 24px; margin: auto; color: var(--coral-lt);
  transition: transform var(--t-medio) var(--ease-suave);
}
.hamburguer svg line {
  transform-origin: 12px 12px;
  transition: transform var(--t-medio) var(--ease-suave);
}

.hamburguer[aria-expanded="true"] {
  background: transparent;
  border-color: rgba(232, 115, 74, .3);
}
.hamburguer[aria-expanded="true"] svg { transform: scale(.86); }
.hamburguer[aria-expanded="true"] .l1 { transform: translateY(3px)  rotate(45deg); }
.hamburguer[aria-expanded="true"] .l2 { transform: translateY(-3px) rotate(-45deg); }
.hamburguer:focus-visible { outline: 2px solid var(--coral); outline-offset: 3px; }

.menu-mobile {
  position: fixed; inset: 0; z-index: calc(var(--z-topo) - 1);
  background: var(--noite-esc);
  
  display: flex; flex-direction: column; justify-content: flex-start;
  padding: 118px var(--gutter) var(--e-6);
  opacity: 0; visibility: hidden;
  transition: opacity var(--t-medio) var(--ease-suave), visibility var(--t-medio);
}

.menu-mobile[hidden] { display: none; }
.menu-mobile.aberto  { display: flex; opacity: 1; visibility: visible; }

.menu-mobile nav { display: flex; flex-direction: column; }
.menu-mobile nav a {
  display: flex; align-items: center;
  
  font-family: var(--f-display); font-size: clamp(1.125rem, 1rem + .8vw, 1.375rem);
  font-weight: 600; color: var(--creme); text-decoration: none;
  padding-block: clamp(.875rem, .7rem + .6vw, 1.125rem);
  border-bottom: 1px solid var(--borda);
  opacity: 0; transform: translateY(14px);
  transition: color var(--t-rapido) var(--ease-suave);
  
  -webkit-tap-highlight-color: transparent;
}
.menu-mobile.aberto nav a { animation: entra-item .5s var(--ease-suave) forwards; }
.menu-mobile.aberto nav a:nth-child(1) { animation-delay: .06s; }
.menu-mobile.aberto nav a:nth-child(2) { animation-delay: .12s; }
.menu-mobile.aberto nav a:nth-child(3) { animation-delay: .18s; }
.menu-mobile.aberto nav a:nth-child(4) { animation-delay: .24s; }
@keyframes entra-item { to { opacity: 1; transform: none; } }

.menu-mobile nav a:active { color: var(--coral-lt); }

.menu-zap {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  margin-top: var(--e-5); min-height: 54px;
  background: var(--grad-btn); color: #fff;
  font-weight: 700; text-decoration: none; border-radius: var(--r-full);
  opacity: 0;
}
.menu-mobile.aberto .menu-zap { animation: entra-item .5s var(--ease-suave) .3s forwards; }
.menu-zap svg { width: 20px; height: 20px; }

.nav { display: flex; align-items: center; gap: clamp(1rem, .5rem + 1.6vw, 2.25rem); }
@media (max-width: 860px) { .nav { display: none; } }

.nav a {
  position: relative; text-decoration: none;
  
  font-size: var(--t-small); font-weight: 400; color: #BCC6D6;
  padding-block: 6px;
  transition: color var(--t-rapido) var(--ease-suave);
  white-space: nowrap;
}
.nav a::after {
  content: ''; position: absolute; left: 50%; bottom: 0;
  width: 0; height: 1px; background: var(--coral);
  transform: translateX(-50%);
  transition: width var(--t-medio) var(--ease-suave);
}
.nav a:hover { color: var(--coral-lt); }
.nav a:hover::after { width: 100%; }
.nav a:focus-visible { outline: 2px solid var(--coral); outline-offset: 4px; border-radius: 4px; }

.btn-zap {
  position: relative; overflow: hidden;
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  
  height: 52px; padding: 0 clamp(1.125rem, .9rem + .7vw, 1.625rem);
  
  background: var(--grad-btn); color: #fff;
  font-family: var(--f-body); font-size: var(--t-small); font-weight: 700;
  border: 0;
  
  border-radius: 26px;
  text-decoration: none; cursor: pointer;
  flex-shrink: 0;
  
  transition: transform var(--t-rapido) var(--ease-suave),
              background var(--t-rapido) linear,
              box-shadow var(--t-medio) var(--ease-suave);
  will-change: transform;
}

.btn-zap:hover { background: var(--grad-btn-hover); }
.btn-zap:focus-visible { outline: 2px solid var(--creme); outline-offset: 3px; }
.btn-zap svg { width: 19px; height: 19px; flex-shrink: 0; }
.btn-zap .rotulo-zap { white-space: nowrap; }

@media (max-width: 440px) {
  .btn-zap .rotulo-zap { display: none; }
  .btn-zap { width: 52px; padding: 0; }
}

.btn-zap::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(105deg, transparent 38%, rgba(255,255,255,.42) 50%, transparent 62%);
  transform: translateX(-120%);
}
.btn-zap:hover::before { animation: brilho 900ms var(--ease-suave); }
@keyframes brilho { to { transform: translateX(120%); } }

.progresso {
  position: fixed; inset-inline: 0; top: 0; height: 2px; z-index: calc(var(--z-topo) + 1);
  background: linear-gradient(90deg, var(--coral), var(--areia));
  transform: scaleX(0); transform-origin: 0 50%;
  opacity: 0; transition: opacity var(--t-medio) var(--ease-suave);
}
.topo.encolhido ~ .progresso { opacity: 1; }

html {
  scrollbar-width: thin;
  scrollbar-color: #3F5C8C transparent;
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  
  background: #3F5C8C;
  border-radius: var(--r-full);
  
  border: 3px solid transparent;
  background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover {
  background: #4A6699;
  background-clip: content-box;
}

.hero {
  position: relative;
  
  min-height: 100svh;
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
}

.hero-palco { position: absolute; inset: 0; z-index: 0; background: var(--noite-esc); }

.hero-video {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  
  object-position: 70% center;
  opacity: 0;
  transition: opacity 600ms linear;
}
.hero-video.is-ativo { opacity: 1; }

img.hero-poster-mobile {
  display: none !important;
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}

img.recebe-print { display: none !important; }

.hero-mob-acoes { display: none; }

.hero-veu {
  position: absolute; inset: 0; z-index: 1;
  pointer-events: none;
  background: linear-gradient(100deg,
    rgba(7,19,40,.72) 0%,
    rgba(7,19,40,.55) 24%,
    rgba(7,19,40,.22) 44%,
    rgba(7,19,40,0)   62%);
}

.hero-conteudo {
  width: 100%;
  max-width: var(--largura);
  margin-inline: auto;
  
  padding-inline: 8px;
  
  padding-block: clamp(9rem, 6rem + 9svh, 14rem) var(--e-6);
  position: relative;
  z-index: 2;   
}

@media (max-width: 1199px) {
  .hero-conteudo { padding-inline: 34px; }
}

.hero-conteudo p { max-width: 46ch; }

.pronto [data-entra] {
  opacity: 0;
  transform: translateX(-28px);
}

@media (prefers-reduced-motion: reduce) {
  .pronto [data-entra] { opacity: 0; transform: none; }
}

.eyebrow {
  font-size: var(--t-eyebrow);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--areia);
  font-weight: 500;
  margin-bottom: var(--e-3);
}

.hero-titulo {
  
  font-size: clamp(1.875rem, 1.1rem + 3.4vw, 4rem);
  
  line-height: 1.18;
  letter-spacing: -.02em;
  
  max-width: 17ch;
  text-wrap: balance;
  margin-bottom: var(--e-4);
}

.hero-titulo em {
  font-style: normal;
  color: var(--areia);
}

.hero-lead {
  font-size: var(--t-lead);
  color: var(--creme);
  text-wrap: pretty;
}

.hero-lead-2 { color: var(--cinza-lt); margin-top: var(--e-2); }

.hero-botoes {
  display: flex; flex-wrap: wrap; gap: var(--e-2);
  margin-top: var(--e-5);
}

.btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 16px 30px;
  border-radius: var(--r-full);
  font-family: var(--f-body);
  font-size: var(--t-body);
  font-weight: 500;
  text-decoration: none;
  border: 1px solid transparent;
  transition: transform var(--t-rapido) var(--ease-suave),
              background var(--t-rapido) linear,
              border-color var(--t-rapido) linear;
}
.btn:hover  { transform: translateY(-2px); }
.btn:active { transform: translateY(0); }

.btn-primario {
  background: var(--grad-btn);
  color: #fff;
  font-weight: 700;
  box-shadow: var(--sombra-md);
}
.btn-primario:hover { background: var(--grad-btn-hover); }

.btn-fantasma {
  border-color: rgba(245,241,234,.30);
  color: var(--creme);
  
  font-weight: 700;
  backdrop-filter: blur(6px);
  background: rgba(245,241,234,.06);
}
.btn-fantasma:hover { border-color: rgba(245,241,234,.55); background: rgba(245,241,234,.12); }

.hero-conteudo .hero-apoio {
  
  margin-top: var(--e-2);
  font-size: var(--t-small);
  color: var(--cinza-lt);
  max-width: none;
}

.hero-rolar {
  position: absolute; left: 50%; bottom: 24px;
  translate: -50% 0;
  width: 26px; height: 42px;
  border: 1px solid rgba(245,241,234,.30);
  border-radius: var(--r-full);
  display: grid; justify-items: center;
  padding-top: 8px;
}
.hero-rolar span {
  width: 3px; height: 7px; border-radius: 2px;
  background: var(--areia);
  animation: rolar 1.9s var(--ease-suave) infinite;
}
@keyframes rolar {
  0%       { opacity: 0; transform: translateY(0); }
  35%      { opacity: 1; }
  70%,100% { opacity: 0; transform: translateY(13px); }
}

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

html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-stopped { overflow: hidden; }

.faixa {
  position: relative;
  overflow: hidden;
  background: var(--noite-esc);
  border-block: 1px solid var(--borda);
  
  padding-block: clamp(.75rem, .6rem + .5vw, 1.0625rem);
  
  margin-top: -1px;

  
  
  margin-bottom: max(0px, calc(var(--secao-y-interno) - clamp(2rem, 1rem + 5vw, 7rem)));
}

.faixa-trilho {
  display: flex;
  width: max-content;
  animation: correr 46s linear infinite;
}

.faixa:hover .faixa-trilho { animation-play-state: paused; }

.faixa-lista {
  display: flex;
  align-items: center;
  gap: clamp(1.75rem, 1.4rem + 1.6vw, 3rem);
  margin: 0;
  padding: 0 clamp(.875rem, .7rem + .8vw, 1.5rem) 0 0;
  list-style: none;
}

.faixa-lista li {
  display: flex;
  align-items: center;
  gap: clamp(1.75rem, 1.4rem + 1.6vw, 3rem);
  white-space: nowrap;
  font-family: var(--f-body);
  
  font-size: clamp(.875rem, .84rem + .18vw, 1rem);
  font-weight: 500;
  letter-spacing: .01em;
  line-height: 1.2;
  color: var(--creme);
}

.faixa-lista li::after {
  content: "";
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--coral);
  flex-shrink: 0;
}

@keyframes correr {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

.faixa::before,
.faixa::after {
  content: "";
  position: absolute; top: 0; bottom: 0;
  width: clamp(40px, 8vw, 120px);
  z-index: 2;
  pointer-events: none;
}
.faixa::before { left: 0;  background: linear-gradient(to right, var(--noite-esc), transparent); }
.faixa::after  { right: 0; background: linear-gradient(to left,  var(--noite-esc), transparent); }

@media (prefers-reduced-motion: reduce) {
  .faixa-trilho { animation: none; }
  .faixa { overflow-x: auto; }
}

.dor {
  position: relative;
  background: var(--noite);
  
  
  padding-top: clamp(2rem, 1rem + 5vw, 7rem);
  
  padding-bottom: clamp(2rem, 1.5rem + 2vw, 3.5rem);

  
  margin-bottom: max(0px, calc(var(--secao-y-interno) - clamp(2rem, 1.5rem + 2vw, 3.5rem)));
}

.dor-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2.5rem, 1.5rem + 4vw, 5rem);
  
  align-items: start;
}

.dor-titulo {
  font-size: var(--t-h2);
  
  line-height: 1.3;
  letter-spacing: -.015em;
  
  max-width: 28ch;
  text-wrap: balance;
  margin-bottom: var(--e-5);
}

.dor-titulo em {
  font-style: normal;
  color: var(--areia);
}

.dor-corpo {
  
  font-size: var(--t-body);
  
  line-height: 1.8;
  color: var(--cinza);
  max-width: 46ch;
}
.dor-corpo + .dor-corpo { margin-top: var(--e-4); }

.dor-fecho {
  max-width: var(--largura);
  
  margin: clamp(3.5rem, 2.5rem + 2.5vw, 5rem) auto 0;
  padding-inline: 34px;
}

.dor-fecho-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--e-3) var(--e-5);
  
  padding: clamp(1.125rem, .9rem + 1vw, 1.75rem) clamp(1.5rem, 1rem + 2.5vw, 3rem);
  border: 1px solid var(--borda);
  border-radius: var(--r-lg);
  
  background: linear-gradient(115deg,
    rgba(22, 48, 92, .60) 0%,
    rgba(22, 48, 92, .30) 45%,
    rgba(11, 29, 65, .18) 100%);
}

.dor-fecho-txt { flex: 1; min-width: 0; }

.dor-fecho-titulo {
  font-family: var(--f-display);
  font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem);
  line-height: 1.3;
  color: var(--creme);
  
  text-wrap: pretty;
}
.dor-fecho-titulo em {
  font-style: normal;
  color: var(--areia);
}

.dor-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 20px;
  border-radius: var(--r-full);
  background: var(--noite-esc);
  border: 1px solid var(--borda);
  font-size: var(--t-body);
  color: var(--cinza);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  flex-shrink: 0;
}
.dor-link svg { width: 17px; height: 17px; color: var(--areia); flex-shrink: 0; }
.dor-link strong { color: var(--creme); font-weight: 500; }

.dor-fecho-nota {
  margin-top: 6px;
  font-size: var(--t-small);
  color: var(--cinza);
}

.dor-msgs {
  display: flex;
  flex-direction: column;
  align-items: start;
  
  
  gap: 18px;
  
  
  max-width: 34rem;
  
  width: 100%;
}

.msg {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  gap: 10px;
  background: var(--noite-md);
  border: 1px solid var(--borda);
  
  border-radius: 12px 12px 12px 4px;
  padding: 9px 14px;
  font-size: var(--t-small);
  line-height: 1.35;
  color: var(--creme);
  box-shadow: var(--sombra-sm);
  
  white-space: nowrap;
}
.pronto .msg { opacity: 0; }

.dor-msgs .msg:nth-child(even) {
  align-self: end;
  
  border-radius: 12px 12px 4px 12px;
}

.msg time {
  flex-shrink: 0;
  font-size: 11px;
  color: var(--coral-lt);
  font-variant-numeric: tabular-nums;
  letter-spacing: .04em;
}

@media (prefers-reduced-motion: reduce) {
  .pronto .msg { opacity: 1; }
}

.mov {
  position: relative;
  isolation: isolate;
  background: var(--claro);
  
  padding-block: var(--secao-y-interno);
  overflow: hidden;
}

.mov-foto {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%; height: 100%;
  object-fit: cover;
  
  object-position: 72% center;
}

.mov-veu {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}

.mov-foto + .mov-veu {
  background:
    linear-gradient(100deg,
      rgba(7, 19, 40, .96) 0%,
      rgba(7, 19, 40, .92) 34%,
      rgba(7, 19, 40, .62) 62%,
      rgba(7, 19, 40, .48) 100%),
    
    linear-gradient(to bottom,
      rgba(7, 19, 40, .55) 0%,
      rgba(7, 19, 40, .15) 40%,
      rgba(7, 19, 40, .55) 100%);
}

.mov::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    
    radial-gradient(70% 58% at 80% 42%,
      rgba(227, 201, 168, .34) 0%,
      rgba(227, 201, 168, .12) 44%,
      transparent 76%),
    
    radial-gradient(80% 70% at 10% 66%,
      rgba(203, 211, 222, .30) 0%,
      transparent 72%);
}

.mov-veu::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  
  opacity: .28;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='r'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23r)' opacity='.055'/%3E%3C/svg%3E");
  
  mix-blend-mode: multiply;
}

.mov-inner {
  max-width: var(--largura);
  margin-inline: auto;
  
  padding-inline: 34px;
  display: grid;
  
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(2.5rem, 1.5rem + 4vw, 5.5rem);
  align-items: center;
}

.mov-titulo {
  font-size: var(--t-h2);
  
  line-height: 1.3;
  letter-spacing: -.015em;
  max-width: 16ch;
  text-wrap: balance;
  margin-bottom: var(--e-4);
  color: var(--texto-claro-fundo);   
}

.mov-titulo em {
  font-style: normal;
  color: var(--coral-esc);
}

.mov-corpo {
  font-size: var(--t-body);
  line-height: 1.8;
  color: var(--cinza-claro-fundo);   
  max-width: 44ch;
}
.mov-corpo + .mov-corpo { margin-top: var(--e-3); }

.mov-fecho {
  margin-top: var(--e-4);
  font-family: var(--f-display);
  font-size: var(--t-h3);
  line-height: 1.35;
  
  color: var(--coral-esc);
  max-width: 22ch;
  text-wrap: pretty;
}

.mov-celular {
  justify-self: center;
  position: relative;
  
  width: var(--cel-w);
  
  aspect-ratio: 9 / 17.1;
  border-radius: var(--cel-raio);
  
  border: var(--cel-aro) solid #060D1A;
  background: #060D1A;
  
  box-shadow:
    0 2px 6px rgba(11, 29, 65, .12),
    0 18px 40px rgba(11, 29, 65, .16),
    0 42px 80px rgba(11, 29, 65, .13);
  overflow: hidden;
}

.mov-celular video,
.mov-celular img {
  width: 100%; height: 100%;
  object-fit: cover;
  
  border-radius: var(--cel-raio-interno);
  display: block;
}

.mov-celular::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: var(--cel-raio-interno);
  background: linear-gradient(122deg,
    rgba(255, 255, 255, .10) 0%,
    rgba(255, 255, 255, .03) 26%,
    transparent 52%);
  pointer-events: none;
}

.recebe {
  position: relative;
  background: var(--noite);
  
  padding-block: clamp(1.25rem, 1rem + 1vw, 2rem);
  
  margin-block: max(0px, calc(var(--secao-y-interno) - clamp(1.25rem, 1rem + 1vw, 2rem)));
  overflow: hidden;
}

.recebe-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
}

.recebe-lead {
  max-width: 46ch;
}

.recebe-topo {
  margin-bottom: clamp(2rem, 1.4rem + 1.8vw, 3.25rem);
}

.recebe-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 500;
  
  color: var(--coral-lt);
  margin-bottom: var(--e-2);
}

.recebe-titulo {
  
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  
  max-width: 16ch;
  text-wrap: balance;
}

.recebe-titulo em {
  font-style: normal;
  color: var(--areia);
}

.recebe-lead {
  margin-top: var(--e-3);
  font-size: var(--t-body);
  line-height: 1.7;
  color: var(--cinza);
}

.recebe-palco {
  display: grid;
  
  grid-template-columns: var(--cel-w) minmax(0, 1fr);
  
  gap: clamp(3.5rem, 1.5rem + 8vw, 10rem);
  align-items: center;
}

.recebe-celular {
  position: relative;
  justify-self: center;
  
  width: 100%;
  
  aspect-ratio: 720 / 1324;
  border-radius: var(--cel-raio);
  border: var(--cel-aro) solid #060D1A;
  background: #060D1A;
  box-shadow:
    0 0 0 1px rgba(203, 211, 222, .14),
    var(--sombra-lg);
  overflow: hidden;
}

.recebe-tela {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  border-radius: var(--cel-raio-interno);
  opacity: 0;
  transition: opacity var(--t-medio) var(--ease-suave);
}
.recebe-tela.ativa { opacity: 1; }

.recebe-celular::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 27px;
  background: linear-gradient(122deg,
    rgba(255, 255, 255, .10) 0%,
    rgba(255, 255, 255, .03) 26%,
    transparent 52%);
  pointer-events: none;
  z-index: 2;
}

.recebe-blocos {
  display: grid;
  align-items: center;
  
  min-height: 11rem;
}

.recebe-bloco {
  grid-area: 1 / 1;
  
  border-left: 2px solid var(--coral);
  padding-left: var(--e-4);
  
  opacity: 0;
  transform: translateY(14px);
  pointer-events: none;
  transition: opacity var(--t-medio) var(--ease-suave),
              transform var(--t-medio) var(--ease-suave);
}
.recebe-bloco.ativo {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

.recebe-bloco h3 {
  font-size: var(--t-h3);
  line-height: 1.3;
  margin-bottom: var(--e-2);
  
  color: var(--areia);
}

.recebe-bloco p {
  font-size: var(--t-lead);
  line-height: 1.7;
  color: var(--cinza);
  
  max-width: 52ch;
}

.recebe-lado {
  display: flex;
  flex-direction: column;
  justify-content: center;
  
}

.recebe-passos {
  display: flex;
  gap: 8px;
  margin-top: var(--e-5);
  
  margin-left: calc(var(--e-4) + 2px);
}

.recebe-lado:not(:has(.pronto)) .recebe-passos { display: none; }
.recebe-passos span {
  width: 28px; height: 3px;
  border-radius: 2px;
  background: var(--borda);
  transition: background var(--t-medio) var(--ease-suave);
}

.recebe-passos span.ativo { background: var(--coral); }

.recebe-blocos:not(.pronto) {
  display: flex;
  flex-direction: column;
  gap: var(--e-5);
  min-height: 0;
}
.recebe-blocos:not(.pronto) .recebe-bloco {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

@media (prefers-reduced-motion: reduce) {
  .recebe-tela { transition: none; }
}

.fixo {
  position: relative;
  background: var(--claro);
  
  padding-block: var(--secao-y-interno);
  overflow: hidden;
}

.fixo-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
  display: grid;
  
  
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: clamp(2rem, 1rem + 3vw, 3.5rem);
  
  align-items: start;
}

.fixo-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 500;
  
  color: var(--coral-esc);
  margin-bottom: var(--e-2);
}

.fixo-titulo {
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  max-width: 16ch;
  text-wrap: balance;
  color: var(--texto-claro-fundo);
  margin-bottom: var(--e-4);
}
.fixo-titulo em {
  font-style: normal;
  color: var(--coral-esc);
}

.fixo-corpo {
  font-size: var(--t-body);
  line-height: 1.75;
  color: var(--cinza-claro-fundo);
  max-width: 46ch;
}
.fixo-corpo + .fixo-corpo { margin-top: var(--e-3); }

.fixo-rodape {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: clamp(3rem, 2rem + 3vw, 4.5rem);
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, .8rem + 1.6vw, 2rem);
}

.ideias-rotulo,
.compara-rotulo {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .09em;
  font-weight: 600;
  color: var(--coral-esc);
  margin-bottom: clamp(1.1rem, .9rem + .7vw, 1.6rem);
}

.ideias {
  background: #fff;
  border-radius: 20px;
  padding: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem);
  box-shadow: 0 1px 2px rgba(11,29,65,.04), 0 12px 32px -12px rgba(11,29,65,.14);
}
.ideias-grade {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.25rem, .8rem + 1.6vw, 2.25rem);
}

.ideia:not(:first-child) {
  border-left: 1px solid rgba(11,29,65,.09);
  padding-left: clamp(1.25rem, .8rem + 1.6vw, 2.25rem);
}
.ideia p {
  font-size: var(--t-body);
  line-height: 1.6;
  color: var(--texto-claro-fundo);
  margin: 0;
}

.compara {
  background: linear-gradient(158deg, var(--noite-md) 0%, var(--noite) 62%);
  border-radius: 20px;
  padding: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem);
  box-shadow: 0 16px 40px -16px rgba(11,29,65,.42);
}
.compara-rotulo { color: var(--coral-lt); }

.compara-grade {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, .8rem + 1.6vw, 2.5rem);
}

.compara-col {
  border-radius: 14px;
  padding: clamp(1.15rem, .9rem + .8vw, 1.6rem);
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(245,241,234,.10);
  transition: background var(--t-rapido) var(--ease-suave),
              border-color var(--t-rapido) var(--ease-suave),
              transform var(--t-rapido) var(--ease-suave);
}

.compara-topo {
  font-family: var(--f-display);
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--creme);
  padding-bottom: .9rem;
  margin-bottom: .2rem;
  
  border-bottom: 1px solid rgba(245,241,234,.28);
  display: flex;
  align-items: center;
  gap: .6rem;
}

.compara-topo::before {
  content: '';
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--coral);
  flex-shrink: 0;
}

.compara-linha {
  font-size: var(--t-body);
  line-height: 1.6;
  
  color: var(--cinza-lt);
  margin: 0;
  padding: .85rem 0;
}

.compara-linha + .compara-linha { border-top: 1px solid rgba(245,241,234,.16); }
.compara-linha:last-child { padding-bottom: 0; }

.compara-col:hover {
  background: rgba(255,255,255,.06);
  border-color: rgba(232,115,74,.42);
  transform: translateY(-2px);
}

.ideia { transition: transform var(--t-rapido) var(--ease-suave); }
.ideia-icone {
  display: block;
  width: 34px; height: 34px;
  margin-bottom: .9rem;
  color: var(--coral);
  transition: transform var(--t-medio) var(--ease-suave);
}
.ideia-icone svg { width: 100%; height: 100%; display: block; }
.ideia:hover .ideia-icone { transform: scale(1.12) rotate(-4deg); }

.ideias, .compara {
  transition: transform var(--t-medio) var(--ease-suave),
              box-shadow var(--t-medio) var(--ease-suave);
}
.ideias:hover {
  transform: translateY(-3px);
  box-shadow: 0 1px 2px rgba(11,29,65,.04), 0 20px 44px -14px rgba(11,29,65,.20);
}
.compara:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 52px -16px rgba(11,29,65,.52);
}

@media (prefers-reduced-motion: reduce) {
  .compara-col, .ideia, .ideia-icone, .ideias, .compara { transition: none; }
  .compara-col:hover, .ideias:hover, .compara:hover { transform: none; }
  .ideia:hover .ideia-icone { transform: none; }
}

.fixo-cartao {
  display: block;
  width: min(100%, 300px);
  
  align-self: center;
  justify-self: center;
  background: #FFFFFF;
  border: 1px solid rgba(11, 29, 65, .10);
  border-radius: var(--r-lg);
  padding: var(--e-4) var(--e-4) var(--e-3);
  text-align: center;
  text-decoration: none;
  
  box-shadow:
    0 2px 6px rgba(11, 29, 65, .06),
    0 18px 40px rgba(11, 29, 65, .10);
  transition: transform var(--t-rapido) var(--ease-suave),
              box-shadow var(--t-rapido) var(--ease-suave),
              border-color var(--t-rapido) linear;
}

.fixo-cartao:hover {
  transform: translateY(-4px);
  box-shadow:
    0 2px 6px rgba(11, 29, 65, .06),
    0 28px 56px rgba(11, 29, 65, .16);
}
.fixo-cartao:focus-visible {
  outline: 2px solid var(--coral-esc);
  outline-offset: 4px;
}

.fixo-cartao img {
  width: 100%;
  height: auto;
  display: block;
}

.fixo-acao {
  display: block;
  margin-top: var(--e-3);
  font-size: var(--t-small);
  font-weight: 500;
  line-height: 1.45;
  color: var(--coral-esc);
  text-wrap: balance;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  text-decoration-color: rgba(196, 85, 46, .4);
  transition: text-decoration-color var(--t-rapido) linear;
}
.fixo-cartao:hover .fixo-acao { text-decoration-color: var(--coral-esc); }

.zap-flutua {
  position: fixed;
  right: clamp(16px, 1rem + 1vw, 28px);
  bottom: clamp(16px, 1rem + 1vw, 28px);
  z-index: var(--z-sticky);
  width: 56px; height: 56px;
  display: grid; place-items: center;
  border-radius: var(--r-full);
  background: var(--zap);
  color: #fff;
  box-shadow: 0 6px 20px rgba(0,0,0,.32), 0 2px 6px rgba(0,0,0,.2);
  
  opacity: 0;
  transform: scale(.6) translateY(8px);
  pointer-events: none;
  transition: opacity var(--t-medio) var(--ease-suave),
              transform var(--t-medio) var(--ease-suave),
              background var(--t-rapido) linear;
}
.zap-flutua.aparece {
  opacity: 1;
  transform: scale(1) translateY(0);
  pointer-events: auto;
}
.zap-flutua:hover  { background: var(--zap-esc); }
.zap-flutua:active { transform: scale(.94); }
.zap-flutua:focus-visible { outline: 2px solid var(--creme); outline-offset: 3px; }
.zap-flutua svg { width: 30px; height: 30px; }

@media (max-width: 480px) {
  .zap-flutua { width: 50px; height: 50px; }
  .zap-flutua svg { width: 27px; height: 27px; }
}

@media (min-width: 861px) and (max-height: 860px) {
  
  .hero-conteudo { padding-block: clamp(9rem, 7rem + 5dvh, 11rem) var(--e-5); }
  
  .hero-titulo {
    font-size: clamp(2.25rem, 1.3rem + 3.4vw, 3.5rem);
    margin-bottom: var(--e-3);
  }
  
  .hero-lead   { font-size: 1.125rem; }
  .hero-lead-2 { margin-top: var(--e-1); }
  .hero-botoes { margin-top: var(--e-4); }
  .btn { padding-block: 13px; }

  
  
  
  .dor {
    padding-top: 3.5rem;
    padding-bottom: .75rem;
    margin-bottom: max(0px, calc(var(--secao-y-interno) - .75rem));
  }
  
  .dor-msgs { gap: 11px; }
  .msg { padding: 6px 13px; }
  .dor-titulo {
    font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2rem);
    line-height: 1.22;
    margin-bottom: var(--e-2);
  }
  
  .dor-corpo { font-size: var(--t-body); line-height: 1.6; }
  .dor-corpo + .dor-corpo { margin-top: var(--e-2); }
  
  .dor-fecho { margin-top: 3.5rem; }
  .dor-fecho-inner { padding-block: 1rem; }
}

@media (min-width: 861px) and (max-height: 680px) {
  .hero-conteudo { padding-block: 9rem var(--e-2); }
  
  .hero-titulo { margin-bottom: var(--e-2); line-height: 1.1; }
  .hero-botoes { margin-top: var(--e-3); }
}

@media (max-width: 860px) {
  
  :root {
    --t-body:  1.0625rem;   
    --t-small: 0.9375rem;   
    --t-lead:  1.1875rem;   
  }
  
  body:has(.site-anfity),
  .site-anfity { font-weight: 400 !important; }

  
  section[id], [id^="secao"] { scroll-margin-top: 90px; }

  
  .btn-zap    { display: none; }
  .hamburguer { display: block; }

  
  .so-desktop { display: none; }

  
  .topo-inner,
  .topo.encolhido .topo-inner { max-width: 100%; }

  
  .topo-inner { padding: 6px 12px; }

  
  .topo-inner::before { left: 0; right: 0; }
  .topo { padding-inline: 18px; }

  
  .topo.encolhido .topo-inner::before {
    background: var(--noite);
  }

  
  .hero-video { object-position: center center; }

  
  .hero-video,
  .hero-poster-mobile {
    height: 109%;
    top: -9%;
    transform: none;
  }

  
  
  
  img.hero-poster-mobile { display: block !important; z-index: 1; }
  .hero-video { z-index: 2; }

  
  .hero-veu {
    
    background: linear-gradient(to top,
      rgba(7,19,40,1)   0%,
      rgba(7,19,40,.97) 8%,
      rgba(7,19,40,.90) 18%,
      rgba(7,19,40,.72) 34%,
      rgba(7,19,40,.48) 40%,
      rgba(7,19,40,.26) 48%,
      rgba(7,19,40,.08) 55%,
      rgba(7,19,40,0)   64%);
  }

  
  .hero-botoes { display: none; }

  .hero { align-items: end; }
  .hero-conteudo > * { max-width: 100%; }

  
  
  .hero-conteudo { padding-top: 54svh; padding-bottom: var(--e-3); }

  
  .hero-titulo .nao-parte { white-space: nowrap; }

  
  .hero-mob-acoes .btn,
  .hero-botoes .btn,
  .fecho-btn { width: 100%; }

  
  .hero-mob-acoes {
    display: flex;
    flex-direction: column;
    gap: var(--e-3);
    
    background:
      linear-gradient(to bottom,
        #071328 0px,        
        #0A1932 14px,
        #0D1F3E 31px,
        #11274C 49px,
        var(--noite-md) 72px)
      no-repeat;
    background-color: var(--noite-md);
    
    padding: 36px 34px var(--secao-y-interno);
    
    border-bottom: 1px solid rgba(245, 241, 234, .10);
  }

  
  @media (prefers-reduced-motion: no-preference) {
    .pronto [data-entra] { transform: translateX(-40px); }
  }

  
  .hero-rolar { display: none; }

  
  .dor-inner { grid-template-columns: 1fr; gap: var(--e-5); }
  .dor-texto { order: -1; }
  .dor-titulo { max-width: 100%; }
  .dor-msgs { max-width: 100%; }
  
  .dor-msgs { gap: 16px; }
  
  .msg {
    font-size: .92rem;
    padding: 7px 12px;
  }

  
  .dor-fecho-inner { gap: var(--e-3); }
  
  .dor-link {
    width: 100%;
    justify-content: center;
    font-size: var(--t-small);
    padding-inline: 16px;
  }

  
  .msg { white-space: normal; max-width: 88%; }

  
  .mov-inner { grid-template-columns: 1fr; gap: var(--e-5); }
  .mov-titulo { max-width: 100%; }
  .mov-corpo,
  .mov-fecho { max-width: 100%; }

  
  .mov-foto + .mov-veu {
    background: linear-gradient(to bottom,
      rgba(7, 19, 40, .95) 0%,
      rgba(7, 19, 40, .92) 46%,
      rgba(7, 19, 40, .70) 100%);
  }

  
  .recebe-palco {
    grid-template-columns: 1fr;
    gap: var(--e-4);
  }
  
  .recebe-lado { order: -1; }
  .recebe-topo { max-width: 100%; }

  
  .recebe-lado,
  .recebe-blocos:not(.pronto) { min-width: 0; }
  
  .recebe-lead { max-width: 100%; }

  
  .recebe-celular { display: none; }

  
  
  .recebe-blocos:not(.pronto) {
    display: flex;
    flex-direction: row;
    
    align-items: stretch;
    gap: 0;
    min-height: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    
    scrollbar-width: none;
    
    margin-inline: -34px;
    padding-inline: 34px;
    scroll-padding-inline: 34px;
  }
  .recebe-blocos::-webkit-scrollbar { display: none; }

  
  
  .recebe-blocos:not(.pronto) .recebe-bloco {
    opacity: 1;
    transform: none;
    pointer-events: auto;
    scroll-snap-align: start;
    
    grid-area: auto;

    
    border-left: 0;
    padding-left: 0;

    
    background: var(--noite-md);
    border: 1px solid rgba(245, 241, 234, .08);
    border-radius: 18px;
    padding: 14px;
    
    flex: 0 0 auto;
    
    width: min(86%, 300px);
    
    margin-right: var(--e-3);
    display: flex;
    flex-direction: column;
    gap: 14px;
    
  }

  
  img.recebe-print {
    display: block !important;
    
    width: auto;
    max-width: 100%;
    height: auto;
    margin-inline: auto;
    
    max-height: 50svh;
    object-fit: cover;
    
    object-position: top center;
    border: 10px solid #060D1A;
    border-radius: 30px;
    background: #060D1A;
    box-shadow:
      0 2px 6px rgba(4, 9, 20, .22),
      0 16px 36px rgba(4, 9, 20, .28);
  }

  .recebe-bloco h3 { font-size: var(--t-h3); }
  .recebe-bloco p  { font-size: var(--t-body); }

  
  
  .recebe-lado:not(:has(.pronto)) .recebe-passos {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: var(--e-3);
    
    margin-left: 0;
  }

  

  
  .fixo-inner {
    grid-template-columns: 1fr;
    
    row-gap: var(--e-5);
  }
  .fixo-titulo,
  .fixo-corpo { max-width: 100%; }
  .fixo-cartao { width: min(100%, 260px); }

  
  .fixo-rodape {
    margin-top: var(--e-4);
    gap: var(--e-5);
  }

  
  .ideias-grade { grid-template-columns: 1fr; gap: var(--e-3); }
  .ideia:not(:first-child) {
    border-left: 0;
    padding-left: 0;
    border-top: 1px solid rgba(11,29,65,.09);
    padding-top: var(--e-3);
  }
  
  .ideia {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: start;
  }
  .ideia-icone { width: 26px; height: 26px; margin-bottom: 0; }

  
  .compara-grade { grid-template-columns: 1fr; gap: var(--e-3); }

  
  
  .mov-celular {
    
    
    width: max(250px, min(92%, calc(68svh * 9 / 17.1), 340px));
    
    border-width: 12px;
  }
  
  .mov-celular video,
  .mov-celular img,
  
  .mov-celular::after { border-radius: 26px; }

  
  .mov::before {
    background:
      radial-gradient(78% 34% at 50% 76%,
        rgba(227, 201, 168, .30) 0%,
        rgba(227, 201, 168, .10) 46%,
        transparent 78%),
      radial-gradient(96% 40% at 50% 14%,
        rgba(203, 211, 222, .26) 0%,
        transparent 76%);
  }
}

.modos {
  position: relative;
  background: var(--noite);
  
  padding-block: var(--secao-y-interno);
  overflow: hidden;
}

.modos-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
}

.modos-topo {
  max-width: 52rem;
  margin-inline: auto;
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.8rem + 2.6vw, 4rem);
}

.modos-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 500;
  color: var(--coral-lt);
  margin-bottom: var(--e-2);
}

.modos-titulo {
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  color: var(--creme);
  text-wrap: balance;
  margin-bottom: var(--e-4);
}

.modos-titulo em { font-style: normal; color: var(--areia); }

.modos-corpo {
  font-size: var(--t-body);
  line-height: 1.75;
  color: var(--cinza);
  max-width: 60ch;
  margin-inline: auto;
}
.modos-corpo + .modos-corpo { margin-top: var(--e-3); }

.modos-grade {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, .8rem + 1.6vw, 2rem);
}

.modo {
  display: flex;
  flex-direction: column;
  
  background: var(--claro);
  border: 1px solid rgba(11,29,65,.10);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(7,19,40,.18), 0 18px 44px -16px rgba(7,19,40,.34);
  transition: box-shadow var(--t-medio) var(--ease-suave),
              transform var(--t-rapido) var(--ease-suave);
}
.modo:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 10px rgba(7,19,40,.20), 0 26px 56px -18px rgba(7,19,40,.44);
}

.modo-foto {
  aspect-ratio: 16 / 9;
  background: var(--noite-md);
  position: relative;
  overflow: hidden;
}
.modo-foto img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--t-medio) var(--ease-suave);
}

.modo:hover .modo-foto img { transform: scale(1.04); }

.modo-foto[data-vazio]::after {
  content: attr(data-vazio);
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: var(--t-small);
  color: rgba(245,241,234,.32);
  letter-spacing: .04em;
}

.modo-corpo {
  padding: clamp(1.5rem, 1.1rem + 1.4vw, 2rem);
  display: flex;
  flex-direction: column;
  flex: 1;
}

.modo-titulo {
  position: relative;
  font-family: var(--f-display);
  font-size: var(--t-h3);
  line-height: 1.25;
  color: var(--texto-claro-fundo);
  
  min-height: 2.5em;
  margin-bottom: .5rem;
}

.modo-tipos {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .07em;
  font-weight: 600;
  
  color: var(--coral-esc);
  letter-spacing: .01em;
  padding-bottom: clamp(1rem, .8rem + .7vw, 1.4rem);
  margin-bottom: clamp(1rem, .8rem + .7vw, 1.4rem);
  border-bottom: 1px solid rgba(11,29,65,.12);
}

.modo-itens {
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem, .7rem + .5vw, 1.1rem);
  list-style: none;
  margin: 0;
  padding: 0;
}

.modo-itens li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  font-size: var(--t-body);
  line-height: 1.6;
  color: var(--cinza-claro-fundo);
  padding-bottom: clamp(.8rem, .7rem + .5vw, 1.1rem);
  border-bottom: 1px solid rgba(11,29,65,.09);
}
.modo-itens li:last-child { border-bottom: 0; padding-bottom: 0; }

.modo-itens li > svg {
  width: 34px; height: 34px;
  padding: 7px;
  box-sizing: border-box;
  border-radius: 10px;
  background: rgba(232,115,74,.10);
  color: var(--coral-esc);
  margin-top: -.1em;
  transition: background var(--t-rapido) var(--ease-suave),
              transform var(--t-medio) var(--ease-suave);
}

.modo:hover .modo-itens li > svg { background: rgba(232,115,74,.17); }

.modo-btn {
  margin-top: auto;
  align-self: flex-start;
  gap: 10px;
  
  
  padding: 13px 24px;
}

.modo-itens { padding-bottom: clamp(1.25rem, 1rem + .8vw, 1.75rem); }

.modo-btn svg {
  width: 17px; height: 17px;
  flex-shrink: 0;
  transition: transform var(--t-rapido) var(--ease-suave);
}
.modo-btn:hover svg { transform: translate(2px, -2px); }

.modos-nota {
  margin-top: clamp(1.5rem, 1.2rem + 1vw, 2.25rem);
  text-align: center;
  font-size: var(--t-small);
  color: var(--cinza);
}

@media (prefers-reduced-motion: reduce) {
  .modo, .modo-foto img, .modo-itens li::before { transition: none; }
  .modo:hover { transform: none; }
  .modo:hover .modo-foto img { transform: none; }
  .modo:hover .modo-itens li::before { transform: none; }
  .modo-btn svg, .modo-itens li > svg { transition: none; }
  .modo-btn:hover svg { transform: none; }
}

.cabe {
  position: relative;
  background: var(--claro);
  
  padding-block: var(--secao-y-interno);
}

.cabe-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
}

.cabe-topo {
  max-width: 52rem;
  margin-inline: auto;
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.8rem + 2.6vw, 4rem);
}

.cabe-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  
  color: var(--coral-esc);
  margin-bottom: var(--e-2);
}

.cabe-titulo {
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  color: var(--texto-claro-fundo);
  text-wrap: balance;
  margin-bottom: var(--e-4);
}
.cabe-titulo em { font-style: normal; color: var(--coral-esc); }

.cabe-corpo {
  font-size: var(--t-body);
  line-height: 1.75;
  color: var(--cinza-claro-fundo);
  max-width: 62ch;
  margin-inline: auto;
}

.cabe-grade {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.75rem, 1rem + 2.4vw, 3rem);
  align-items: start;
}

.cabe-grupo-titulo {
  display: flex;
  align-items: center;
  gap: 14px;
  font-family: var(--f-body);
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .09em;
  font-weight: 600;
  color: var(--texto-claro-fundo);
  margin-bottom: clamp(1.1rem, .9rem + .7vw, 1.6rem);
}
.cabe-grupo-titulo::after {
  content: '';
  flex: 1;
  height: 1px;
  background: rgba(11,29,65,.14);
}

.cabe-lista {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, .85rem + .6vw, 1.4rem);
  list-style: none;
  margin: 0;
  padding: 0;
}

.cabe-lista li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding-bottom: clamp(1rem, .85rem + .6vw, 1.4rem);
  border-bottom: 1px solid rgba(11,29,65,.09);
}
.cabe-lista li:last-child { border-bottom: 0; padding-bottom: 0; }

.cabe-icone {
  width: 38px; height: 38px;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 11px;
  background: rgba(232,115,74,.10);
  color: var(--coral-esc);
  display: block;
  margin-top: -.1em;
  transition: background var(--t-rapido) var(--ease-suave),
              transform var(--t-medio) var(--ease-suave);
}
.cabe-icone svg { width: 100%; height: 100%; display: block; }

.cabe-lista li:hover .cabe-icone {
  background: rgba(232,115,74,.18);
  transform: scale(1.06) rotate(-4deg);
}

.cabe-lista h4 {
  font-family: var(--f-body);
  font-size: var(--t-body);
  font-weight: 600;
  line-height: 1.35;
  color: var(--texto-claro-fundo);
  margin: 0 0 3px;
}

.cabe-lista p {
  font-size: var(--t-small);
  line-height: 1.55;
  color: var(--cinza-claro-fundo);
  margin: 0;
}

.cabe-fecho {
  display: flex;
  align-items: center;
  gap: 14px;
  max-width: 58rem;
  margin: clamp(2.25rem, 1.6rem + 2vw, 3.25rem) auto 0;
  padding: clamp(1rem, .85rem + .6vw, 1.35rem) clamp(1.1rem, .9rem + .9vw, 1.6rem);
  border: 1px solid rgba(11,29,65,.10);
  border-left: 3px solid var(--coral-esc);
  border-radius: 14px;
  background: rgba(232,115,74,.06);
  font-size: var(--t-body);
  line-height: 1.6;
  color: var(--cinza-claro-fundo);
}
.cabe-fecho-icone {
  width: 34px; height: 34px;
  flex-shrink: 0;
  color: var(--coral-esc);
}
.cabe-fecho-icone svg { width: 100%; height: 100%; display: block; }

@media (prefers-reduced-motion: reduce) {
  .cabe-icone { transition: none; }
  .cabe-lista li:hover .cabe-icone { transform: none; }
}

.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.preco {
  position: relative;
  background: var(--noite);
  
  padding-block: var(--secao-y-interno);
  overflow: hidden;
}

.preco-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
}

.preco-topo {
  max-width: 54rem;
  margin-inline: auto;
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.8rem + 2.6vw, 3.5rem);
}

.preco-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 500;
  color: var(--coral-lt);
  margin-bottom: var(--e-2);
}

.preco-titulo {
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  color: var(--creme);
  text-wrap: balance;
  margin-bottom: var(--e-4);
}

.preco-titulo em { font-style: normal; color: var(--areia); }

.preco-corpo {
  font-size: var(--t-body);
  line-height: 1.75;
  color: var(--cinza);
  
  max-width: 56ch;
  margin-inline: auto;
}

.preco-inclui {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, .9rem + 1.4vw, 2rem) clamp(1.5rem, 1rem + 2vw, 3rem);
  list-style: none;
  margin: 0 0 clamp(2.5rem, 1.8rem + 2.6vw, 4rem);
  padding: 0;
  max-width: 60rem;
  margin-inline: auto;
}
.preco-inclui li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.preco-inclui-icone {
  width: 38px; height: 38px;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 11px;
  background: rgba(232,115,74,.14);
  color: var(--coral-lt);
  display: block;
  margin-top: -.1em;
}
.preco-inclui-icone svg { width: 100%; height: 100%; display: block; }

.preco-inclui h3 {
  font-family: var(--f-body);
  font-size: var(--t-body);
  font-weight: 600;
  line-height: 1.35;
  color: var(--creme);
  margin: 0 0 3px;
}
.preco-inclui p {
  font-size: var(--t-small);
  line-height: 1.55;
  color: var(--cinza);
  margin: 0;
}

.preco-grade {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, .8rem + 1.6vw, 2rem);
  align-items: stretch;
}

.preco-card {
  display: flex;
  flex-direction: column;
  background: var(--claro);
  border: 1px solid rgba(11,29,65,.10);
  border-radius: 20px;
  padding: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem);
  box-shadow: 0 2px 6px rgba(7,19,40,.18), 0 18px 44px -16px rgba(7,19,40,.34);
}

.preco-card-tipo {
  font-family: var(--f-display);
  font-size: var(--t-h3);
  line-height: 1.25;
  color: var(--texto-claro-fundo);
  
  min-height: 2.5em;
  margin-bottom: .4rem;
}

.preco-card-exemplos {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .07em;
  font-weight: 600;
  color: var(--coral-esc);
  padding-bottom: clamp(1rem, .8rem + .7vw, 1.4rem);
  margin-bottom: clamp(1rem, .8rem + .7vw, 1.4rem);
  border-bottom: 1px solid rgba(11,29,65,.12);
}

.preco-valor {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: .35rem;
}

.preco-apartir-selo {
  display: block;
  font-size: var(--t-small);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--coral-esc);
  margin-bottom: 2px;
}
.preco-apartir-selo.is-placeholder {
  visibility: hidden;
}

.preco-antes {
  font-family: var(--f-display);
  font-size: clamp(1.15rem, 1rem + .5vw, 1.4rem);
  font-weight: 500;
  color: var(--cinza-claro-fundo);
  text-decoration-thickness: 1.5px;
  text-decoration-color: var(--coral-esc);
}

.preco-agora-linha {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px;
}

.preco-agora {
  font-family: var(--f-display);
  font-size: clamp(2.25rem, 1.7rem + 2.4vw, 3.1rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.02em;
  color: var(--texto-claro-fundo);
}

.preco-agora-periodo {
  font-family: var(--f-body);
  font-size: var(--t-small);
  color: var(--cinza-claro-fundo);
}

.preco-parcela {
  display: inline-flex;
  width: fit-content;
  font-size: var(--t-body);
  color: var(--cinza-claro-fundo);
  background: rgba(11,29,65,.05);
  border-radius: 999px;
  padding: 5px 14px;
  margin-bottom: clamp(1.1rem, .9rem + .6vw, 1.5rem);
}

.preco-incluso1ano {
  list-style: none;
  margin: 0 0 clamp(1.1rem, .9rem + .6vw, 1.5rem);
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.preco-incluso1ano li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: var(--t-body);
  color: var(--texto-claro-fundo);
}
.preco-check {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--coral-esc);
}

.preco-equivale {
  font-size: var(--t-eyebrow);
  color: var(--cinza-claro-fundo);
  opacity: .7;
  margin-bottom: clamp(1.1rem, .9rem + .5vw, 1.4rem);
}

.preco-ano2 {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  column-gap: 10px;
  row-gap: 2px;
  background: rgba(11,29,65,.04);
  border: 1px solid rgba(11,29,65,.08);
  border-radius: 12px;
  padding: clamp(.75rem, .65rem + .4vw, 1rem) clamp(.9rem, .75rem + .5vw, 1.15rem);
  margin-bottom: clamp(1.1rem, .9rem + .6vw, 1.5rem);
}
.preco-ano2-rotulo {
  flex-basis: 100%;
  font-size: var(--t-eyebrow);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--cinza-claro-fundo);
}
.preco-ano2-valor {
  font-family: var(--f-display);
  font-size: clamp(1.4rem, 1.1rem + 1.1vw, 1.85rem);
  font-weight: 600;
  color: var(--texto-claro-fundo);
  line-height: 1;
}
.preco-ano2-valor span {
  font-family: var(--f-body);
  font-size: var(--t-small);
  font-weight: 400;
  color: var(--cinza-claro-fundo);
}
.preco-ano2-nota {
  font-size: var(--t-small);
  color: var(--cinza-claro-fundo);
}

.preco-btn {
  margin-top: auto;
  align-self: flex-start;
  padding: 13px 24px;
}

.preco-prazo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: clamp(1.5rem, 1.2rem + 1vw, 2.25rem);
  font-size: var(--t-small);
  color: var(--cinza);
}
.preco-prazo-icone {
  width: 18px; height: 18px;
  flex-shrink: 0;
  color: var(--coral-lt);
}
.preco-prazo-icone svg { width: 100%; height: 100%; display: block; }

.preco-modo-bloco {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .6rem;
  margin-bottom: clamp(1.75rem, 1.4rem + 1.2vw, 2.5rem);
}

.preco-modo-rotulo {
  margin: 0;
  font-size: var(--t-body);
  font-weight: 600;
  color: var(--creme);
}

.preco-modo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 4px;
  background: rgba(245,241,234,.10);
  border: 1px solid rgba(245,241,234,.18);
  border-radius: 999px;
}
.preco-modo-input {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.preco-modo-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 22px;
  border-radius: 999px;
  font-size: var(--t-body);
  font-weight: 600;
  color: var(--creme);
  opacity: .75;
  cursor: pointer;
  transition: background .18s ease, opacity .18s ease, color .18s ease;
}
.preco-modo-label:hover { opacity: 1; }

.preco-modo-input:checked + .preco-modo-label {
  background: var(--creme);
  color: var(--texto-claro-fundo);
  opacity: 1;
  box-shadow: 0 1px 3px rgba(0,0,0,.18);
}

.preco-modo-input:focus-visible + .preco-modo-label {
  outline: 2px solid var(--coral-esc);
  outline-offset: 2px;
}
.preco-modo-tarja {
  margin: 0;
  font-size: var(--t-small);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--coral-lt);
}
.preco:has(#modo-mensal:checked) .preco-modo-tarja { display: none; }

.preco-bloco-anual { display: none; }
.preco:has(#modo-anual:checked) .preco-bloco-anual { display: block; }
.preco:has(#modo-anual:checked) .preco-bloco-mensal { display: none; }

.preco:has(#modo-mensal:checked) .preco-depois { display: none; }

.preco-plano-anual,
.preco-plano-mensal {
  margin: 0 0 .35rem;
  font-size: var(--t-small);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--coral-esc);
}
.preco-desconto-anual {
  margin: -.15rem 0 .75rem;
  font-size: var(--t-small);
  font-style: italic;
  color: var(--coral-esc);
}
.preco-composicao-anual {
  display: grid;
  gap: .35rem;
  margin: 0 0 clamp(1.1rem, .9rem + .6vw, 1.5rem);
  padding: .8rem 1rem;
  border: 1px solid rgba(11,29,65,.11);
  border-radius: 16px;
  background: rgba(11,29,65,.035);
}
.preco-composicao-anual p {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin: 0;
  font-size: var(--t-small);
  color: var(--cinza-claro-fundo);
}
.preco-composicao-anual strong { color: var(--texto-claro-fundo); }

.preco-bloco-mensal .preco-parcela {
  margin-bottom: .55rem;
}
.preco-mais {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  font-size: var(--t-body);
  color: var(--texto-claro-fundo);
  margin: 0 0 clamp(1.1rem, .9rem + .6vw, 1.5rem);
}
.preco-mais-sinal {
  font-family: var(--f-display);
  font-size: 1.3rem;
  line-height: 1;
  color: var(--coral-esc);
}
.preco-mais strong {
  font-family: var(--f-display);
  font-size: clamp(1.35rem, 1.1rem + .8vw, 1.75rem);
  font-weight: 600;
  line-height: 1;
  color: var(--texto-claro-fundo);
}
.preco-mais em {
  font-style: normal;
  color: var(--cinza-claro-fundo);
}

.preco-depois {
  font-size: var(--t-body);
  font-weight: 600;
  color: var(--texto-claro-fundo);
  margin: .2rem 0 clamp(1.1rem, .9rem + .6vw, 1.5rem);
}

@media (max-width: 860px) {
  
  .preco-inclui { grid-template-columns: 1fr; }
  .preco-grade { grid-template-columns: 1fr; gap: var(--e-4); }
  
  .preco-card-tipo { min-height: 0; }
  .preco-topo { text-align: left; margin-inline: 0; }
  .preco-corpo { margin-inline: 0; }
  .preco-prazo { justify-content: flex-start; }
  
  .preco-modo-bloco { align-items: center; }
  .preco-modo-label { padding: 9px 18px; }
  
  .preco-btn { align-self: center; }
}

.depo {
  position: relative;
  background: var(--claro);
  
  padding-block: var(--secao-y-interno);
  overflow: hidden;
}

.depo-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
}

.depo-topo {
  max-width: 52rem;
  margin-inline: auto;
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.8rem + 2.6vw, 4rem);
}

.depo-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  color: var(--coral-esc);
  margin-bottom: var(--e-2);
}

.depo-titulo {
  font-family: var(--f-display);
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  color: var(--texto-claro-fundo);
  text-wrap: balance;
}
.depo-titulo em { font-style: normal; color: var(--coral-esc); }

.depo-grade {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.5rem, 1rem + 2vw, 2.5rem);
  align-items: stretch;
}

.depo-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid rgba(11,29,65,.08);
  border-radius: 24px;
  padding: clamp(2.25rem, 1.7rem + 2vw, 3rem) clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem) clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem);
  box-shadow: 0 4px 12px rgba(7,19,40,.08), 0 24px 52px -20px rgba(7,19,40,.18);
}

.depo-aspa {
  display: block;
  font-family: var(--f-display);
  font-size: clamp(3rem, 2.4rem + 2.5vw, 4.25rem);
  font-weight: 600;
  line-height: 1;
  color: var(--coral-lt);
  margin-bottom: -.15em;
}

.depo-texto {
  font-family: var(--f-display);
  font-size: clamp(1.1rem, 1.02rem + .35vw, 1.35rem);
  line-height: 1.55;
  color: var(--texto-claro-fundo);
  margin-bottom: clamp(1.25rem, 1rem + .8vw, 1.75rem);
  flex-grow: 1;
}

.depo-assinatura {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: auto;
  padding-top: clamp(1rem, .8rem + .5vw, 1.25rem);
  border-top: 1px solid rgba(11,29,65,.10);
}

.depo-nome {
  font-family: var(--f-display);
  font-size: var(--t-body);
  font-weight: 600;
  color: var(--texto-claro-fundo);
}

.depo-local {
  font-size: var(--t-small);
  color: var(--cinza-claro-fundo);
}
.depo-local::before {
  content: "· ";
}

.depo-ver-print {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 8px;
  margin-top: clamp(.9rem, .75rem + .4vw, 1.15rem);
  padding: .55rem .95rem;
  border: 1px solid var(--coral-lt);
  border-radius: 999px;
  background: rgba(232, 115, 74, .07);
  font-size: var(--t-small);
  font-weight: 600;
  line-height: 1.2;
  text-align: left;
  color: var(--coral-esc);
  cursor: pointer;
  transition: background var(--t-rapido) var(--ease-suave),
              border-color var(--t-rapido) var(--ease-suave),
              color var(--t-rapido) var(--ease-suave);
}
.depo-ver-print:hover {
  background: rgba(232, 115, 74, .13);
  border-color: var(--coral);
  color: var(--coral-btn);
}
.depo-ver-print svg { width: 16px; height: 16px; flex-shrink: 0; }

.depo-dialog {
  border: none;
  border-radius: 20px;
  padding: 0;
  
  width: min(320px, 88vw);
  margin: auto;
  background: transparent;
}
.depo-dialog::backdrop {
  background: rgba(7,19,40,.65);
  backdrop-filter: blur(2px);
}
.depo-dialog-caixa {
  position: relative;
  background: var(--claro);
  border-radius: 20px;
  padding: clamp(1.5rem, 1.2rem + 1.5vw, 2rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.depo-dialog-caixa img {
  width: auto;
  max-width: 100%;
  
  max-height: 66svh;
  height: auto;
  object-fit: contain;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(7,19,40,.22);
}
@media (min-width: 861px) {
  .depo-dialog-caixa img { max-height: 68svh; }
}

@media (hover: none) and (pointer: coarse) {
  .depo-dialog-caixa { padding: 1rem .75rem .85rem; gap: .7rem; }
}
.depo-dialog-legenda {
  font-family: var(--f-display);
  font-size: var(--t-small);
  font-style: italic;
  color: var(--cinza-claro-fundo);
  text-align: center;
}

.depo-dialog-fechar {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: none;
  border-radius: 999px;
  background: rgba(11,29,65,.06);
  color: var(--texto-claro-fundo);
  cursor: pointer;
  transition: background var(--t-rapido) var(--ease-suave);
}
.depo-dialog-fechar:hover { background: rgba(11,29,65,.12); }
.depo-dialog-fechar svg { width: 16px; height: 16px; }

.depo-dialog-carrossel { width: min(380px, 92vw); }

@media (hover: none) and (pointer: coarse) {
  .depo-dialog,
  .depo-dialog-carrossel { width: 96vw; }
}

.depo-carrossel { position: relative; width: 100%; }

.depo-carrossel-faixa {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  
  scrollbar-width: none;
  -ms-overflow-style: none;
  border-radius: 14px;
}
.depo-carrossel-faixa::-webkit-scrollbar { display: none; }

.depo-carrossel-faixa:focus-visible {
  outline: 2px solid var(--coral);
  outline-offset: 3px;
}

.depo-slide {
  flex: 0 0 100%;
  scroll-snap-align: center;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .85rem;
}
@media (hover: none) and (pointer: coarse) {
  .depo-carrossel-faixa { gap: 12px; }
  .depo-slide { flex-basis: 86%; }

  
  .depo-slide figcaption {
    max-width: 78%;
    margin-inline: auto;
  }
}

.depo-slide img {
  width: auto;
  max-width: 100%;
  max-height: 62svh;
  height: auto;
  object-fit: contain;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(7,19,40,.22);
}
@media (min-width: 861px) {
  .depo-slide img { max-height: 64svh; }
}

.depo-carrossel-seta {
  position: absolute;
  top: 42%;
  
  z-index: 2;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: none;
  border-radius: 999px;
  background: var(--claro);
  color: var(--texto-claro-fundo);
  box-shadow: 0 2px 10px rgba(7,19,40,.18);
  cursor: pointer;
  transition: background var(--t-rapido) var(--ease-suave),
              opacity var(--t-rapido) var(--ease-suave);
}
.depo-carrossel-seta:hover { background: #fff; }
.depo-carrossel-seta svg { width: 17px; height: 17px; }
.depo-carrossel-anterior { left: -6px; }
.depo-carrossel-proximo { right: -6px; }

.depo-carrossel-seta[disabled] {
  opacity: .3;
  cursor: default;
  pointer-events: none;
}

.depo-carrossel-bolinhas {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  margin-top: .9rem;
}

.depo-carrossel-conta {
  font-size: .8rem;
  font-weight: 600;
  
  color: var(--cinza-claro-fundo);
  font-variant-numeric: tabular-nums;   
  margin-left: .35rem;
}
.depo-bolinha {
  width: 8px;
  height: 8px;
  padding: 0;
  border: none;
  border-radius: 999px;
  background: rgba(11,29,65,.22);
  cursor: pointer;
  transition: background var(--t-rapido) var(--ease-suave),
              width var(--t-rapido) var(--ease-suave);
}

.depo-bolinha.esta-ativa {
  width: 20px;
  background: var(--coral);
}

@media (max-width: 860px) {
  .depo-grade { grid-template-columns: 1fr; }
  .depo-topo { text-align: left; margin-inline: 0; }
}

@media (hover: none) and (pointer: coarse) {
  
  .depo-carrossel-seta {
    width: 30px;
    height: 30px;
    opacity: .95;
  }
  .depo-carrossel-anterior { left: 2px; }
  .depo-carrossel-proximo { right: 2px; }
  
  .depo-carrossel-seta[disabled] { display: none; }

  
  .depo-dialog-fechar { width: 44px; height: 44px; top: 8px; right: 8px; }
  .depo-dialog-fechar svg { width: 19px; height: 19px; }
}

.faq {
  position: relative;
  background: var(--noite);
  
  padding-block: var(--secao-y-interno);
}

.faq-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
}

.faq-topo {
  max-width: 52rem;
  margin-inline: auto;
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.8rem + 2.6vw, 4rem);
}

.faq-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  
  color: var(--coral-lt);
  margin-bottom: var(--e-2);
}

.faq-titulo {
  font-family: var(--f-display);
  font-size: var(--t-h2);
  line-height: 1.2;
  letter-spacing: -.015em;
  color: var(--creme);
  text-wrap: balance;
}

.faq-titulo em { font-style: normal; color: var(--areia); }

.faq-grade {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.5rem, 1rem + 2vw, 2.5rem);
}
.faq-coluna {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(.75rem, .5rem + 1vw, 1.1rem);
}

.faq-item {
  border: 1px solid var(--borda);
  border-radius: var(--r-md);
  background: rgba(22, 48, 92, .34);
  transition: border-color var(--t-rapido) var(--ease-suave),
              background var(--t-rapido) var(--ease-suave);
  
  overflow: hidden;
}
.faq-item:hover { border-color: #2E5490; }
.faq-item[open] {
  background: rgba(22, 48, 92, .55);
  border-color: #2E5490;
}

.faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--e-2);
  padding: clamp(1rem, .85rem + .5vw, 1.35rem) clamp(1.1rem, .9rem + .6vw, 1.5rem);
  cursor: pointer;
  font-family: var(--f-body);
  font-size: var(--t-body);
  font-weight: 600;
  line-height: 1.4;
  color: var(--creme);
  list-style: none;              
  -webkit-tap-highlight-color: transparent;
}

.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::marker { content: ""; }

.faq-item summary:focus-visible {
  outline: 2px solid var(--coral-lt);
  outline-offset: -2px;
  border-radius: var(--r-md);
}

.faq-sinal {
  position: relative;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}
.faq-sinal::before,
.faq-sinal::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 13px;
  height: 1.7px;
  border-radius: 2px;
  background: var(--coral-lt);
  transform: translate(-50%, -50%);
  transition: transform var(--t-medio) var(--ease-suave),
              opacity var(--t-rapido) var(--ease-suave);
}
.faq-sinal::after { transform: translate(-50%, -50%) rotate(90deg); }

.faq-item[open] .faq-sinal::after {
  transform: translate(-50%, -50%) rotate(0deg);
  opacity: 0;
}

.faq-resposta {
  padding: 0 clamp(1.1rem, .9rem + .6vw, 1.5rem) clamp(1.1rem, .95rem + .5vw, 1.4rem);
}
.faq-resposta p {
  font-size: var(--t-body);
  line-height: var(--lh-body);
  color: var(--cinza);
  
  max-width: 46ch;
}

.faq-resposta p + p { margin-top: .85em; }

@supports selector(::details-content) {
  
  .faq-item { interpolate-size: allow-keywords; }
  .faq-item::details-content {
    block-size: 0;
    opacity: 0;
    overflow: hidden;
    transition: block-size var(--t-medio) var(--ease-suave),
                opacity var(--t-rapido) var(--ease-suave),
                content-visibility var(--t-medio) allow-discrete;
  }
  .faq-item[open]::details-content {
    block-size: auto;
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .faq-sinal::before,
  .faq-sinal::after { transition: none; }
  @supports selector(::details-content) {
    .faq-item::details-content { transition: none; }
  }
}

@media (max-width: 860px) {
  
  .faq-grade { flex-direction: column; gap: clamp(.75rem, .5rem + 1vw, 1.1rem); }
  .faq-topo { text-align: left; margin-inline: 0; }
}

.fecho {
  position: relative;
  background: var(--claro);
  padding-block: var(--secao-y-interno);
  overflow: hidden;
}

.fecho::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -12%;
  width: 46%;
  aspect-ratio: 1;
  transform: translateY(-50%);
  background: radial-gradient(circle, rgba(232,115,74,.10) 0%, rgba(232,115,74,0) 68%);
  pointer-events: none;
}

.fecho-inner {
  position: relative;
  z-index: 1;
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
  display: grid;
  
  grid-template-columns: 1fr 1.15fr;
  gap: clamp(2.5rem, 1.5rem + 4vw, 5rem);
  align-items: center;
}

.fecho-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  color: var(--coral-esc);
  margin-bottom: var(--e-2);
}

.fecho-titulo {
  font-family: var(--f-display);
  font-size: var(--t-h2);
  line-height: 1.15;
  letter-spacing: -.015em;
  color: var(--texto-claro-fundo);
  text-wrap: balance;
  margin-bottom: clamp(1rem, .8rem + .8vw, 1.5rem);
}
.fecho-titulo em { font-style: normal; color: var(--coral-esc); }

.fecho-corpo {
  font-size: var(--t-lead);
  line-height: var(--lh-body);
  color: var(--cinza-claro-fundo);
  max-width: 46ch;
  margin-bottom: clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
}

.fecho-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.fecho-btn svg { width: 20px; height: 20px; flex-shrink: 0; }

.fecho-foto {
  margin: 0;
  border-radius: 24px;
  overflow: hidden;
  
  box-shadow: 0 4px 12px rgba(7,19,40,.08), 0 28px 60px -22px rgba(7,19,40,.28);
}
.fecho-foto img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

@media (max-width: 900px) {
  .fecho-inner {
    grid-template-columns: 1fr;
    gap: clamp(2rem, 1.5rem + 2vw, 2.75rem);
  }
  
  .fecho-foto { order: -1; }
  .fecho-corpo { max-width: none; }
  .fecho::after { display: none; }
}

.rodape {
  position: relative;
  background: var(--noite);
  
  padding-block: clamp(2.5rem, 2rem + 2vw, 3.75rem) clamp(1.5rem, 1.2rem + 1vw, 2rem);
  overflow: hidden;
}

.rodape::before {
  content: "";
  position: absolute;
  inset-inline: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%, rgba(232,115,74,.35) 30%, rgba(232,115,74,.35) 70%, transparent 100%);
}

.rodape::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -60%;
  width: 90%;
  aspect-ratio: 2.4;
  transform: translateX(-50%);
  background: radial-gradient(ellipse, rgba(232,115,74,.10) 0%, rgba(232,115,74,0) 65%);
  pointer-events: none;
}

.rodape-inner {
  position: relative;
  z-index: 1;
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
  display: grid;
  
  grid-template-columns: 1fr auto 1fr;
  gap: clamp(1.5rem, 1rem + 2vw, 3rem);
  align-items: center;
}

.rodape-marca img {
  display: block;
  
  height: 46px;
  width: auto;
}

.rodape-frase {
  position: relative;
  font-family: var(--f-display);
  font-size: var(--t-body);
  font-style: italic;
  line-height: 1.5;
  color: var(--cinza);
  text-align: center;
  max-width: 30ch;
  
  padding-bottom: clamp(.9rem, .8rem + .3vw, 1.15rem);
}

.rodape-frase::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 34px;
  height: 2px;
  border-radius: 2px;
  background: var(--coral-lt);
  opacity: .8;
}

.rodape-contatos {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: clamp(.5rem, .45rem + .2vw, .7rem);
}
.rodape-contatos a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--t-small);
  color: var(--creme);
  text-decoration: none;
  transition: color var(--t-rapido) var(--ease-suave);
}
.rodape-contatos a:hover { color: var(--coral-lt); }
.rodape-contatos svg {
  width: 17px;
  height: 17px;
  flex-shrink: 0;
  color: var(--coral-lt);
  transition: transform var(--t-rapido) var(--ease-suave);
}

.rodape-contatos a:hover svg { transform: translateY(-2px); }

.rodape-assinatura {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--e-2);
  margin-top: clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
  padding-top: clamp(1rem, .85rem + .6vw, 1.35rem);
  
  border-top: 1px solid transparent;
  border-image: linear-gradient(90deg,
    transparent 0%, var(--borda) 18%, var(--borda) 82%, transparent 100%) 1;
  font-size: var(--t-small);
  color: var(--cinza);
}

.rodape-lunia { opacity: .72; }

@media (max-width: 900px) {
  
  .rodape-inner {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: clamp(1.25rem, 1rem + 1vw, 1.75rem);
    text-align: center;
  }

  
  .rodape-contatos {
    align-items: center;
    
    gap: 14px;
  }
  .rodape-contatos a:nth-child(1) { order: 2; }  
  .rodape-contatos a:nth-child(2) { order: 1; }  
  .rodape-contatos a:nth-child(3) { order: 3; }  
  
  .rodape-contatos a {
    font-size: var(--t-body);
    padding-block: 2px;
  }
  .rodape-contatos svg { width: 19px; height: 19px; }

  
  .rodape-assinatura {
    flex-direction: column;
    align-items: center;
    gap: 14px;
    text-align: center;
  }
  
  .rodape-cnpj { display: block; margin-top: 4px; }
  
  .rodape-privacidade { padding-block: 2px; }
}

.cookies {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: var(--z-topo);
  padding: clamp(.75rem, .6rem + .6vw, 1.25rem);
  
  transform: translateY(110%);
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: transform var(--t-lento) var(--ease-suave),
              opacity var(--t-medio) var(--ease-suave),
              visibility 0s linear var(--t-lento);
}
.cookies.is-visivel {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  transition: transform var(--t-lento) var(--ease-suave),
              opacity var(--t-medio) var(--ease-suave),
              visibility 0s;
}

.cookies-caixa {
  max-width: var(--largura);
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: clamp(1rem, .8rem + 1.4vw, 2.25rem);
  padding: clamp(1rem, .85rem + .8vw, 1.4rem) clamp(1.15rem, 1rem + .9vw, 1.75rem);
  border: 1px solid var(--borda);
  border-radius: var(--r-lg);
  
  background: rgba(11, 29, 65, .94);
  backdrop-filter: blur(10px) saturate(1.1);
  box-shadow: var(--sombra-lg);
}

.cookies-titulo {
  font-family: var(--f-display);
  font-size: var(--t-body);
  font-weight: 600;
  color: var(--creme);
  margin-bottom: 4px;
}
.cookies-corpo {
  font-size: var(--t-small);
  line-height: 1.55;
  color: var(--cinza);
  max-width: 68ch;
}
.cookies-corpo a {
  color: var(--coral-lt);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cookies-acoes {
  display: flex;
  align-items: center;
  gap: clamp(.5rem, .45rem + .3vw, .75rem);
  flex-shrink: 0;
}

.cookies-btn {
  padding: 11px clamp(1rem, .85rem + .7vw, 1.5rem);
  border-radius: var(--r-full);
  font-family: var(--f-body);
  font-size: var(--t-small);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: background var(--t-rapido) var(--ease-suave),
              border-color var(--t-rapido) var(--ease-suave),
              color var(--t-rapido) var(--ease-suave);
}

.cookies-btn-recusar {
  border: 1px solid rgba(245,241,234,.30);
  background: none;
  color: var(--creme);
}
.cookies-btn-recusar:hover {
  border-color: rgba(245,241,234,.55);
  background: rgba(245,241,234,.06);
}
.cookies-btn-aceitar {
  border: 1px solid transparent;
  background: var(--grad-btn);
  color: #fff;
  box-shadow: var(--sombra-sm);
}
.cookies-btn-aceitar:hover { background: var(--grad-btn-hover); }

@media (max-width: 760px) {
  .cookies-caixa { flex-direction: column; align-items: stretch; gap: 1rem; }
  .cookies-acoes { justify-content: stretch; }
  
  .cookies-btn { flex: 1; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .cookies { transition: opacity var(--t-medio) linear, visibility 0s; transform: none; }
  .cookies.is-visivel { transform: none; }
}

.pagina-legal { background: var(--claro); }

.legal-topo {
  background: var(--noite);
  padding-block: clamp(.9rem, .8rem + .5vw, 1.25rem);
}
.legal-topo-inner {
  max-width: var(--largura);
  margin-inline: auto;
  padding-inline: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--e-3);
}
.legal-voltar {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: var(--t-small);
  font-weight: 600;
  color: var(--cinza);
  text-decoration: none;
  transition: color var(--t-rapido) var(--ease-suave);
}
.legal-voltar:hover { color: var(--coral-lt); }
.legal-voltar svg { width: 16px; height: 16px; }

.legal {
  padding-block: clamp(3rem, 2.2rem + 3vw, 5rem);
}
.legal-inner {
  
  max-width: var(--largura-texto);
  margin-inline: auto;
  padding-inline: 34px;
  color: var(--texto-claro-fundo);
}

.legal-eyebrow {
  font-size: var(--t-eyebrow);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  color: var(--coral-esc);
  margin-bottom: var(--e-2);
}
.legal-titulo {
  font-family: var(--f-display);
  font-size: var(--t-h2);
  line-height: 1.15;
  letter-spacing: -.015em;
  margin-bottom: var(--e-1);
}
.legal-atualizado {
  font-size: var(--t-small);
  color: var(--cinza-claro-fundo);
  margin-bottom: clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
}

.legal-resumo {
  font-family: var(--f-display);
  font-size: var(--t-lead);
  line-height: 1.6;
  color: var(--texto-claro-fundo);
  padding: clamp(1.1rem, .95rem + .7vw, 1.6rem) clamp(1.25rem, 1rem + 1vw, 1.75rem);
  border-left: 3px solid var(--coral-esc);
  border-radius: 0 var(--r-md) var(--r-md) 0;
  background: rgba(232,115,74,.06);
  margin-bottom: clamp(2rem, 1.6rem + 1.6vw, 3rem);
}

.legal h2 {
  font-family: var(--f-display);
  font-size: var(--t-h3);
  line-height: 1.25;
  margin-top: clamp(2.25rem, 1.8rem + 1.8vw, 3.25rem);
  margin-bottom: clamp(.7rem, .6rem + .4vw, 1rem);
}
.legal h3 {
  font-family: var(--f-body);
  font-size: var(--t-body);
  font-weight: 700;
  margin-top: clamp(1.4rem, 1.2rem + .8vw, 2rem);
  margin-bottom: .5rem;
  color: var(--coral-esc);
}
.legal p,
.legal li {
  font-size: var(--t-body);
  line-height: var(--lh-body);
  color: var(--cinza-claro-fundo);
}
.legal p { margin-bottom: clamp(.85rem, .75rem + .4vw, 1.1rem); }
.legal strong { color: var(--texto-claro-fundo); font-weight: 700; }
.legal a { color: var(--coral-esc); text-decoration: underline; text-underline-offset: 2px; }

.legal ul {
  list-style: none;
  padding: 0;
  margin: 0 0 clamp(.85rem, .75rem + .4vw, 1.1rem);
}
.legal li {
  position: relative;
  padding-left: 1.4rem;
  margin-bottom: .55rem;
}

.legal li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: .68em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--coral-esc);
  opacity: .75;
}

.legal-btn-cookies {
  padding: 10px 18px;
  border: 1px solid rgba(11,29,65,.22);
  border-radius: var(--r-full);
  background: none;
  font-family: var(--f-body);
  font-size: var(--t-small);
  font-weight: 600;
  color: var(--texto-claro-fundo);
  cursor: pointer;
  transition: border-color var(--t-rapido) var(--ease-suave),
              background var(--t-rapido) var(--ease-suave);
}
.legal-btn-cookies:hover {
  border-color: var(--coral-esc);
  background: rgba(232,115,74,.07);
}

.legal-fecho {
  margin-top: clamp(2.25rem, 1.8rem + 1.8vw, 3.25rem);
  padding-top: clamp(1.25rem, 1rem + 1vw, 1.75rem);
  border-top: 1px solid rgba(11,29,65,.12);
}

.rodape-privacidade {
  color: var(--cinza);
  text-decoration: none;
  border-bottom: 1px solid rgba(169,180,199,.35);
  transition: color var(--t-rapido) var(--ease-suave),
              border-color var(--t-rapido) var(--ease-suave);
}
.rodape-privacidade:hover {
  color: var(--coral-lt);
  border-color: var(--coral-lt);
}

.pagina-404 { background: var(--noite); }

.erro {
  position: relative;
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: clamp(2rem, 1.5rem + 3vw, 4rem) var(--gutter);
  overflow: hidden;
}

.erro::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 42%;
  width: min(760px, 92vw);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(232,115,74,.13) 0%, rgba(232,115,74,0) 62%);
  pointer-events: none;
}

.erro-inner {
  position: relative;
  z-index: 1;
  max-width: 44rem;
  text-align: center;
}

.erro-marca { display: inline-block; margin-bottom: clamp(2rem, 1.6rem + 1.6vw, 3rem); }
.erro-marca img { display: block; height: 46px; width: auto; }

.erro-numero {
  font-family: var(--f-display);
  font-size: clamp(5.5rem, 3rem + 14vw, 11rem);
  font-weight: 700;
  line-height: .85;
  letter-spacing: -.04em;
  color: var(--coral);
  opacity: .17;
  margin-bottom: clamp(-2.5rem, -1.5rem - 3vw, -1.25rem);
  user-select: none;
}

.erro-titulo {
  position: relative;
  font-family: var(--f-display);
  font-size: var(--t-h2);
  line-height: 1.15;
  letter-spacing: -.015em;
  color: var(--creme);
  text-wrap: balance;
  margin-bottom: clamp(.9rem, .8rem + .5vw, 1.25rem);
}

.erro-titulo em { font-style: normal; color: var(--areia); }

.erro-corpo {
  font-size: var(--t-lead);
  line-height: var(--lh-body);
  color: var(--cinza);
  max-width: 46ch;
  margin-inline: auto;
  margin-bottom: clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
}

.erro-acoes {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(.6rem, .5rem + .5vw, .9rem);
}

.legal-voltar-pe {
  margin-top: clamp(2rem, 1.6rem + 1.6vw, 3rem);
}

.legal-voltar-pe .btn-fantasma {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-color: rgba(11,29,65,.22);
  color: var(--texto-claro-fundo);
}
.legal-voltar-pe .btn-fantasma:hover {
  border-color: var(--coral-esc);
  color: var(--coral-esc);
  background: rgba(232,115,74,.07);
}
.legal-voltar-pe .btn-fantasma svg { width: 17px; height: 17px; }

.rodape-cnpj {
  opacity: .72;
  white-space: nowrap;
}

@media (max-width: 860px) {

  
  .modos-topo {
    text-align: left;
    margin-inline: 0;
    max-width: 100%;
  }
  
  .modos-corpo {
    margin-inline: 0;
    max-width: 100%;
  }

  
  .modos-grade {
    grid-template-columns: 1fr;
    gap: var(--e-4);
  }
  
  .modo-titulo { min-height: 0; }

  
  .modo-btn { align-self: center; }

  
  .cabe-grade { grid-template-columns: 1fr; gap: var(--e-5); }
  .cabe-topo  { text-align: left; margin-inline: 0; max-width: 100%; }
  .cabe-corpo { margin-inline: 0; max-width: 100%; }
  
  .cabe-fecho { flex-direction: column; align-items: flex-start; gap: 10px; }
}

@media (max-width: 400px) {
  
  .modo-corpo { padding: 1.25rem; }
  
  .modo-btn {
    padding-inline: 18px;
    gap: 6px;
    white-space: nowrap;
  }
}
