/* Apoie o além — novo desenho (Apoio.html / Apoio-celular.html). */
body.alem-support-page { background: var(--alem-papel, #f6f3ee); }
.alem-ap { --p: var(--alem-papel, #f6f3ee); --ink: var(--alem-tinta, #111213); --nq: var(--alem-nanquim, #0c0d0e); --vd: var(--alem-verde, #067378); --cy: var(--alem-ciano, #36aeb0); --cyc: var(--alem-ciano-claro, #92e1dd); --ln: var(--alem-linha, #d8d0c3); --t2: var(--alem-texto2, #5b5751);
  width: min(calc(100% - 128px), 1312px); margin: 0 auto; padding: 0 0 40px; color: var(--ink); font-family: var(--alem-f-interface, "Source Sans 3", sans-serif); }
.alem-ap *, .alem-ap *::before, .alem-ap *::after { box-sizing: border-box; }
.alem-ap h1, .alem-ap h2, .alem-ap h3 { margin: 0; font-family: var(--alem-f-titulo, "Fraunces", serif); font-weight: 620; letter-spacing: -.018em; color: var(--ink); }
.alem-ap a { text-decoration: none; }
.alem-ap i { font-style: italic; }
.alem-ap-kick { font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .16em; text-transform: uppercase; color: var(--vd); }
.alem-ap-kick--ciano { color: var(--cy); }
.alem-ap-mono { font: 500 11px/1.2 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .16em; text-transform: uppercase; color: var(--vd); }
.alem-ap-visor { font-family: var(--alem-f-mono, "IBM Plex Mono", monospace); font-weight: 600; color: var(--cyc); text-shadow: 0 0 8px color-mix(in srgb, var(--alem-ciano, #36aeb0) 90%, transparent); }
.alem-ap-rule { height: 4px; border-top: 3px solid var(--ink); border-bottom: 1px solid var(--ink); }

/* Abertura */
.alem-ap-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 470px; gap: 64px; padding: 40px 0 72px; border-top: 1px solid var(--ln); }
.alem-ap-eclipse { position: absolute; left: 430px; top: 90px; width: 550px; height: 400px; pointer-events: none; }
.alem-ap-eclipse i { position: absolute; top: 0; width: 400px; height: 400px; border-radius: 50%; }
.alem-ap-eclipse i:first-child { left: 150px; background: repeating-linear-gradient(180deg, var(--alem-marca-dagua, #ddd6c8) 0 4.4px, transparent 4.4px 8.9px); }
.alem-ap-eclipse i:last-child { left: 0; background: var(--alem-marca-dagua, #ddd6c8); }
.alem-ap-hero-copy { position: relative; z-index: 1; padding-top: 28px; }
.alem-ap-kick i { font-style: italic; }
.alem-ap-hero h1 { margin: 18px 0 30px; font-size: clamp(60px, 7.8vw, 112px); line-height: .94; letter-spacing: -.03em; }
.alem-ap-hero h1 i { font-weight: 560; color: var(--vd); }
.alem-ap-hero .alem-ap-rule { width: min(560px, 100%); }
.alem-ap-lead { max-width: 30ch; margin: 24px 0 28px; font: 400 23px/1.5 var(--alem-f-leitura, "Source Serif 4", serif); color: var(--alem-texto-corpo, #1d1f21); }
.alem-ap-selos { display: flex; gap: 10px; flex-wrap: wrap; }
.alem-ap-selos span { display: inline-flex; align-items: center; gap: 8px; height: 34px; padding: 0 14px; border: 1.5px solid var(--ink); border-radius: 999px; font: 700 11px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; }
.alem-ap-selos i { width: 7px; height: 7px; border-radius: 50%; background: var(--cy); box-shadow: 0 0 8px color-mix(in srgb, var(--alem-ciano, #36aeb0) 90%, transparent); }

/* Painel em tela */
.alem-ap-painel, .alem-ap-tela { position: relative; overflow: hidden; background: var(--nq); color: var(--p); border-radius: 28px 6px 6px 6px; }
.alem-ap-painel::after, .alem-ap-tela::after { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: var(--alem-varredura, repeating-linear-gradient(180deg, rgba(255,255,255,.05) 0 1px, transparent 1px 4px)); }
.alem-ap-painel > *, .alem-ap-tela > * { position: relative; z-index: 1; }
.alem-ap-painel { align-self: start; margin-top: 12px; padding: 26px 24px 22px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 0 0 1.5px var(--nq), 0 24px 50px color-mix(in srgb, var(--alem-nanquim, #0c0d0e) 25%, transparent); }
.alem-ap-painel-head { display: flex; align-items: baseline; justify-content: space-between; }
.alem-ap-painel-head h2 { font-size: 28px; color: var(--p); }
.alem-ap-painel-head span { font: 500 10px/1 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .16em; text-transform: uppercase; color: var(--cy); }
.alem-ap-seg { display: flex; padding: 3px; border-radius: 999px; background: var(--alem-tela-elevada, #1a1b1c); box-shadow: inset 0 0 0 1px var(--alem-linha-tela, #2c2d2e); }
.alem-ap-seg button { flex: 1; height: 36px; border: 0; border-radius: 999px; background: transparent; color: var(--alem-texto2-tela, #a9a49c); font: 700 11px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.alem-ap-seg button.is-on { background: var(--p); color: var(--nq); }
.alem-ap-opcoes { display: flex; flex-direction: column; gap: 8px; }
.alem-ap-opc { position: relative; display: flex; align-items: center; gap: 14px; padding: 12px 14px; border: 1px solid var(--alem-linha-tela, #2c2d2e); border-radius: 14px 4px 4px 4px; background: var(--alem-sombra, #111213); cursor: pointer; transition: box-shadow .24s var(--alem-curva, cubic-bezier(.2,0,0,1)), border-color .24s; }
.alem-ap-opc input { position: absolute; opacity: 0; pointer-events: none; }
.alem-ap-opc.is-on { border-color: var(--cy); box-shadow: 0 0 0 1px var(--cy), 0 0 22px color-mix(in srgb, var(--alem-ciano, #36aeb0) 35%, transparent); }
.alem-ap-opc:has(input:focus-visible) { outline: 2px solid var(--cy); outline-offset: 3px; }
.alem-ap-rad { width: 18px; height: 18px; flex: none; border-radius: 50%; border: 1.5px solid var(--alem-texto2-tela, #a9a49c); }
.alem-ap-opc.is-on .alem-ap-rad { border-color: var(--cy); background: var(--cy); box-shadow: inset 0 0 0 3px var(--alem-sombra, #111213), 0 0 10px color-mix(in srgb, var(--alem-ciano, #36aeb0) 80%, transparent); }
.alem-ap-opc-t { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.alem-ap-opc-t b { font: 620 18px/1.2 var(--alem-f-titulo, "Fraunces", serif); color: var(--p); }
.alem-ap-opc-t small { font-size: 12.5px; color: var(--alem-texto2-tela, #a9a49c); }
.alem-ap-opc .alem-ap-visor { font-size: 22px; white-space: nowrap; }
.alem-ap-avulso-nota { margin: 0; padding: 14px; border: 1px dashed var(--alem-tela-4a4b4c, #4a4b4c); border-radius: 14px 4px 4px 4px; font-size: 13.5px; line-height: 1.5; color: var(--alem-texto3-tela, #c9c4bb); }
.alem-ap-avulso-nota b { display: block; margin-bottom: 4px; font: 620 18px/1.2 var(--alem-f-titulo, "Fraunces", serif); color: var(--p); }
.alem-ap-cta { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 52px; border-radius: 999px; background: var(--p); color: var(--nq); font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; box-shadow: 0 0 0 1px var(--cy), 0 0 20px color-mix(in srgb, var(--alem-ciano, #36aeb0) 45%, transparent); transition: box-shadow .24s; }
.alem-ap-cta:is(:hover, :focus-visible) { color: var(--nq); box-shadow: 0 0 0 1px var(--cy), 0 0 30px color-mix(in srgb, var(--alem-ciano, #36aeb0) 70%, transparent); }
.alem-ap-cta[aria-disabled="true"] { opacity: .5; pointer-events: none; box-shadow: none; }
.alem-ap-testes { display: flex; gap: 10px; align-items: flex-start; font-size: 12.5px; line-height: 1.45; color: var(--alem-texto2-tela, #a9a49c); }
.alem-ap-testes p { margin: 0; }
.alem-ap-testes span { flex: none; padding: 3px 6px; border: 1px solid var(--cy); border-radius: 4px; font: 600 9.5px/1.2 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .14em; color: var(--cyc); text-shadow: 0 0 8px color-mix(in srgb, var(--alem-ciano, #36aeb0) 90%, transparent); }

/* O que sustenta */
.alem-ap-sustenta { position: relative; display: grid; grid-template-columns: 5fr 6fr; gap: 80px; padding: 64px 0 72px; border-top: 3px solid var(--ink); }
.alem-ap-sustenta::before { content: ""; position: absolute; left: 0; right: 0; top: 3px; height: 1px; background: var(--ink); }
.alem-ap-sustenta h2 { margin-top: 14px; font-size: clamp(36px, 4vw, 58px); line-height: 1.02; }
.alem-ap-sustenta h2 em, .alem-ap-faq h2 em { font-style: normal; color: var(--vd); }
.alem-ap-sustenta-texto { padding-top: 34px; font: 400 21px/1.62 var(--alem-f-leitura, "Source Serif 4", serif); color: var(--alem-texto-corpo, #1d1f21); }
.alem-ap-sustenta-texto p { margin: 0 0 20px; }
.alem-ap-capitular::first-letter { float: left; margin: 8px 12px 0 -2px; font: 620 86px/.78 var(--alem-f-titulo, "Fraunces", serif); color: var(--ink); }
.alem-ap-fio { padding: 18px 0 0 22px; border-left: 3px solid var(--cy); box-shadow: -6px 0 14px -10px color-mix(in srgb, var(--alem-ciano, #36aeb0) 80%, transparent); }

/* Duas formas + faixas */
.alem-ap-formas { padding: 0; }
.alem-ap-duas { padding: 44px 48px 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: end; box-shadow: 0 0 0 1.5px var(--nq); }
.alem-ap-duas h2 { margin-top: 14px; font-size: clamp(34px, 3.9vw, 56px); line-height: 1; color: var(--p); }
.alem-ap-duas-itens { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.alem-ap-duas-itens > div { padding-top: 12px; border-top: 1px solid var(--alem-linha-tela, #2c2d2e); }
.alem-ap-duas-itens > div.is-on { border-top-color: var(--cy); }
.alem-ap-duas-itens .alem-ap-visor { font-size: 12px; letter-spacing: .14em; }
.alem-ap-duas-itens .alem-ap-mono { color: var(--alem-texto2-tela, #a9a49c); font-size: 12px; }
.alem-ap-duas-itens p { margin: 8px 0 0; font-size: 15px; line-height: 1.5; color: var(--alem-texto2-tela, #a9a49c); }
.alem-ap-duas-itens .is-on p { color: var(--alem-tela-d9d4cb, #d9d4cb); }
.alem-ap-faixas { padding: 56px 0 64px; }
.alem-ap-faixas-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 26px; }
.alem-ap-faixas-head h2 { margin-top: 12px; font-size: clamp(30px, 3.4vw, 48px); line-height: 1.05; }
.alem-ap-faixas-head h2 i { font-weight: 560; }
.alem-ap-faixas-head p { max-width: 34ch; margin: 0; font: 400 17px/1.55 var(--alem-f-leitura, "Source Serif 4", serif); color: var(--alem-texto-suave, #3b3935); }
.alem-ap-grade { display: grid; grid-template-columns: 1fr 1fr 1fr .92fr; gap: 20px; align-items: stretch; }
.alem-ap-faixa { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 26px 26px 22px; border-radius: 28px 6px 6px 6px; background: var(--alem-campo, #fffdfa); box-shadow: 0 0 0 1.5px var(--nq); }
.alem-ap-faixa--2 { background: var(--alem-verde-claro, #e9f4f2); }
.alem-ap-faixa--3 { overflow: hidden; background: var(--nq); color: var(--p); box-shadow: 0 0 0 1.5px var(--nq), 0 18px 40px color-mix(in srgb, var(--alem-nanquim, #0c0d0e) 25%, transparent); }
.alem-ap-faixa--3::after { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: var(--alem-varredura); }
.alem-ap-faixa--3 > * { position: relative; z-index: 1; }
.alem-ap-faixa-top { display: flex; align-items: center; gap: 12px; }
.alem-ap-fio-h { flex: 1; height: 1px; background: var(--ln); }
.alem-ap-faixa--3 .alem-ap-fio-h { background: var(--alem-linha-tela, #2c2d2e); }
.alem-ap-faixa--3 .alem-ap-faixa-top .alem-ap-mono { color: var(--cyc); }
.alem-ap-pilha { display: flex; flex-direction: column-reverse; gap: 3px; width: 34px; color: var(--ink); }
.alem-ap-faixa--3 .alem-ap-pilha { color: var(--p); }
.alem-ap-pilha i { height: 7px; border: 1.5px solid currentColor; border-radius: 2px; opacity: .35; }
.alem-ap-pilha i.f { background: var(--cy); border-color: var(--cy); opacity: 1; box-shadow: 0 0 8px color-mix(in srgb, var(--alem-ciano, #36aeb0) 60%, transparent); }
.alem-ap-faixa h3 { font-size: 29px; line-height: 1.1; }
.alem-ap-faixa--3 h3 { color: var(--p); }
.alem-ap-preco { display: flex; align-items: baseline; gap: 6px; }
.alem-ap-preco b { font: 560 76px/.9 var(--alem-f-titulo, "Fraunces", serif); letter-spacing: -.018em; color: var(--vd); }
.alem-ap-faixa--3 .alem-ap-preco b { font: 600 76px/.9 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: 0; color: var(--cyc); text-shadow: 0 0 8px color-mix(in srgb, var(--alem-ciano, #36aeb0) 90%, transparent); }
.alem-ap-faixa--3 .alem-ap-preco .alem-ap-mono { color: var(--cyc); }
.alem-ap-bens { flex: 1; }
.alem-ap-ben { display: flex; gap: 12px; align-items: flex-start; padding: 11px 0; border-top: 1px solid color-mix(in srgb, var(--alem-tinta, #111213) 14%, transparent); font-size: 15px; line-height: 1.5; }
.alem-ap-faixa--3 .alem-ap-ben { border-top-color: var(--alem-linha-tela, #2c2d2e); }
.alem-ap-mk { width: 12px; height: 12px; margin-top: 5px; flex: none; border: 1px solid var(--vd); border-radius: 50%; box-shadow: inset 3.5px 0 0 0 var(--vd); }
.alem-ap-faixa--3 .alem-ap-mk { border-color: var(--cy); box-shadow: inset 3.5px 0 0 0 var(--cy); }
.alem-ap-ben.is-ant { color: var(--t2); }
.alem-ap-faixa--3 .alem-ap-ben.is-ant { color: var(--alem-texto2-tela, #a9a49c); }
.alem-ap-ben.is-ant .alem-ap-mk { box-shadow: none; background: var(--vd); }
.alem-ap-faixa--3 .alem-ap-ben.is-ant .alem-ap-mk { background: var(--cy); }
.alem-ap-escolher { display: inline-flex; align-items: center; justify-content: space-between; height: 48px; padding: 0 22px; border-radius: 999px; background: var(--alem-botao-fundo, #0c0d0e); color: var(--p); font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; box-shadow: 0 0 0 1px var(--nq); transition: box-shadow .24s; }
.alem-ap-escolher:is(:hover, :focus-visible) { color: var(--p); box-shadow: 0 0 0 1px var(--cy), 0 0 22px color-mix(in srgb, var(--alem-ciano, #36aeb0) 45%, transparent); }
.alem-ap-faixa--3 .alem-ap-escolher { background: var(--p); color: var(--nq); }
.alem-ap-faixa--3 .alem-ap-escolher:is(:hover, :focus-visible) { color: var(--nq); }
.alem-ap-faixa--avulsa { background: transparent; box-shadow: none; border: 1.5px dashed var(--ink); padding: 26px 24px; }
.alem-ap-lanc { padding: 3px 6px; border: 1px solid var(--alem-texto2-tela, #a9a49c); border-radius: 4px; font: 500 9.5px/1.2 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .14em; text-transform: uppercase; color: var(--t2); }
.alem-ap-faixa--avulsa p { margin: 0; font: 400 16px/1.55 var(--alem-f-leitura, "Source Serif 4", serif); color: var(--alem-texto-corpo, #1d1f21); }
.alem-ap-faixa--avulsa .alem-ap-peq { font-size: 14.5px; color: var(--alem-texto-suave, #3b3935); }
.alem-ap-campo { display: flex; align-items: center; gap: 8px; height: 52px; padding: 0 14px; border: 1.5px solid var(--alem-linha-forte, #c9c0b4); border-radius: 12px; background: var(--alem-campo, #fffdfa); color: var(--alem-texto2-tela, #a9a49c); }
.alem-ap-campo .alem-ap-mono { color: var(--alem-texto2-tela, #a9a49c); font-size: 13px; }
.alem-ap-campo-v { flex: 1; font: 400 22px/1 var(--alem-f-mono, "IBM Plex Mono", monospace); }
.alem-ap-aviso { margin-top: auto !important; padding-top: 12px; border-top: 1px solid var(--ln); font: 400 13px/1.5 var(--alem-f-interface, "Source Sans 3", sans-serif) !important; color: var(--t2) !important; }
.alem-ap-rodape { display: flex; justify-content: space-between; gap: 40px; margin-top: 22px; font-size: 14px; line-height: 1.5; color: var(--t2); }
.alem-ap-rodape span:last-child { display: flex; gap: 10px; align-items: center; flex: none; }
.alem-ap-rodape em { padding: 3px 6px; border: 1px solid var(--vd); border-radius: 4px; font: 500 9.5px/1.2 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .14em; text-transform: uppercase; font-style: normal; color: var(--vd); }

/* Antes de apoiar */
.alem-ap-faq { display: grid; grid-template-columns: 5fr 7fr; gap: 80px; padding: 64px 0 40px; border-top: 1px solid var(--ink); }
.alem-ap-faq h2 { margin: 14px 0 18px; font-size: clamp(34px, 3.8vw, 54px); line-height: 1.02; }
.alem-ap-faq-intro p { max-width: 36ch; margin: 0 0 26px; font: 400 18px/1.55 var(--alem-f-leitura, "Source Serif 4", serif); color: var(--alem-texto-suave, #3b3935); }
.alem-ap-conta { display: inline-flex; align-items: center; gap: 10px; height: 44px; padding: 0 20px; border: 1.5px solid var(--ink); border-radius: 999px; color: var(--ink); font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; transition: box-shadow .24s; }
.alem-ap-conta:is(:hover, :focus-visible) { color: var(--ink); box-shadow: 0 0 0 1px var(--cy), 0 0 16px color-mix(in srgb, var(--alem-ciano, #36aeb0) 35%, transparent); }
.alem-ap-faq-lista details { border-top: 1px solid var(--ln); }
.alem-ap-faq-lista summary { display: flex; align-items: center; gap: 18px; padding: 20px 0; list-style: none; cursor: pointer; }
.alem-ap-faq-lista summary::-webkit-details-marker { display: none; }
.alem-ap-faq-lista summary .alem-ap-mono { width: 22px; flex: none; }
.alem-ap-faq-lista summary b { font: 620 20px/1.3 var(--alem-f-titulo, "Fraunces", serif); letter-spacing: -.01em; }
.alem-ap-pm { position: relative; width: 30px; height: 30px; margin-left: auto; flex: none; border: 1.5px solid var(--ink); border-radius: 50%; transition: background .2s, border-color .2s, box-shadow .2s; }
.alem-ap-pm::before, .alem-ap-pm::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; background: currentColor; border-radius: 1px; }
.alem-ap-pm::after { transform: rotate(90deg); transition: transform .24s var(--alem-curva, cubic-bezier(.2,0,0,1)); }
.alem-ap-faq-lista details[open] .alem-ap-pm { background: var(--nq); border-color: var(--nq); color: var(--cyc); box-shadow: 0 0 12px color-mix(in srgb, var(--alem-ciano, #36aeb0) 50%, transparent); }
.alem-ap-faq-lista details[open] .alem-ap-pm::after { transform: rotate(0); }
.alem-ap-faq-lista details > p { max-width: 58ch; margin: -6px 0 22px 40px; font: 400 17px/1.6 var(--alem-f-leitura, "Source Serif 4", serif); color: var(--alem-texto-suave, #3b3935); }
.alem-ap-faq-lista summary:focus-visible { outline: 2px solid var(--vd); outline-offset: 3px; }
.alem-ap-barra { display: none; }

/* Celular */
@media (max-width: 1100px) {
  .alem-ap-hero { grid-template-columns: 1fr; gap: 36px; }
  .alem-ap-eclipse { left: auto; right: -80px; top: 40px; opacity: .8; }
  .alem-ap-grade { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 780px) {
  .alem-ap { width: auto; margin: 0 20px; padding-bottom: 96px; }
  .alem-ap-hero { padding: 22px 0 30px; gap: 22px; }
  .alem-ap-hero-copy { padding-top: 0; }
  .alem-ap-eclipse { left: 150px; right: auto; top: 10px; width: 304px; height: 230px; opacity: 1; }
  .alem-ap-eclipse i { width: 230px; height: 230px; }
  .alem-ap-eclipse i:first-child { left: 74px; background: repeating-linear-gradient(180deg, var(--alem-documento-sombra, #e2dccf) 0 2.6px, transparent 2.6px 5.1px); }
  .alem-ap-eclipse i:last-child { background: var(--alem-documento-sombra, #e2dccf); }
  .alem-ap-hero h1 { font-size: 52px; line-height: .96; margin: 14px 0 18px; letter-spacing: -.028em; }
  .alem-ap-hero h1 br { display: none; }
  .alem-ap-lead { max-width: none; font-size: 18.5px; margin: 18px 0 0; }
  .alem-ap-selos { display: none; }
  .alem-ap-painel { margin-top: 0; padding: 20px 16px 18px; gap: 12px; }
  .alem-ap-painel-head h2 { font-size: 24px; }
  .alem-ap-painel-head span { display: none; }
  .alem-ap-opc-t b { font-size: 17px; }
  .alem-ap-opc .alem-ap-visor { font-size: 20px; }
  .alem-ap-sustenta { grid-template-columns: 1fr; gap: 14px; padding: 44px 0 36px; border-top: 0; }
  .alem-ap-sustenta::before { content: none; }
  .alem-ap-sustenta > div:first-child::before { content: ""; display: block; height: 4px; margin-bottom: 20px; border-top: 3px solid var(--ink); border-bottom: 1px solid var(--ink); }
  .alem-ap-sustenta h2 { font-size: 36px; }
  .alem-ap-sustenta-texto { padding-top: 0; font-size: 17.5px; line-height: 1.6; }
  .alem-ap-capitular::first-letter { all: unset; }
  .alem-ap-fio { padding: 0 0 0 16px; }
  .alem-ap-duas { grid-template-columns: 1fr; gap: 18px; padding: 28px 20px 24px; margin: 0 -4px; }
  .alem-ap-duas h2 { font-size: 36px; }
  .alem-ap-duas-itens { grid-template-columns: 1fr; gap: 14px; }
  .alem-ap-faixas { padding: 40px 0 20px; }
  .alem-ap-faixas-head { flex-direction: column; align-items: flex-start; gap: 10px; }
  .alem-ap-faixas-head h2 { font-size: 32px; }
  .alem-ap-faixas-head p { font-size: 16px; max-width: none; }
  .alem-ap-grade { grid-template-columns: 1fr; gap: 16px; }
  .alem-ap-faixa { padding: 22px 20px 18px; }
  .alem-ap-faixa h3 { font-size: 26px; }
  .alem-ap-preco b, .alem-ap-faixa--3 .alem-ap-preco b { font-size: 64px; }
  .alem-ap-rodape { flex-direction: column; gap: 10px; }
  .alem-ap-faq { grid-template-columns: 1fr; gap: 24px; padding: 40px 0 20px; }
  .alem-ap-faq h2 { font-size: 34px; }
  .alem-ap-faq-lista summary b { font-size: 18px; }
  .alem-ap-faq-lista details > p { margin-left: 0; }
  .alem-ap-barra { position: fixed; z-index: 90; left: 12px; right: 12px; bottom: calc(20px + env(safe-area-inset-bottom, 0px)); display: flex; align-items: center; gap: 10px; padding: 6px 6px 6px 20px; border-radius: 999px; background: var(--nq); color: var(--p); box-shadow: 0 14px 30px color-mix(in srgb, var(--alem-nanquim, #0c0d0e) 30%, transparent), 0 0 0 1px color-mix(in srgb, var(--alem-ciano, #36aeb0) 40%, transparent); transform: translateY(160%); transition: transform .4s cubic-bezier(.05,.7,.1,1); }
  .alem-ap-barra.is-on { transform: none; }
  .alem-ap-barra span { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
  .alem-ap-barra small { font: 500 9.5px/1.2 var(--alem-f-mono, "IBM Plex Mono", monospace); letter-spacing: .14em; text-transform: uppercase; color: var(--cy); }
  .alem-ap-barra b { font: 600 14.5px/1.2 var(--alem-f-interface, "Source Sans 3", sans-serif); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .alem-ap-barra a { flex: none; height: 48px; padding: 0 22px; display: inline-flex; align-items: center; border-radius: 999px; background: var(--p); color: var(--nq); font: 700 11.5px/1 var(--alem-f-interface, "Source Sans 3", sans-serif); letter-spacing: .14em; text-transform: uppercase; }
}
@media (prefers-reduced-motion: reduce) { .alem-ap-barra, .alem-ap-opc, .alem-ap-pm::after { transition: none; } }
/* Cabeçalho: "Apoie o além" preenchido em verde-azulado nesta página. */
body.alem-support-page .alem-header-action.alem-header-apoie { background: var(--alem-verde-faixa, #067378) !important; border-color: var(--alem-verde-faixa, #067378) !important; color: var(--alem-texto-tela, #f6f3ee) !important; }
body.alem-support-page .alem-header-action.alem-header-apoie * { color: inherit !important; }
.alem-ap-cta svg { flex: none; }
.alem-ap { max-width: 100%; overflow-x: clip; }
.alem-ap-hero > *, .alem-ap-sustenta > *, .alem-ap-faq > *, .alem-ap-duas > *, .alem-ap-grade > * { min-width: 0; }
@media (max-width: 780px) { .alem-ap-hero { overflow: hidden; } .alem-ap-hero-copy h1 { overflow-wrap: break-word; } }
@media (max-width: 1100px) { .alem-ap-hero { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 780px) { .alem-ap-sustenta, .alem-ap-faq, .alem-ap-duas, .alem-ap-duas-itens, .alem-ap-grade { grid-template-columns: minmax(0, 1fr); } }
/* Folga sob o cabeçalho fixo (o título não pode ficar escondido atrás dele). */
.alem-ap { padding-top: 12px; }
.alem-ap-hero { padding-top: 48px; }
@media (max-width: 780px) { .alem-ap { padding-top: 20px; } .alem-ap-hero { padding-top: 30px; } }
body.alem-support-page .alem-header-action.alem-header-apoie { border-radius: 999px !important; padding-inline: 20px !important; min-height: 40px; display: inline-flex; align-items: center; }
