/* Base do redesign MFF. Direcao Oficina (DESIGN.md ativo no Novamira).
   Consome: nada. Expoe: tokens em .mff e componentes .mff-*.
   Compartilhado por todas as paginas do redesign; nenhuma pagina duplica isto.
   Gerado em 2026-08-26. */
 @font-face{font-family:'Space Grotesk';src:url('/wp-content/uploads/fontes/space-grotesk-var.woff2') format('woff2');font-weight:300 700;font-style:normal;font-display:swap} @font-face{font-family:'General Sans';src:url('/wp-content/uploads/fontes/general-sans-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap} @font-face{font-family:'General Sans';src:url('/wp-content/uploads/fontes/general-sans-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap} .mff{--bg:#15181A;--surface:#1D2124;--raised:#252A2E;--ink:#E6E9E8;--muted:#8A9290;--border:#2A3033;--accent:#E8622A;--accent-ink:#15181A;--r-sm:4px;--r-md:8px;--s-sm:12px;--s-md:20px;--s-lg:40px;--s-xl:72px;--fh:'Space Grotesk',system-ui,sans-serif;--fb:'General Sans',system-ui,sans-serif;color-scheme:dark;background:var(--bg);color:var(--ink);font-family:var(--fb);line-height:1.6;-webkit-font-smoothing:antialiased} .mff *,.mff *::before,.mff *::after{box-sizing:border-box} .mff :where(h1,h2,h3,p,ul,li){margin:0;padding:0} .mff a{color:var(--ink);text-decoration:none} .mff :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px} .mff a:hover{color:var(--accent)} .mff .wrap{max-width:1240px;margin:0 auto;padding:0 var(--s-md)} .mff button{background-color:transparent;border:0;border-radius:0;color:inherit;font:inherit;transition:none;cursor:pointer} .mff-top{border-bottom:1px solid var(--border)} .mff-top .wrap{display:flex;align-items:center;gap:var(--s-lg);height:72px} .mff-logo{font-family:var(--fh);font-weight:700;font-size:17px;letter-spacing:-.01em} .mff-nav{display:flex;gap:var(--s-md);margin-left:auto;font-size:15px} .mff-nav a{color:var(--muted)} .mff-nav a:hover{color:var(--ink)} .mff-zap{font-family:var(--fh);font-weight:700;font-size:14px;border:1px solid var(--border);border-radius:var(--r-md);padding:9px 16px} .mff-zap:hover{border-color:var(--accent)} .mff button.mff-burger{display:none;margin-left:auto;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--ink);padding:8px 12px;font-size:14px} .mff-hero{padding:var(--s-xl) 0} .mff-grade{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s-xl);align-items:start} .mff-h1{font-family:var(--fh);font-weight:700;line-height:1.05;letter-spacing:-.025em;font-size:clamp(38px,4.6vw,62px)} .mff-sub{margin-top:var(--s-md);font-size:clamp(18px,1.6vw,21px);line-height:1.45;color:var(--muted);max-width:36ch} .mff-sub b{color:var(--ink);font-weight:600} .mff-campo{margin-top:var(--s-lg);display:flex;gap:var(--s-sm)} .mff-campo input{flex:1 1 auto;min-height:64px;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--ink);font:inherit;font-size:17px;padding:0 var(--s-md);min-width:0} .mff-campo input::placeholder{color:var(--muted)} .mff-campo input:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:transparent} .mff-campo input:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface) inset;caret-color:var(--ink)} .mff button.mff-btn{min-height:64px;padding:0 30px;background-color:var(--accent);color:var(--accent-ink);border-radius:var(--r-md);font-family:var(--fh);font-weight:700;font-size:17px;white-space:nowrap} .mff button.mff-btn:hover{background-color:var(--accent);color:var(--accent-ink);filter:brightness(1.07)} .mff button.mff-btn:active{transform:translateY(1px)} .mff button.mff-btn[disabled]{opacity:.6;transform:none;filter:none} .mff-micro{margin-top:var(--s-sm);font-size:14px;color:var(--muted)} .mff-erro{margin-top:var(--s-sm);font-size:14px;color:var(--accent)} .mff-depois{margin-top:var(--s-lg);font-size:16px;color:var(--muted);max-width:44ch} .mff-depois a{border-bottom:1px solid var(--border);padding-bottom:1px} .mff-depois a:hover{border-color:var(--accent)} .mff-entrada.off{display:none} .mff-emcurso{display:none} .mff-emcurso.on{display:block;margin-top:var(--s-lg)} .mff-alvo{font-size:15px;color:var(--ink);word-break:break-all} .mff-status{display:flex;align-items:center;gap:10px;margin-top:var(--s-sm);font-size:15px;color:var(--muted)} .mff-status.off{display:none} .mff-dot{width:9px;height:9px;border-radius:50%;background-color:var(--accent);flex:none;opacity:.4} .mff button.mff-voltar{display:none;margin-top:var(--s-lg);color:var(--muted);font-size:15px;border-bottom:1px solid var(--border)} .mff button.mff-voltar.on{display:inline-block} .mff button.mff-voltar:hover{color:var(--accent);border-color:var(--accent)} .mff-rotulo{font-family:var(--fh);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)} .mff-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-sm);margin-top:var(--s-md)} .mff-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-md);min-height:104px} .mff-card b{display:block;font-family:var(--fh);font-weight:700;font-size:38px;line-height:1;color:var(--ink)} .mff-card.vazio b{color:var(--raised)} .mff-card span{display:block;margin-top:8px;font-size:13px;color:var(--muted)} .mff-nota{margin-top:var(--s-md);font-size:14px;color:var(--muted)} .mff-achados{margin-top:var(--s-lg);list-style:none} .mff-achados li{border-top:1px solid var(--border);padding:var(--s-md) 0} .mff-achados strong{display:block;font-family:var(--fh);font-weight:700;font-size:16px} .mff-achados em{display:block;margin-top:4px;font-style:normal;font-size:15px;color:var(--muted)} @media (max-width:980px){ .mff-top .wrap{flex-wrap:wrap;height:auto;padding-top:14px;padding-bottom:14px;row-gap:14px} .mff-zap{display:none} .mff-nav{order:3;flex-basis:100%;margin-left:0;flex-wrap:wrap;gap:var(--s-md)} .mff-top.js .mff-nav{display:none} .mff-top.js .mff-nav.on{display:flex;flex-direction:column;gap:14px;padding-top:4px} .mff-top.js .mff-nav a{padding:6px 0} .mff-top.js button.mff-burger{display:block} .mff-grade{grid-template-columns:1fr;gap:var(--s-lg)} .mff-hero{padding:var(--s-lg) 0} .mff-campo{flex-direction:column} .mff button.mff-btn{width:100%} } @media (prefers-reduced-motion:no-preference){ .mff-anim{animation:mffUp .5s cubic-bezier(.2,.7,.3,1) both} @keyframes mffUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}} .mff-dot{animation:mffPulso 1.1s ease-in-out infinite} @keyframes mffPulso{0%,100%{opacity:.35}50%{opacity:1}} .mff-card.carregando b,.mff-card.carregando span{animation:mffRespira 1.4s ease-in-out infinite} @keyframes mffRespira{0%,100%{opacity:.4}50%{opacity:.85}} } .mff-sec{padding:var(--s-xl) 0;border-top:1px solid var(--border)} .mff-agente .mff-h2{max-width:24ch} .mff-agente p{margin-top:var(--s-md);font-size:19px;line-height:1.55;color:var(--muted);max-width:58ch} .mff-agente p b{color:var(--ink);font-weight:600} .mff-agente .selo{display:inline-block;margin-top:var(--s-lg);font-size:14px;color:var(--muted);border:1px solid var(--border);border-radius:var(--r-sm);padding:8px 14px} .mff-h2{font-family:var(--fh);font-weight:700;line-height:1.1;letter-spacing:-.02em;font-size:clamp(28px,3.2vw,44px);max-width:20ch} .mff-lead{margin-top:var(--s-md);font-size:18px;color:var(--muted);max-width:56ch} .mff-nota2{margin-top:var(--s-md);font-size:14px;color:var(--muted)} .mff-marcas{display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-lg);margin-top:var(--s-lg);font-family:var(--fh);font-weight:700;font-size:19px;color:var(--muted)} .mff-numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:var(--s-xl);padding-top:var(--s-lg);border-top:1px solid var(--border)} .mff-num{padding-left:var(--s-lg)} .mff-num+.mff-num{border-left:1px solid var(--border)} .mff-num:first-child{padding-left:0} .mff-num b{display:block;font-family:var(--fh);font-weight:700;font-size:clamp(34px,4vw,52px);line-height:1} .mff-num span{display:block;margin-top:6px;font-size:14px;color:var(--muted)} .mff-caso{display:grid;grid-template-columns:minmax(0,220px) 1fr;gap:var(--s-lg);padding:var(--s-lg) 0;border-top:1px solid var(--border)} .mff-caso:first-of-type{border-top:0} .mff-delta{font-family:var(--fh);font-weight:700;font-size:clamp(30px,3.4vw,44px);line-height:1;color:var(--accent)} .mff-delta.neutro{color:var(--ink)} .mff-crus{margin-top:8px;font-size:14px;color:var(--muted)} .mff-caso h3{font-family:var(--fh);font-weight:700;font-size:19px} .mff-caso p{margin-top:8px;color:var(--muted);max-width:52ch} .mff-vert{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-lg);margin-top:var(--s-lg)} .mff-vert .destaque{grid-column:1 / -1;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-lg)} .mff-vert h3{font-family:var(--fh);font-weight:700;font-size:21px} .mff-vert p{margin-top:10px;color:var(--muted);max-width:60ch} .mff-quem{margin-top:var(--s-md);font-size:15px;color:var(--ink)} .mff-servs{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--s-sm);margin-top:var(--s-lg)} .mff-serv{grid-column:span 2;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-lg)} .mff-serv.principal{grid-column:span 6;display:grid;grid-template-columns:minmax(0,270px) minmax(0,1fr);gap:var(--s-xl);align-items:start} .mff-frentes{margin-top:var(--s-lg);list-style:none;border-top:1px solid var(--border)} .mff-frentes li{border-bottom:1px solid var(--border);padding:12px 0;font-size:15px;color:var(--muted)} .mff-frentes b{display:block;font-family:var(--fh);font-weight:700;font-size:15px;color:var(--ink)} .mff-serv.meio{grid-column:span 3} .mff-serv h3{font-family:var(--fh);font-weight:700;font-size:21px} .mff-serv p{margin-top:10px;color:var(--muted)} .mff-preco{display:inline-block;margin-top:var(--s-md);font-family:var(--fh);font-weight:700;font-size:15px;color:var(--ink);border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 12px} .mff-como{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-lg) var(--s-xl);margin-top:var(--s-lg)} .mff-como div{border-top:1px solid var(--border);padding-top:var(--s-md)} .mff-como h3{font-family:var(--fh);font-weight:700;font-size:17px} .mff-como p{margin-top:8px;color:var(--muted)} .mff-sobre{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-xl);align-items:start} .mff-sobre p{margin-top:var(--s-md);color:var(--muted);max-width:52ch} .mff-sobre p b{color:var(--ink);font-weight:600} .mff-fim{background-color:var(--surface);border-top:1px solid var(--border)} .mff-fim .wrap{padding-top:var(--s-xl);padding-bottom:var(--s-xl)} .mff-fim a.mff-cta{display:inline-block;margin-top:var(--s-lg);background-color:var(--accent);color:var(--accent-ink);border-radius:var(--r-md);padding:18px 30px;font-family:var(--fh);font-weight:700;font-size:17px} .mff-fim a.mff-cta:hover{color:var(--accent-ink);filter:brightness(1.07)} .mff-pe{border-top:1px solid var(--border);padding:var(--s-lg) 0;font-size:14px;color:var(--muted)} .mff-pe .wrap{display:flex;flex-wrap:wrap;gap:var(--s-md);align-items:center} .mff-pe nav{margin-left:auto;display:flex;gap:var(--s-md);flex-wrap:wrap} .mff-pe a{color:var(--muted)} .mff-pe a:hover{color:var(--accent)} @media (max-width:980px){ .mff-caso{grid-template-columns:1fr;gap:var(--s-sm)} .mff-vert,.mff-como,.mff-sobre{grid-template-columns:1fr} .mff-servs{grid-template-columns:1fr} .mff-serv,.mff-serv.meio,.mff-serv.principal{grid-column:span 1} .mff-serv.principal{grid-template-columns:1fr} .mff-numeros{gap:var(--s-lg)} } .mff-marcas a{color:var(--muted)} .mff-marcas a:hover{color:var(--accent)} .mff-vert .destaque{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-lg);align-items:center} .mff-fig{margin:0} .mff-shot{display:block;width:100%;height:auto;border-radius:var(--r-md);border:1px solid var(--border)} .mff-fig figcaption{margin-top:10px;font-size:13px;color:var(--muted)} @media (max-width:980px){ .mff-vert .destaque{grid-template-columns:1fr} } .mff-chat{display:none;margin-top:var(--s-lg);border-top:1px solid var(--border);padding-top:var(--s-lg)} .mff-chat.on{display:block} .mff-chat-topo{display:flex;align-items:baseline;gap:var(--s-md);flex-wrap:wrap} .mff-chat-topo h2{font-family:var(--fh);font-weight:700;font-size:clamp(18px,1.7vw,22px);line-height:1.2} .mff-chat-topo span{font-size:14px;color:var(--muted)} .mff-msgs{margin-top:var(--s-md);display:flex;flex-direction:column;gap:var(--s-sm);max-height:340px;overflow-y:auto;padding-right:6px} .mff-msg{max-width:92%;font-size:15px;line-height:1.55;white-space:pre-wrap} .mff-msg.bot{align-self:flex-start;background-color:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 18px} .mff-msg.eu{align-self:flex-end;background-color:var(--raised);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 18px;color:var(--ink)} .mff-msg.aviso{align-self:flex-start;font-size:14px;color:var(--muted)} .mff-cursor{display:inline-block;width:8px;height:16px;background-color:var(--accent);vertical-align:text-bottom;opacity:.5} .mff-chat-pe{margin-top:var(--s-md)} .mff-envio{display:flex;gap:var(--s-sm);align-items:flex-end} .mff-envio textarea{flex:1;min-height:52px;max-height:150px;background-color:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);color:var(--ink);font:inherit;font-size:16px;padding:14px var(--s-md);resize:none} .mff-envio textarea:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:transparent} .mff-envio textarea::placeholder{color:var(--muted)} .mff button.mff-env{height:52px;padding:0 24px;background-color:var(--accent);color:var(--accent-ink);border-radius:var(--r-md);font-family:var(--fh);font-weight:700;font-size:16px} .mff button.mff-env:hover{background-color:var(--accent);color:var(--accent-ink);filter:brightness(1.07)} .mff button.mff-env[disabled]{opacity:.5;filter:none} .mff-turnos{margin-top:10px;font-size:13px;color:var(--muted)} .mff-chat-cta{display:none;margin-top:var(--s-lg)} .mff-chat-cta.on{display:block} .mff-chat-cta a{display:inline-block;background-color:var(--accent);color:var(--accent-ink);border-radius:var(--r-md);padding:16px 26px;font-family:var(--fh);font-weight:700} .mff-chat-cta a:hover{color:var(--accent-ink);filter:brightness(1.07)} @media (max-width:980px){ .mff-envio{flex-direction:column;align-items:stretch} .mff button.mff-env{width:100%} .mff-msg{max-width:100%} } .mff-agente-grade{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--s-xl);align-items:center} .mff-ilu svg{display:block;width:100%;height:auto} @media (max-width:980px){ .mff-agente-grade{grid-template-columns:1fr;gap:var(--s-lg)} } .mff-como-topo{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--s-xl);align-items:center} @media (max-width:980px){ .mff-como-topo{grid-template-columns:1fr;gap:var(--s-lg)} } .mff-caso{grid-template-columns:minmax(0,190px) minmax(0,1fr) minmax(0,210px)} .mff-caso p{max-width:58ch} .mff-graf{display:flex;flex-direction:column;gap:10px;justify-content:center} .mff-barra{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center} .mff-barra i{display:block;height:10px;border-radius:2px;background-color:var(--raised);border:1px solid var(--border)} .mff-barra.cresce i{background-color:var(--accent);border-color:var(--accent)} .mff-barra.estavel i{background-color:var(--muted);border-color:var(--muted)} .mff-barra b{font-family:var(--fh);font-weight:700;font-size:13px;color:var(--muted)} .mff-barra.cresce b,.mff-barra.estavel b{color:var(--ink)} .mff-eixo{font-size:12px;color:var(--muted);margin-top:2px} @media (max-width:980px){ .mff-caso{grid-template-columns:1fr} .mff-graf{max-width:320px} } .mff-fim-grade{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-xl);align-items:start} .mff-rotas{display:flex;flex-direction:column;gap:var(--s-lg)} .mff-rota b{display:block;font-family:var(--fh);font-weight:700;font-size:17px;color:var(--ink)} .mff-rota p{margin-top:8px;color:var(--muted);max-width:44ch} .mff-fim a.mff-cta{margin-top:var(--s-md)} @media (max-width:980px){ .mff-fim-grade{grid-template-columns:1fr;gap:var(--s-lg)} .mff-numeros{grid-template-columns:1fr} .mff-num{padding-left:0} .mff-num+.mff-num{border-left:0;border-top:1px solid var(--border);padding-top:var(--s-md);margin-top:var(--s-md)} .mff-serv.principal{grid-template-columns:1fr} } 

/* FAQ compartilhado: coluna unica, medida de leitura controlada */
.mff-faq{margin-top:var(--s-lg);max-width:70ch}
.mff-faq details{border-top:1px solid var(--border)}
.mff-faq details:last-of-type{border-bottom:1px solid var(--border)}
.mff-faq summary{padding:var(--s-md) 0;font-family:var(--fh);font-weight:700;font-size:17px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:var(--s-md)}
.mff-faq summary::-webkit-details-marker{display:none}
.mff-faq summary::after{content:"+";color:var(--accent);font-weight:700}
.mff-faq details[open] summary::after{content:"-"}
.mff-faq p{padding:0 0 var(--s-md);color:var(--muted)}

/* Componentes compartilhados de pagina de servico */
.mff-entrega{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-sm);margin-top:var(--s-lg)}
.mff-cartao{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-lg)}
.mff-cartao h3{font-family:var(--fh);font-weight:700;font-size:19px}
.mff-cartao p{margin-top:10px;color:var(--muted)}
.mff-etapas{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-sm);margin-top:var(--s-lg)}
.mff-etapa{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-lg)}
.mff-etapa b{display:block;font-family:var(--fh);font-weight:700;font-size:18px}
.mff-etapa p{margin-top:8px;font-size:15px;color:var(--muted)}
.mff-planos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-sm);margin-top:var(--s-lg);align-items:stretch}
.mff-plano{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-lg);display:flex;flex-direction:column}
.mff-plano.destaque{border-color:var(--accent)}
.mff-plano h3{font-family:var(--fh);font-weight:700;font-size:19px}
.mff-plano .valor{margin-top:var(--s-md);font-family:var(--fh);font-weight:700;font-size:clamp(26px,3vw,36px);line-height:1;color:var(--ink)}
.mff-plano p{margin-top:var(--s-md);font-size:15px;color:var(--muted);flex:1}
@media (max-width:980px){ .mff-entrega,.mff-etapas,.mff-planos{grid-template-columns:1fr} }

