/* /premiss — a sugestão para o Plano de Governo do Paraná: página em fluxo sobre a grade da
   home (4 colunas de 280u com calha de 16u), seções alternando escuro, claro e cinza, o
   mapa do Paraná em matriz de pontos, a rota pinada na horizontal, o documento com botão
   de copiar, o painel de indicadores vazio de propósito e uma folha de impressão. */

html:not(.is-ready):not(.is-shot) .pm-rv, html:not(.is-ready):not(.is-shot) .pm-hero__chips,
html:not(.is-ready):not(.is-shot) .pm-hero__nota, html:not(.is-ready):not(.is-shot) .pm-hero__map{visibility:hidden}

/* raio 3D (js/brand/bolt.js) */
.br-bolt3d{position:fixed; inset:0; width:100%; height:100%; z-index:5; pointer-events:none; display:block}

/* ---------------------------------------------------------------- seção e cabeçalho */
.pm-sec{position:relative; z-index:3; padding:calc(118 * var(--vhu)) var(--gutter) calc(118 * var(--vhu))}
.pm-sec--dark{background:#0C0C0C; color:#fff}
.pm-sec--light{background:#fff; color:#0C0C0C}
.pm-sec--grey{background:#F5F5F5; color:#0C0C0C}
.pm-head{display:grid; grid-template-columns:repeat(4, 1fr); column-gap:calc(16 * var(--u))}
.pm-head__label{grid-column:1; grid-row:1; align-self:start; font-size:calc(8 * var(--u)); color:#6E6E6E}
.pm-sec--dark .pm-head__label{color:#8A8A8A}
.pm-head__h2{grid-column:2 / span 3; grid-row:1; font-size:calc(52 * var(--u)); line-height:calc(58 * var(--vhu)); color:#0C0C0C}
.pm-sec--dark .pm-head__h2{color:#fff}
.pm-head__h2 span{display:block; width:fit-content}
.pm-head__h2 .dim{color:#A9A9A9}
.pm-sec--dark .pm-head__h2 .dim{color:#555}
.pm-head__lead{grid-column:2 / span 2; grid-row:2; width:calc(500 * var(--u)); margin-top:calc(34 * var(--vhu)); font-size:calc(13 * var(--u)); line-height:calc(17.4 * var(--vhu)); color:#2E2E2E}
.pm-sec--dark .pm-head__lead{color:#C2C2C2}
.pm-body{margin-top:calc(70 * var(--vhu)); display:grid; grid-template-columns:repeat(4, 1fr); column-gap:calc(16 * var(--u))}
.pm-body > *{grid-column:2 / span 3; min-width:0}
.pm-body--full > *{grid-column:1 / span 4}
.pm-aside{grid-column:1; align-self:start; position:sticky; top:calc(70 * var(--u))}
.pm-aside b{display:block; font-family:var(--font-display); font-variation-settings:'wdth' var(--disp-wdth),'wght' 760; font-weight:normal; font-size:calc(17 * var(--u)); line-height:calc(19 * var(--vhu)); text-transform:uppercase; color:#0C0C0C}
.pm-sec--dark .pm-aside b{color:#fff}
.pm-aside p{margin-top:calc(12 * var(--vhu)); font-size:calc(11 * var(--u)); line-height:calc(14 * var(--vhu)); color:#6E6E6E; width:calc(240 * var(--u))}
.pm-sec--dark .pm-aside p{color:#8A8A8A}

/* texto, destaque, chips */
.pm-prosa{display:flex; flex-direction:column; gap:calc(12 * var(--vhu)); width:calc(560 * var(--u))}
.pm-prosa p{font-size:calc(12.5 * var(--u)); line-height:calc(16.5 * var(--vhu)); color:#333}
.pm-sec--dark .pm-prosa p{color:#C2C2C2}
.pm-destaque{width:fit-content; max-width:calc(640 * var(--u)); padding:calc(4 * var(--vhu)) 0 calc(4 * var(--vhu)) calc(22 * var(--u)); border-left:1px solid #0C0C0C; font-size:calc(24 * var(--u)); line-height:calc(27 * var(--vhu)); color:#0C0C0C}
.pm-sec--dark .pm-destaque{border-left-color:#fff; color:#fff}
/* destaque em texto corrido (para frases longas, que em caixa alta viram parede) */
.pm-destaque--texto{font-family:var(--font-body); font-variation-settings:normal; text-transform:none; font-weight:500; font-size:calc(16 * var(--u)); line-height:calc(22 * var(--vhu)); max-width:calc(600 * var(--u))}
/* estado: rótulo mono com um quadrado de cor, sem cápsula */
.pm-chip{display:inline-flex; align-items:center; gap:calc(6 * var(--u)); line-height:1; font-family:var(--font-mono); font-size:calc(7 * var(--u)); font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:#6E6E6E; white-space:nowrap}
.pm-chip::before{content:''; flex:none; width:calc(5 * var(--u)); height:calc(5 * var(--u)); background:currentColor}
.pm-chip--ok{color:#1A6B3D}
.pm-chip--conf{color:#B84300}
.pm-chip--vaga{color:#8A8A8A}
.pm-chip--vaga::before{background:transparent; box-shadow:inset 0 0 0 1px currentColor}
.pm-sec--dark .pm-chip{color:#9A9A9A}
.pm-sec--dark .pm-chip--ok{color:#94F2CC}
.pm-sec--dark .pm-chip--conf{color:#FF9A5C}
/* fichas: corrida de itens separados por fio vertical */
.pm-fichas{display:flex; flex-wrap:wrap; gap:calc(8 * var(--vhu)) 0}
.pm-fichas li{display:inline-flex; align-items:center; padding:0 calc(12 * var(--u)); border-left:1px solid #D6D6D6; font-size:calc(10.5 * var(--u)); line-height:calc(13 * var(--vhu)); color:#0C0C0C; white-space:nowrap}
.pm-fichas li:first-child{padding-left:0; border-left:0}
.pm-sec--dark .pm-fichas li{border-left-color:#3A3A3A; color:#fff}
.pm-lbl{font-size:calc(7.5 * var(--u)); color:#6E6E6E; margin-bottom:calc(12 * var(--vhu))}
.pm-sec--dark .pm-lbl{color:#8A8A8A}
.pm-nota{display:grid; grid-template-columns:calc(120 * var(--u)) 1fr; column-gap:calc(12 * var(--u)); padding:calc(16 * var(--vhu)) calc(18 * var(--u)); border:1px solid #0C0C0C; width:calc(640 * var(--u))}
.pm-nota b{font-family:var(--font-mono); font-weight:500; font-size:calc(7.5 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#0C0C0C}
.pm-nota p{font-size:calc(11.5 * var(--u)); line-height:calc(14.5 * var(--vhu)); color:#333}
.pm-sec--dark .pm-nota{border-color:#fff}
.pm-sec--dark .pm-nota b{color:#fff}
.pm-sec--dark .pm-nota p{color:#C2C2C2}

/* linhas numeradas (o padrão values da home, em fluxo) */
.pm-rows{border-top:1px solid #E4E4E4}
.pm-sec--dark .pm-rows{border-top-color:#2A2A2A}
.pm-row{position:relative; display:grid; grid-template-columns:calc(44 * var(--u)) calc(230 * var(--u)) 1fr; column-gap:calc(16 * var(--u)); align-items:start; padding:calc(20 * var(--vhu)) 0 calc(22 * var(--vhu)); border-bottom:1px solid #E4E4E4; cursor:none}
.pm-sec--dark .pm-row{border-bottom-color:#2A2A2A}
.pm-row .hair{position:absolute; left:0; right:0; bottom:-1px; height:1px; background:#0C0C0C; transform:scaleX(0); transform-origin:left center}
.pm-sec--dark .pm-row .hair{background:#fff}
.pm-row .n{font-size:calc(9.5 * var(--u)); color:#B0B0B0; transition:color .3s ease; padding-top:calc(3 * var(--vhu))}
.pm-sec--dark .pm-row .n{color:#555}
.pm-row .t{font-size:calc(19 * var(--u)); line-height:calc(21 * var(--vhu)); color:#0C0C0C}
.pm-sec--dark .pm-row .t{color:#fff}
.pm-row .k{display:block; margin-top:calc(6 * var(--vhu)); font-family:var(--font-mono); font-size:calc(7 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#0A16C8}
.pm-sec--dark .pm-row .k{color:#8F9BFF}
.pm-row .d{font-size:calc(11.5 * var(--u)); line-height:calc(14.5 * var(--vhu)); color:#5A5A5A; width:calc(470 * var(--u)); transition:color .3s ease}
.pm-sec--dark .pm-row .d{color:#B0B0B0}
.pm-row .d b{display:block; font-weight:500; color:#0C0C0C; margin-bottom:calc(4 * var(--vhu))}
.pm-sec--dark .pm-row .d b{color:#fff}
.pm-row:hover .n, .pm-row:hover .d{color:#0C0C0C}
.pm-sec--dark .pm-row:hover .n, .pm-sec--dark .pm-row:hover .d{color:#fff}

/* ================================================================= 01 · HERO */
#pm-hero{position:relative; z-index:2; min-height:100vh; background:#0C0C0C; color:#fff; padding:calc(126 * var(--vhu)) var(--gutter) calc(56 * var(--vhu)); display:grid; grid-template-columns:repeat(4, 1fr); column-gap:calc(16 * var(--u)); overflow:clip}
#pm-hero::before{content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(ellipse 50% 55% at 76% 48%, rgba(79,168,69,.16) 0%, rgba(79,168,69,0) 70%), radial-gradient(ellipse 40% 45% at 16% 30%, rgba(10,22,200,.22) 0%, rgba(10,22,200,0) 70%)}
#pm-hero > *{position:relative}
.pm-hero__copy{grid-column:1 / span 2; align-self:start; padding-right:calc(20 * var(--u))}
.pm-hero__label{font-size:calc(8 * var(--u)); color:#8A8A8A; margin-bottom:calc(24 * var(--vhu))}
.pm-hero__title{font-size:calc(66 * var(--u)); line-height:calc(70 * var(--vhu)); color:#fff}
.pm-hero__title .ln{display:block; width:fit-content}
.pm-hero__title .ln + .ln{color:#94F2CC}
.pm-hero__lead{margin-top:calc(30 * var(--vhu)); width:calc(500 * var(--u)); font-size:calc(13 * var(--u)); line-height:calc(17.4 * var(--vhu)); color:#C2C2C2}
.pm-hero__chips{margin-top:calc(24 * var(--vhu)); display:flex; flex-wrap:wrap; gap:calc(8 * var(--vhu)) calc(22 * var(--u))}
.pm-hero__nota{margin-top:calc(26 * var(--vhu)); width:calc(500 * var(--u)); padding-top:calc(14 * var(--vhu)); border-top:1px solid #262626; font-size:calc(9.5 * var(--u)); line-height:calc(12.5 * var(--vhu)); color:#6E6E6E}
.pm-hero__map{grid-column:3 / span 2; align-self:start; justify-self:stretch; margin-top:calc(-10 * var(--vhu))}
/* os pontos são uma máscara (--mapa, montada em js/premiss.js); dentro, a base de cor e a onda de luz
   que atravessa por transform (composta na GPU, sem recálculo de estilo por ponto) */
.pm-map{position:relative; width:100%; overflow:hidden; -webkit-mask:var(--mapa) center/contain no-repeat; mask:var(--mapa) center/contain no-repeat}
.pm-map__base{position:absolute; inset:0; background:#383838}
.pm-map__wave{
  position:absolute; top:0; bottom:0; left:0; width:55%;
  background:linear-gradient(90deg, rgba(79,168,69,0) 0%, #4FA845 28%, #DBFCEB 50%, #94F2CC 68%, rgba(79,168,69,0) 100%);
  transform:translateX(-110%); will-change:transform;
  animation:pm-wave-x 9s cubic-bezier(.45,0,.55,1) infinite;
}
@keyframes pm-wave-x{0%{transform:translateX(-110%)} 62%{transform:translateX(205%)} 100%{transform:translateX(205%)}}
@media (prefers-reduced-motion: reduce){ .pm-map__wave{animation:none} }
.pm-map__cap{margin-top:calc(12 * var(--vhu)); text-align:right; font-size:calc(7 * var(--u)); color:#6E6E6E}
/* mapa pequeno, em claro (fase 02) */
.pm-map--ink .pm-map__base{background:#D6D6D6}
.pm-map--ink .pm-map__wave{animation-duration:11s; background:linear-gradient(90deg, rgba(26,107,61,0) 0%, #1A6B3D 30%, #4FA845 50%, #94F2CC 68%, rgba(26,107,61,0) 100%)}

/* ================================================================= 02 · o texto pronto */
.pm-doc{border:1px solid #0C0C0C; background:#fff}
.pm-doc__bar{display:flex; align-items:center; justify-content:space-between; gap:calc(12 * var(--u)); padding:calc(10 * var(--vhu)) calc(18 * var(--u)); border-bottom:1px solid #0C0C0C; font-size:calc(7.5 * var(--u)); color:#0C0C0C}
.pm-doc__bar .st{color:#6E6E6E}
.pm-doc__body{padding:calc(26 * var(--vhu)) calc(18 * var(--u)) calc(28 * var(--vhu))}
.pm-doc__frase{font-size:calc(15 * var(--u)); line-height:calc(20 * var(--vhu)); font-weight:600; color:#0C0C0C; max-width:calc(640 * var(--u))}
.pm-doc__body .pm-prosa{margin-top:calc(18 * var(--vhu)); width:auto; max-width:calc(640 * var(--u))}
.pm-doc__contato{margin-top:calc(18 * var(--vhu)); padding-top:calc(14 * var(--vhu)); border-top:1px solid #E4E4E4; font-size:calc(11.5 * var(--u)); line-height:calc(14.5 * var(--vhu)); color:#333; max-width:calc(640 * var(--u))}
.pm-doc__foot{display:flex; align-items:center; justify-content:space-between; gap:calc(12 * var(--u)); padding:calc(12 * var(--vhu)) calc(18 * var(--u)); border-top:1px solid #E4E4E4; background:#FAFAFA}
.pm-doc__aviso{display:flex; align-items:center; gap:calc(10 * var(--u)); font-size:calc(10 * var(--u)); line-height:calc(12.5 * var(--vhu)); color:#5A5A5A; max-width:calc(520 * var(--u))}
.pm-copy{display:inline-flex; align-items:center; gap:calc(8 * var(--u)); height:calc(32 * var(--vhu)); padding:0 calc(18 * var(--u)); background:#0C0C0C; color:#fff; font-family:var(--font-mono); font-size:calc(8 * var(--u)); font-weight:500; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; cursor:none; transition:background-color .25s ease, color .25s ease}
.pm-copy:hover{background:#0A16C8}
.pm-copy.is-done{background:#1A6B3D}
.pm-sec--dark .pm-copy{background:#fff; color:#0C0C0C}
.pm-sec--dark .pm-copy:hover{background:#94F2CC}
.pm-sec--dark .pm-copy.is-done{background:#4FA845; color:#0C0C0C}
.pm-comoler{margin-top:calc(54 * var(--vhu)); display:grid; grid-template-columns:repeat(5, 1fr); column-gap:calc(12 * var(--u)); border-top:1px solid #0C0C0C}
.pm-comoler li{padding-top:calc(12 * var(--vhu))}
.pm-comoler b{display:block; font-family:var(--font-mono); font-weight:500; font-size:calc(7.5 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#0A16C8}
.pm-comoler span{display:block; margin-top:calc(8 * var(--vhu)); font-size:calc(10.5 * var(--u)); line-height:calc(13.5 * var(--vhu)); color:#5A5A5A}

/* ================================================================= 03 · o problema */
.pm-gloss{display:grid; grid-template-columns:repeat(3, 1fr); gap:calc(12 * var(--vhu)) calc(12 * var(--u)); margin-top:calc(26 * var(--vhu))}
.pm-gloss li{position:relative; padding:calc(16 * var(--vhu)) calc(16 * var(--u)) calc(18 * var(--vhu)); border:1px solid #D6D6D6; background:#fff; transition:border-color .3s ease; cursor:none}
.pm-gloss li:hover{border-color:#0C0C0C}
.pm-gloss b{display:block; font-family:var(--font-display); font-variation-settings:'wdth' var(--disp-wdth),'wght' 760; font-weight:normal; font-size:calc(15 * var(--u)); line-height:1.1; text-transform:uppercase; color:#0C0C0C}
.pm-gloss span{display:block; margin-top:calc(9 * var(--vhu)); font-size:calc(10.5 * var(--u)); line-height:calc(13.5 * var(--vhu)); color:#5A5A5A; opacity:.55; transition:opacity .3s ease}
.pm-gloss li:hover span{opacity:1}
.pm-gloss .hair{position:absolute; left:0; right:0; bottom:-1px; height:1px; background:#0A16C8; transform:scaleX(0); transform-origin:left center}
.pm-problema__lei{margin-top:calc(40 * var(--vhu))}

/* ================================================================= 04 · a rota (pinada) */
#pm-rota{height:100vh; min-height:calc(640 * var(--vhu)); display:flex; flex-direction:column; justify-content:space-between; padding:calc(76 * var(--vhu)) 0 calc(36 * var(--vhu)); overflow:clip}
#pm-rota .pm-head{padding:0 var(--gutter)}
#pm-rota .pm-head__lead{width:calc(560 * var(--u)); margin-top:calc(20 * var(--vhu)); font-size:calc(12 * var(--u)); line-height:calc(15.5 * var(--vhu))}
.rota__viewport{position:relative; padding:0 var(--gutter); margin-top:calc(30 * var(--vhu))}
.rota__viewport::before{content:''; position:absolute; left:0; right:0; top:calc(30 * var(--vhu)); height:1px; background:repeating-linear-gradient(90deg, #4FA845 0 calc(6 * var(--u)), transparent calc(6 * var(--u)) calc(14 * var(--u))); opacity:.55}
.rota__track{display:flex; gap:calc(16 * var(--u)); width:max-content; will-change:transform}
.rota__card{position:relative; width:calc(370 * var(--u)); padding:calc(52 * var(--vhu)) calc(20 * var(--u)) calc(24 * var(--vhu)); border:1px solid #2A2A2A; background:#121212; display:flex; flex-direction:column; gap:calc(10 * var(--vhu))}
.rota__card::before{content:''; position:absolute; left:calc(20 * var(--u)); top:calc(28 * var(--vhu)); width:calc(22 * var(--u)); height:calc(3 * var(--vhu)); background:#4FA845}
.rota__n{font-size:calc(9.5 * var(--u)); color:#555}
.rota__t{font-size:calc(24 * var(--u)); line-height:calc(26 * var(--vhu)); color:#fff}
.rota__lbl{margin-top:calc(8 * var(--vhu)); font-size:calc(7 * var(--u)); color:#8A8A8A}
.rota__lbl--pub{color:#94F2CC}
.rota__p{font-size:calc(11.5 * var(--u)); line-height:calc(14.5 * var(--vhu)); color:#B0B0B0}
.rota__p--pub{color:#fff}
.rota__foot{padding:0 var(--gutter); display:grid; grid-template-columns:calc(120 * var(--u)) 1fr auto; column-gap:calc(16 * var(--u)); align-items:center}
.rota__counter{font-size:calc(9 * var(--u)); color:#8A8A8A}
.rota__counter b{font-weight:500; color:#fff}
.rota__line{position:relative; height:1px; background:#2A2A2A}
.rota__fill{position:absolute; left:0; top:0; height:1px; width:100%; background:#fff; transform:scaleX(0); transform-origin:left center}
.rota__hint{font-size:calc(7 * var(--u)); color:#6E6E6E}

/* ================================================================= credibilidade */
#pm-credib{padding-top:calc(60 * var(--vhu))}
#pm-credib .pm-body{margin-top:0}
.pm-credib__pend{margin-top:calc(26 * var(--vhu))}

/* ================================================================= 05 · objetivos */
.pm-objetivos__geral{margin-bottom:calc(48 * var(--vhu))}

/* ================================================================= 06 · alinhamento */
.pm-alin .pm-row{grid-template-columns:calc(200 * var(--u)) 1fr}
.pm-alin .pm-row .k{margin-top:0; margin-bottom:calc(8 * var(--vhu))}
.pm-alin .pm-row .t{font-size:calc(17 * var(--u)); line-height:calc(19 * var(--vhu))}
.pm-alin .pm-row .dir{display:block; font-size:calc(11.5 * var(--u)); line-height:calc(14.5 * var(--vhu)); color:#5A5A5A; padding-bottom:calc(10 * var(--vhu)); margin-bottom:calc(10 * var(--vhu)); border-bottom:1px solid #E4E4E4}
.pm-trechos{margin-top:calc(54 * var(--vhu)); display:grid; grid-template-columns:repeat(2, 1fr); column-gap:calc(16 * var(--u)); row-gap:calc(20 * var(--vhu))}
.pm-trecho{padding:calc(22 * var(--vhu)) calc(20 * var(--u)) calc(24 * var(--vhu)); background:#0C0C0C; color:#fff}
.pm-trecho b{display:block; font-family:var(--font-mono); font-weight:500; font-size:calc(7 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#8F9BFF}
.pm-trecho .q{display:block; margin-top:calc(12 * var(--vhu)); font-family:var(--font-display); font-variation-settings:'wdth' var(--disp-wdth),'wght' 700; font-size:calc(17 * var(--u)); line-height:calc(21 * var(--vhu)); text-transform:uppercase}
.pm-trecho small{display:block; margin-top:calc(14 * var(--vhu)); font-size:calc(9.5 * var(--u)); color:#8A8A8A}
.pm-trechos__fonte{grid-column:1 / span 2; font-size:calc(9.5 * var(--u)); color:#6E6E6E}
.pm-alin__aterros{margin-top:calc(40 * var(--vhu))}

/* ================================================================= 07 · fases */
.pm-fase{display:grid; grid-template-columns:calc(44 * var(--u)) calc(230 * var(--u)) 1fr; column-gap:calc(16 * var(--u)); padding:calc(28 * var(--vhu)) 0 calc(32 * var(--vhu)); border-top:1px solid #E4E4E4}
.pm-fase:last-child{border-bottom:1px solid #E4E4E4}
.pm-fase .n{font-family:var(--font-display); font-variation-settings:'wdth' var(--disp-wdth),'wght' var(--disp-wght); font-size:calc(15 * var(--u)); line-height:1; color:#0A16C8}
.pm-fase .t{font-size:calc(22 * var(--u)); line-height:calc(24 * var(--vhu)); color:#0C0C0C}
.pm-fase .t small{display:block; margin-top:calc(8 * var(--vhu)); font-family:var(--font-mono); font-size:calc(7 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#6E6E6E}
.pm-fase .c{display:flex; flex-direction:column; gap:calc(12 * var(--vhu))}
.pm-fase .c p{font-size:calc(11.5 * var(--u)); line-height:calc(14.5 * var(--vhu)); color:#333; max-width:calc(520 * var(--u))}
.pm-fase .c .gate{display:grid; grid-template-columns:calc(110 * var(--u)) 1fr; column-gap:calc(12 * var(--u)); padding:calc(12 * var(--vhu)) calc(14 * var(--u)); border:1px solid #0C0C0C; max-width:calc(520 * var(--u))}
.pm-fase .c .gate b{font-family:var(--font-mono); font-weight:500; font-size:calc(7 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#0C0C0C}
.pm-fase .c .gate p{color:#333}
.pm-fase--mapa{grid-template-columns:calc(44 * var(--u)) calc(230 * var(--u)) 1fr}
.pm-fase .mapa{width:calc(200 * var(--u)); margin-top:calc(14 * var(--vhu))}
.pm-fase .mapa small{display:block; margin-top:calc(8 * var(--vhu)); font-family:var(--font-mono); font-size:calc(6.5 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#8A8A8A}

/* ================================================================= 08 · governança */
.pm-mesa{display:flex; flex-wrap:wrap; gap:calc(12 * var(--vhu)) 0; margin-top:calc(8 * var(--vhu))}
.pm-mesa li{display:inline-flex; align-items:center; gap:calc(9 * var(--u)); padding:0 calc(16 * var(--u)); border-left:1px solid #3A3A3A; font-size:calc(13 * var(--u)); line-height:calc(16 * var(--vhu)); color:#C2C2C2; white-space:nowrap; transition:color .25s ease}
.pm-mesa li:first-child{padding-left:0; border-left:0}
.pm-mesa li::before{content:''; flex:none; width:calc(5 * var(--u)); height:calc(5 * var(--u)); background:#4FA845}
.pm-mesa li:hover{color:#fff}
.pm-mesa li.is-tbr{color:#fff; font-weight:600}
.pm-mesa li.is-tbr::before{background:#fff}
.pm-gov__resp{margin-top:calc(48 * var(--vhu))}
.pm-resp{display:grid; grid-template-columns:repeat(4, 1fr); gap:calc(8 * var(--vhu)) calc(8 * var(--u)); margin-top:calc(16 * var(--vhu))}
.pm-resp li{display:grid; grid-template-columns:auto 1fr; column-gap:calc(10 * var(--u)); align-items:baseline; padding:calc(12 * var(--vhu)) calc(12 * var(--u)); border:1px solid #2A2A2A}
.pm-resp li i{font-style:normal; font-family:var(--font-mono); font-size:calc(7 * var(--u)); letter-spacing:.1em; color:#8F9BFF}
.pm-resp li span{font-size:calc(11.5 * var(--u)); color:#fff}
.pm-resp li small{grid-column:2; font-family:var(--font-mono); font-size:calc(6.5 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#555; margin-top:calc(4 * var(--vhu))}
.pm-gov__cols{margin-top:calc(48 * var(--vhu)); display:grid; grid-template-columns:repeat(2, 1fr); column-gap:calc(16 * var(--u))}
.pm-gov__cols .pm-prosa{width:auto}

/* ================================================================= 09 · salvaguardas */
.pm-salv .pm-fichas{margin-bottom:calc(36 * var(--vhu))}
.pm-salv__conama{margin-top:calc(40 * var(--vhu))}

/* ================================================================= 10 · indicadores (painel vazio de propósito) */
.pm-painel{display:grid; grid-template-columns:repeat(4, 1fr); gap:calc(10 * var(--vhu)) calc(10 * var(--u))}
.pm-tile{display:flex; flex-direction:column; gap:calc(8 * var(--vhu)); padding:calc(14 * var(--vhu)) calc(14 * var(--u)) calc(16 * var(--vhu)); border:1px solid #D6D6D6; background:#fff; min-height:calc(150 * var(--vhu)); transition:border-color .3s ease; cursor:none}
.pm-tile:hover{border-color:#0C0C0C}
.pm-tile .k{font-family:var(--font-mono); font-weight:500; font-size:calc(7 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#0A16C8}
.pm-tile .v{font-family:var(--font-display); font-variation-settings:'wdth' var(--disp-wdth),'wght' var(--disp-wght); font-size:calc(30 * var(--u)); line-height:1; color:#D6D6D6; letter-spacing:.04em}
.pm-tile .v i{font-style:normal; display:inline-block; width:calc(14 * var(--u)); height:calc(3 * var(--vhu)); background:#E4E4E4; margin-right:calc(3 * var(--u)); vertical-align:middle}
.pm-tile .t{font-size:calc(11 * var(--u)); line-height:calc(14 * var(--vhu)); color:#0C0C0C; flex:1}
.pm-tile .o{font-size:calc(9.5 * var(--u)); line-height:calc(12 * var(--vhu)); color:#8A8A8A}
.pm-tile .meta{font-family:var(--font-mono); font-size:calc(6.5 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#B84300}

/* ================================================================= 11 · benefícios */
.pm-benef__ressalva{margin-top:calc(34 * var(--vhu))}

/* ================================================================= 12 · contatos */
.pm-cont{border-top:1px solid #0C0C0C}
.pm-cont li{display:grid; grid-template-columns:calc(150 * var(--u)) 1fr auto; column-gap:calc(16 * var(--u)); align-items:start; padding:calc(14 * var(--vhu)) 0; border-bottom:1px solid #E4E4E4}
.pm-cont li b{font-family:var(--font-mono); font-weight:500; font-size:calc(7.5 * var(--u)); letter-spacing:.1em; text-transform:uppercase; color:#6E6E6E; padding-top:calc(3 * var(--vhu))}
.pm-cont li .v{font-size:calc(12.5 * var(--u)); line-height:calc(16 * var(--vhu)); color:#0C0C0C}
.pm-cont li .v a{color:#0A16C8; border-bottom:1px solid #C9CDF3}
.pm-cont li .v small{display:block; margin-top:calc(3 * var(--vhu)); font-size:calc(10 * var(--u)); color:#8A8A8A}
.pm-cont__extra{margin-top:calc(54 * var(--vhu)); display:grid; grid-template-columns:repeat(2, 1fr); column-gap:calc(16 * var(--u))}
.pm-mat li{padding:calc(12 * var(--vhu)) 0; border-top:1px solid #E4E4E4; display:grid; grid-template-columns:auto 1fr; column-gap:calc(12 * var(--u))}
.pm-mat li:last-child{border-bottom:1px solid #E4E4E4}
.pm-mat li i{font-style:normal; font-family:var(--font-mono); font-size:calc(7.5 * var(--u)); letter-spacing:.1em; color:#0A16C8; padding-top:calc(3 * var(--vhu))}
.pm-mat li b{display:block; font-size:calc(12 * var(--u)); font-weight:500; color:#0C0C0C}
.pm-mat li span{display:block; margin-top:calc(4 * var(--vhu)); font-size:calc(10.5 * var(--u)); line-height:calc(13.5 * var(--vhu)); color:#5A5A5A}
.pm-mat li .pm-chip{margin-top:calc(6 * var(--vhu))}
.pm-refs li{padding:calc(10 * var(--vhu)) 0; border-top:1px solid #E4E4E4; display:grid; grid-template-columns:auto 1fr; column-gap:calc(12 * var(--u)); font-size:calc(10.5 * var(--u)); line-height:calc(13.5 * var(--vhu)); color:#333}
.pm-refs li:last-child{border-bottom:1px solid #E4E4E4}
.pm-refs li i{font-style:normal; font-family:var(--font-mono); font-size:calc(7.5 * var(--u)); letter-spacing:.1em; color:#0A16C8; padding-top:calc(2 * var(--vhu))}
.pm-refs li a{color:#0A16C8; border-bottom:1px solid #C9CDF3; word-break:break-all}
.pm-refs li small{display:block; font-family:var(--font-mono); font-size:calc(7 * var(--u)); color:#8A8A8A; margin-top:calc(3 * var(--vhu)); word-break:break-all}

/* ================================================================= 13 · conclusão */
#pm-conclusao{overflow:clip}
.pm-conc__bolt{position:absolute; right:calc(-30 * var(--u)); top:calc(60 * var(--vhu)); width:calc(420 * var(--u)); height:calc(460 * var(--vhu)); pointer-events:none; z-index:1}
#pm-conclusao .pm-head, #pm-conclusao .pm-body{position:relative; z-index:2}
.pm-form{margin-top:calc(48 * var(--vhu)); padding:calc(28 * var(--vhu)) calc(24 * var(--u)) calc(24 * var(--vhu)); border:1px solid #fff; max-width:calc(700 * var(--u)); background:rgba(12,12,12,.82)}
.pm-form .pm-lbl{color:#94F2CC}
.pm-form .q{font-family:var(--font-display); font-variation-settings:'wdth' var(--disp-wdth),'wght' 700; font-size:calc(17 * var(--u)); line-height:calc(21.5 * var(--vhu)); text-transform:uppercase; color:#fff}
.pm-form .pm-copy{margin-top:calc(22 * var(--vhu))}

/* ================================================================= impressão: a proposta como documento */
@media print{
  .ticker, .site-header, .cursor-layer, .br-bolt3d, #cta, .cta__pill, .cta__trail, #footer, .rota__foot, .pm-copy, .pm-hero__map, .pm-conc__bolt, .pm-hero::before{display:none !important}
  body{background:#fff !important; color:#000 !important}
  #pm-hero, .pm-sec, .pm-sec--dark, .pm-sec--grey, .pm-trecho, .pm-form{background:#fff !important; color:#000 !important; min-height:0 !important; height:auto !important; padding:18pt 0 !important; border-color:#000}
  #pm-hero > *, .pm-sec *{color:#000 !important}
  .pm-head, .pm-body{display:block}
  .pm-head__lead, .pm-prosa, .pm-row .d, .pm-fase .c p{width:auto !important; max-width:none !important}
  #pm-rota{height:auto !important; overflow:visible}
  .rota__track{width:auto !important; flex-wrap:wrap; transform:none !important}
  .rota__card{width:48% !important; border-color:#000}
  .pm-map circle{animation:none}
}
