/* pmvm.com.br — identidade Revlo v1.0 (Helvetica, vermelho de acento, branco dominante) */
*,*::before,*::after{box-sizing:border-box}
:root{
  --vermelho:#E9282D; --vermelho-escuro:#AD211E; --rosa:#FFD9DA;
  --preto:#111111; --texto:#4A4E52; --apoio:#9AA0A6; --card:#F6F7F8;
  --branco:#fff; --borda:#E4E6EA;
  --zap:#128C4A; --zap-escuro:#0B6B38;
  --raio:12px; --faixa:clamp(1.25rem,4vw,2.5rem); --max:1120px;
  --fonte:Helvetica,"Helvetica Neue",Arial,system-ui,sans-serif;
}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--branco);color:var(--texto);
  font:400 clamp(1rem,.97rem + .2vw,1.08rem)/1.65 var(--fonte);text-wrap:pretty}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--vermelho-escuro);text-underline-offset:.15em}
a:hover{color:var(--preto)}
h1,h2,h3,h4{font-family:var(--fonte);color:var(--preto);font-weight:700;line-height:1.15;
  letter-spacing:-.02em;text-wrap:balance;margin:0 0 .6em}
h1{font-size:clamp(2rem,1.4rem + 2.6vw,3.2rem)}
h2{font-size:clamp(1.5rem,1.2rem + 1.4vw,2.2rem);margin-top:1.8em}
h3{font-size:clamp(1.15rem,1.05rem + .5vw,1.4rem);margin-top:1.6em}
p,ul,ol{margin:0 0 1.1em}
:focus-visible{outline:3px solid var(--vermelho);outline-offset:2px;border-radius:4px}
.env{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--faixa)}
.pular{position:absolute;left:-9999px}
.pular:focus{left:.5rem;top:.5rem;z-index:99;background:#fff;padding:.6rem 1rem;border-radius:var(--raio);box-shadow:0 2px 12px #0003}
.kicker{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--vermelho);margin:0 0 .6rem}