/* Heroi simples: paginas de servico sem a ferramenta de analise */
.mff-hero-s{padding:var(--s-xl) 0}
.mff-hero-s .mff-h1{max-width:18ch}
.mff-hero-s .mff-sub{margin-top:var(--s-md);max-width:44ch}
.mff-hero-s .mff-cta{display:inline-block;margin-top:var(--s-lg);background-color:var(--accent);color:var(--accent-ink);border-radius:var(--r-md);padding:18px 30px;font-family:var(--fh);font-weight:700;font-size:17px}
.mff-hero-s .mff-cta:hover{color:var(--accent-ink);filter:brightness(1.07)}
/* Listas de entrega em duas colunas nomeadas */
.mff-duplo{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-lg);margin-top:var(--s-lg)}
.mff-lista{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-lg)}
.mff-lista h3{font-family:var(--fh);font-weight:700;font-size:19px}
.mff-lista ul{margin-top:var(--s-md);list-style:none}
.mff-lista li{padding:10px 0;border-top:1px solid var(--border);color:var(--muted);font-size:15px}
.mff-lista li:first-child{border-top:0}
@media (max-width:980px){ .mff-duplo{grid-template-columns:1fr} }

.mff-hero-s-grade{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--s-xl);align-items:center}
@media (max-width:980px){ .mff-hero-s-grade{grid-template-columns:1fr;gap:var(--s-lg)} }

