:root {
  --navy: #0B3A6B;
  --navy-medio: #0E4A85;
  --ciano: #00AEEF;
  --azul: #0077C8;
  --azul-claro: #E6F4FD;
  --cinza: #5A6B82;
  --tinta: #1B2A3D;
  --linha: #D5E3F0;
  --largura: 1120px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: #fff;
  color: var(--tinta);
  font-family: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  font-size: 17px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; display: block; }
a { color: var(--azul); }

.saltar {
  position: absolute; left: -9999px; top: 0;
  background: var(--navy); color: #fff; padding: 8px 14px; z-index: 10;
}
.saltar:focus { left: 16px; top: 16px; }

.contentor { max-width: var(--largura); margin: 0 auto; padding: 0 24px; }

/* cabeçalho */
.cabecalho {
  position: sticky; top: 0; z-index: 5;
  background: rgba(255, 255, 255, 0.97);
  border-bottom: 1px solid var(--azul-claro);
}
.cabecalho .contentor { display: flex; align-items: center; gap: 24px; height: 68px; }
.marca img { height: 34px; width: auto; }
.menu { display: flex; gap: 20px; margin-left: auto; }
@media (max-width: 1180px) { .menu { gap: 14px; } .menu a { font-size: 14px; } }
.menu a { color: var(--cinza); text-decoration: none; font-size: 15px; }
.menu a:hover { color: var(--navy); }
.accoes { display: flex; align-items: center; gap: 12px; }

.botao {
  display: inline-block; text-decoration: none; font-weight: 600; font-size: 15px;
  border-radius: 8px; padding: 10px 18px; line-height: 1.2; white-space: nowrap;
}
.botao-azul { background: var(--azul); color: #fff; }
.botao-azul:hover { background: var(--navy-medio); }
.botao-branco { background: #fff; color: var(--navy); }
.botao-branco:hover { background: var(--azul-claro); }
.ligacao-clara { color: var(--azul-claro); text-decoration: none; font-size: 15px; margin-left: 18px; }
.ligacao-clara:hover { color: #fff; }

/* lista de línguas */
.linguas { position: relative; font-size: 14px; }
.linguas summary {
  list-style: none; cursor: pointer; user-select: none;
  border: 1px solid var(--linha); border-radius: 8px; padding: 6px 10px; color: var(--cinza);
}
.linguas summary::-webkit-details-marker { display: none; }
.linguas summary { display: inline-flex; align-items: center; gap: 6px; }
.bandeira { flex: none; border-radius: 2px; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12); }
.linguas li a { display: flex; align-items: center; gap: 10px; }
.rodape .linguas-rodape a { display: inline-flex; align-items: center; gap: 5px; }
.linguas summary::after { content: " ▾"; }
.linguas[open] summary { border-color: var(--azul); color: var(--azul); }
.linguas ul {
  position: absolute; right: 0; top: calc(100% + 6px); margin: 0; padding: 4px 0; list-style: none;
  background: #fff; border: 1px solid var(--linha); border-radius: 8px; min-width: 170px;
  box-shadow: 0 8px 24px rgba(11, 58, 107, 0.12);
}
.linguas li a { display: block; padding: 7px 14px; color: var(--tinta); text-decoration: none; }
.linguas li a:hover { background: var(--azul-claro); }
.linguas li a[aria-current] { color: var(--navy); font-weight: 600; background: var(--azul-claro); }

/* entrada */
.entrada { background: var(--navy); color: #fff; padding: 72px 0 80px; overflow: hidden; }
.entrada .contentor {
  display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); gap: 48px; align-items: center;
}
.chapeu { color: var(--ciano); font-size: 13px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; margin: 0 0 14px; }
.entrada h1 { font-size: 44px; line-height: 1.15; margin: 0 0 20px; font-weight: 600; }
.entrada .lead { font-size: 19px; color: var(--azul-claro); margin: 0 0 32px; }
.moldura {
  border-radius: 12px; overflow: hidden; background: #fff;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35); border: 1px solid rgba(255, 255, 255, 0.15);
}

/* secções */
.seccao { padding: 88px 0; scroll-margin-top: 68px; }
.seccao-clara { background: var(--azul-claro); }
.seccao h2 { color: var(--navy); font-size: 32px; line-height: 1.2; margin: 0 0 14px; font-weight: 600; }
.seccao .intro { color: var(--cinza); max-width: 720px; margin: 0 0 40px; font-size: 18px; }

.cartoes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 36px; }
.cartao { background: var(--azul-claro); border-radius: 12px; padding: 28px; }
.cartao-icone {
  display: inline-flex; align-items: center; justify-content: center;
  width: 52px; height: 52px; border-radius: 12px; background: #fff; color: var(--azul);
  box-shadow: 0 2px 8px rgba(11, 58, 107, 0.08);
}
.cartao-icone svg { width: 28px; height: 28px; }
.cartao h3 { color: var(--navy); font-size: 19px; margin: 16px 0 8px; }
.cartao p { color: var(--cinza); margin: 0; font-size: 16px; }
.cartoes-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.seccao-clara .cartao { background: #fff; }
.seccao-clara .cartao-icone { background: var(--azul-claro); box-shadow: none; }

.grupos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 32px; }
.grupo h3 {
  color: var(--azul); font-size: 15px; text-transform: uppercase; letter-spacing: 1px;
  margin: 0 0 12px; padding-bottom: 10px; border-bottom: 2px solid var(--ciano);
}
.grupo ul { list-style: none; margin: 0; padding: 0; }
.grupo li { padding: 6px 0; font-size: 16px; border-bottom: 1px solid var(--azul-claro); }

.destaque {
  display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 56px; align-items: center;
  margin-top: 72px;
}
.destaque:first-of-type { margin-top: 0; }
.destaque.inverso { grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); }
.destaque.inverso .texto { order: 2; }
.destaque h3 { color: var(--navy); font-size: 26px; line-height: 1.25; margin: 0 0 14px; }
.destaque p { color: var(--cinza); margin: 0; font-size: 18px; }
.destaque .moldura { box-shadow: 0 16px 40px rgba(11, 58, 107, 0.16); border-color: var(--linha); }

