/* Promessômetro - UI das promessas: apresentação (hero compacto), faixa "Como não ser enganado pelo PT", cinco cartões,
   painel de detalhes (master-detalhe), vídeo do Prometeuzinho e as peças compartilhadas .pm-seal--sm, .pm-credit e .pm-ph.
   Carregada DEPOIS de site.css (e ANTES de midia.css nas páginas de notícias). Tokens do sistema "Maracá", pontos de quebra por
   container query (640 e 1024 px; 1280 px só para o painel). Melhoria progressiva: sem JavaScript os cinco painéis aparecem
   empilhados; os cartões levam às matérias. O JavaScript (promessas.js) abre os painéis por links antigos com fragmento.

   MARCAÇÃO QUE ESTE ARQUIVO ESTILIZA (o que o gerador precisa emitir)
   ------------------------------------------------------------------
   #apresentacao  .pm-intro (kicker, h1, medidor, lead, vídeo) + .pm-how (três passos)
   #promessas     ul.pm-pgrid > li.pm-pcard[data-promessa][data-st] > article.pm-pcard__a > .pm-pcard__media + .pm-pcard__body
                  div.pm-pdetail > article.pm-pd#id[data-promessa][data-st][tabindex=-1][aria-labelledby]
     article.pm-pd:  header.pm-pd__hd > button.pm-pd__back[data-pd-back][hidden] + p.pm-pd__top > span.pm-pd__n + p.pm-seal--hd + h3.pm-pd__h#pd-ID-h
                     + p.pm-pd__uf + (dl.pm-who  OU  div.pm-pd__regs > div.pm-reg > h4.pm-regsub + dl.pm-who  [consolidada])
                     então .pm-pv (vídeo), uma section.pm-pd__s.pm-pd__s--TIPO por camada [promessa|resultado|editorial|dinheiro|fontes]
                     com p.pm-pd__tag.pm-pd__tag--TIPO (rótulo em texto) + h4.pm-pd__sh + div.pm-pd__c; details.pm-det.pm-pd__media;
                     div.pm-pd__foot (links). Subtítulo de registro dentro das seções: h5.pm-regsub.
   .pm-pv         div.pm-pv[data-pv ...] > .pm-pv__stage > video.pm-pv__el  |  p.pm-pv__msg  ;  .pm-pv__act > [data-pv-share] [data-pv-dl] [data-pv-copy]
   Peças compartilhadas (sem escopo): .pm-seal--sm  .pm-credit  .pm-ph (+ --agua --ferrovia --ponte --refinaria) com svg e .pm-ph__t opcional.
   Estados de JS: html.pm-pd-ok (iniciou) / html.pm-pd-off (falhou: mostra tudo), .pm-pd.is-open, .pm-pcard[data-open], .pm-pv.is-fail */

/* =====================================================================
   Capítulo das cinco promessas (#promessas, tema claro): degradê de entrada vindo do hero escuro e de saída para o rodapé,
   como os demais capítulos claros do sistema (ver .pm-ch--falas e .pm-ch--to-dark em site.css). O conteúdo começa depois da emenda.
   ===================================================================== */
