/* OFERTA · prancha de engenharia
   O produto e' construcao de sistema, entao a pagina e' a planta: papel tecnico,
   grade milimetrada, cotas na margem, carimbo de projeto e planilha de escopo.
   Base: versao C (a preferida) com a paleta e as regras do DESIGN.md.
   Todo o CSS vive sob .rt para poder virar fragmento WP-ready. As duas excecoes
   sao .rt-modal, que o captura.js pendura em document.body, fora da raiz. */

/* ---------- raiz ---------- */
.rt{
  /* superficies */
  --papel:#F1F4F9; --branco:#FFFFFF; --grade:#D6DEEA;
  --plano:#0A2550; --plano-2:#123A78;   /* a unica secao escura: blueprint */
  /* tinta */
  --tinta:#0C1526; --tinta-2:#4E5B72; --cota:#5D6A80; --fio:#8E9BB0;
  --claro:#A9C4EE;                       /* texto secundario sobre o blueprint */
  /* marca */
  --azul:#12459E; --azul-2:#0B2F6E; --azul-luz:#DDE7F8; --azul-claro:#7FB2FF;
  --sim:#0B7A3E; --nao:#B3271A; --verde:#25D366;
  /* tipos */
  --disp:'Archivo',-apple-system,'Segoe UI',sans-serif;
  --sans:'Poppins',-apple-system,'Segoe UI',sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  font-family:var(--sans); font-size:17px; line-height:1.7;
  color:var(--tinta); background:var(--papel);
  background-image:linear-gradient(var(--grade) 1px,transparent 1px),
                   linear-gradient(90deg,var(--grade) 1px,transparent 1px);
  background-size:28px 28px;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  caret-color:var(--azul);
}
.rt *,.rt *::before,.rt *::after{box-sizing:border-box}
.rt p,.rt h1,.rt h2,.rt h3,.rt h4,.rt ul,.rt ol,.rt dl,.rt dd,.rt figure,.rt blockquote{margin:0}
.rt ul,.rt ol{padding:0;list-style:none}
.rt img{max-width:100%;height:auto;display:block}
.rt a{color:var(--azul)}
.rt ::selection{background:var(--azul);color:#fff}
.rt :focus-visible{outline:2px solid var(--azul);outline-offset:2px}
.rt table,.rt .num{font-variant-numeric:tabular-nums}
.rt svg{flex:none}

/* ---------- tipografia ---------- */
.rt h1{font-family:var(--disp);font-size:clamp(33px,4.3vw,60px);line-height:1.02;
  font-weight:800;letter-spacing:-.035em;text-transform:uppercase}
.rt h2{font-family:var(--disp);font-size:clamp(26px,3vw,42px);line-height:1.06;
  font-weight:800;letter-spacing:-.032em;text-transform:uppercase}
.rt h3{font-family:var(--disp);font-size:21px;font-weight:700;letter-spacing:-.01em;line-height:1.25}
.rt .lead{font-size:clamp(17px,1.4vw,21px);line-height:1.6;color:var(--tinta-2)}
.rt .fraca{color:var(--tinta-2)}
.rt .cod{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.16em;
  text-transform:uppercase;color:var(--azul)}
.rt strong{font-weight:600}
.rt em{font-style:normal;color:var(--azul)}

/* ---------- estrutura ---------- */
.rt .wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.rt section{padding:92px 0;position:relative;scroll-margin-top:84px}
.rt .col{max-width:720px}
.rt .stack>*+*{margin-top:22px}
.rt .stack-s>*+*{margin-top:14px}
.rt .branco{background:var(--branco);background-image:none}
.rt section+section::before{content:'';position:absolute;left:24px;right:24px;top:0;
  border-top:1px dashed var(--fio);opacity:.6}

/* cota de margem: o numero da secao vive na goteira, nunca como bloco em cima do titulo */
.rt .cota-secao{position:absolute;left:26px;top:92px;font-family:var(--mono);font-size:12px;
  font-weight:500;letter-spacing:.2em;color:var(--cota);writing-mode:vertical-rl;text-transform:uppercase}

/* medida horizontal, a assinatura da prancha */
.rt .medida{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:15px;
  font-weight:500;letter-spacing:.03em;color:var(--cota)}
.rt .medida::before,.rt .medida::after{content:'';height:1px;background:var(--grade);flex:1}

/* paragrafo cotado: fio azul a esquerda com serifas de cota */
.rt .cotado{position:relative;padding-left:34px}
.rt .cotado::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:1px;background:var(--azul)}
.rt .cotado::after{content:'';position:absolute;left:-4px;top:8px;width:9px;height:1px;background:var(--azul)}