.vantagens { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin-top: 36px; }
.vantagem svg { width: 32px; height: 32px; color: var(--azul); }
.vantagem h3 { color: var(--navy); font-size: 18px; margin: 12px 0 6px; }
.vantagem p { color: var(--cinza); margin: 0; font-size: 16px; }

.convite { background: var(--navy); color: #fff; border-radius: 16px; padding: 48px; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.convite h2 { color: #fff; }
.convite p { color: var(--azul-claro); margin: 0 0 28px; font-size: 18px; }
.contactos { list-style: none; margin: 0; padding: 0; }
.contactos li { padding: 10px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.15); }
.contactos span { display: block; color: var(--ciano); font-size: 13px; text-transform: uppercase; letter-spacing: 1px; }
.contactos a { color: #fff; text-decoration: none; }

/* secção escura (exames) */
.seccao-escura { background: var(--navy); color: #fff; }
.seccao-escura h2, .seccao-escura .vantagem h3 { color: #fff; }
.seccao-escura .intro, .seccao-escura .vantagem p { color: var(--azul-claro); }
.seccao-escura .vantagem svg { color: var(--ciano); }
.seccao-escura .figura figcaption { color: var(--azul-claro); }
.seccao-escura .figura-botao { border-color: rgba(255, 255, 255, 0.18); }
.aparelhos { margin: 36px 0 0; color: var(--azul-claro); font-size: 15px; }
.aparelhos span { color: var(--ciano); font-weight: 600; margin-right: 6px; }

/* galeria */
.galeria { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.galeria-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 48px; gap: 28px; }
.galeria-chat { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); align-items: center; }
.figura { margin: 0; }
.figura-botao {
  position: relative; display: block; width: 100%; padding: 0; cursor: zoom-in; background: #fff;
  border: 1px solid var(--linha); border-radius: 10px; overflow: hidden;
}
.figura-botao img { width: 100%; transition: transform 0.25s ease; }
.figura-botao:hover img { transform: scale(1.03); }
.figura-lupa {
  position: absolute; right: 10px; bottom: 10px; width: 34px; height: 34px; border-radius: 8px;
  background: rgba(11, 58, 107, 0.85); color: #fff; display: flex; align-items: center; justify-content: center;
}
.figura-lupa svg { width: 18px; height: 18px; }
.figura figcaption { font-size: 15px; color: var(--cinza); margin-top: 10px; line-height: 1.45; }

/* app móvel */
.app { display: grid; grid-template-columns: minmax(0, 1fr); gap: 48px; }
.app-colunas { max-width: 820px; }
.app-colunas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.app-colunas h3 { color: var(--navy); font-size: 18px; margin: 0 0 10px; }
.certos { list-style: none; margin: 0; padding: 0; }
.certos li { display: flex; gap: 8px; padding: 5px 0; font-size: 16px; }
.certos svg { flex: none; width: 18px; height: 18px; margin-top: 4px; color: var(--azul); }
.app-nota { display: flex; gap: 10px; align-items: center; color: var(--cinza); font-size: 15px; margin: 28px 0 0; }
.app-nota svg { flex: none; width: 22px; height: 22px; color: var(--azul); }
.telemoveis { display: flex; justify-content: center; flex-wrap: wrap; gap: 32px; }
.tl-figura { margin: 0; text-align: center; }
.tl-figura figcaption { margin-top: 14px; font-weight: 600; color: var(--navy); font-size: 15px; }
.tl-figura-2 { margin-top: 40px; }
.telemoveis { gap: 24px; }
.tl-corpo-escuro { background: var(--tinta); }
.tl-corpo-escuro .tl-titulo { color: #fff; display: flex; align-items: center; gap: 8px; }
.tl-olho { font-style: normal; font-size: 11px; background: #6B4FBB; color: #fff; border-radius: 5px; padding: 1px 6px; }
.tl-imagem { width: 100%; height: auto; border-radius: 8px; display: block; }
.tl-corpo-escuro .tl-dados { background: #24364d; border-color: #2f4560; }
.tl-corpo-escuro .tl-dados span { color: #B9C4D2; }
.tl-corpo-escuro .tl-dados b { color: #fff; }
.tl-dados { display: grid; grid-template-columns: 1fr auto; gap: 6px 8px; background: #fff; border: 1px solid var(--linha); border-radius: 10px; padding: 10px 12px; }
.tl-dados span { color: var(--cinza); }
.tl-dados b { color: var(--navy); }
.valores-titulo { color: #fff; font-size: 20px; margin: 48px 0 14px; }
.valores { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; margin: 0; }
.valores div { padding: 10px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
.valores dt { color: var(--ciano); font-weight: 600; font-size: 15px; }
.valores dd { margin: 2px 0 0; color: var(--azul-claro); font-size: 15px; }
.vantagens-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 36px; }
.telemovel {
  width: 230px; height: 460px; border-radius: 34px; background: #fff; border: 8px solid var(--tinta);
  box-shadow: 0 24px 50px rgba(11, 58, 107, 0.22); overflow: hidden; display: flex; flex-direction: column;
  font-size: 13px; line-height: 1.35;
}

.tl-topo { background: var(--navy); padding: 22px 16px 12px; }
.tl-topo img { height: 20px; width: auto; }
.tl-corpo { flex: 1; padding: 14px; background: #F4F8FC; display: flex; flex-direction: column; gap: 10px; }
.tl-cartao { background: #fff; border-radius: 12px; padding: 12px; border: 1px solid var(--linha); }
.tl-cartao small { display: block; color: var(--cinza); font-size: 11px; text-transform: uppercase; letter-spacing: 0.5px; }
.tl-cartao strong { display: block; color: var(--navy); font-size: 18px; margin: 4px 0 2px; }
.tl-cartao span { color: var(--cinza); }
.tl-botao { border-radius: 10px; padding: 10px; text-align: center; font-weight: 600; border: 1.5px solid var(--azul); color: var(--azul); background: #fff; }
.tl-botao-cheio { background: var(--azul); color: #fff; }
.tl-separadores { display: flex; justify-content: space-around; border-top: 1px solid var(--linha); padding: 9px 4px 12px; font-size: 10.5px; color: var(--cinza); }
.tl-separadores .activo { color: var(--azul); font-weight: 600; }
.tl-titulo { color: var(--navy); font-weight: 600; font-size: 15px; }
.tl-linha { display: grid; grid-template-columns: 38px 1fr; gap: 2px 8px; background: #fff; border: 1px solid var(--linha); border-radius: 10px; padding: 8px 10px; }
.tl-linha b { color: var(--navy); grid-row: span 2; }
.tl-linha span { font-weight: 600; }
.estado { font-style: normal; font-size: 11px; justify-self: start; border-radius: 6px; padding: 1px 6px; }
.estado-0 { background: #FFF2D9; color: #8A5A00; }
.estado-1 { background: #DDF3E6; color: #1E6B3C; }
.estado-2 { background: var(--azul-claro); color: var(--navy); }

/* janelas (pedido e ampliar) */
.janela {
  border: 0; border-radius: 16px; padding: 0; max-width: min(560px, calc(100vw - 32px)); width: 100%;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35); color: var(--tinta);
  max-height: calc(100vh - 32px); overflow: auto;
}
.janela::backdrop { background: rgba(11, 30, 55, 0.6); }
.janela-fechar {
  position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 8px;
  background: transparent; color: var(--cinza); cursor: pointer; display: flex; align-items: center; justify-content: center;
}
.janela-fechar:hover { background: var(--azul-claro); color: var(--navy); }
.janela-fechar svg { width: 22px; height: 22px; }
.pedido { position: relative; padding: 32px; display: flex; flex-direction: column; gap: 14px; }
.pedido h2 { margin: 0; color: var(--navy); font-size: 26px; }
.pedido > p { margin: 0 0 4px; color: var(--cinza); }
.pedido label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; color: var(--navy); }
.pedido input, .pedido textarea {
  font: inherit; font-weight: 400; font-size: 16px; color: var(--tinta); border: 1px solid #C5D6E8; border-radius: 8px;
  padding: 10px 12px; background: #fff; width: 100%;
}
.pedido input:focus, .pedido textarea:focus { outline: 2px solid var(--azul); outline-offset: 0; border-color: var(--azul); }
.pedido input:disabled, .pedido textarea:disabled { background: #F4F8FC; color: var(--cinza); }
.pedido textarea { resize: vertical; min-height: 96px; }
.pedido-par { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pedido-fim { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.pedido-fim small { color: var(--cinza); font-size: 13px; }
.pedido-fim .botao { border: 0; cursor: pointer; font-family: inherit; }
.pedido-fim .botao:disabled { opacity: 0.6; cursor: default; }
.pedido-estado { margin: 0; font-size: 15px; }
.pedido-estado:empty { display: none; }
.pedido-estado.erro { color: #B42318; }
.pedido-estado.ok { color: #1E6B3C; background: #DDF3E6; border-radius: 8px; padding: 10px 12px; }
.isco { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.janela-imagem { max-width: min(1600px, calc(100vw - 32px)); background: var(--tinta); }
.janela-imagem img { display: block; width: 100%; height: auto; max-height: calc(100vh - 120px); object-fit: contain; }
.janela-imagem p { margin: 0; padding: 12px 56px 14px 18px; color: var(--azul-claro); font-size: 15px; }
.janela-imagem .janela-fechar { top: auto; bottom: 8px; color: #fff; }
.janela-imagem .janela-fechar:hover { background: rgba(255, 255, 255, 0.12); color: #fff; }

.aviso { display: none; border-radius: 10px; padding: 14px 18px; margin: 0 0 20px; font-weight: 600; }
.aviso:target { display: block; }
.aviso-ok { background: #DDF3E6; color: #1E6B3C; }
.aviso-erro { background: #FDE7E5; color: #B42318; }

/* captura de imagem (maqueta) */
.cap-cartoes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 48px; }
.cap-cartao { display: grid; grid-template-columns: minmax(0, 0.6fr) minmax(0, 1fr); gap: 16px; align-items: stretch;
  background: #fff; border-radius: 16px; padding: 16px; box-shadow: 0 10px 30px rgba(11, 58, 107, 0.10); }
.cap-aparelho { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; min-height: 260px; background: #fff; }
.cap-aparelho-fenda { object-position: 12% 50%; border: 1px solid #dfe5ec; }
.cap-ecra { background: #121c2b; border-radius: 10px; padding: 10px; display: flex; flex-direction: column; gap: 8px; color: #E6F4FD; font-size: 13px; }
.cap-barra { display: flex; justify-content: space-between; align-items: center; font-weight: 600; }
.cap-estado { font-weight: 600; font-size: 12px; color: #4ade80; }
.cap-estado-rec { color: #f87171; }
.cap-imagem { border-radius: 8px; overflow: hidden; aspect-ratio: 4 / 3; background: #000; }
.cap-imagem img { width: 100%; height: 100%; object-fit: cover; }
.cap-botoes { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.cap-b { display: inline-flex; align-items: center; gap: 6px; border: 1px solid #33465f; border-radius: 7px; padding: 5px 9px; font-size: 12px; }
.cap-b svg { width: 15px; height: 15px; }
.cap-b i { width: 9px; height: 9px; border-radius: 50%; background: #f87171; display: inline-block; }
.cap-b-cheio { background: var(--azul); border-color: var(--azul); color: #fff; }
.cap-b-rec { border-color: #f87171; color: #fecaca; }
.cap-olho { margin-left: auto; display: inline-flex; border: 1px solid #33465f; border-radius: 7px; overflow: hidden; font-size: 12px; }
.cap-olho b, .cap-olho span { padding: 5px 9px; }
.cap-olho b { background: #b42318; color: #fff; }
.cap-fita small { color: #9fb3c8; font-size: 11px; }
.cap-fita div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 4px; }
.cap-fita img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 6px; border: 1px solid #33465f; }
.cap-creditos { margin: 18px 0 0; font-size: 12px; color: var(--cinza); }

/* em evolução permanente */
.evol-cartao { display: flex; gap: 18px; align-items: center; margin-top: 44px; padding: 22px 26px; border-radius: 14px;
  background: rgba(0, 174, 239, 0.10); border: 1px solid rgba(0, 174, 239, 0.35); }
.evol-cartao h3 { color: #fff; margin: 0 0 4px; font-size: 19px; }
.evol-cartao p { color: var(--azul-claro); margin: 0; font-size: 16px; }
.evol-icone { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px;
  border-radius: 50%; background: var(--ciano); color: #fff; }
.evol-icone svg { width: 26px; height: 26px; animation: evol-roda 6s linear infinite; }
.evol-icone-grande { width: 64px; height: 64px; }
.evol-icone-grande svg { width: 34px; height: 34px; }
@keyframes evol-roda { to { transform: rotate(360deg); } }
.evol-faixa { background: linear-gradient(120deg, var(--navy) 0%, var(--navy-medio) 60%, #0b5d9c 100%); color: #fff; padding: 64px 0 0; overflow: hidden; }
.evol-conteudo { display: flex; gap: 26px; align-items: center; }
.evol-faixa h2 { color: #fff; font-size: 32px; margin: 0 0 8px; }
.evol-faixa p { color: var(--azul-claro); margin: 0; font-size: 18px; max-width: 760px; }
.evol-fita { margin-top: 44px; padding: 18px 0; background: rgba(0, 0, 0, 0.18); white-space: nowrap; overflow: hidden; }
.evol-fita div { display: inline-flex; gap: 14px; animation: evol-desliza 40s linear infinite; }
.evol-fita span { display: inline-block; padding: 8px 16px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.25);
  color: #fff; font-size: 15px; }
.evol-fita span::before { content: "+ "; color: var(--ciano); font-weight: 700; }
@keyframes evol-desliza { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .evol-icone svg, .evol-fita div { animation: none; } }

/* app: a seguir */
.app-seguir { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 26px; }
.app-seguir-titulo { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; color: var(--navy); margin-right: 4px; }
.app-seguir-titulo svg { width: 20px; height: 20px; color: var(--ciano); animation: evol-roda 6s linear infinite; }
.app-seguir-item { border: 1.5px dashed var(--ciano); color: var(--navy); background: #fff; border-radius: 999px; padding: 6px 14px; font-size: 14px; }
@media (prefers-reduced-motion: reduce) { .app-seguir-titulo svg { animation: none; } }

/* rodapé */
.rodape { background: var(--tinta); color: #B9C4D2; padding: 40px 0; font-size: 14px; }
.rodape .contentor { display: flex; flex-wrap: wrap; gap: 20px 40px; align-items: center; justify-content: space-between; }
.rodape img { height: 40px; width: auto; }
.rodape a { color: #fff; }
.rodape p { margin: 4px 0; }
.rodape .linguas-rodape a { color: #B9C4D2; text-decoration: none; margin-right: 12px; }
.rodape .linguas-rodape a[aria-current] { color: #fff; }

/* página de texto */
.texto-legal { max-width: 760px; }
.texto-legal h1 { color: var(--navy); font-size: 34px; margin: 0 0 28px; }
.texto-legal p { margin: 0 0 18px; }

@media (max-width: 960px) {
  .menu { display: none; }
  .accoes { margin-left: auto; }
  .entrada { padding: 48px 0 56px; }
  .entrada .contentor, .destaque, .destaque.inverso, .convite { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .destaque.inverso .texto { order: 0; }
  .entrada h1 { font-size: 34px; }
  .cartoes { grid-template-columns: minmax(0, 1fr); }
  .cartoes-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grupos, .vantagens, .galeria, .vantagens-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .galeria-2, .galeria-chat, .cap-cartoes { grid-template-columns: minmax(0, 1fr); }
  .app { grid-template-columns: minmax(0, 1fr); }
  .seccao { padding: 64px 0; }
  .convite { padding: 32px; }
}

@media (max-width: 560px) {
  .contentor { padding: 0 16px; }
  .cabecalho .contentor { gap: 10px; height: 60px; }
  .marca img { height: 26px; }
  .accoes .botao { padding: 8px 10px; font-size: 13px; }
  .linguas summary { padding: 6px 8px; }
  .entrada h1 { font-size: 29px; }
  .entrada .lead { font-size: 17px; }
  .ligacao-clara { display: block; margin: 18px 0 0; }
  .grupos, .vantagens, .galeria, .app-colunas, .pedido-par, .cartoes-4, .vantagens-3 { grid-template-columns: minmax(0, 1fr); }
  .seccao h2 { font-size: 26px; }
  .telemoveis { gap: 12px; }
  .telemovel { width: 165px; height: 340px; border-width: 6px; border-radius: 26px; font-size: 11px; }
  .tl-figura-2 { margin-top: 0; }
  .valores { grid-template-columns: minmax(0, 1fr); }
  .tl-cartao strong { font-size: 15px; }
  .tl-separadores { font-size: 9px; }
  .tl-separadores span:nth-child(4) { display: none; }
  .pedido { padding: 24px 20px; }
  .pedido-fim { flex-direction: column; align-items: stretch; }
  .cap-cartao { grid-template-columns: minmax(0, 1fr); }
  .evol-conteudo, .evol-cartao { flex-direction: column; align-items: flex-start; }
  .evol-faixa h2 { font-size: 26px; }
  .cap-aparelho { min-height: 0; max-height: 260px; }
  .convite { padding: 24px; }
}