.pm-ch--promessas{--relief-o:.14; --relief-pos:60% 30%;
  background:
    linear-gradient(180deg,#0E3A4E 0,#2E6F7B calc(var(--blend)*.34),#9CC3C7 calc(var(--blend)*.7),var(--paper) var(--blend)) top/100% var(--blend) no-repeat,
    linear-gradient(180deg,var(--paper) 0,#8DB5BB calc(var(--blend)*.3),#2B6577 calc(var(--blend)*.62),#0E3A4E calc(var(--blend)*.92),var(--deeper) 100%) bottom/100% var(--blend) no-repeat,
    var(--paper);
  --spine:linear-gradient(180deg,var(--varzea) 0,var(--varzea) calc(var(--blend)*.5),var(--sedimento) var(--blend),var(--sedimento) 100%)}
.pm-ch--promessas .pm-in{padding-top:calc(var(--blend) + var(--py)*.25); padding-bottom:calc(var(--blend) + var(--py)*.15)}
@media (prefers-contrast:more){ .pm-ch--promessas{background:var(--paper)} }

/* =====================================================================
   Peças compartilhadas (também usadas em /noticias): selo compacto, crédito de foto, ilustração do tema
   ===================================================================== */
.pm-seal--sm{font-size:calc(15px*var(--k)); gap:9px; letter-spacing:.04em; line-height:1.05}
.pm-seal--sm .pm-seal__dial{width:1.4em; height:1.4em; border-width:3px}
.pm-seal--sm.pm-seal--nao .pm-seal__dial{border:0}
.pm-seal--sm.pm-seal--nao .pm-seal__dial::before,.pm-seal--sm.pm-seal--nao .pm-seal__dial::after{height:3px; min-height:0; width:calc(141.4% - 1px)}

.pm-credit{font-family:var(--mono); font-size:calc(12px*var(--k)); line-height:1.45; letter-spacing:.01em; color:var(--fg2)}
.pm-credit a{color:inherit; text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:3px}

/* ilustração do tema: NUNCA é foto. Enquadra o SVG que o gerador emite (viewBox 3:2) e traz a legenda sempre legível */
.pm-ph{--ph-a:#0A2D3E; --ph-b:#17707E; position:relative; isolation:isolate; display:block; width:100%; height:100%; aspect-ratio:3/2; margin:0; padding:0; overflow:hidden; color:#F1F6F6;
  background:linear-gradient(165deg,var(--ph-a),var(--ph-b))}
.pm-ph > svg{position:absolute; inset:0; z-index:0; display:block; width:100%; height:100%}
.pm-ph__t,.pm-ph:not(:has(.pm-ph__t))::after{position:absolute; z-index:2; left:0; right:0; bottom:0; display:block; margin:0; padding:6px 10px 7px; background:rgba(6,26,36,.9); color:#F1F6F6;
  font-family:var(--mono); font-weight:500; font-size:calc(12px*var(--k)); line-height:1.35; letter-spacing:.02em; text-align:left; text-transform:none}
.pm-ph:not(:has(.pm-ph__t))::after{content:"Ilustração do tema \00B7  sem foto disponível"}
.pm-ph--agua{--ph-a:#0A2D3E; --ph-b:#5AA7AE}
.pm-ph--ferrovia{--ph-a:#0A2D3E; --ph-b:#D9A24E}
.pm-ph--ponte{--ph-a:#17707E; --ph-b:#F1F6F6}
.pm-ph--refinaria{--ph-a:#061A24; --ph-b:#17707E}

/* =====================================================================
   Apresentação: título amplo, medidor, texto e vídeo do Prometeuzinho.
   Celular: kicker, título, medidor, vídeo e texto. Notebook: texto e vídeo lado a lado após o medidor.
   ===================================================================== */
/* O espaço inicial acomoda o cabeçalho. A marca aparece apenas nele. */
.pm-ch--open .pm-in:has(> .pm-intro){--hero-pt:124px}
@container pm (min-width:640px){ .pm-ch--open .pm-in:has(> .pm-intro){--hero-pt:140px} }
@container pm (min-width:1024px){ .pm-ch--open .pm-in:has(> .pm-intro){--hero-pt:140px} }
.pm-intro{display:grid; grid-template-columns:minmax(0,1fr); column-gap:clamp(32px,5.4cqi,76px); align-items:start}
.pm-intro__txt{display:contents}
.pm-intro > *,.pm-intro__txt > *{min-width:0; grid-column:1}
.pm-intro .pm-kicker{grid-row:1; margin-bottom:18px}
.pm-intro h1{grid-row:2; margin:0 0 34px; font-size:var(--t-h1); line-height:.95}
.pm-intro .pm-gauge{grid-row:5}
.pm-intro__media{grid-row:3; margin:0 0 28px}
.pm-intro .pm-lead{grid-row:4; max-width:46ch; margin:0 0 30px; font-size:calc(var(--t-lead)*.92)}
@container pm (min-width:1024px){
  .pm-intro{grid-template-columns:minmax(0,1fr) minmax(240px,320px)}
  .pm-intro h1{grid-column:1; font-size:clamp(56px,5.8cqi,84px); margin-bottom:26px}
  .pm-intro .pm-gauge{grid-column:1/-1; grid-row:4; margin-top:42px}
  .pm-intro .pm-lead{grid-row:3; margin:0; align-self:start}
  .pm-intro__media{grid-column:2; grid-row:1/4; align-self:center; margin:0; max-width:none}
}

/* Medidor semicircular: composição original, com as cinco promessas atuais. */
.pm-gauge{display:flex; flex-direction:column; align-items:center; gap:8px; width:100%; max-width:680px; margin:0 auto 44px; text-align:center}
.pm-gauge > .pm-label{font-size:calc(12px*var(--k)); padding-inline:12px}
.pm-gauge svg{display:block; width:100%; height:auto; overflow:visible}
.pm-gauge__a{cursor:pointer; outline:none}
.pm-gauge__seg{fill:var(--gauge-color,#BAD1D5); stroke:var(--gauge-color,#BAD1D5); stroke-width:6; stroke-linejoin:round; transition:filter .2s ease}
.pm-gauge__a[data-st="cumpriu"]{--gauge-color:#5FD08D}
.pm-gauge__a[data-st="parcial"]{--gauge-color:#F2C14E}
.pm-gauge__a[data-st="nao"]{--gauge-color:#FF4D44}
.pm-gauge__a:hover .pm-gauge__seg{filter:brightness(1.15)}
.pm-gauge__a:focus-visible .pm-gauge__seg{stroke:#fff; stroke-width:7}
.pm-gauge__n{font-family:var(--mono); font-weight:600; font-size:14px; fill:#061A24; pointer-events:none}
.pm-gauge__c1{font-family:var(--sans); font-weight:900; font-stretch:70%; font-size:64px; fill:var(--fg); pointer-events:none}
.pm-gauge__c2{font-family:var(--mono); font-weight:600; font-size:13px; letter-spacing:.14em; text-transform:uppercase; fill:var(--fg2); pointer-events:none}
.pm-gauge__legend{display:flex; justify-content:center; gap:clamp(12px,3cqi,36px); width:100%}
.pm-gauge__legend li{display:flex; align-items:center; gap:9px; min-width:0}
.pm-gauge__legend b{font-family:var(--sans); font-weight:900; font-stretch:70%; font-size:calc(40px*var(--kd)); line-height:1}
.pm-gauge__legend .pm-seal{font-size:calc(13px*var(--k)); white-space:normal; letter-spacing:.01em}
@container pm (max-width:639px){
  .pm-intro .pm-gauge{width:auto; max-width:none; margin-inline:calc(var(--pl)*-1 + 12px) calc(var(--pr)*-1 + 12px)}
  .pm-gauge__legend{padding-inline:20px}
  .pm-gauge__legend li{flex:1; flex-direction:column; gap:5px}
  .pm-gauge__legend .pm-seal{flex-direction:column; text-align:center}
}

/* =====================================================================
   Seção das promessas: faixa "Como não ser enganado pelo PT" (compacta, não é seção própria)
   ===================================================================== */
.pm-how{counter-reset:how; position:relative; display:flex; flex-direction:column; gap:26px; margin-top:84px; padding:0}
.pm-how > :is(h2,h3,h4,p):first-child,.pm-how__h{margin:0; font-family:var(--sans); font-weight:800; font-size:calc(14px*var(--k)); line-height:1.3; letter-spacing:.14em; text-transform:uppercase; color:var(--fg2)}
.pm-how > h3.pm-how__h:first-child{font-size:calc(clamp(18px,2.4cqi,26px)*var(--k))}
.pm-how ol{display:grid; grid-template-columns:minmax(0,1fr); gap:26px}
.pm-how li{counter-increment:how; position:relative; display:grid; grid-template-columns:52px minmax(0,1fr); gap:4px 12px; align-items:start; min-width:0}
.pm-how li:not(:has(.pm-how__n))::before{content:counter(how); grid-column:1}
.pm-how__n,.pm-how li:not(:has(.pm-how__n))::before{position:relative; font-family:var(--mono); font-weight:500; font-size:calc(46px*var(--k)); line-height:.9; color:var(--varzea)}
.pm-how__circle{--c:var(--varzea); width:74px; left:-14px; top:-8px}
.pm-how__t,.pm-how li > :not(.pm-how__n){font-family:var(--serif); font-size:var(--t-sm); line-height:1.4; color:var(--fg)}
.pm-how__t h4{font-family:var(--sans); font-weight:800; font-size:var(--t-h4); line-height:1.2; margin-bottom:10px}
.pm-how__t p{color:var(--fg2); max-width:30ch; line-height:1.5}
@container pm (min-width:640px){
  .pm-how{margin-top:112px}
  .pm-how ol{grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 44px; border-top:1px solid var(--rule)}
  .pm-how li{display:flex; flex-direction:column; gap:16px; padding-top:30px}
  .pm-how li::before{content:""; position:absolute; top:-6px; left:0; width:11px; height:11px; border-radius:50%; background:var(--varzea)}
  .pm-how__n{font-size:calc(60px*var(--k))}
}

/* =====================================================================
   Cartões das cinco promessas ("Ver detalhes" leva à página da matéria)
   ===================================================================== */
.pm-pgrid{display:grid; grid-template-columns:minmax(0,1fr); gap:22px; margin-top:40px}
@container pm (min-width:640px){ .pm-pgrid{grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px} }
@container pm (min-width:640px) and (max-width:1023px){ .pm-pgrid > .pm-pcard:last-child:nth-child(odd){grid-column:1/-1} }
@container pm (min-width:1024px){
  .pm-pgrid{grid-template-columns:repeat(6,minmax(0,1fr)); gap:28px; margin-top:46px}
  .pm-pgrid > .pm-pcard{grid-column:span 2}
  .pm-pgrid > .pm-pcard:nth-child(n+4){grid-column:span 3}
}
.pm-pcard{--fg:#061A24; --fg2:#3C5460; --acc:var(--sedimento); --acc-t:var(--date); --rule:rgba(14,58,78,.24); --st:var(--soft); position:relative; display:flex; min-width:0; color:var(--fg)}
.pm-pcard[data-st="cumpriu"]{--st:#1B7A4B} .pm-pcard[data-st="parcial"]{--st:#B7860B} .pm-pcard[data-st="nao"]{--st:#C62828}
.pm-pcard .pm-seal--cumpriu{--c:#1B7A4B; --dial:#1B7A4B} .pm-pcard .pm-seal--parcial{--c:#B7860B; --dial:#B7860B} .pm-pcard .pm-seal--nao{--c:#C62828; --dial:#C62828}
.pm-pcard__a{display:flex; flex-direction:column; width:100%; min-width:0; background:var(--elev); border:1px solid var(--line); border-top:4px solid var(--st); border-radius:var(--r1); box-shadow:var(--lift-1); overflow:hidden;
  transition:border-color .18s ease,box-shadow .18s ease}
.pm-pcard__a:hover{border-color:color-mix(in srgb,var(--fg) 34%,var(--line)); border-top-color:var(--st)}
.pm-pcard[data-open] .pm-pcard__a{border-color:var(--fg); border-top-color:var(--st); box-shadow:0 0 0 2px var(--fg),var(--lift-1)}
.pm-pcard__media{position:relative; flex:none; aspect-ratio:3/2; overflow:hidden; background:#0A2D3E}
.pm-pcard__media :is(picture,img){display:block; width:100%; height:100%}
.pm-pcard__media img{object-fit:cover; object-position:center}
.pm-pcard__media .pm-credit{position:absolute; z-index:3; left:0; right:0; bottom:0; margin:0; padding:5px 10px 6px; background:rgba(6,26,36,.9); color:#F1F6F6}
.pm-pcard__media .pm-credit a{color:#fff}
.pm-pcard__body{display:flex; flex-direction:column; flex:1 1 auto; gap:10px; min-width:0; padding:16px 18px 20px}
.pm-pcard__top{display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0}
.pm-pcard__n{font-family:var(--mono); font-weight:500; font-size:calc(22px*var(--k)); line-height:1; letter-spacing:.02em; color:var(--acc-t)}
.pm-pcard__h{margin:2px 0 0; font-family:var(--sans); font-weight:800; font-stretch:88%; font-size:calc(var(--t-h4)*1.2); line-height:1.1; letter-spacing:-.01em; color:var(--fg); text-wrap:balance}
.pm-pcard__uf{margin:-4px 0 0; font-family:var(--mono); font-weight:500; font-size:calc(13px*var(--k)); line-height:1.35; letter-spacing:.06em; text-transform:uppercase; color:var(--fg2)}
.pm-pcard__d{margin:0; font-family:var(--serif); font-size:var(--t-sm); line-height:1.5; color:var(--fg)}
.pm-pcard__btn{margin-top:auto; align-self:stretch; justify-content:space-between; width:100%; min-height:54px; gap:8px; font-size:calc(16px*var(--k)); padding:8px 8px 8px 18px!important}
.pm-pcard__body > .pm-pcard__d + .pm-pcard__btn{margin-top:auto}
.pm-pcard__d{margin-bottom:8px}
.pm-pcard__btn svg{transition:transform .2s ease}
@container pm (min-width:640px) and (max-width:1023px){
  .pm-pgrid > .pm-pcard:last-child:nth-child(odd) .pm-pcard__a{flex-direction:row}
  .pm-pgrid > .pm-pcard:last-child:nth-child(odd) .pm-pcard__media{flex:0 0 46%; aspect-ratio:auto; min-height:100%}
  .pm-pgrid > .pm-pcard:last-child:nth-child(odd) .pm-pcard__media :is(picture,img,.pm-ph){position:absolute; inset:0}
}
@media (prefers-reduced-motion:no-preference){
  .pm-pcard__media :is(picture,img){transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .pm-pcard__a:hover .pm-pcard__media :is(picture,img){transform:scale(1.035)}
}

/* =====================================================================
   Painel de detalhes (master-detalhe): um aberto por vez. Sem JS: todos aparecem empilhados.
   ===================================================================== */
.pm-pdetail{display:flex; flex-direction:column; gap:48px; margin-top:52px; min-width:0}
html.pm-pd-ok .pm-pdetail:not(:has(.pm-pd.is-open)){margin-top:0}
html.js:not(.pm-pd-off) .pm-pd:not(.is-open){display:none}
.pm-pd{--st:var(--soft); position:relative; display:flex; flex-direction:column; gap:clamp(30px,4.4cqi,52px); min-width:0; padding:clamp(22px,4.4cqi,48px) clamp(18px,4.2cqi,52px) clamp(26px,4.4cqi,48px);
  background:var(--elev); border:1px solid var(--line); border-top:6px solid var(--st); border-radius:var(--r1); box-shadow:var(--lift-1),0 24px 48px -34px rgba(6,26,36,.4); scroll-margin-top:96px; color:var(--fg)}
.pm-pd[data-st="cumpriu"]{--st:#1B7A4B} .pm-pd[data-st="parcial"]{--st:#B7860B} .pm-pd[data-st="nao"]{--st:#C62828}
.pm-pd:focus{outline:none}
.pm-pd .pm-seal--cumpriu{--c:#1B7A4B; --dial:#1B7A4B} .pm-pd .pm-seal--parcial{--c:#B7860B; --dial:#B7860B} .pm-pd .pm-seal--nao{--c:#C62828; --dial:#C62828}
.pm-pd .pm-seal--hd.pm-seal--parcial{--c:#9A6B00; --dial:#9A6B00}
/* o selo grande entra com animação ligada ao observador de rolagem de site.js; num painel que estava escondido isso o deixaria invisível */
.js .pm-pd .pm-seal--hd:not(.is-in){opacity:1; transform:none}
.js .pm-pd .pm-seal--cumpriu.pm-seal--hd:not(.is-in){--p:100%} .js .pm-pd .pm-seal--parcial.pm-seal--hd:not(.is-in){--p:50%}
@media (prefers-reduced-motion:no-preference){
  .pm-pd.is-in{animation:pm-pd-in .34s cubic-bezier(.2,.7,.2,1) both}
}
@keyframes pm-pd-in{from{opacity:0; transform:translateY(12px)}to{opacity:1; transform:none}}

/* cabeçalho */
.pm-pd__hd{display:flex; flex-direction:column; align-items:flex-start; gap:12px; min-width:0}
.pm-pd__back{display:inline-flex; align-items:center; gap:10px; min-height:48px; margin:-8px 0 2px; padding:0; border:0; background:none; cursor:pointer; font-family:var(--sans); font-weight:800; font-size:calc(16px*var(--k)); line-height:1.2; color:var(--fg);
  text-decoration:underline; text-decoration-color:var(--acc); text-decoration-thickness:3px; text-underline-offset:7px}
.pm-pd__back svg{width:1.15em; height:1.15em; flex:none; color:var(--acc-t); transition:transform .15s ease}
.pm-pd__back:hover svg{transform:translateX(-4px)}
.pm-pd__top{margin:0; font-family:var(--mono); font-weight:500; font-size:calc(22px*var(--k)); line-height:1; letter-spacing:.02em; color:var(--acc-t)}
.pm-pd__hd .pm-seal--hd{margin-top:0; font-size:calc(var(--t-h3)*.78)}
.pm-pd__h{margin:2px 0 0; font-family:var(--sans); font-weight:800; font-stretch:88%; font-size:calc(var(--t-h3)*1.04); line-height:1.06; letter-spacing:-.012em; color:var(--fg); text-wrap:balance; max-width:20ch}
.pm-pd__h:focus{outline:none}
.pm-pd__uf{margin:0; font-family:var(--mono); font-weight:500; font-size:var(--t-xs); line-height:1.4; letter-spacing:.06em; text-transform:uppercase; color:var(--fg2)}
.pm-pd__hd .pm-who{margin-top:8px; width:100%; max-width:46em}
.pm-pd__regs{display:grid; grid-template-columns:minmax(0,1fr); gap:20px; width:100%; margin-top:10px}
.pm-reg{display:flex; flex-direction:column; gap:10px; min-width:0; padding-top:14px; border-top:1px solid var(--rule)}
.pm-reg .pm-who{margin:0}
.pm-regsub{display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; margin:0; padding:2px 0 2px 14px; border-left:5px solid var(--acc); font-family:var(--sans); font-weight:800; font-size:calc(var(--t-h4)*.98); line-height:1.2; color:var(--fg)}
.pm-pd .pm-regsub .pm-seal{font-size:calc(14px*var(--k))}
.pm-pd__s > .pm-regsub:not(:first-child),.pm-pd__c > .pm-regsub:not(:first-child),.pm-pd .pm-prose > .pm-regsub:not(:first-child){margin-top:14px}
@container pm (min-width:640px){
  .pm-pd__hd .pm-who{grid-template-columns:max-content minmax(0,1fr); gap:8px 24px}
  .pm-pd__hd .pm-who dt{margin-top:0; padding-top:.35em}
  .pm-pd__regs{grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 40px}
  .pm-pd__regs .pm-who{grid-template-columns:minmax(0,1fr)}
  .pm-pd__regs .pm-who dt{margin-top:10px}
  .pm-pd__regs .pm-who dt:first-child{margin-top:0}
}
/* com vídeo, notebook: título à esquerda, vídeo à direita, camadas abaixo em largura total */
@container pm (min-width:1024px){
  .pm-pd:has(> .pm-pv .pm-pv__el){display:grid; grid-template-columns:minmax(0,6.6fr) minmax(0,5fr); column-gap:clamp(36px,4.4cqi,64px); row-gap:clamp(36px,4.4cqi,56px); align-items:start}
  .pm-pd:has(> .pm-pv .pm-pv__el) > *{grid-column:1/-1}
  .pm-pd:has(> .pm-pv .pm-pv__el) > .pm-pd__hd{grid-column:1; grid-row:1}
  .pm-pd:has(> .pm-pv .pm-pv__el) > .pm-pv{grid-column:2; grid-row:1}
}

/* camadas: PROMESSA, RESULTADO DOCUMENTADO, AVALIAÇÃO EDITORIAL, DINHEIRO PÚBLICO, FONTES (cada uma com cor, forma e texto) */
.pm-pd :is(.pm-pd__s,.pm-asec){position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:18px; min-width:0; padding-top:clamp(26px,3.6cqi,40px); border-top:1px solid var(--rule); scroll-margin-top:96px}
.pm-pd :is(.pm-pd__sh,.pm-asec__h){margin:0; font-family:var(--sans); font-weight:800; font-stretch:88%; font-size:calc(var(--t-h3)*.7); line-height:1.1; letter-spacing:-.008em; color:var(--fg); text-wrap:balance}
.pm-pd :is(.pm-pd__c,.pm-prose){display:flex; flex-direction:column; align-items:flex-start; gap:18px; width:100%; min-width:0; font-family:var(--serif); font-size:var(--t-body); line-height:1.6; color:var(--fg)}
.pm-pd :is(.pm-pd__c,.pm-prose) > * {max-width:100%}
.pm-pd :is(.pm-pd__c,.pm-prose) > :is(.pm-promise,.pm-money-box,.pm-note,.pm-tl,.pm-ob__now,.pm-src,.pm-ob__money){width:100%}
.pm-pd .pm-p{max-width:62ch}
.pm-pd :is(.pm-pd__tag,.pm-asec__tag){--c:#0E3A4E; --t:#0E3A4E; --bg:transparent; --bd:#0E3A4E; --bs:solid; --g:none;
  display:inline-flex; align-items:center; gap:9px; align-self:flex-start; max-width:100%; margin:0; padding:6px 13px 6px 10px; border:2px var(--bs) var(--bd); border-radius:var(--r1); background:var(--bg); color:var(--t);
  font-family:var(--sans); font-weight:800; font-size:calc(13px*var(--k)); line-height:1.15; letter-spacing:.13em; text-transform:uppercase}
.pm-pd :is(.pm-pd__tag,.pm-asec__tag)::before{content:""; flex:none; width:1.12em; height:1.12em; background:var(--c); -webkit-mask:var(--g) center/contain no-repeat; mask:var(--g) center/contain no-repeat}
.pm-pd .pm-pd__tag--promessa{--c:#9C6520; --t:#5E3A07; --bg:#F6E7C8; --bd:#9C6520; --g:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.5l10.5 10.5L12 22.5 1.5 12z'/%3E%3C/svg%3E")}
.pm-pd .pm-pd__tag--resultado{--c:#0B6670; --t:#07424B; --bg:#D8EDEE; --bd:#0B6670; --g:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.4'%3E%3Crect x='2.5' y='2.5' width='19' height='19'/%3E%3Cpath d='M7 12.5l3.6 3.6L17.2 8.6'/%3E%3C/svg%3E")}
.pm-pd .pm-pd__tag--editorial{--c:var(--varzea); --t:#F1F6F6; --bg:var(--abissal); --bd:var(--abissal); --g:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l10.5 19h-21z'/%3E%3C/svg%3E")}
.pm-pd .pm-pd__tag--dinheiro{--c:#0E3A4E; --t:#0E3A4E; --bg:#E4EDF1; --bd:#0E3A4E; --bs:double; padding-left:8px}
.pm-pd .pm-pd__tag--dinheiro::before{content:"R$"; width:auto; height:auto; min-width:1.9em; padding:.2em .25em; border:2px solid var(--c); border-radius:999px; background:none; -webkit-mask:none; mask:none; font-size:.8em; font-weight:900; letter-spacing:0; text-align:center; color:var(--c)}
.pm-pd .pm-pd__tag--fontes{--c:#3C5460; --t:#2A424E; --bd:#546E78; --bs:dotted; --g:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2'%3E%3Cpath d='M5.5 2.5h8.5l4.5 4.5v14.5h-13z'/%3E%3Cpath d='M9 12h6M9 16.5h6'/%3E%3C/svg%3E")}
@container pm (min-width:1280px){
  .pm-pd :is(.pm-pd__s,.pm-asec){display:grid; grid-template-columns:minmax(0,3.3fr) minmax(0,8.7fr); grid-template-rows:auto 1fr; column-gap:clamp(40px,4.4cqi,64px); row-gap:14px; align-items:start}
  .pm-pd :is(.pm-pd__s,.pm-asec) > :is(.pm-pd__tag,.pm-asec__tag){grid-column:1; grid-row:1}
  .pm-pd :is(.pm-pd__s,.pm-asec) > :is(.pm-pd__sh,.pm-asec__h){grid-column:1; grid-row:2}
  .pm-pd :is(.pm-pd__s,.pm-asec) > :is(.pm-pd__c,.pm-prose){grid-column:2; grid-row:1/span 2}
}

/* PROMESSA: o que foi dito, por quem e quando */
.pm-pd .pm-promise{position:relative; display:flex; flex-direction:column; gap:16px; max-width:46em; padding:24px 24px 20px 28px; background:color-mix(in srgb,var(--varzea) 15%,var(--paper)); border-left:8px solid var(--sedimento)}
.pm-pd .pm-promise::before{content:"\201D"; position:absolute; right:16px; top:0; font-family:var(--serif); font-weight:700; font-size:100px; line-height:1; color:color-mix(in srgb,var(--sedimento) 32%,transparent); pointer-events:none}
.pm-pd .pm-promise__t,.pm-pd .pm-promise > p:first-child{position:relative; margin:0; padding-right:44px; font-family:var(--serif); font-style:italic; font-size:calc(var(--t-body)*1.08); line-height:1.5; color:var(--fg); max-width:36em; text-wrap:pretty}
.pm-pd .pm-promise__dl,.pm-pd .pm-promise > dl{display:grid; grid-template-columns:minmax(0,1fr); gap:10px 28px; margin:0}
.pm-pd .pm-promise__dl > div,.pm-pd .pm-promise > dl > div{display:flex; flex-direction:column; gap:2px; min-width:0}
.pm-pd .pm-promise dt{font-family:var(--sans); font-weight:800; font-size:calc(12.5px*var(--k)); letter-spacing:.14em; text-transform:uppercase; color:#5E3A07}
.pm-pd .pm-promise dd{margin:0; font-family:var(--serif); font-size:var(--t-sm); line-height:1.4; color:var(--fg)}
@container pm (min-width:640px){ .pm-pd .pm-promise__dl,.pm-pd .pm-promise > dl{grid-template-columns:repeat(2,minmax(0,1fr))} }
@container pm (max-width:479px){ .pm-pd .pm-promise{padding:22px 16px 18px 18px} .pm-pd .pm-promise__t,.pm-pd .pm-promise > p:first-child{padding-right:0} .pm-pd .pm-promise::before{font-size:76px; right:8px} }

/* RESULTADO: linha do tempo do registro + situação atual */
.pm-pd .pm-tl{margin:2px 0 6px}
.pm-pd .pm-ob__now{display:flex; flex-direction:column; gap:8px; max-width:46em; padding:16px 0 4px 20px; border-left:6px solid var(--acc)}
.pm-pd .pm-ob__now .pm-p{max-width:none}
/* AVALIAÇÃO EDITORIAL: a única camada de fundo cheio (é opinião fundamentada, não fato) */
.pm-pd .pm-pd__s--editorial{--fg:#F1F6F6; --fg2:#BAD1D5; --acc:var(--varzea); --acc-t:#E8B968; --rule:rgba(186,209,213,.32); --focus:var(--varzea);
  padding:clamp(24px,4.2cqi,40px) clamp(20px,4.2cqi,44px); background:linear-gradient(165deg,#0E3A4E,#061A24 72%); color:var(--fg); border-top:6px solid var(--varzea)}
.pm-pd .pm-pd__s--editorial .pm-pd__tag--editorial{border-color:var(--varzea)}
.pm-pd .pm-pd__s--editorial .pm-seal--cumpriu{--c:#5FD08D; --dial:#5FD08D}
.pm-pd .pm-pd__s--editorial .pm-seal--parcial{--c:#F2C14E; --dial:#F2C14E}
.pm-pd .pm-pd__s--editorial .pm-seal--nao{--c:#FF4D44; --dial:#FF4D44}
.pm-pd .pm-pd__s--editorial .pm-seal--hd{font-size:calc(var(--t-h3)*.82)}
.pm-pd .pm-pd__s--editorial :is(a,button):focus-visible{outline-color:var(--varzea)}
.pm-pd .pm-pd__s--editorial :is(.pm-p,.pm-small) a{color:var(--fg)}

/* DINHEIRO PÚBLICO: o bloco do registro numa caixa, com as ressalvas sempre visíveis */
.pm-pd .pm-money-box{width:100%; max-width:46em; padding:22px 22px 20px; background:#fff; border:1px solid color-mix(in srgb,var(--fg) 20%,transparent); border-top:6px solid #0E3A4E}
.pm-pd .pm-ob__money{display:flex; flex-direction:column; gap:10px; align-items:flex-start; width:100%; min-width:0}
.pm-pd .pm-ob__fig{font-size:calc(clamp(40px,10.4cqi,60px)*var(--kd)); white-space:normal; overflow-wrap:anywhere}
.pm-pd .pm-cesta__n{font-size:calc(clamp(34px,9cqi,52px)*var(--kd)); overflow-wrap:anywhere}
.pm-pd .pm-ob__src,.pm-pd .pm-cesta__src{overflow-wrap:anywhere}
.pm-pd .pm-note.pm-note--ressalva{position:relative; width:100%; max-width:46em; margin:0; padding:16px 20px 16px 62px; border:2px solid #9A6B00; border-left-width:8px; background:#FBF1D6; font-family:var(--serif); font-size:calc(var(--t-body)*.98); line-height:1.55; color:#3A2800; max-width:46em}
.pm-pd .pm-note.pm-note--ressalva::before{content:"Ressalva"; display:block; margin-bottom:4px; font-family:var(--sans); font-weight:900; font-size:calc(12.5px*var(--k)); letter-spacing:.16em; text-transform:uppercase; color:#6F4B00}
.pm-pd .pm-note.pm-note--ressalva::after{content:"!"; position:absolute; left:16px; top:15px; display:grid; place-items:center; width:30px; height:30px; padding-top:8px; background:#9A6B00; color:#fff; font-family:var(--sans); font-weight:900; font-size:19px; line-height:1; -webkit-clip-path:polygon(50% 0,100% 100%,0 100%); clip-path:polygon(50% 0,100% 100%,0 100%)}
.pm-pd .pm-note--ressalva .pm-p{color:#3A2800; margin:0}
.pm-pd .pm-note--ressalva a{color:#2A1D00; text-decoration-color:#9A6B00}
.pm-pd .pm-ob__extra{max-width:48ch}
@container pm (max-width:479px){ .pm-pd .pm-money-box{padding:18px 14px 16px} .pm-pd .pm-note.pm-note--ressalva{padding:14px 14px 14px 54px} .pm-pd .pm-note.pm-note--ressalva::after{left:12px} }

/* FONTES */
.pm-pd .pm-src{max-width:860px}
.pm-pd .pm-src li:first-child{padding-top:6px}
.pm-pd .pm-src__b{min-width:0}
.pm-pd .pm-src__t,.pm-pd .pm-src__d,.pm-pd .pm-src__m{overflow-wrap:anywhere}
.pm-pd .pm-src__b .pm-link{min-height:44px}

/* registros em fotos e vídeos, e rodapé do painel */
.pm-pd__media{margin:0; padding-top:clamp(20px,3cqi,30px); border-top:1px solid var(--rule); width:100%}
.pm-pd__media .pm-media{margin-top:0}
.pm-pd__media .pm-det__body{padding-top:24px}
.pm-pd__media > summary{min-height:44px; padding:0; gap:10px; border-radius:0; box-shadow:none; background:none; font-size:calc(16px*var(--k)); text-decoration:underline; text-decoration-color:var(--acc); text-decoration-thickness:2px; text-underline-offset:5px}
.pm-pd__media > summary:hover{background:none; box-shadow:none; text-decoration-thickness:3px}
.pm-pd__media .pm-det__chev{width:22px; height:22px; padding:5px}
.pm-pd__foot{display:flex; flex-wrap:wrap; align-items:center; gap:10px 28px; padding-top:clamp(20px,3cqi,30px); border-top:1px solid var(--rule)}
.pm-pd__foot .pm-pd__back{margin:0}

/* =====================================================================
   Vídeo do Prometeuzinho (.pm-pv): hero, painéis e matérias. 16:9, controles nativos, sem autoplay.
   Sem arquivo: só uma mensagem discreta (nunca um player quebrado). O arquivo é decidido na geração, sem requisição.
   ===================================================================== */
.pm-pv{display:flex; flex-direction:column; gap:12px; width:100%; max-width:46em; min-width:0}
.pm-pv__stage{position:relative; width:100%; aspect-ratio:16/9; overflow:hidden; background:#04131B; border:1px solid rgba(186,209,213,.28); border-top:4px solid var(--varzea); box-shadow:var(--lift-2)}
.pm-pv__stage:empty,.pm-pv:not(:has(.pm-pv__el)) .pm-pv__stage{display:none}
.pm-pv__el{position:absolute; inset:0; display:block; width:100%; height:100%; background:#000; object-fit:contain}
.pm-pv--vertical{max-width:320px}
.pm-pv--vertical .pm-pv__stage{aspect-ratio:9/16}
.pm-intro__media{width:100%; max-width:320px; justify-self:center}

/* Vídeos verticais: composição contínua, navegação por toque ou botões. */
.pm-videos{--videos-gap:28px; --videos-visible:1; position:relative; isolation:isolate; margin-top:64px; padding:32px 0; min-width:0}
.pm-videos::before{content:""; position:absolute; inset:0 -24px; z-index:-1; background:rgba(4,19,27,.86); pointer-events:none}
.pm-videos__heading{display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:28px}
.pm-videos__heading h2{margin:0; font-size:clamp(28px,3.4cqi,42px); line-height:1.12}
.pm-videos__viewport{position:relative; min-width:0}
.pm-videos__controls{position:absolute; z-index:3; top:var(--videos-controls-top,50%); left:-16px; right:-16px; display:flex; align-items:center; justify-content:space-between; transform:translateY(-50%); pointer-events:none}
.pm-videos__controls[hidden]{display:none}
.pm-videos__controls button{display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid var(--varzea); border-radius:50%; background:#0A2D3E; color:#F1F6F6; font-family:var(--sans); font-size:24px; cursor:pointer; pointer-events:auto; transition:border-color .18s,background .18s}
.pm-videos__controls button:hover:not(:disabled){border-color:#F1F6F6; background:#184559}
.pm-videos__controls button:focus-visible{outline:3px solid #F1F6F6; outline-offset:3px}
.pm-videos__controls button:disabled{opacity:.3; cursor:default}
.pm-videos__count{margin:8px 0 0; text-align:center; font-family:var(--mono); font-size:12px; color:var(--fg2); font-variant-numeric:tabular-nums}
.pm-videos__count:empty{display:none}
.pm-videos__track{display:flex; align-items:stretch; gap:var(--videos-gap); overflow-x:auto; overflow-anchor:none; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; padding:0 0 18px; scrollbar-width:thin; scrollbar-color:var(--varzea) transparent}
.js .pm-videos__track{scrollbar-width:none}
.js .pm-videos__track::-webkit-scrollbar{display:none}
.pm-videos__item{display:flex; flex:0 0 calc((100% - (var(--videos-layout,var(--videos-visible)) - 1)*var(--videos-gap))/var(--videos-layout,var(--videos-visible))); min-width:0; scroll-snap-align:start}
.pm-videos__clone .pm-pv.pm-pv--preview .pm-pv__stage{display:block}
.pm-videos__track:focus-visible{outline:2px solid var(--varzea); outline-offset:6px}
.pm-videos .pm-pv__act{align-self:end; justify-content:space-between}
.pm-videos .pm-pv--preview{display:grid; grid-template-rows:auto 1fr auto auto; gap:14px; max-width:none; height:100%}
.pm-pv--preview .pm-pv__stage{aspect-ratio:9/16; border:1px solid rgba(186,209,213,.18); box-shadow:none}
.pm .pm-pv__poster{display:none; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none}
.js .pm-pv--preview:not(.is-active) .pm-pv__poster,.pm-pv--preview.is-preview:not(.is-active) .pm-pv__poster{display:block}
.js .pm-pv--preview:not(.is-active) .pm-pv__el,.pm-pv--preview.is-preview:not(.is-active) .pm-pv__el{visibility:hidden}
.pm-pv__start{position:absolute; z-index:1; top:50%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:68px; height:68px; padding:0; border:1px solid #E8B968; border-radius:50%; background:rgba(4,19,27,.87); color:#F1F6F6; cursor:pointer; transition:background .18s,border-color .18s}
.pm-pv__start svg{width:28px; height:28px; margin-left:2px}
.pm-pv__start:hover{background:#0A2D3E; border-color:#F1F6F6}
.pm-pv__start:focus-visible{outline:3px solid #F1F6F6; outline-offset:5px}
.pm-pv__start span{position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%)}
.pm-videos__title{align-self:start; min-height:2.4em; margin:3px 0 0; font-family:var(--sans); font-size:clamp(21px,2cqi,25px); line-height:1.2; font-weight:800; color:var(--fg)}
.pm-videos__title a{color:inherit; text-decoration:none}
.pm-videos__title a:hover{text-decoration:underline; text-underline-offset:4px; text-decoration-color:var(--varzea)}
.pm-videos__read{display:inline-flex; align-items:center; justify-self:start; gap:12px; min-height:44px; color:var(--acc-t); font-family:var(--sans); font-size:16px; font-weight:700; text-decoration:none}
.pm-videos__read:hover{text-decoration:underline; text-underline-offset:5px}
.pm-pv--preview .pm-pv__act{align-self:stretch; width:100%; position:relative; display:flex; justify-content:flex-start; align-items:center; gap:8px; padding-top:8px; border-top:1px solid rgba(186,209,213,.2)}
.pm-pv--preview .pm-pv__act [data-pv-dl],.pm-pv--preview .pm-pv__share summary{min-height:44px; padding:9px 12px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid rgba(186,209,213,.22); background:#103445; box-shadow:none; border-radius:6px; color:#F1F6F6; font-family:var(--sans); font-size:14px; font-weight:600; text-decoration:none; cursor:pointer; transition:background .18s,border-color .18s}
.pm-pv--preview .pm-pv__act [data-pv-dl]:hover,.pm-pv--preview .pm-pv__share summary:hover,.pm-pv--preview .pm-pv__share[open] summary{color:#F1F6F6; border-color:var(--varzea); background:#184559}
.pm-pv--preview .pm-pv__act :is([data-pv-dl],summary) svg{flex:none; width:17px; height:17px; color:#E8B968}
.pm-pv__share summary{list-style:none}
.pm-pv__share summary::-webkit-details-marker{display:none}
.pm-pv__options{position:absolute; z-index:3; left:0; bottom:calc(100% + 8px); display:flex; flex-direction:column; width:100%; max-width:280px; padding:6px; border:1px solid rgba(186,209,213,.4); background:#061A24}
.pm-pv__options :is(button,a){display:flex; align-items:center; width:100%; min-height:44px; padding:10px 12px; border:0; border-radius:0; background:transparent; color:#F1F6F6; text-align:left; text-decoration:none; font-family:var(--sans); font-size:15px; font-weight:600; cursor:pointer}
.pm-pv__options :is(button,a):hover{background:#0A2D3E}
.pm-pv--preview .pm-pv__st{font-family:var(--sans); font-size:13px; line-height:1.45; margin:6px 0 0}
.pm-pv--preview.is-fail .pm-pv__poster{filter:brightness(.5)}
.pm-pv--preview.is-fail :is([data-pv-dl],[data-pv-sharefile]){display:none}
.pm-pv--preview.is-fail .pm-pv__start span{top:calc(100% + 10px); left:50%; transform:translateX(-50%); width:180px; height:auto; clip-path:none; font-family:var(--sans); font-size:16px; font-weight:700}
@container pm (min-width:700px){.pm-videos{--videos-visible:2}}
@container pm (min-width:1100px){.pm-videos{--videos-visible:3}}
@container pm (max-width:639px){
  .pm-videos{margin-top:36px; padding-top:24px; --videos-gap:20px}
  .pm-videos::before{inset:0 -16px}
  .pm-videos__heading{flex-direction:column; align-items:flex-start; gap:18px; margin-bottom:22px}
}
@media (prefers-reduced-motion:reduce){.pm-videos button{transition:none}}
@media (forced-colors:active){.pm-videos::before{background:Canvas}.pm-pv__start,.pm-pv__options{background:Canvas; color:CanvasText; border-color:ButtonText}.pm-pv__options :is(button,a){color:CanvasText}}

/* Compartilhar e Baixar MP4 sempre lado a lado (carrosséis, apresentação e painéis): em telas estreitas os dois dividem a linha em partes iguais
   e o texto encolhe (com reticências, no limite) em vez de o segundo botão cair para baixo. Mensagens de status (.pm-pv__st) ocupam a linha seguinte. */
@container pm (max-width:1099px){
  .pm-pv--preview .pm-pv__act{flex-wrap:wrap}
  .pm-pv--preview .pm-pv__act > :is(.pm-pv__share,[data-pv-dl]){flex:1 1 0; min-width:0}
  .pm-pv--preview .pm-pv__act > .pm-pv__st{flex:0 0 100%}
  .pm-pv--preview .pm-pv__share summary,.pm-pv--preview .pm-pv__act [data-pv-dl]{width:100%; min-width:0; padding-inline:8px; gap:6px; font-size:clamp(12px,3.6cqi,14px)}
  .pm-pv--preview .pm-pv__act :is(summary,[data-pv-dl]) > span{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
}

/* =====================================================================
   Seção "Compartilhe" (#compartilhe, tema escuro): segundo carrossel, entre as cinco promessas (que terminam em --deeper) e o rodapé
   (que começa em --deeper), sem emenda. Usa o mesmo carrossel (.pm-videos) e os mesmos cartões; no lugar do link "Ler matéria"
   cada cartão leva título, aviso opcional e ações. Marcação: ver scripts/lib/home.mjs (secaoCompartilhe).
   ===================================================================== */
.pm-ch--share{--relief-o:.2; --relief-pos:28% 50%; background:var(--deeper)}
.pm-ch--share .pm-in{padding-top:calc(var(--py)*.5); padding-bottom:calc(var(--py)*.55)}
.pm-ch--share .pm-videos{margin-top:0}
.pm-ch--share .pm-videos::before{background:rgba(10,45,62,.46); border:1px solid rgba(186,209,213,.16)}
.pm-videos__intro{min-width:0}
.pm-videos__lead{max-width:62ch; margin:12px 0 0; font-family:var(--serif); font-size:var(--t-sm); line-height:1.5; color:var(--fg2)}
/* Cartão de convite (penúltimo do carrossel): o mesmo molde dos cartões de vídeo (área 9:16 + linha de rodapé de 44 px), mas sem capa: fundo claro (os vídeos
   são escuros, então ele se destaca) com o ícone do WhatsApp. É um <a> inteiro; marcação em scripts/lib/home.mjs (cartaoConvite). */
.pm-convite{display:flex; flex-direction:column; gap:14px; width:100%; min-width:0; color:var(--fg); text-decoration:none}
.pm-convite__stage{flex:none; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; width:100%; aspect-ratio:9/16; padding:24px 22px; text-align:center;
  border:1px solid rgba(186,209,213,.5); border-top:4px solid #25D366; background:#F4F7F7; box-shadow:0 18px 40px -24px rgba(0,0,0,.7); transition:background .18s,box-shadow .18s}
.pm-convite__ico{display:grid; place-items:center; width:76px; height:76px; margin-bottom:8px; border-radius:50%; color:#fff; background:#25D366; box-shadow:0 12px 24px -12px rgba(7,94,84,.7)}
.pm-convite__ico svg{width:42px; height:42px}
.pm-convite__t{max-width:13em; font-family:var(--sans); font-size:clamp(21px,2cqi,25px); line-height:1.2; font-weight:800; color:var(--abissal); text-wrap:balance}
.pm-convite__s{font-family:var(--sans); font-size:var(--t-sm); line-height:1.3; font-weight:800; color:#075E54}
.pm-convite__go{display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; min-height:44px; padding-top:8px; border-top:1px solid rgba(186,209,213,.2); font-family:var(--sans); font-size:14px; font-weight:600; color:#F1F6F6}
.pm-convite__go svg{flex:none; width:17px; height:17px; color:#E8B968}
.pm-convite:hover .pm-convite__stage{background:#fff; box-shadow:0 22px 44px -22px rgba(0,0,0,.8)}
.pm-convite:hover .pm-convite__go{text-decoration:underline; text-underline-offset:4px; text-decoration-color:var(--varzea)}
/* Com poucos vídeos (1 ou 2) o carrossel das obras estica cada cartão pela faixa inteira; aqui o cartão nunca passa da largura normal de cada tela (3, 2 ou 1 por vez). */
.pm-ch--share .pm-videos__item{max-width:calc((100% - (var(--videos-visible) - 1)*var(--videos-gap))/var(--videos-visible))}
/* Título e aviso opcional ocupam a linha flexível; as ações ficam logo abaixo. */
.pm-videos--share .pm-pv--preview{grid-template-rows:auto 1fr auto}
.pm-videos__head{align-self:start; min-width:0}
.pm-videos__ai{display:inline-block; margin:8px 0 0; padding:2px 10px; border:1px solid rgba(186,209,213,.34); border-radius:999px; font-family:var(--sans); font-size:12px; line-height:1.4; font-weight:600; color:var(--fg)}
@media (prefers-contrast:more){ .pm-ch--share{background:#061A24} }
@media (forced-colors:active){
  .pm-ch--share .pm-videos::before{border-color:CanvasText}
  .pm-videos__ai{border-color:CanvasText; color:CanvasText}
}

@container pm (max-width:639px){
  .pm-intro .pm-gauge{grid-row:5; margin-top:24px}
  .pm-intro__media{grid-row:3; margin-bottom:24px; width:min(100%,280px)}
  .pm-intro .pm-lead{grid-row:4}
}
.pm-pv__msg{display:flex; align-items:center; gap:12px; margin:0; padding:11px 16px 11px 12px; border:1px dashed color-mix(in srgb,var(--fg) 45%,transparent); background:color-mix(in srgb,var(--fg) 4%,transparent); font-family:var(--serif); font-size:var(--t-sm); line-height:1.4; color:var(--fg2)}
.pm-pv__msg::before{content:""; flex:none; width:30px; height:30px; background:var(--acc-t);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='square'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 6.5V12l3.6 2.2'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='square'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 6.5V12l3.6 2.2'/%3E%3C/svg%3E") center/contain no-repeat}
.pm-pv:has(.pm-pv__el) .pm-pv__msg{display:none}
.pm-pv.is-fail:not(.pm-pv--preview) .pm-pv__stage,.pm-pv.is-fail:not(.pm-pv--preview) .pm-pv__act{display:none!important}
.pm-pv.is-fail .pm-pv__msg{display:flex}
.pm-pv__act{display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px}
.pm-pv__act .pm-btn{min-height:46px; padding:6px 18px; font-size:calc(15px*var(--k))}
.pm-pv__act .pm-link{min-height:44px; font-size:calc(16px*var(--k))}
.pm-pv__st{flex:1 1 100%; margin:0; min-height:1.4em; font-family:var(--mono); font-size:calc(13px*var(--k)); line-height:1.4; color:var(--fg2)}
.pm-pv__st:empty{display:none}
/* no hero (escuro) sem vídeo: a mensagem ocupa o lugar do vídeo, em 16:9, para a composição não "furar" */
.pm-intro__media .pm-pv{max-width:none}
.pm-intro__media .pm-pv:not(:has(.pm-pv__el)) .pm-pv__msg{aspect-ratio:16/9; flex-direction:column; justify-content:center; text-align:center; padding:18px; border-color:rgba(186,209,213,.4); background:rgba(241,246,246,.04); color:var(--fg2)}
.pm-intro__media .pm-pv:not(:has(.pm-pv__el)) .pm-pv__msg::before{width:44px; height:44px}
.pm-intro__media .pm-pv__msg{max-width:none}
.pm-pd .pm-pv{max-width:none}
@container pm (max-width:1023px){ .pm-pd .pm-pv{max-width:46em} }
@container pm (min-width:1024px){ .pm-pd:not(:has(> .pm-pv .pm-pv__el)) > .pm-pv{max-width:46em} }
.pm-pd .pm-pv .pm-btn--2{--btn-chip:var(--fg)}

/* =====================================================================
   Preferências do usuário, contraste e impressão
   ===================================================================== */
@media (prefers-contrast:more){
  .pm-pcard__a,.pm-pd,.pm-pv__stage,.pm-how{box-shadow:none}
  .pm-pd .pm-promise{background:var(--paper)}
.pm-pd .pm-pd__s--editorial{background:#061A24}
  .pm-pv__msg{border-style:solid}
}
@media (forced-colors:active){
  .pm-pcard__a,.pm-pd,.pm-how,.pm-pv__stage,.pm-pv__msg,.pm-ph{border:1px solid CanvasText; background:Canvas; color:CanvasText; box-shadow:none}
  .pm-pcard__a,.pm-pd{border-top-width:4px}
  .pm-pcard[data-open] .pm-pcard__a{outline:3px solid Highlight}
.pm-pd :is(.pm-pd__tag,.pm-asec__tag),.pm-pd .pm-promise,.pm-pd .pm-money-box,.pm-pd .pm-note.pm-note--ressalva,.pm-pd .pm-pd__s--editorial{border:2px solid CanvasText; background:Canvas; color:CanvasText}
  .pm-pd :is(.pm-pd__tag,.pm-asec__tag)::before{forced-color-adjust:none; background-color:CanvasText}
.pm-pd .pm-pd__tag--dinheiro::before{background:none; color:CanvasText; border-color:CanvasText}
  .pm-pd .pm-note.pm-note--ressalva::after{forced-color-adjust:none; background:CanvasText; color:Canvas}
  .pm-pv__msg::before,.pm-pcard__btn svg{forced-color-adjust:none; background-color:CanvasText}
  .pm-pcard__btn,.pm-pv .pm-btn{border:2px solid ButtonText}
  .pm-ph__t,.pm-ph:not(:has(.pm-ph__t))::after,.pm-pcard__media .pm-credit{background:Canvas; color:CanvasText; border-top:1px solid CanvasText}
  .pm-how li:not(:has(.pm-how__n))::before,.pm-how__n{background:CanvasText; color:Canvas}
}
@media print{
  html.js .pm-pd:not(.is-open){display:flex!important}
  .pm-pd__back,.pm-pv__act,.pm-pcard__btn{display:none!important}
  .pm-pd,.pm-pcard__a{box-shadow:none; break-inside:auto}
}
