/* Defato — base (carregado em todas as páginas) */
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:16px;top:12px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:var(--r-md);z-index:100}
.kx{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.catpill{display:inline-block;padding:4px 11px;border-radius:var(--r-pill);color:#fff;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.secmk{width:12px;height:12px;background:var(--green);border-radius:3px;flex:none}

/* topo + masthead */
.topbar{height:4px;background:linear-gradient(90deg,var(--green),var(--green-deep))}
.mh{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.mh .utilbar{border-bottom:1px solid var(--line-2)}
.mh .utilbar .in{display:flex;align-items:center;justify-content:space-between;padding:7px 40px;flex-wrap:wrap;row-gap:6px}
.mh .date{font-family:var(--display);font-size:11.5px;color:var(--ink-30);letter-spacing:.02em;text-transform:uppercase}
.mh .ur{display:flex;align-items:center;gap:16px;font-family:var(--display);font-size:12.5px;font-weight:500;color:var(--ink-50)}
.mh .ur a:hover{color:var(--ink)}
.mh .sub{background:var(--green);color:#053a2d;font-weight:700;padding:6px 15px;border-radius:var(--r-pill)}
.mh .sub:hover{background:var(--green-deep);color:#fff}
/* barra do topo: cluster esquerdo (data + redes) + Anuncie/Contato */
.mh .ul{display:flex;align-items:center;gap:16px;min-width:0}
.mh .social{display:inline-flex;align-items:center;gap:11px}
.mh .social a{display:inline-flex;color:var(--ink-30);transition:color .15s}
.mh .social a:hover{color:var(--green-deep)}
.mh .social svg{display:block}
.mh .ur .anz{color:var(--green-deep);font-weight:700}
.mh .ur .anz:hover{color:var(--green-accent)}
@media(max-width:720px){.mh .ul .date{display:none}}
@media(max-width:520px){.mh .social{display:none}}
.mh .row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 40px}
.mh .logo{height:36px;flex:none;width:auto;margin-left:-2px}/* compensa ~5px de borda transparente do PNG (≈2px no render) p/ alinhar o desenho à coluna */
.mh nav.menu{display:flex;gap:14px;font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-70);flex-wrap:wrap;justify-content:flex-end;list-style:none}
.mh nav.menu a{position:relative;padding:4px 0;display:inline-block}
.mh nav.menu a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--green);transform:scaleX(0);transition:.2s;transform-origin:center}
.mh nav.menu a:hover::after,.mh nav.menu .current-menu-item a::after{transform:scaleX(1)}
.mh nav.menu .current-menu-item a{color:var(--green-deep)}

/* rodapé */
.ft{background:var(--ink);color:#cfcfcf;padding:0 0 40px;margin-top:56px}
.ft .brdr{height:4px;background:linear-gradient(90deg,var(--green),var(--green-deep))}
.ft .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-top:44px;align-items:start}
.ft img{height:39px;margin-bottom:10px}
.ft p{font-size:13px;color:#8a8a8a;line-height:1.6;max-width:34ch}
.ft h5{font-family:var(--display);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.ft ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.ft ul a{font-size:13.5px;color:#b5b5b5}
.ft ul a:hover{color:var(--green)}
.ft .base{border-top:1px solid #262626;margin-top:40px;padding-top:20px;font-size:12px;color:#7a7a7a;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;font-family:var(--display)}
.ft .base>span:first-child{justify-self:start}
.ft .base>span:last-child{justify-self:end}
.ft .base .ft-social{justify-self:center}
.ft-social{display:inline-flex;align-items:center;gap:16px}
.ft-social a{display:inline-flex;color:#8a8a8a;transition:color .15s}
.ft-social a:hover{color:var(--green)}
.ft-social svg{width:19px;height:19px;display:block}
/* Card de newsletter compacto no rodapé (sob as redes) */
.ft-nl{margin-top:34px;max-width:320px}
.ft-nl__kx{font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:6px}
.ft-nl strong{display:block;font-family:var(--display);font-size:14px;font-weight:600;letter-spacing:-.01em;margin-bottom:11px;color:#e2e2e2}
.ft-nl form{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid #333;border-radius:100px;padding:3px 3px 3px 14px}
.ft-nl input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:12.5px;color:#cfcfcf;outline:none}
.ft-nl input::placeholder{color:#6f6f6f}
.ft-nl button{border:0;border-radius:100px;background:var(--green-deep);color:#fff;font-family:var(--display);font-weight:700;font-size:12px;padding:7px 13px;cursor:pointer;white-space:nowrap}
.ft-nl button:hover{background:var(--green)}

@media(max-width:820px){
  .wrap{padding:0 22px}
  .mh .row{flex-direction:column;align-items:flex-start;gap:12px}
  .mh nav.menu{justify-content:flex-start}
  .ft .cols{grid-template-columns:1fr 1fr}
  .ft-brand{grid-column:1 / -1}
}
@media(max-width:560px){.ft .base{grid-template-columns:1fr;justify-items:center;text-align:center;gap:12px}}

/* preview: menu fallback horizontal + imagens ausentes discretas */
.mh nav.menu ul{display:flex;gap:22px;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:flex-end}
.mh nav.menu li{list-style:none;margin:0}
.card .img img,.lead .img img,.rel3 .img img{background:var(--stone)}
/* Seta "leia mais" que desliza no hover do card e do feed */
.card h3 a::after,.feed__it h3 a::after,.rail .it h4 a::after{content:"→";display:inline-block;margin-left:.35em;color:var(--green-deep);font-weight:600;opacity:0;transform:translateX(-5px);transition:opacity .18s ease,transform .18s ease}
.card:hover h3 a::after,.card h3 a:focus-visible::after,.feed__it:hover h3 a::after,.feed__it h3 a:focus-visible::after,.rail .it:hover h4 a::after,.rail .it h4 a:focus-visible::after{opacity:1;transform:translateX(0)}
/* Animações sutis — desativadas se o usuário pedir menos movimento */
@media (prefers-reduced-motion:no-preference){
  .feed__img{overflow:hidden}
  .card .img>img,.card .img>picture,.lead .img>img,.lead .img>picture,.feed__img>img,.feed__img>picture{transition:transform .55s cubic-bezier(.2,.6,.2,1)}
  .card:hover .img>img,.card:hover .img>picture,.lead .img:hover>img,.lead .img:hover>picture,.feed__it:hover .feed__img>img,.feed__it:hover .feed__img>picture{transform:scale(1.045)}
  .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.6,.2,1)}
  .reveal.in{opacity:1;transform:none}
}
img{color:transparent}

/* preview fix: menu real (ul.menu) horizontal */
.mh .row ul.menu{display:flex;gap:14px;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.mh .row ul.menu li{list-style:none;margin:0}
.mh .row ul.menu a{font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-70);padding:4px 0;display:inline-block}
.mh .row ul.menu a:hover{color:var(--green-deep)}
.mh .row ul.menu .current-menu-item a{color:var(--green-deep)}

/* === fix layout de imagens (padding-hack; evita transbordo do aspect-ratio no grid) === */
.lead .img,.card .img,.rel3 .img,.list .li .img{display:block;position:relative;overflow:hidden;aspect-ratio:auto;height:0}
.lead .img{padding-bottom:56.25%}            /* 16:9 */
.card .img,.rel3 .img,.list .li .img{padding-bottom:66.66%}  /* 3:2 */
.lead .img>picture,.lead .img>img,.card .img>picture,.card .img>img,.rel3 .img>picture,.rel3 .img>img,.list .li .img>picture,.list .li .img>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.lead .img .catf{z-index:2}

/* Placeholder de imagem destacada (sem thumb) — preenche o .img com marca */
.thumbph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--mint,#EAF9F4),#DFF4EC);overflow:hidden}
.thumbph::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(2,205,159,.12),transparent 60%)}
.thumbph__mk{font-family:'Space Grotesk',system-ui,sans-serif;font-weight:700;font-size:clamp(18px,3vw,30px);letter-spacing:-.02em;color:var(--green-deep,#00694F);opacity:.55}
.thumbph__mk b{color:var(--brand,#02CD9F);font-weight:800}

/* ---------- Busca ---------- */
.searchtog{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:5px}
.searchtog span{font-size:15px;line-height:1}
.searchtog:hover{color:var(--green-deep)}
.searchpanel{border-bottom:1px solid var(--line);background:var(--paper);animation:dfdrop .18s ease}
.searchpanel .wrap{padding-top:14px;padding-bottom:14px}
@keyframes dfdrop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.searchform{display:flex;align-items:center;gap:0;position:relative;max-width:640px}
.searchform__ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:18px;color:var(--ink-30);pointer-events:none}
.searchform input[type=search]{flex:1;border:1px solid var(--line);border-right:0;border-radius:10px 0 0 10px;padding:12px 14px 12px 40px;font:inherit;font-size:15px;background:var(--paper);outline:none;min-width:0}
.searchform input[type=search]:focus{border-color:var(--green-accent);box-shadow:0 0 0 3px rgba(2,205,159,.14)}
.searchform button{border:0;border-radius:0 10px 10px 0;padding:12px 20px;background:var(--green-deep);color:#fff;font-family:'Space Grotesk',system-ui,sans-serif;font-weight:600;font-size:15px;cursor:pointer}
.searchform button:hover{background:var(--green-accent)}
/* Newsletter — toggle e painel (mesmo padrão da busca) */
.nltog,.cttog{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
.nltog:hover,.cttog:hover{color:var(--ink)}
.nlpanel{border-bottom:1px solid var(--line);background:var(--paper);animation:dfdrop .18s ease}
.nlpanel .wrap{padding-top:14px;padding-bottom:14px}
.nlform{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.nlform__lead{font-size:14px;color:var(--ink-70)}
.nlform__lead strong{font-family:var(--display);font-weight:600;color:var(--ink)}
.nlform__field{display:flex;align-items:center;flex:1;min-width:280px;max-width:520px}
.nlform input{flex:1;min-width:0;border:1px solid var(--line);border-right:0;border-radius:10px 0 0 10px;padding:12px 14px;font:inherit;font-size:15px;background:var(--paper);outline:none}
.nlform input:focus{border-color:var(--green-accent);box-shadow:0 0 0 3px rgba(2,205,159,.14)}
.nlform button{border:0;border-radius:0 10px 10px 0;padding:12px 20px;background:var(--green-deep);color:#fff;font-family:'Space Grotesk',system-ui,sans-serif;font-weight:600;font-size:15px;cursor:pointer;white-space:nowrap}
.nlform button:hover{background:var(--green-accent)}
@media(max-width:560px){.nlform__field{max-width:none;width:100%}}
/* Contato — painel com mini formulário (3 colunas) */
.ctpanel{border-bottom:1px solid var(--line);background:var(--paper);animation:dfdrop .18s ease}
.ctpanel .wrap{padding-top:14px;padding-bottom:14px}
.ctform{display:grid;grid-template-columns:1fr 1fr 1.6fr auto;gap:10px;align-items:center}
.ctform input{border:1px solid var(--line);border-radius:10px;padding:11px 13px;font:inherit;font-size:14px;background:var(--paper);outline:none;min-width:0}
.ctform input:focus{border-color:var(--green-accent);box-shadow:0 0 0 3px rgba(2,205,159,.14)}
.ctform button{border:0;border-radius:10px;padding:11px 20px;background:var(--green-deep);color:#fff;font-family:'Space Grotesk',system-ui,sans-serif;font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap}
.ctform button:hover{background:var(--green-accent)}
.ctform__hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ctform__ok{font-size:14px;color:var(--green-deep);margin-bottom:10px}
.ctform__err{font-size:14px;color:#c0392b;margin-bottom:10px}
@media(max-width:720px){.ctform{grid-template-columns:1fr 1fr}.ctform button{grid-column:1 / -1}}
@media(max-width:480px){.ctform{grid-template-columns:1fr}}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Página de resultados */
.search-head{display:block}
.search-head__top{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.search-head__form{margin-top:16px}
.search-empty{padding:40px 0 60px;max-width:640px}
.search-empty p{font-size:16px;color:var(--ink-70);line-height:1.6;margin:0 0 8px}
.search-empty__hint{color:var(--ink-50);font-size:14px}
.search-empty__sug{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}
.search-empty__sug span{font-size:13px;color:var(--ink-50)}
.search-empty__sug a{font-family:'Space Grotesk',system-ui,sans-serif;font-size:13px;font-weight:600;color:var(--green-deep);text-decoration:none;border:1px solid var(--line);border-radius:100px;padding:6px 14px}
.search-empty__sug a:hover{border-color:var(--green-accent);background:var(--mint)}
@media(max-width:560px){.searchform{max-width:none}.searchform button{padding:12px 14px}}