/* ---------- topo ---------- */
.rt .util{background:var(--tinta);color:#EAF0FA;font-family:var(--mono);font-size:15px;
  font-weight:500;letter-spacing:.03em}
.rt .util .wrap{display:flex;justify-content:space-between;gap:16px;padding-top:9px;padding-bottom:9px}
.rt .util b{color:var(--azul-claro);font-weight:500}
.rt header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.95);
  backdrop-filter:saturate(140%) blur(10px);border-bottom:2px solid var(--tinta)}
.rt header .wrap{display:flex;align-items:center;gap:28px;padding-top:13px;padding-bottom:13px}
.rt header img{width:74px}
.rt nav{display:flex;gap:24px;margin-left:auto;font-family:var(--mono);font-size:12px;
  font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.rt nav a{color:var(--tinta-2);text-decoration:none;padding:4px 0;border-bottom:1px solid transparent}
.rt nav a:hover{color:var(--azul);border-bottom-color:var(--azul)}

/* ---------- botoes ---------- */
.rt .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;
  padding:0 26px;border:2px solid var(--azul);border-radius:0;cursor:pointer;background:var(--azul);
  color:#fff;font:600 15px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;
  text-decoration:none;transition:background .16s,border-color .16s,color .16s}
.rt .btn:hover{background:var(--azul-2);border-color:var(--azul-2)}
.rt .btn-2{background:transparent;color:var(--azul)}
.rt .btn-2:hover{background:var(--azul);color:#fff}
.rt .btn-claro{background:#fff;border-color:#fff;color:var(--plano)}
.rt .btn-claro:hover{background:var(--azul-claro);border-color:var(--azul-claro);color:var(--plano)}
.rt .btn-mini{height:42px;padding:0 16px;font-size:12px}
.rt .btns{display:flex;flex-wrap:wrap;gap:12px}
.rt .nota-btn{font-family:var(--mono);font-size:15px;line-height:1.6;color:var(--tinta-2);max-width:52ch}

/* ---------- dobra ---------- */
.rt .hero{padding:60px 0 84px}
.rt .hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,392px);gap:56px;align-items:start}
/* .rotulo removido: era kicker acima do h1, que o DESIGN.md bane */

.rt .rotulo b{color:var(--azul);font-weight:600}
.rt .marca-h1{background:linear-gradient(180deg,transparent 62%,var(--azul-luz) 62%);
  padding:0 .06em;color:inherit}

/* carimbo de projeto */
.rt .carimbo{border:2px solid var(--tinta);background:#fff;box-shadow:6px 6px 0 var(--azul-luz)}
.rt .carimbo .cab{border-bottom:2px solid var(--tinta);padding:12px 16px;display:flex;
  justify-content:space-between;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;
  font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-2)}
.rt .carimbo .cab b{color:var(--azul);font-weight:600}
.rt .carimbo>img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 18%;
  filter:grayscale(1) contrast(1.06);border-bottom:2px solid var(--tinta)}
.rt .carimbo dl div{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px;
  padding:11px 16px;border-bottom:1px solid var(--grade)}
.rt .carimbo dl div:last-child{border-bottom:0}
.rt .carimbo dt{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.12em;
  text-transform:uppercase;color:var(--tinta-2);padding-top:4px}
.rt .carimbo dd{font-weight:600;font-size:15px;line-height:1.45;display:flex;align-items:center;gap:8px}
.rt .carimbo dd svg{width:15px;height:15px;color:var(--azul)}

/* selos da dobra */
.rt .selos{display:flex;flex-wrap:wrap;gap:8px}
.rt .selo{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--grade);background:#fff;
  padding:8px 13px;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tinta-2)}
.rt .selo svg{width:14px;height:14px;color:var(--azul)}

/* ---------- 03 · promessa: os tres caminhos ---------- */
.rt .caminhos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;
  border:2px solid var(--tinta);background:#fff}
.rt .caminhos>li{padding:26px 22px;border-right:1px solid var(--grade);display:flex;
  flex-direction:column;gap:12px}