/* Hover dos blocos: feedback de estado, nao convite ao clique.
   So border-color e background-color, que repintam um elemento e nao mexem
   no layout. Sem transform e sem sombra: card que levanta parece clicavel,
   e estes nao sao links. */
.mff-cartao,.mff-etapa,.mff-plano,.mff-lista,.mff-serv,.mff-vert .destaque{transition:border-color .16s ease,background-color .16s ease}
.mff-cartao:hover,.mff-etapa:hover,.mff-plano:hover,.mff-lista:hover,.mff-serv:hover,.mff-vert .destaque:hover{border-color:var(--accent);background-color:var(--raised)}
@media (prefers-reduced-motion:reduce){
  .mff-cartao,.mff-etapa,.mff-plano,.mff-lista,.mff-serv,.mff-vert .destaque{transition:none}
}

/* Caso grande: imagem e texto alternando lado. No maximo dois seguidos. */
.mff-caso-g{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-xl);align-items:center;padding:var(--s-xl) 0;border-top:1px solid var(--border)}
.mff-caso-g:first-of-type{border-top:0;padding-top:0}
.mff-caso-g.invertido .mff-caso-img{order:2}
.mff-caso-g h3{font-family:var(--fh);font-weight:700;font-size:clamp(22px,2.4vw,30px);line-height:1.15}
.mff-caso-g .setor{display:block;margin-bottom:10px;font-family:var(--fh);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.mff-caso-g p{margin-top:var(--s-md);color:var(--muted);max-width:52ch}
.mff-caso-g .pilha{margin-top:var(--s-md);font-size:14px;color:var(--muted)}
.mff-caso-g .visitar{display:inline-block;margin-top:var(--s-md);font-family:var(--fh);font-weight:700;font-size:15px;border-bottom:1px solid var(--border);padding-bottom:2px}
.mff-caso-g .visitar:hover{color:var(--accent);border-color:var(--accent)}
.mff-caso-img img{display:block;width:100%;height:auto;border-radius:var(--r-md);border:1px solid var(--border)}
.mff-setores{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-lg) var(--s-md);margin-top:var(--s-lg)}
.mff-setor h3{font-family:var(--fh);font-weight:700;font-size:15px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.mff-setor ul{margin-top:10px;list-style:none}
.mff-setor li{padding:5px 0}
.mff-setor a{color:var(--muted);font-size:15px}
.mff-setor a:hover{color:var(--accent)}
@media (max-width:980px){ .mff-caso-g{grid-template-columns:1fr;gap:var(--s-lg)} .mff-caso-g.invertido .mff-caso-img{order:0} .mff-setores{grid-template-columns:1fr 1fr} }

/* Galeria de projetos: print, nome e setor. O link abre o site no ar. */
.mff-galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-md);margin-top:var(--s-lg)}
.mff-proj{display:block;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;transition:border-color .16s ease}
.mff-proj:hover{border-color:var(--accent);color:var(--ink)}
.mff-proj img{display:block;width:100%;height:auto;aspect-ratio:1140/713;object-fit:cover;object-position:center top;border-bottom:1px solid var(--border)}
.mff-proj .info{display:block;padding:var(--s-md)}
.mff-proj .nome{font-family:var(--fh);font-weight:700;font-size:17px;color:var(--ink)}
.mff-proj .setor{display:block;margin-top:4px;font-size:13px;color:var(--muted)}
.mff-proj:hover .setor{color:var(--accent)}
@media (max-width:980px){ .mff-galeria{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .mff-galeria{grid-template-columns:1fr} }

/* Numeros: o valor acende no hover. So color, que repinta um elemento. */
.mff-num b{transition:color .16s ease}
.mff-num:hover b{color:var(--accent)}
@media (prefers-reduced-motion:reduce){ .mff-num b{transition:none} }

/* Linha de numero dentro de lista: nome a esquerda, delta a direita */
.mff-lista li.linha{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-sm)}
.mff-lista li.linha b{font-family:var(--fh);font-weight:700;color:var(--ink)}
.mff-lista li.linha i{font-style:normal;font-family:var(--fh);font-weight:700;color:var(--accent);white-space:nowrap}
.mff-lista li.linha i.neutro{color:var(--muted)}
.mff-lista li.linha u{text-decoration:none;display:block;font-size:13px;color:var(--muted);margin-top:2px}