/* topo — branco, logo vermelho */
.topo{background:#fff;border-bottom:1px solid var(--borda);position:sticky;top:0;z-index:50}
.topo .env{display:flex;align-items:center;gap:1rem;min-height:66px;flex-wrap:wrap}
.marca{font-weight:700;font-size:1.5rem;letter-spacing:-.03em;color:var(--vermelho);text-decoration:none;line-height:1}
.marca span{display:block;font-size:.6rem;letter-spacing:.16em;color:var(--apoio);font-weight:400;margin-top:.15rem}
.menu{margin-left:auto;display:flex;align-items:center;gap:clamp(.7rem,2vw,1.5rem);flex-wrap:wrap;font-size:.95rem}
.menu a{color:var(--preto);text-decoration:none;font-weight:500}
.menu a:hover{color:var(--vermelho)}

/* botoes */
.bt{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;text-decoration:none;
  padding:.8rem 1.35rem;border-radius:var(--raio);border:2px solid transparent;line-height:1.2;font-size:.98rem}
.bt-zap{background:var(--zap);color:#fff}
.bt-zap:hover{background:var(--zap-escuro);color:#fff}
.bt-rev{background:linear-gradient(135deg,var(--vermelho),var(--vermelho-escuro));color:#fff}
.bt-rev:hover{background:var(--vermelho-escuro);color:#fff}
.bt-linha{border-color:var(--borda);color:var(--preto);background:#fff}
.bt-linha:hover{border-color:var(--vermelho);color:var(--vermelho)}

/* hero — branco, acento vermelho */
.hero{padding-block:clamp(2.4rem,6vw,4.5rem);border-bottom:1px solid var(--borda)}
.hero h1{margin-bottom:.45em}
.hero .chamariz{font-size:1.12em;max-width:56ch;color:var(--texto)}
.hero .acoes{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.7rem}
.hero-grade{display:grid;gap:clamp(1.5rem,4vw,3rem);align-items:center;grid-template-columns:1fr}
@media (min-width:900px){.hero-grade{grid-template-columns:1.05fr .95fr}}
.selos{display:flex;gap:1.6rem;flex-wrap:wrap;margin-top:1.8rem;color:var(--apoio);font-size:.88rem}
.selos b{color:var(--preto);display:block;font-size:1.3rem;line-height:1.2}

section{padding-block:clamp(2.2rem,5vw,3.6rem)}
section.fosca{background:var(--card)}
.cartoes{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.cartao{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:1.3rem}
.cartao h3{margin:.1rem 0 .4rem;font-size:1.06rem}
.cartao p{margin:0;font-size:.95rem}
.cartao a{font-weight:700;text-decoration:none}
.cartao a:hover{text-decoration:underline}

.prosa{max-width:72ch}
.prosa ul{padding-left:1.15rem}
.prosa li{margin-bottom:.4em}
.prosa img{border-radius:var(--raio);margin:1.6rem 0}

.faq details{border-bottom:1px solid var(--borda);padding:.95rem 0}
.faq summary{font-weight:700;color:var(--preto);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--vermelho);font-weight:700}
.faq details[open] summary::after{content:"\2013"}
.faq p{margin:.7rem 0 0}

.chamada{background:linear-gradient(135deg,var(--vermelho),var(--vermelho-escuro));color:#fff;text-align:center}
.chamada h2,.chamada p{color:#fff}
.chamada p{max-width:52ch;margin-inline:auto;opacity:.95}
.chamada .bt-linha{background:transparent;color:#fff;border-color:#ffffff80}
.chamada .bt-linha:hover{background:#ffffff1a;color:#fff;border-color:#fff}

.rodape{background:var(--preto);color:#A9ADB4;font-size:.92rem;padding-block:2.4rem}
.rodape a{color:#E6E8EB;text-decoration:none}
.rodape a:hover{color:var(--vermelho)}
.rodape .marca{color:#fff}
.rodape-grade{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}
.rodape h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin:0 0 .75rem}
.rodape ul{list-style:none;padding:0;margin:0}
.rodape li{margin-bottom:.4rem}
.fim{border-top:1px solid #2A2A2A;margin-top:1.9rem;padding-top:1.1rem;font-size:.85rem;color:#73777D}

.migalhas{font-size:.86rem;color:var(--apoio);padding-top:1.1rem}
.migalhas a{color:var(--apoio)}
.migalhas ol{list-style:none;display:flex;gap:.4rem;flex-wrap:wrap;padding:0;margin:0}
.migalhas li+li::before{content:"/";margin-right:.4rem;color:#C9CDD2}

/* painel LED decorativo, puro CSS */
.painel{background:#111;border-radius:14px;padding:1.1rem;box-shadow:0 12px 40px #0000001f}
.painel-tela{background:#000;border-radius:7px;padding:1.1rem .9rem;text-align:center;
  font:700 clamp(1rem,3.2vw,1.55rem)/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;
  color:#FFB000;letter-spacing:.07em;text-shadow:0 0 14px #ffb00070}
.painel-pes{display:flex;justify-content:space-between;color:#5A5F66;font-size:.7rem;margin-top:.75rem;text-transform:uppercase;letter-spacing:.12em}
@media (prefers-reduced-motion:no-preference){
  .painel-tela{animation:brilho 3.6s ease-in-out infinite}
  @keyframes brilho{0%,100%{opacity:1}50%{opacity:.87}}
}
.lista-posts{list-style:none;padding:0;margin:0;display:grid;gap:.1rem}
.lista-posts li{border-bottom:1px solid var(--borda)}
.lista-posts a{display:block;padding:.95rem 0;color:var(--preto);text-decoration:none;font-weight:500}
.lista-posts a:hover{color:var(--vermelho)}
.lista-posts time{display:block;font-size:.8rem;color:var(--apoio);font-weight:400}

/* logotipo oficial — wordmark, proporção fixa 4,44:1, nunca redesenhado */
.marca{display:flex;align-items:flex-start;gap:.55rem;text-decoration:none}
.marca img{width:116px;height:auto;display:block}
.marca span{font-size:.58rem;letter-spacing:.16em;color:var(--apoio);font-weight:400;
  margin:0;padding-top:.5rem;border-left:1px solid var(--borda);padding-left:.55rem;align-self:stretch;display:flex;align-items:center}
.marca-rodape{width:116px;height:auto;margin-bottom:.4rem}

/* fotos */
.foto-hero{margin:0}
.foto-hero img{border-radius:var(--raio);width:100%;object-fit:cover}
.galeria{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));margin-top:1.4rem}
.galeria figure{margin:0}
.galeria img{border-radius:var(--raio);width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--card)}
.galeria figcaption{font-size:.88rem;color:var(--apoio);margin-top:.6rem}
.video-caixa video{width:100%;height:auto;border-radius:var(--raio);background:#000;display:block}
@media (min-width:900px){
  .video-caixa + .prosa{margin:0}
  section.fosca > .env:has(.video-caixa){grid-template-columns:1.1fr .9fr}
}