.rt .caminhos>li:last-child{border-right:0}
.rt .caminhos>li[data-alvo]{background:var(--azul-luz);outline:2px solid var(--azul);outline-offset:-2px}
.rt .caminhos .via{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tinta-2)}
.rt .caminhos>li[data-alvo] .via{color:var(--azul)}
.rt .caminhos .preco{font-family:var(--disp);font-size:15px;font-weight:700;text-transform:uppercase;
  letter-spacing:-.01em;display:flex;align-items:center;gap:8px}
.rt .caminhos p{font-size:17px;line-height:1.6;color:var(--tinta-2)}
.rt .caminhos svg{width:16px;height:16px}

/* ---------- 04 · metodo ---------- */
.rt .modos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:2px solid var(--tinta);
  background:#fff;margin-bottom:38px}
.rt .modos>div{padding:20px 22px;border-right:1px solid var(--grade);display:flex;gap:12px;align-items:flex-start}
.rt .modos>div:last-child{border-right:0}
.rt .modos svg{width:19px;height:19px;color:var(--azul);margin-top:2px}
.rt .modos b{display:block;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:3px}
.rt .modos span{font-size:15px;line-height:1.5;color:var(--tinta-2)}
.rt .etapas{border-top:2px solid var(--tinta)}
.rt .etapas>li{display:grid;grid-template-columns:106px 250px minmax(0,1fr);gap:24px;padding:22px 0;
  border-bottom:1px solid var(--grade);align-items:start;transition:background .18s}
.rt .etapas>li:hover{background:#fff}
.rt .etapas .id{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--azul);
  letter-spacing:.06em;padding-top:5px;display:flex;align-items:center;gap:8px;white-space:nowrap}
.rt .etapas .id svg{width:13px;height:13px}
.rt .etapas p{font-size:17px;line-height:1.6;color:var(--tinta-2)}

/* ---------- 05 · prova: o blueprint ---------- */
.rt .plano{background:var(--plano);background-image:
  linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:28px 28px;color:#fff}
.rt .plano h2{color:#fff}
.rt .plano .lead,.rt .plano p{color:var(--claro)}
.rt .plano .medida{color:var(--claro)}
.rt .plano .medida::before,.rt .plano .medida::after{background:rgba(169,196,238,.35)}
.rt .plano .cota-secao{color:var(--claro)}
.rt .plano .cotado::before,.rt .plano .cotado::after{background:var(--azul-claro)}
.rt .sistemas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rt .sistemas>li{border:1px solid rgba(169,196,238,.34);background:rgba(255,255,255,.045);
  padding:24px 22px;display:flex;flex-direction:column;gap:13px}
.rt .sistemas .top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rt .sistemas .ramo{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:var(--claro)}
.rt .sistemas svg{width:22px;height:22px;color:var(--azul-claro)}
.rt .sistemas h3{color:#fff;font-size:21px}
.rt .sistemas p{font-size:17px;line-height:1.6}
.rt .sistemas .estado{margin-top:auto;padding-top:13px;border-top:1px solid rgba(169,196,238,.24);
  font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;display:flex;align-items:center;gap:8px}
.rt .sistemas .estado::before{content:'';width:7px;height:7px;background:var(--verde);flex:none}
.rt .honesto{margin-top:34px;border:1px solid rgba(169,196,238,.34);padding:22px 24px;
  display:flex;gap:16px;align-items:flex-start;max-width:820px}
.rt .honesto svg{width:22px;height:22px;color:var(--azul-claro);margin-top:2px}
.rt .honesto p{font-size:17px;line-height:1.65}

/* ---------- 06 · quem esta falando ---------- */
.rt .quem-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:52px;align-items:start}
.rt .retrato{border:2px solid var(--tinta);background:#fff;padding:10px;box-shadow:6px 6px 0 var(--azul-luz)}
.rt .retrato img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 22%;filter:grayscale(1) contrast(1.05)}
.rt .retrato figcaption{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tinta-2);padding:11px 4px 3px;display:flex;justify-content:space-between;gap:10px}
.rt .placar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:2px solid var(--tinta);background:#fff}
.rt .placar>div{padding:20px 20px;border-right:1px solid var(--grade)}
.rt .placar>div:last-child{border-right:0}
.rt .placar b{display:block;font-family:var(--disp);font-size:34px;font-weight:800;letter-spacing:-.03em;
  line-height:1;color:var(--azul)}
.rt .placar span{display:block;margin-top:7px;font-family:var(--mono);font-size:12px;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;color:var(--tinta-2)}

/* ---------- 07 · o limite ---------- */
.rt .limite{border-top:2px solid var(--tinta)}
.rt .limite>li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:18px;padding:20px 0;
  border-bottom:1px solid var(--grade);align-items:start}