/* Blog: cartoes de artigo montados pela REST API */
.mff-filtros{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--s-lg)}
.mff button.mff-f{border:1px solid var(--border);border-radius:var(--r-md);padding:8px 16px;color:var(--muted);font-size:14px;transition:border-color .16s ease,color .16s ease}
.mff button.mff-f:hover{border-color:var(--accent);color:var(--ink)}
.mff button.mff-f.on{border-color:var(--accent);color:var(--accent-ink);background-color:var(--accent);font-family:var(--fh);font-weight:700}
.mff-artigos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-md);margin-top:var(--s-lg)}
.mff-artigo{display:flex;flex-direction:column;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;transition:border-color .16s ease}
.mff-artigo:hover{border-color:var(--accent);color:var(--ink)}
.mff-artigo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--border)}
.mff-artigo .info{display:flex;flex-direction:column;gap:8px;padding:var(--s-md);flex:1}
.mff-artigo .cat{font-family:var(--fh);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.mff-artigo .titulo{font-family:var(--fh);font-weight:700;font-size:18px;line-height:1.25;color:var(--ink)}
.mff-artigo .res{font-size:15px;color:var(--muted);flex:1}
.mff-artigo .data{font-size:13px;color:var(--muted)}
.mff-vazio{margin-top:var(--s-lg);color:var(--muted)}
.mff-mais{text-align:center;margin-top:var(--s-lg)}
.mff button.mff-carregar{border:1px solid var(--border);border-radius:var(--r-md);padding:14px 28px;font-family:var(--fh);font-weight:700;font-size:15px;color:var(--ink);transition:border-color .16s ease,color .16s ease}
.mff button.mff-carregar:hover{border-color:var(--accent);color:var(--accent)}
@media (max-width:980px){ .mff-artigos{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .mff-artigos{grid-template-columns:1fr} }

/* Post unico: cabecalho do artigo e tipografia do corpo */
.mff-post{padding:var(--s-xl) 0}
.mff-post-topo{max-width:76ch}
.mff-post-topo .cat{font-family:var(--fh);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.mff-post-topo h1{margin-top:var(--s-sm);font-family:var(--fh);font-weight:700;font-size:clamp(30px,4vw,52px);line-height:1.08;letter-spacing:-.02em}
.mff-post-meta{margin-top:var(--s-md);display:flex;flex-wrap:wrap;gap:var(--s-md);font-size:14px;color:var(--muted)}
.mff-post-capa{margin:var(--s-lg) 0 0}
.mff-post-capa img{display:block;width:100%;height:auto;border-radius:var(--r-md);border:1px solid var(--border)}
.mff-corpo{margin-top:var(--s-xl);max-width:68ch;font-size:17px;line-height:1.75;color:var(--ink)}
.mff-corpo p{margin:0 0 var(--s-md)}
.mff-corpo h2{margin:var(--s-xl) 0 var(--s-sm);font-family:var(--fh);font-weight:700;font-size:clamp(23px,2.6vw,30px);line-height:1.2;letter-spacing:-.015em}
.mff-corpo h3{margin:var(--s-lg) 0 var(--s-sm);font-family:var(--fh);font-weight:700;font-size:20px;line-height:1.25}
.mff-corpo a{color:var(--accent);border-bottom:1px solid var(--border)}
.mff-corpo a:hover{border-color:var(--accent)}
.mff-corpo strong{color:var(--ink);font-weight:600}
.mff-corpo ul,.mff-corpo ol{margin:0 0 var(--s-md) 1.2em}
.mff-corpo li{margin-bottom:8px}
.mff-corpo blockquote{margin:var(--s-lg) 0;padding:var(--s-md) var(--s-lg);background-color:var(--surface);border-left:2px solid var(--accent);border-radius:0 var(--r-md) var(--r-md) 0;color:var(--muted)}
.mff-corpo blockquote p:last-child{margin-bottom:0}
.mff-corpo hr{margin:var(--s-xl) 0;border:0;border-top:1px solid var(--border)}
.mff-corpo img{max-width:100%;height:auto;border-radius:var(--r-md);border:1px solid var(--border)}
.mff-corpo table{width:100%;border-collapse:collapse;margin:var(--s-lg) 0;font-size:15px}
.mff-corpo th,.mff-corpo td{padding:12px;border-bottom:1px solid var(--border);text-align:left}
.mff-corpo th{font-family:var(--fh);font-weight:700;color:var(--ink)}
.mff-corpo td{color:var(--muted)}

/* Post com indice lateral: artigo e sumario dividem a largura.
   Capa e corpo na mesma medida, alinhados pela coluna da grade. */
.mff-post.com-indice .wrap{max-width:1060px}.mff-post-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,230px);gap:var(--s-lg);align-items:start}
.mff-post-grade .mff-post-topo{max-width:none}
.mff-post-grade .mff-corpo{max-width:none}
.mff-indice{position:sticky;top:var(--s-lg);max-height:calc(100vh - var(--s-xl));overflow-y:auto}
.mff-indice .rotulo{display:block;font-family:var(--fh);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-bottom:10px;border-bottom:1px solid var(--border)}
.mff-indice ol{list-style:none;margin:12px 0 0}
.mff-indice a{display:block;padding:7px 0 7px 14px;border-left:2px solid var(--border);font-size:14px;line-height:1.35;color:var(--muted);transition:color .16s ease,border-color .16s ease}
.mff-indice a:hover{color:var(--ink);border-color:var(--muted)}
.mff-indice a.ativo{color:var(--accent);border-color:var(--accent)}
.mff-corpo h2{scroll-margin-top:var(--s-lg)}
@media (max-width:980px){ .mff-post-grade{grid-template-columns:1fr} .mff-indice{position:static;margin-bottom:var(--s-lg)} }
 .mff-redes{display:flex;gap:14px;align-items:center} .mff-redes a{width:20px;height:20px;display:block;background-color:var(--muted);-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat;transition:background-color .16s ease} .mff-redes a:hover{background-color:var(--accent)} .mff-redes span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap} .mff-redes a.ig{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%222%22%20y%3D%222%22%20width%3D%2220%22%20height%3D%2220%22%20rx%3D%225%22%2F%3E%3Cpath%20d%3D%22M16%2011.37A4%204%200%201%201%2012.63%208%204%204%200%200%201%2016%2011.37z%22%2F%3E%3Cline%20x1%3D%2217.5%22%20y1%3D%226.5%22%20x2%3D%2217.51%22%20y2%3D%226.5%22%2F%3E%3C%2Fsvg%3E")} .mff-redes a.fb{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%22M18%202h-3a5%205%200%200%200-5%205v3H7v4h3v8h4v-8h3l1-4h-4V7a1%201%200%200%201%201-1h3z%22%2F%3E%3C%2Fsvg%3E")} .mff-redes a.gh{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%22M9%2019c-5%201.5-5-2.5-7-3m14%206v-3.87a3.37%203.37%200%200%200-.94-2.61c3.14-.35%206.44-1.54%206.44-7A5.44%205.44%200%200%200%2020%204.77%205.07%205.07%200%200%200%2019.91%201S18.73.65%2016%202.48a13.38%2013.38%200%200%200-7%200C6.27.65%205.09%201%205.09%201A5.07%205.07%200%200%200%205%204.77a5.44%205.44%200%200%200-1.5%203.78c0%205.42%203.3%206.61%206.44%207A3.37%203.37%200%200%200%209%2018.13V22%22%2F%3E%3C%2Fsvg%3E")} /* Utilitarios que substituem style="" no conteudo. Existem para a CSP poder proibir estilo inline sem excecao -- ver secao 2.1. */ .mff-mt-lg{margin-top:var(--s-lg)} .mff-mt-sm{margin-top:var(--s-sm)} .mff-colado{margin-top:0;padding-top:0;border-top:0} .mff-oculto{display:none} .mff-realce{color:var(--ink);font-weight:600} /* Largura das barras do comparativo. O numero vive aqui, e nao no atributo, pelo mesmo motivo. Nomeado pelo setor, como a copy passou a exibir. */ .mff-barra i{width:var(--w,0)} .mff-barra.v-autopecas-antes i{--w:50.3%} .mff-barra.v-autopecas-depois i{--w:88.6%} .mff-barra.v-perfumaria-antes i{--w:39.8%} .mff-barra.v-perfumaria-depois i{--w:59%} .mff-barra.v-midia-antes i{--w:97.8%} .mff-barra.v-midia-depois i{--w:96.9%}