.rt .limite svg{width:22px;height:22px;color:var(--nao);margin-top:2px}
.rt .limite b{display:block;font-family:var(--disp);font-size:21px;font-weight:700;letter-spacing:-.01em;margin-bottom:5px}
.rt .limite p{font-size:17px;line-height:1.6;color:var(--tinta-2)}
.rt .desvio{margin-top:32px;border:2px solid var(--azul);background:#fff;padding:24px 26px;
  display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.rt .desvio div{max-width:56ch}
.rt .desvio b{font-family:var(--disp);font-size:21px;font-weight:700;letter-spacing:-.01em;display:block;margin-bottom:4px}
.rt .desvio p{font-size:17px;color:var(--tinta-2);line-height:1.6}

/* ---------- 08 · o que entra ---------- */
.rt .tabela-rola{padding:14px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:2px solid var(--tinta);background:#fff}
.rt .escopo{width:100%;min-width:560px;border-collapse:collapse}
.rt .escopo caption{text-align:left;padding:14px 18px;border-bottom:1px solid var(--grade);
  font-family:var(--mono);font-size:15px;font-weight:500;letter-spacing:.03em;color:var(--tinta-2)}
.rt .escopo th{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;text-align:left;padding:13px 18px;border-bottom:2px solid var(--tinta);background:var(--azul-luz)}
.rt .escopo td{padding:14px 18px;border-bottom:1px solid var(--grade);font-size:17px;vertical-align:top;line-height:1.55}
.rt .escopo tr:last-child td{border-bottom:0}
.rt .escopo .marca-td{width:150px;white-space:nowrap}
.rt .escopo .s,.rt .escopo .n{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);
  font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.rt .escopo .s{color:var(--sim)}
.rt .escopo .n{color:var(--nao)}
.rt .escopo svg{width:14px;height:14px}
.rt .escopo td small{display:block;font-family:var(--sans);font-size:15px;color:var(--tinta-2);margin-top:3px}

/* ---------- 09 · garantia ---------- */
.rt .garantia{border:2px solid var(--tinta);background:#fff;display:grid;
  grid-template-columns:minmax(0,120px) minmax(0,1fr)}
.rt .garantia .sigilo{border-right:2px solid var(--tinta);background:var(--azul-luz);
  display:grid;place-items:center;padding:22px}
.rt .garantia .sigilo svg{width:52px;height:52px;color:var(--azul)}
.rt .garantia .corpo{padding:30px 32px}
.rt .garantia h3{font-size:26px;margin-bottom:12px}
.rt .garantia p{font-size:17px;line-height:1.65;color:var(--tinta-2);max-width:62ch}
.rt .garantia p+p{margin-top:12px}

/* ---------- 10 · para quem e / nao e ---------- */
.rt .duas{padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:2px solid var(--tinta);background:#fff}
.rt .duas>div{padding:0}
.rt .duas>div:first-child{border-right:1px solid var(--grade)}
.rt .duas h3{padding:16px 22px;border-bottom:2px solid var(--tinta);font-family:var(--mono);
  font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:9px}
.rt .duas .sim h3{background:rgba(11,122,62,.09);color:var(--sim)}
.rt .duas .nao h3{background:rgba(179,39,26,.08);color:var(--nao)}
.rt .duas h3 svg{width:15px;height:15px}
.rt .duas li{padding:15px 22px;border-bottom:1px solid var(--grade);font-size:17px;line-height:1.55;
  display:grid;grid-template-columns:16px minmax(0,1fr);gap:12px;align-items:start}
.rt .duas li:last-child{border-bottom:0}
.rt .duas li svg{width:16px;height:16px;margin-top:4px}
.rt .duas .sim li svg{color:var(--sim)}
.rt .duas .nao li svg{color:var(--nao)}

/* ---------- 11 · perguntas ---------- */
.rt .qa{padding-top:6px;border-top:2px solid var(--tinta);background:#fff}
.rt details.q{border-bottom:1px solid var(--grade)}
.rt details.q summary{list-style:none;cursor:pointer;padding:19px 22px;display:flex;align-items:center;
  justify-content:space-between;gap:20px;font-family:var(--disp);font-size:21px;font-weight:700;letter-spacing:-.01em}
.rt details.q summary::-webkit-details-marker{display:none}
.rt details.q summary:hover{color:var(--azul)}
.rt details.q .mais{flex:none;width:24px;height:24px;display:grid;place-items:center;
  border:1px solid var(--tinta);color:var(--azul);font-family:var(--mono);font-size:15px;line-height:1;transition:transform .22s}
.rt details.q[open] .mais{transform:rotate(45deg);background:var(--azul);color:#fff;border-color:var(--azul)}
.rt details.q .corpo{padding:0 22px 20px;color:var(--tinta-2);font-size:17px;line-height:1.7;max-width:72ch}

/* ---------- 12 · fechamento ---------- */
.rt .fecho{border:2px solid var(--tinta);background:#fff;padding:52px 44px;
  box-shadow:8px 8px 0 var(--azul-luz);display:grid;gap:26px;justify-items:start}
.rt .fecho h2{max-width:20ch}

/* ---------- rodape ---------- */
.rt footer{background:var(--tinta);color:#C9D6EA;padding:34px 0}
.rt footer .wrap{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:center;
  font-family:var(--mono);font-size:15px;font-weight:500;letter-spacing:.03em}
.rt footer img{width:66px;opacity:.92}

/* ---------- barra de acao no mobile ---------- */
.rt .acao{position:fixed;left:0;right:0;bottom:0;z-index:900;display:none;
  padding:11px 16px calc(11px + env(safe-area-inset-bottom));background:#fff;border-top:2px solid var(--tinta)}
.rt .acao .btn{width:100%}

/* ---------- entrada suave ---------- */
.js-anima .rt [data-anima]{opacity:0;transform:translateY(14px)}
.js-anima .rt [data-anima].visivel{opacity:1;transform:none;transition:opacity .5s ease,transform .5s ease}
@media (prefers-reduced-motion:reduce){
  .js-anima .rt [data-anima]{opacity:1;transform:none;transition:none}
}

/* ---------- responsivo ---------- */
@media (max-width:1040px){
  .rt nav,.rt .cota-secao{display:none}
  .rt .hero-grid,.rt .quem-grid{grid-template-columns:1fr;gap:36px}
  .rt .carimbo{max-width:460px}
  .rt .retrato{max-width:380px}
  .rt .etapas>li{grid-template-columns:64px minmax(0,1fr);gap:16px}
  .rt .etapas h3{grid-column:2}
  .rt .etapas p{grid-column:2}
  .rt .sistemas{grid-template-columns:1fr}
  .rt .caminhos,.rt .modos,.rt .placar{grid-template-columns:1fr}
  .rt .caminhos>li,.rt .modos>div,.rt .placar>div{border-right:0;border-bottom:1px solid var(--grade)}
  .rt .caminhos>li:last-child,.rt .modos>div:last-child,.rt .placar>div:last-child{border-bottom:0}
}
@media (max-width:760px){
  .rt section{padding:60px 0;scroll-margin-top:70px}
  .rt .hero{padding:40px 0 56px}
  .rt .duas{grid-template-columns:1fr}
  .rt .duas>div:first-child{border-right:0;border-bottom:2px solid var(--tinta)}
  .rt .garantia{grid-template-columns:1fr}
  .rt .garantia .sigilo{border-right:0;border-bottom:2px solid var(--tinta);padding:20px}
  .rt .garantia .sigilo svg{width:42px;height:42px}
  .rt .garantia .corpo{padding:26px 22px}
  .rt .fecho{padding:34px 24px;box-shadow:5px 5px 0 var(--azul-luz)}
  .rt .btn{width:100%}
  .rt .btns{flex-direction:column;align-items:stretch}
  .rt .acao{display:block}
  .rt footer{padding-bottom:94px}
  .rt .util .wrap{font-size:15px;letter-spacing:.02em;gap:10px}
  .rt .util span:last-child{display:none}
  .rt .desvio{flex-direction:column;align-items:stretch}
}

/* ---------- pop-up de captura ----------
   Fica FORA de .rt de proposito: o captura.js pendura o modal em document.body.
   Se estas regras forem escopadas na raiz, o cartao aparece sem estilo nenhum. */
/* box-sizing NAO herda daqui: o reset mora em `.rt *` e o modal vive fora da raiz.
   Sem esta linha o cartao mede 500px com max-width:432px e o input vaza 30px dele.
   Medido no navegador em 27/08/2026. O mesmo defeito esta no css/rt.css antigo. */
.rt-modal,.rt-modal *,.rt-modal *::before,.rt-modal *::after{box-sizing:border-box}
.rt-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;
  background:rgba(10,26,58,.62);padding:24px;font-family:'Poppins',-apple-system,sans-serif;
  backdrop-filter:blur(4px)}
.rt-modal[data-open='true']{display:flex}
.rt-modal__card{background:#fff;border:2px solid #0C1526;width:100%;max-width:432px;padding:32px;
  box-shadow:10px 10px 0 rgba(18,69,158,.22)}
.rt-modal__card h3{font-family:'Archivo',sans-serif;font-size:26px;font-weight:800;letter-spacing:-.03em;
  text-transform:uppercase;line-height:1.06;color:#0C1526;margin:0 0 9px}
.rt-modal__card p{font-size:15px;color:#4E5B72;margin:0 0 22px;line-height:1.6}
.rt-modal label{display:block;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;
  font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#4E5B72;margin-bottom:6px}
.rt-modal input{width:100%;height:50px;padding:0 14px;margin-bottom:16px;
  font:400 16px/1 'Poppins',-apple-system,sans-serif;color:#0C1526;border:1px solid #C3CEDF;
  border-radius:0;background:#F1F4F9}
.rt-modal input:focus{outline:2px solid #12459E;outline-offset:1px;border-color:#12459E;background:#fff}
.rt-modal input[aria-invalid='true']{border-color:#B3271A;background:#fff}
.rt-modal__card p.rt-modal__erro{display:none;font-size:15px;color:#B3271A;margin:-8px 0 16px;line-height:1.5;font-weight:500}
.rt-modal__card p.rt-modal__erro[data-show='true']{display:block}
/* o botao do modal e' de WhatsApp: verde da marca com tinta escura.
   Branco sobre esse verde da' 1.98:1 e reprova. */
.rt-modal .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;
  padding:0 22px;border:2px solid #25D366;background:#25D366;color:#0C1526;cursor:pointer;
  font:600 13.5px/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;
  border-radius:0;transition:background .16s,border-color .16s}
.rt-modal .btn:hover{background:#1FBA59;border-color:#1FBA59}
.rt-modal__card p.rt-modal__legal{font-size:12px;color:#4E5B72;margin:16px 0 0;line-height:1.55}
.rt-modal__fechar{background:none;border:0;color:#4E5B72;font-size:15px;cursor:pointer;padding:10px;
  margin-top:6px;width:100%;font-family:inherit;text-decoration:underline}
.rt-modal__fechar:hover{color:#0C1526}

/* marca de cliente dentro do blueprint: a logo real vale mais que icone generico */
.rt .sistemas .logo-cliente{width:auto;height:22px;opacity:.95;filter:brightness(0) invert(1)}

/* estado da barra fixa: some enquanto a dobra estiver na tela (ver script na pagina) */
.rt .acao[data-oculta='true']{transform:translateY(105%);pointer-events:none}
.rt .acao{transition:transform .22s ease}
@media (prefers-reduced-motion:reduce){ .rt .acao{transition:none} }

/* Estado do produto na dobra. Entrou no lugar do rotulo com nome e preco, que
   o DESIGN.md bane como kicker e que a ficha ao lado ja repetia. Este carrega
   informacao nova: onde o curso esta agora. */
.rt .estado-lp{display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--azul);border:1px solid var(--azul);background:var(--azul-luz);
  padding:7px 14px}
.rt .estado-lp i{width:7px;height:7px;border-radius:50%;background:var(--azul);flex:none}

/* ---------- lista de sintomas ----------
   Cinco itens num grid de tres colunas deixam uma celula vazia e a borda
   quebrada no meio. Sintoma se le em lista, um embaixo do outro, e o numero
   a esquerda serve de ancora para o olho. */
.rt .sintomas{border-top:2px solid var(--tinta);max-width:900px}
.rt .sintomas>li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;
  padding:19px 0;border-bottom:1px solid var(--grade);align-items:baseline}
.rt .sintomas .n-s{font-family:var(--mono);font-size:12px;font-weight:600;
  color:var(--azul);letter-spacing:.06em}
.rt .sintomas p{font-size:17px;line-height:1.6;color:var(--tinta)}
@media (max-width:640px){
  .rt .sintomas>li{grid-template-columns:38px minmax(0,1fr);gap:14px}
}

/* ---------- caso Toledo: cabecalho com a marca do cliente ---------- */
.rt .cab-caso{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.rt .cab-caso .marca-cliente{height:38px;width:auto;flex:none}
.rt .cab-caso .selo-caso{font-family:var(--mono);font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--claro);border:1px solid rgba(169,196,238,.4);
  padding:6px 12px}
/* o texto de abertura acompanha a largura dos cartoes, nao a coluna estreita */
.rt .plano .abre{max-width:860px}

/* ---------- esteira de avisos ---------- */
/* O follow-up e' o que o cliente FINAL ve, entao merece a forma de esteira:
   uma etapa puxa a outra, e da' para ler o caminho inteiro de um golpe. */
.rt .esteira{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;
  border:1px solid rgba(169,196,238,.34);background:rgba(255,255,255,.045);
  margin-top:20px;max-width:none;width:100%}
.rt .esteira>li{padding:22px 20px;border-right:1px solid rgba(169,196,238,.22);
  display:flex;flex-direction:column;gap:9px;position:relative}
.rt .esteira>li:last-child{border-right:0}
.rt .esteira .passo-n{font-family:var(--mono);font-size:12px;font-weight:600;
  letter-spacing:.1em;color:var(--azul-claro)}
.rt .esteira h4{font-family:var(--disp);font-size:17px;font-weight:700;
  letter-spacing:-.01em;color:#fff;margin:0;line-height:1.25}
.rt .esteira p{font-size:15px;line-height:1.55;color:var(--claro)}
/* a seta que liga uma etapa na outra */
.rt .esteira>li:not(:last-child)::after{content:"";position:absolute;right:-6px;top:32px;
  width:11px;height:11px;border-right:2px solid var(--azul-claro);
  border-bottom:2px solid var(--azul-claro);transform:rotate(-45deg);
  background:var(--plano)}
@media (max-width:900px){
  .rt .esteira{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rt .esteira>li:nth-child(2){border-right:0}
  .rt .esteira>li:nth-child(-n+2){border-bottom:1px solid rgba(169,196,238,.22)}
  .rt .esteira>li::after{display:none}
}
@media (max-width:560px){
  .rt .esteira{grid-template-columns:1fr}
  .rt .esteira>li{border-right:0;border-bottom:1px solid rgba(169,196,238,.22)}
  .rt .esteira>li:last-child{border-bottom:0}
}

/* o texto fica colado no titulo; a sobra vai para o fim do cartao mais curto,
   que incomoda menos que um vao no meio da leitura */
.rt .sistemas>li{justify-content:flex-start}

/* ---------- area limpa sobre a prancha ----------
   A grade cruzava por tras de todo texto corrido e competia com a leitura.
   Numa planta de verdade a grade e' o papel, mas a anotacao vive numa area
   limpa. Aqui o texto ganha esse colchao: fundo de papel solido, sem borda e
   sem sombra, entao continua sendo pagina e nao vira card dentro de card.
   O respiro negativo faz o colchao ultrapassar o texto sem mexer no ritmo. */
.rt .col,
.rt .hero .stack,
.rt .fecho,
.rt .honesto{position:relative}
.rt .col::before,
.rt .hero .stack::before{content:"";position:absolute;inset:-26px -30px;
  background:var(--papel);z-index:-1;pointer-events:none;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 30px,#000 calc(100% - 30px),transparent 100%),
                     linear-gradient(to bottom,transparent 0,#000 26px,#000 calc(100% - 26px),transparent 100%);
          mask-image:linear-gradient(to right,transparent 0,#000 30px,#000 calc(100% - 30px),transparent 100%),
                     linear-gradient(to bottom,transparent 0,#000 26px,#000 calc(100% - 26px),transparent 100%);
  -webkit-mask-composite:source-in; mask-composite:intersect}
/* o miolo de leitura tambem: sem isso a grade volta a cruzar os paragrafos */
.rt section>.wrap>.col{isolation:isolate}
