:root{
  --green:#306539;        /* verde oficial do emblema */
  --green-deep:#234C2B;
  --green-band:#2E6B3A;
  --amber:#FCA500;        /* âmbar oficial da amêndoa */
  --amber-deep:#D98600;
  --coral:#F94E1E;        /* acento editorial (DS WCF): só grafismo e títulos grandes */
  --coral-txt:#CF3A0F;    /* coral para texto pequeno e fundo de texto (4.92:1 no branco, 4.61:1 no creme) */
  --coral-soft:#FDE4DB;
  --cocoa:#3F2D1F;        /* marrom/texto oficial */
  --ink:#2A2018;
  --paper:#FAF7F2;
  --cream:#F3E7CB;
  --white:#fff;
  --taupe:#A89B8B;        /* só filetes e grafismo */
  --taupe-txt:#7D6F5E;    /* texto secundário legível (4.56:1) */
  --body:#4A453E;
  --line:#E7E0D4;
  --teal:#12776A;
  --sans:'Inter',-apple-system,system-ui,sans-serif;
  --display:'Poppins','Inter',sans-serif;
  --shadow:0 10px 30px rgba(45,30,15,.08);
  --radius:18px;
  /* escala de tempo única para todo o site */
  --dur-1:130ms;   /* micro-feedback: hover, press */
  --dur-2:240ms;   /* transições pequenas: chips, cards */
  --dur-3:380ms;   /* médias: drawer, filtro */
  --dur-4:640ms;   /* reveal on scroll */
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-in-out:cubic-bezier(.65,0,.35,1);
  --spring:cubic-bezier(.34,1.56,.64,1);
  /* cores dos 8 filtros (guia "Cores dos filtros", set/2026): base, texto sobre a base, texto sobre claro, fundo suave */
  --f-manejo:#2E6B3A;--f-manejo-on:#FFFFFF;--f-manejo-text:#2E6B3A;--f-manejo-soft:#E3EFE3;
  --f-produtividade:#FCA500;--f-produtividade-on:#3F2D1F;--f-produtividade-text:#8A5200;--f-produtividade-soft:#FDF0D5;
  --f-gestao:#7A4A2B;--f-gestao-on:#FFFFFF;--f-gestao-text:#6E4226;--f-gestao-soft:#F2E7DD;
  --f-mercado:#9E2B2B;--f-mercado-on:#FFFFFF;--f-mercado-text:#9E2B2B;--f-mercado-soft:#F8E1DE;
  --f-sustentabilidade:#12776A;--f-sustentabilidade-on:#FFFFFF;--f-sustentabilidade-text:#0F6A5E;--f-sustentabilidade-soft:#DDEFEB;
  --f-mudas:#A8C84A;--f-mudas-on:#2A3A10;--f-mudas-text:#4A6614;--f-mudas-soft:#EFF5D6;
  --f-tecnologia:#2F5E80;--f-tecnologia-on:#FFFFFF;--f-tecnologia-text:#2F5E80;--f-tecnologia-soft:#E1EAF2;
  --f-trabalho:#7A3E72;--f-trabalho-on:#FFFFFF;--f-trabalho-text:#7A3E72;--f-trabalho-soft:#F2E4F0;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--display);line-height:1.1;letter-spacing:-.01em}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.eyebrow{font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--taupe-txt)}


/* ---------- HEADER ---------- */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(8px);
  border-bottom:1px solid var(--line);transition:box-shadow var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}
header.is-scrolled{box-shadow:0 6px 24px rgba(45,30,15,.10);background:rgba(255,255,255,.97)}
.nav{display:flex;align-items:center;gap:26px;height:74px;transition:height var(--dur-2) var(--ease-out)}
header.is-scrolled .nav{height:62px}
/* barra de progresso de leitura */
.progress{position:absolute;left:0;bottom:-1px;height:2px;width:100%;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,var(--amber),var(--coral));z-index:2}
.brand{display:flex;align-items:center;gap:12px;margin-right:auto}
.brand .logo{display:block;height:40px;width:auto;flex:none}
.menu{display:flex;gap:22px;list-style:none}
.menu a{font-weight:600;font-size:14px;color:var(--ink);padding:6px 0;position:relative}
.menu a:hover{color:var(--green)}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--coral);
  transform:scaleX(0);transform-origin:0 50%;transition:transform var(--dur-2) var(--ease-out)}
.menu a:hover::after,.menu a:focus-visible::after{transform:scaleX(1)}
.tools{display:flex;align-items:center;gap:14px}
.icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--cocoa)}
.icon-btn:hover{border-color:var(--green);color:var(--green)}
.burger{display:none}

/* ---------- HERO ----------
   Vídeo de ponta a ponta, com o título branco sobreposto no terço inferior.
   A aquarela é clara: o branco só fica legível sobre um escurecimento quente, em tom
   cacau (nunca preto), concentrado embaixo e à esquerda, onde o título mora. O topo
   do vídeo continua luminoso. O pé do escurecimento termina exatamente na cor da faixa
   seguinte, então o vídeo se funde nela sem emenda. */
.hero{position:relative;background:var(--cocoa)}
.hero-stage{position:relative;overflow:hidden;isolation:isolate;background:#D8D4CA;
  /* quadro 16:9 inteiro sempre que couber; nunca mais alto que a janela (menos o header) */
  height:max(480px, min(56.25vw, calc(100vh - 74px)));
  height:max(480px, min(56.25vw, calc(100svh - 74px)));
  display:flex;align-items:flex-end}
.hero-video{position:absolute;inset:0;width:100%;height:100%;max-width:none;
  object-fit:cover;object-position:50% 45%;z-index:0}
/* 1) base, sempre presente: funde o pé do vídeo na faixa de baixo */
.hero-fade{position:absolute;inset:0;z-index:1;pointer-events:none;
  /* curva smoothstep: começa e termina com inclinação zero, então não há "degrau" visível
     onde o vídeo encontra a faixa (a banda de Mach de um degradê linear ou ease-in) */
  background:linear-gradient(180deg,rgba(63,45,31,0) 0%,rgba(63,45,31,0.000) 56.0%,rgba(63,45,31,0.020) 59.7%,rgba(63,45,31,0.074) 63.3%,rgba(63,45,31,0.156) 67.0%,rgba(63,45,31,0.259) 70.7%,rgba(63,45,31,0.376) 74.3%,rgba(63,45,31,0.500) 78.0%,rgba(63,45,31,0.624) 81.7%,rgba(63,45,31,0.741) 85.3%,rgba(63,45,31,0.844) 89.0%,rgba(63,45,31,0.926) 92.7%,rgba(63,45,31,0.980) 96.3%,var(--cocoa) 100%)}
/* 2) apoio do título: entra junto com ele, para os 5s iniciais mostrarem a aquarela limpa */
.hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(95% 78% at 16% 88%,rgba(47,32,21,.74) 0%,rgba(47,32,21,.50) 38%,rgba(47,32,21,.18) 62%,rgba(47,32,21,0) 80%),
    linear-gradient(90deg,rgba(47,32,21,.30) 0%,rgba(47,32,21,.12) 45%,rgba(47,32,21,0) 70%);
  -webkit-mask-image:linear-gradient(180deg,#000 82%,transparent 99%);
          mask-image:linear-gradient(180deg,#000 82%,transparent 99%);
}
.hero-stage .wrap{position:relative;z-index:2;width:100%;padding-bottom:clamp(36px,5.2vw,84px)}
.hero-title{font-family:var(--display);font-weight:800;letter-spacing:-.028em;line-height:1;
  font-size:clamp(40px,5.8vw,92px);color:#fff;
  text-shadow:0 2px 30px rgba(34,22,14,.42),0 1px 2px rgba(34,22,14,.30)}
.hero-title .ln{display:block;padding:.03em 0 .09em}
.hero-title .ln > span{display:block;white-space:nowrap}
/* entrada por máscara: cada linha sobe de dentro do próprio vão. Vale só com JS e sem pedido
   de movimento reduzido; sem JS o título simplesmente está lá. Com GSAP, ele conduz a animação
   e as transições CSS abaixo são desligadas para não brigarem com ele. */
@media (prefers-reduced-motion:no-preference){
  .js .hero-title .ln{overflow:hidden}
  .js .hero-title .ln > span{transform:translateY(112%);transition:transform 1.15s var(--ease-out)}
  .js .hero-title .ln + .ln > span{transition-delay:.16s}
  .js .hero-scrim{opacity:0;transition:opacity 1.4s var(--ease-out)}
  .js .hero.is-revealed .hero-title .ln > span{transform:none}
  .js .hero.is-revealed .hero-scrim{opacity:1}
  .js .hero.is-settled .hero-title .ln{overflow:visible}
  .gsap .hero-title .ln > span,.gsap .hero-scrim{transition:none}
}
/* faixa de informações: continua o tom do pé do vídeo */
.hero-info{background:var(--cocoa);color:#F3EADB}
.hero-info .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:56px;
  align-items:end;padding-top:clamp(20px,2.6vw,36px);padding-bottom:clamp(44px,5vw,68px)}
.hero-info .eyebrow{color:var(--amber)}
.hero-info .sub{font-size:18px;line-height:1.55;color:#E9DECC;max-width:46ch;margin-top:12px}
.hero-info .cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;align-items:center}
.hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.hero-meta > div{padding:4px 20px;border-left:1px solid rgba(255,255,255,.14)}
.hero-meta .n{font-family:var(--display);font-weight:800;font-size:34px;line-height:1.1;color:var(--amber)}
.hero-meta .l{font-size:13px;color:#CDBEA8;margin-top:4px;line-height:1.35}
.btn{font-family:var(--display);font-weight:700;font-size:15px;border-radius:14px;padding:14px 28px;
  display:inline-flex;align-items:center;gap:9px;border:2px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.btn:hover{transform:translateY(-2px)}
.btn-amber{background:var(--amber);color:var(--cocoa);box-shadow:0 4px 0 var(--amber-deep)}
.btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.72);box-shadow:3px 3px 0 rgba(255,255,255,.24)}
.btn-outline-light:hover{background:#fff;color:var(--cocoa);border-color:#fff}
.btn-outline-light:active{box-shadow:1px 1px 0 rgba(255,255,255,.24)}
.btn-primary{background:var(--green);color:#fff;box-shadow:0 4px 0 var(--green-deep)}
.btn-outline-coral{background:#fff;color:var(--coral-txt);border-color:var(--coral-txt);box-shadow:3px 3px 0 var(--coral-txt)}

/* ---------- SECTION SHELL ---------- */
section.block{padding:64px 0}
.sec-head{margin-bottom:30px}
.sec-head h2{font-size:34px;font-weight:800;color:var(--green);margin-top:8px}
.sec-head h2.coral{color:var(--coral)}
.sec-head p{color:var(--body);max-width:60ch;margin-top:10px;font-size:15px}

/* ---------- FILTER + SEARCH ---------- */
.filterbar{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}
.filterbar .search{align-self:flex-end}
.chips{display:flex;flex-wrap:wrap;gap:9px;width:100%}
.chip{font-family:var(--sans);font-weight:600;font-size:13px;padding:9px 15px;border-radius:100px;
  border:1.5px solid var(--line);background:#fff;color:var(--body);cursor:pointer;
  display:inline-flex;align-items:center;gap:7px}
.chip svg{width:17px;height:17px;flex:none;transition:transform var(--dur-2) var(--spring)}
.chip:hover svg{transform:scale(1.14)}
.chip:hover{border-color:var(--coral-txt);color:var(--coral-txt)}
.search{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);border-radius:100px;padding:9px 16px;min-width:220px;
  transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}
.search:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(48,101,57,.22)}
.search input{border:0;outline:0;font-family:var(--sans);font-size:14px;color:var(--ink);width:100%;background:none}
.search svg{color:var(--taupe-txt);flex:none}

/* ---------- CARD GRID ---------- */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(45,30,15,.14)}
.card .thumb{height:206px;position:relative;overflow:hidden;background:var(--areia2)}
.card .thumb img{width:100%;height:100%;object-fit:cover;display:block;
  transition:transform var(--dur-3) var(--ease-out)}
.card:hover .thumb img{transform:scale(1.06)}
/* véu na base: garante leitura das etiquetas sobre a aquarela */
.card .thumb::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 42%,rgba(18,40,17,.62) 100%)}
.card .pills{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;
  display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.card .pill{font-family:var(--sans);font-weight:600;font-size:11.5px;padding:6px 12px;border-radius:100px;
  background:rgba(30,66,35,.95);color:#fff;display:inline-flex;align-items:center;gap:6px;
  transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}
.card .pill svg{width:14px;height:14px;flex:none}
/* filtro secundário: mais discreto, conforme a taxonomia (principal primeiro) */
.card .pill.sec{background:rgba(255,255,255,.94);color:#22401F}
.card .body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.card h3{font-size:19px;font-weight:700;color:var(--ink);line-height:1.22}
.card p{font-size:13.5px;color:var(--body);margin-top:9px;flex:1}
.card .meta{margin-top:16px;font-size:12px;color:var(--taupe-txt);display:flex;align-items:center;gap:7px}
.card .meta .dot{width:5px;height:5px;border-radius:50%;background:var(--coral)}
.grid-foot{display:flex;justify-content:center;margin-top:34px}
.empty{grid-column:1/-1;text-align:center;color:var(--taupe-txt);padding:40px;font-size:14px;display:none}

.empty .empty-cta{margin-top:14px}

/* ---------- CALLOUT PROGRAMA ---------- */
.program{background:var(--green-deep);border-radius:24px;padding:44px;color:#fff;position:relative;overflow:hidden}
.program .veins2{position:absolute;right:-40px;top:-40px;width:360px;opacity:.14}
.program .eyebrow{color:var(--amber)}
.program h2{font-size:32px;font-weight:800;color:#fff;margin-top:10px;max-width:18ch;position:relative;z-index:2}
.program p{color:#e6ddcd;max-width:58ch;margin-top:14px;font-size:15px;position:relative;z-index:2}
.program .btn{margin-top:24px;position:relative;z-index:2}

/* ---------- PARCEIROS ---------- */
.brandstrip{text-align:center}
.brandstrip .lockup{max-width:520px;margin:20px auto 0}
.logos{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 32px;margin-top:44px;align-items:center}
/* logos soltos sobre o fundo, sem cartão; tamanho por área visual (equilíbrio óptico), a 70% */
.logo-tile{display:grid;place-items:center;min-height:84px}
.logo-tile img{width:var(--w);max-width:100%;height:auto}

/* ---------- SUBSCRIBE BAND ---------- */
.subscribe{background:var(--green-band);position:relative;overflow:hidden}
.subscribe .veins3{position:absolute;inset:0;opacity:.16;pointer-events:none}
.subscribe .wrap{position:relative;z-index:2;padding:56px 28px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.subscribe h2{font-size:30px;font-weight:800;color:var(--amber)}
.subscribe p{color:rgba(255,255,255,.9);margin-top:6px;font-size:15px}
.sub-form{display:flex;gap:10px;flex-wrap:wrap}
.sub-form input{border:0;border-radius:12px;padding:14px 18px;font-family:var(--sans);font-size:14px;min-width:240px}
.sub-note{font-size:11.5px;color:rgba(255,255,255,.86);margin-top:12px;flex-basis:100%}

/* ---------- FOOTER ---------- */
footer{background:var(--cocoa);color:#E9DDCF}
footer .wrap{padding-top:64px;padding-bottom:28px}
.f-top{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,.95fr) minmax(0,1.25fr);
  gap:40px 48px;align-items:start}
.f-logo{display:inline-flex;align-items:center;border-radius:14px;padding:14px 20px;background:var(--paper);box-shadow:0 1px 0 rgba(0,0,0,.08)}   /* o logo colorido tem texto marrom: no rodapé marrom precisa de base clara */
.f-logo .logo{display:block;height:36px;width:auto}
.f-brand .init{font-size:14px;line-height:1.6;color:#CDBEA8;margin-top:18px;max-width:32ch}
.f-h{font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--amber);margin-bottom:12px}
.f-col ul{list-style:none}
.f-col li a{display:inline-flex;align-items:center;min-height:40px;font-size:14.5px;color:#E9DDCF;
  text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1.5px;text-underline-offset:6px;
  transition:color var(--dur-2) var(--ease-out),text-decoration-color var(--dur-2) var(--ease-out)}
.f-col li a:hover{color:#fff;text-decoration-color:var(--amber)}
/* redes: botão com ícone, nome e endereço, em vez de um quadrado só com ícone */
.f-social{display:flex;flex-direction:column;gap:10px}
.f-social .f-h{margin-bottom:2px}
.soc{display:flex;align-items:center;gap:14px;min-height:64px;padding:11px 16px 11px 12px;color:#fff;
  border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.035);
  transition:border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}
.soc-ic{width:42px;height:42px;border-radius:11px;flex:none;display:grid;place-items:center;background:rgba(255,255,255,.09);
  transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--spring)}
.soc-tx{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.2}
.soc-tx b{font-family:var(--display);font-weight:700;font-size:15px}
.soc-tx small{font-size:12.5px;color:#CDBEA8;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.soc-ar{font-size:16px;opacity:.55;transition:transform var(--dur-2) var(--ease-out),opacity var(--dur-2)}
.soc:hover{border-color:rgba(252,165,0,.7);background:rgba(252,165,0,.08)}
.soc:hover .soc-ic{background:var(--amber);color:var(--cocoa);transform:rotate(-6deg) scale(1.06)}
.soc:hover .soc-ar{transform:translate(3px,-3px);opacity:1}
.soc:active{transform:scale(.98)}
.f-bottom{margin-top:52px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;
  justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;font-size:12.5px;color:#B7A893}
.f-bottom a{display:inline-block;padding-block:15px;margin-block:-15px;color:#E9DDCF;text-decoration:underline;text-decoration-color:rgba(233,221,207,.35);text-underline-offset:4px}
.f-bottom a:hover{text-decoration-color:var(--amber)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- RESPONSIVE ---------- */
@media(max-width:820px){
  /* retrato: quadro mais alto que o 16:9, o vídeo recorta nas laterais. Alinhar em 30%
     mantém o fruto dos 5s iniciais inteiro (39 a 61% do quadro) e, no final, a casca e as
     sementes, deixando o grão fora em vez de cortado ao meio na borda */
  .hero-stage{height:clamp(440px,122vw,660px)}
  .hero-video{object-position:30% 45%}
  .hero-title{font-size:clamp(32px,9vw,58px)}
  .hero-scrim{background:
    linear-gradient(180deg,rgba(47,32,21,0) 38%,rgba(47,32,21,.46) 70%,rgba(47,32,21,.30) 100%)}
}
@media(max-width:760px) and (min-width:621px){
  .logos{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (pointer:coarse){
  /* qualquer tela de toque, inclusive tablet deitado com 1024px */
  .chip,.f-col li a{min-height:44px}
  header .menu a{padding:14px 3px}   /* mais específico que a regra geral .menu a, declarada depois */
}
@media(max-width:900px){
  .chip{min-height:44px}
  .f-col li a{min-height:44px}   /* tablet também é toque */
  .menu{display:none}
  .hero-info .wrap{grid-template-columns:1fr;gap:34px;align-items:start}
  .burger{display:grid}
  .grid{grid-template-columns:1fr 1fr}
  .f-top{grid-template-columns:repeat(3,minmax(0,1fr))}
  .f-brand{grid-column:1/-1}
  .program{padding:32px}
}
@media(max-width:620px){
  .wrap,.subscribe .wrap,footer .wrap{padding-left:20px;padding-right:20px}
  .hero-meta > div{padding:2px 12px}
  .hero-meta > div:first-child{border-left:0;padding-left:0}
  .hero-meta .n{font-size:28px}
  .hero-info .cta-row .btn{flex:1 1 auto;justify-content:center}
  .grid{grid-template-columns:1fr}
  .f-top{grid-template-columns:1fr 1fr;gap:32px 20px}
  .f-social{grid-column:1/-1}
  .f-col li a{min-height:44px}
  .f-bottom{flex-direction:column;align-items:flex-start}
  footer .wrap{padding-bottom:92px}   /* o botão flutuante de voltar ao topo não cobre a última linha */
  .logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .logos{gap:34px 20px}
  .logo-tile img{width:calc(var(--w) * .8)}
  .brand .logo{height:30px}
  .f-logo{padding:12px 16px}
  .f-logo .logo{height:30px}
  .sec-head h2,.subscribe h2{font-size:26px}
  .filterbar .search{align-self:stretch}
  .search{min-width:0}
}
/* respeita quem prefere menos movimento */
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .card:hover,.btn:hover{transform:none}
}

/* ============================================================
   V4 · ACESSIBILIDADE, MICROINTERAÇÕES E MOVIMENTO
   ============================================================ */

/* ---------- âncoras não ficam atrás do header fixo ---------- */
#edicoes,#temas,#parceiros,#assine,#conteudo{scroll-margin-top:96px}
@media(max-width:900px){#edicoes,#temas,#parceiros,#assine,#conteudo{scroll-margin-top:84px}}

/* ---------- skip link ---------- */
.skip-link{position:fixed;left:12px;top:-60px;z-index:200;background:var(--green);color:#fff;
  font-family:var(--display);font-weight:700;font-size:14px;padding:12px 20px;border-radius:0 0 12px 12px;
  transition:top var(--dur-2) var(--ease-out)}
.skip-link:focus{top:0}

/* ---------- foco visível consistente ---------- */
:where(a,button,input,summary,[tabindex]):focus-visible{
  outline:3px solid var(--green);outline-offset:3px;border-radius:6px}
/* sobre fundos escuros o contorno fica claro */
:where(.hero-info,.subscribe,.program,footer) :where(a,button,input):focus-visible{outline-color:#fff}
header :where(a,button):focus-visible,.drawer :where(a,button):focus-visible{outline-color:var(--green)}

/* ---------- alvos de toque (WCAG 2.5.5: mínimo 44x44) ---------- */
.icon-btn{width:44px;height:44px}
.brand{min-height:44px}
.menu a{padding:11px 0}
.sub-form input{min-height:48px}
.grid-foot .btn,.program .btn,.hero-info .btn{min-height:48px}

/* ---------- drawer de navegação (mobile) ---------- */
.scrim{position:fixed;inset:0;background:rgba(26,20,14,.55);backdrop-filter:blur(2px);z-index:90;
  opacity:0;visibility:hidden;transition:opacity var(--dur-3) var(--ease-out),visibility var(--dur-3)}
.scrim.is-open{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(86vw,340px);background:var(--paper);z-index:100;
  padding:22px 24px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;
  box-shadow:-18px 0 50px rgba(45,30,15,.22);
  transform:translateX(100%);visibility:hidden;
  transition:transform var(--dur-3) var(--ease-out),visibility var(--dur-3)}
.drawer.is-open{transform:none;visibility:visible}
.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.drawer-head .t{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--taupe-txt)}
.drawer a.d-link{font-family:var(--display);font-weight:700;font-size:19px;color:var(--ink);
  padding:14px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;
  opacity:0;transform:translateX(14px);transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out),color var(--dur-1)}
.drawer.is-open a.d-link{opacity:1;transform:none;transition-delay:calc(60ms + var(--i,0)*45ms)}
.drawer a.d-link:hover,.drawer a.d-link:focus-visible{color:var(--coral-txt)}
.drawer a.d-link span{color:var(--coral-txt);transform:translateX(-4px);opacity:0;transition:all var(--dur-2) var(--ease-out)}
.drawer a.d-link:hover span{transform:none;opacity:1}

/* ---------- reveal on scroll ---------- */
[data-reveal]{opacity:0;transform:translateY(26px);
  transition:opacity var(--dur-4) var(--ease-out),transform var(--dur-4) var(--ease-out);
  transition-delay:calc(var(--i,0)*70ms)}
[data-reveal].is-in{opacity:1;transform:none}

/* ---------- botões: press + brilho ---------- */
.btn{position:relative;overflow:hidden;transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out),background var(--dur-2),color var(--dur-2)}
.btn:active{transform:translateY(1px)}
.btn-amber:active{box-shadow:0 1px 0 var(--amber-deep)}
.btn-primary:active{box-shadow:0 1px 0 var(--green-deep)}
.btn-outline-coral:hover{background:var(--coral-txt);color:#fff}
.btn-outline-coral:active{box-shadow:1px 1px 0 var(--coral-txt)}
.btn .arrow{display:inline-block;transition:transform var(--dur-2) var(--ease-out)}
.btn:hover .arrow{transform:translateX(4px)}

/* ---------- chips / abas de tema ---------- */
.chip{position:relative;transition:color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),
  background var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}
.chip:active{transform:scale(.96)}
.chip[aria-selected="true"]{background:var(--coral-txt);border-color:var(--coral-txt);color:#fff;
  box-shadow:0 4px 14px rgba(210,60,16,.30)}
.chip .n{display:inline-block;margin-left:7px;font-size:11px;font-weight:700;opacity:.62}

/* ---------- cards: entrada e hover ---------- */
.card{transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),
  opacity var(--dur-2) var(--ease-out),border-color var(--dur-2)}
.card:hover{border-color:#d8cfbe}
.card.is-out{opacity:0;transform:scale(.96);pointer-events:none}
.card:hover .pill{transform:translateY(-3px);box-shadow:0 6px 16px rgba(20,40,17,.34)}
.card h3{transition:color var(--dur-2) var(--ease-out)}
.card:hover h3{color:var(--green)}
.card .more{margin-top:12px;font-family:var(--display);font-weight:700;font-size:13px;color:var(--coral-txt);
  display:inline-flex;align-items:center;gap:6px;opacity:0;transform:translateY(6px);
  transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}
.card:hover .more,.card:focus-within .more{opacity:1;transform:none}
.card .more i{font-style:normal;transition:transform var(--dur-2) var(--ease-out)}
.card:hover .more i{transform:translateX(4px)}


/* ---------- cores dos filtros: o slug de data-filter/data-f escolhe a paleta ---------- */
[data-filter="manejo"],[data-f="manejo"]{--c:var(--f-manejo);--on:var(--f-manejo-on);--txt:var(--f-manejo-text);--soft:var(--f-manejo-soft)}
[data-filter="produtividade"],[data-f="produtividade"]{--c:var(--f-produtividade);--on:var(--f-produtividade-on);--txt:var(--f-produtividade-text);--soft:var(--f-produtividade-soft)}
[data-filter="gestao"],[data-f="gestao"]{--c:var(--f-gestao);--on:var(--f-gestao-on);--txt:var(--f-gestao-text);--soft:var(--f-gestao-soft)}
[data-filter="mercado"],[data-f="mercado"]{--c:var(--f-mercado);--on:var(--f-mercado-on);--txt:var(--f-mercado-text);--soft:var(--f-mercado-soft)}
[data-filter="sustentabilidade"],[data-f="sustentabilidade"]{--c:var(--f-sustentabilidade);--on:var(--f-sustentabilidade-on);--txt:var(--f-sustentabilidade-text);--soft:var(--f-sustentabilidade-soft)}
[data-filter="mudas"],[data-f="mudas"]{--c:var(--f-mudas);--on:var(--f-mudas-on);--txt:var(--f-mudas-text);--soft:var(--f-mudas-soft)}
[data-filter="tecnologia"],[data-f="tecnologia"]{--c:var(--f-tecnologia);--on:var(--f-tecnologia-on);--txt:var(--f-tecnologia-text);--soft:var(--f-tecnologia-soft)}
[data-filter="trabalho"],[data-f="trabalho"]{--c:var(--f-trabalho);--on:var(--f-trabalho-on);--txt:var(--f-trabalho-text);--soft:var(--f-trabalho-soft)}
.chip[data-filter]:not([data-filter="todos"]):hover{background:var(--soft);border-color:var(--c);color:var(--txt)}
.chip[data-filter]:not([data-filter="todos"])[aria-selected="true"]{background:var(--c);border-color:var(--c);color:var(--on);
  box-shadow:0 4px 14px rgba(0,0,0,.14);box-shadow:0 4px 14px color-mix(in srgb, var(--c) 30%, transparent)}
/* principal: sólida, com filete claro para não sumir no véu escuro da aquarela */
.card .pill[data-f]{background:var(--c);color:var(--on);
  box-shadow:0 0 0 1.5px rgba(255,255,255,.55),0 2px 8px rgba(0,0,0,.25)}
/* secundárias: fundo suave */
.card .pill.sec[data-f]{background:var(--soft);color:var(--txt);box-shadow:none}
.card:hover .pill[data-f]{box-shadow:0 0 0 1.5px rgba(255,255,255,.55),0 6px 16px rgba(0,0,0,.30)}
.card:hover .pill.sec[data-f]{box-shadow:0 6px 16px rgba(0,0,0,.20)}

.gsap .gs-busy{transition:none}

/* contador de resultados */
.result-count{font-size:12.5px;color:var(--taupe-txt);margin:-12px 0 20px;min-height:18px}
.result-count b{color:var(--coral-txt)}

/* ---------- parceiros ---------- */
.logo-tile img{transition:transform var(--dur-3) var(--ease-out)}
.logo-tile:hover img{transform:scale(1.08)}
.brandstrip .lockup{transition:transform var(--dur-3) var(--ease-out)}
.brandstrip .lockup:hover{transform:scale(1.03)}

/* ---------- form de assinatura ---------- */
.sub-form input{transition:box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}
.sub-form input:focus{box-shadow:0 0 0 4px rgba(252,165,0,.35);outline:none}
.sub-form.is-done .btn{background:#fff;color:var(--green)}
@keyframes pop{0%{transform:scale(.7)}60%{transform:scale(1.12)}100%{transform:scale(1)}}
.sub-form.is-done .btn span{display:inline-block;animation:pop .45s var(--spring)}

/* ---------- voltar ao topo ---------- */
.to-top{position:fixed;right:22px;bottom:22px;z-index:80;width:52px;height:52px;border-radius:50%;
  border:0;background:var(--green);color:#fff;display:grid;place-items:center;cursor:pointer;
  box-shadow:0 8px 24px rgba(45,30,15,.26);
  opacity:0;visibility:hidden;transform:translateY(14px) scale(.9);
  transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--spring),visibility var(--dur-3),background var(--dur-2)}
.to-top.is-on{opacity:1;visibility:visible;transform:none}
.to-top:hover{background:var(--coral-txt)}
.to-top:active{transform:scale(.94)}

/* ---------- menu do header: sublinhado já existente + cor ---------- */
.menu a{transition:color var(--dur-2) var(--ease-out)}

/* ---------- responsivo do drawer ---------- */
@media(min-width:901px){
  .drawer,.scrim{display:none}
}
@media(max-width:620px){
  .chip{min-height:44px;padding:10px 16px}
  .to-top{right:14px;bottom:14px}
  .sub-form input{min-width:0;width:100%}
  .sub-form{width:100%}
  .sub-form .btn{width:100%;justify-content:center}
}

/* ---------- respeitar prefers-reduced-motion ---------- */
@media(prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1!important;transform:none!important}
  .drawer a.d-link{opacity:1!important;transform:none!important}
  .to-top{transition:opacity 1ms linear}
}

/* =====================================================================
   REVISÃO LOFT: site com páginas próprias (matéria, edição, tema)
   Tudo abaixo usa os mesmos tokens do Design System da V10.
   ===================================================================== */
:root{--areia2:#EFEAE1}

/* ---------- card inteiro clicável ---------- */
.card{position:relative}
.card h3 a{color:inherit}
.card h3 a::after{content:"";position:absolute;inset:0;z-index:3}
.card h3 a:focus-visible{outline:none}
.card:has(h3 a:focus-visible){outline:3px solid var(--green);outline-offset:3px}
.card .more{opacity:1;transform:none}

/* ---------- trilha de navegação ---------- */
.crumbs{padding:24px 0 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13px;color:var(--taupe-txt)}
.crumbs li{display:flex;align-items:center;gap:8px}
.crumbs li+li::before{content:"›";color:var(--taupe);font-size:15px;line-height:1}
.crumbs a{color:var(--body);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;padding:6px 0;
  transition:color var(--dur-2) var(--ease-out),text-decoration-color var(--dur-2) var(--ease-out)}
.crumbs a:hover{color:var(--green);text-decoration-color:var(--green)}
.crumbs [aria-current]{color:var(--ink);font-weight:600}

/* ---------- página da matéria ---------- */
.art{padding-bottom:40px}
.art-head{max-width:860px}
.art-pills{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 16px}
.tagpill{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 14px 6px 11px;border-radius:100px;
  font:600 13px/1.3 var(--sans);background:var(--c);color:var(--on);
  transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}
.tagpill svg{width:15px;height:15px;flex:none}
.tagpill.sec{background:var(--soft);color:var(--txt)}
.tagpill:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(45,30,15,.16)}
.tagpill:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.art-title{font-family:var(--display);font-weight:800;font-size:clamp(30px,4.4vw,48px);line-height:1.08;letter-spacing:-.022em;color:var(--ink)}
.art-lead{font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:var(--body);margin-top:16px;max-width:60ch}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:26px;padding:14px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.byline{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--taupe-txt);line-height:1.45}
.byline img{width:34px;height:auto;flex:none}
.byline b{display:block;color:var(--ink);font-weight:700;font-size:14px}
.share{display:flex;align-items:center;gap:8px;position:relative}
.share .lbl{font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--taupe-txt);margin-right:4px}
.sh{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--cocoa);cursor:pointer;
  transition:transform var(--dur-2) var(--spring),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}
.sh:hover{transform:translateY(-2px);border-color:var(--green);color:var(--green)}
.sh:active{transform:scale(.94)}
.sh:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.sh.is-ok{background:var(--green);border-color:var(--green);color:#fff}
.share-status{position:absolute;right:0;top:calc(100% + 8px);font-size:12.5px;font-weight:600;color:var(--green);white-space:nowrap}
.art-fig{margin:30px 0 0}
.art-fig img{width:100%;height:auto;aspect-ratio:9/5;object-fit:cover;border-radius:var(--radius);background:var(--areia2)}
.art-fig figcaption{font-size:12.5px;color:var(--taupe-txt);margin-top:10px}
.art-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;margin-top:40px;align-items:start}
.art-body{font-size:17px;line-height:1.72;color:var(--body);max-width:68ch}
.art-body > p + p{margin-top:1.1em}
.art-body h2{font-family:var(--display);font-weight:700;font-size:23px;line-height:1.25;color:var(--ink);margin:1.7em 0 .55em}
.art-body .leia{margin-top:1.6em;padding:16px 20px;border-left:4px solid var(--coral);background:#fff;border-radius:0 14px 14px 0}
.art-body .leia a{font-family:var(--display);font-weight:700;font-size:16px;line-height:1.35;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.art-body .leia a:hover{color:var(--green);text-decoration-color:var(--green)}
.art-body .ext{margin-top:1.2em}
.caixa{background:var(--cream);border-radius:20px;padding:24px 26px 12px;margin:1.8em 0}
.caixa .eyebrow{color:var(--cocoa)}
.caixa ol{list-style:none;counter-reset:c;margin-top:12px}
.caixa li{counter-increment:c;display:grid;grid-template-columns:32px 1fr;column-gap:12px;padding:14px 0;border-top:1px solid rgba(63,45,31,.14)}
.caixa li::before{content:counter(c);grid-row:1 / span 2;width:28px;height:28px;border-radius:50%;background:var(--cocoa);color:var(--amber);
  font:800 13px/28px var(--display);text-align:center;margin-top:2px}
.caixa li a{font-family:var(--display);font-weight:700;font-size:16.5px;line-height:1.35;color:var(--ink);text-decoration:underline;
  text-decoration-color:rgba(63,45,31,.28);text-underline-offset:4px;transition:color var(--dur-2) var(--ease-out)}
.caixa li a:hover{color:var(--green);text-decoration-color:var(--green)}
.caixa li p{font-size:15px;line-height:1.55;margin-top:4px;color:var(--body)}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:44px;padding-top:24px;border-top:1px solid var(--line)}
.pn-a{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;
  transition:border-color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}
.pn-a:hover{border-color:#d8cfbe;transform:translateY(-2px);box-shadow:var(--shadow)}
.pn-a.next{text-align:right}
.pn-l{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-txt)}
.pn-t{font-family:var(--display);font-weight:700;font-size:15px;line-height:1.3;color:var(--ink)}
.art-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:16px}
.aside-box{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 22px}
.aside-box h2{font-family:var(--sans);font-weight:700;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--taupe-txt);margin-bottom:12px;line-height:1.4}
.orgs{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.orgs li{font-size:13px;line-height:1.3;padding:6px 11px;border-radius:100px;background:var(--paper);border:1px solid var(--line);color:var(--ink)}
.ed-list{list-style:none;counter-reset:e}
.ed-list li{border-top:1px solid var(--line)}
.ed-list li:first-child{border-top:0}
.ed-list a{display:block;padding:10px 0;font-size:14px;line-height:1.4;font-weight:600;color:var(--ink);transition:color var(--dur-2) var(--ease-out)}
.ed-list a:hover{color:var(--green)}
.aside-box .al{display:inline-block;margin-top:10px;font-family:var(--display);font-weight:700;font-size:13.5px;color:var(--coral-txt);padding:6px 0}
.aside-box .al:hover{text-decoration:underline;text-underline-offset:4px}
.related{background:#fff;border-top:1px solid var(--line)}
.related .grid{grid-template-columns:repeat(3,1fr)}

/* ---------- página inicial: edição mais recente ---------- */
.edicao{padding-bottom:24px}
.ed-lay{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:26px;align-items:start}
.card.destaque .thumb{height:auto;aspect-ratio:9/5}
.card.destaque .body{padding:24px 26px 26px}
.card.destaque h3{font-size:clamp(22px,2.4vw,30px);font-weight:800;line-height:1.12;letter-spacing:-.015em}
.card.destaque p{font-size:15.5px;flex:0}
.d-eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--coral-txt);margin-bottom:8px}
.nesta-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px 26px}
.nb-h{font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--taupe-txt);margin-bottom:6px}
.nesta{list-style:none;counter-reset:n;margin-bottom:22px}
.nesta li{counter-increment:n;display:grid;grid-template-columns:36px 1fr;gap:10px;padding:14px 0;border-top:1px solid var(--line)}
.nesta li:first-child{border-top:0}
.nesta li::before{content:counter(n,decimal-leading-zero);font:800 15px/1.5 var(--display);color:var(--coral)}
.nesta a{display:block;margin-top:6px;font-family:var(--display);font-weight:700;font-size:15.5px;line-height:1.32;color:var(--ink);transition:color var(--dur-2) var(--ease-out)}
.nesta a:hover{color:var(--green)}
.nl-pills .pill{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:11px;padding:4px 10px 4px 8px;border-radius:100px;background:var(--c);color:var(--on)}
.nl-pills .pill svg{width:12px;height:12px}

/* ---------- página inicial: edições ---------- */
.edicoes{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ed-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.ed-card{position:relative;display:grid;grid-template-columns:180px minmax(0,1fr);gap:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}
.ed-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(45,30,15,.14);border-color:#d8cfbe}
.ed-card:has(h3 a:focus-visible){outline:3px solid var(--green);outline-offset:3px}
.ed-thumbs{display:grid;grid-template-rows:repeat(3,1fr);gap:2px;background:var(--line)}
.ed-thumbs img{width:100%;height:100%;object-fit:cover;min-height:0}
.ed-body{padding:22px 24px;display:flex;flex-direction:column}
.ed-body h3{font-size:24px;font-weight:800;color:var(--ink);margin-top:6px}
.ed-body h3 a::after{content:"";position:absolute;inset:0;z-index:2}
.ed-body h3 a:focus-visible{outline:none}
.ed-card:hover h3{color:var(--green)}
.ed-body p{font-size:14px;color:var(--body);margin-top:8px;flex:1}
.ed-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}
.ed-n{font-family:var(--display);font-weight:700;font-size:14px;color:var(--coral-txt)}
.ed-pills{display:flex;flex-wrap:wrap;gap:5px}
.ed-pills .pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 9px 4px 7px;border-radius:100px;background:var(--c);color:var(--on)}
.ed-pills .pill svg{width:12px;height:12px}

/* ---------- páginas de edição e de tema ---------- */
.page-head{padding-bottom:32px}
.page-head .eyebrow{display:block;margin-top:26px}
.eyebrow.c{color:var(--coral-txt)}
.page-head h1{font-family:var(--display);font-weight:800;font-size:clamp(34px,5vw,56px);line-height:1.04;letter-spacing:-.025em;color:var(--ink);margin-top:8px}
.page-head .lead{font-size:clamp(16.5px,1.5vw,19px);line-height:1.55;color:var(--body);max-width:62ch;margin-top:12px}
.page-head .count{margin-top:16px;font-family:var(--display);font-weight:700;font-size:14px;color:var(--coral-txt)}
section.block.pt0{padding-top:0}
.grid.mt{margin-top:26px}
.card.destaque.wide{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.card.destaque.wide .thumb{aspect-ratio:auto;min-height:320px}
.card.destaque.wide .body{padding:32px 34px;justify-content:center}
.outras-ed,.outros-temas{margin-top:48px}
.outras-ed .eyebrow,.outros-temas .eyebrow{margin-bottom:14px}
.ed-minis{display:flex;flex-wrap:wrap;gap:14px}
.ed-mini{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:18px;min-width:260px;padding:16px 20px;border:1px solid var(--line);border-radius:16px;background:#fff;
  transition:border-color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}
.ed-mini .eyebrow{grid-column:1;margin:0}
.ed-mini b{grid-column:1;font-family:var(--display);font-size:18px;color:var(--ink)}
.ed-mini > span:not(.eyebrow):not(.arrow){grid-column:1;font-size:13px;color:var(--taupe-txt)}
.ed-mini .arrow{grid-column:2;grid-row:1 / span 3;font-size:20px;color:var(--coral-txt);transition:transform var(--dur-2) var(--ease-out)}
.ed-mini:hover{border-color:#d8cfbe;transform:translateY(-2px)}
.ed-mini:hover .arrow{transform:translateX(4px)}
.tema-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center;margin-top:20px}
.tema-head .eyebrow{margin-top:0}
.tema-ic{width:84px;height:84px;border-radius:50%;background:var(--c);color:var(--on);display:grid;place-items:center;box-shadow:0 10px 24px -10px var(--c)}
.tema-ic svg{width:40px;height:40px}
.tema h1{color:var(--txt)}
.tema-q{margin-top:22px;max-width:680px;background:var(--soft);border-radius:16px;padding:14px 18px;font-weight:600;font-size:16.5px;line-height:1.45;color:var(--ink)}
.tema-q span{display:block;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--txt);margin-bottom:4px}
.chip-links{display:flex;flex-wrap:wrap;gap:9px}
.chip-link{display:inline-flex;align-items:center;gap:7px;min-height:42px;font-weight:600;font-size:13px;padding:9px 15px;border-radius:100px;border:1.5px solid var(--line);background:#fff;color:var(--ink);
  transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}
.chip-link svg{width:17px;height:17px;color:var(--txt)}
.chip-link .n{font-size:11px;font-weight:700;opacity:.62}
.chip-link:hover{background:var(--soft);border-color:var(--c);color:var(--txt)}
.empty-tema{grid-column:1/-1;text-align:center;padding:48px 24px;background:#fff;border:1px dashed var(--taupe);border-radius:var(--radius)}
.empty-tema p{max-width:46ch;margin:0 auto 18px;color:var(--body)}

/* ---------- responsivo ---------- */
@media(max-width:1060px){
  .art-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .art-aside{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .art-aside .aside-box:last-child{grid-column:1/-1}
}
@media(max-width:900px){
  .ed-lay{grid-template-columns:1fr}
  .ed-strip{grid-template-columns:1fr}
  .related .grid{grid-template-columns:repeat(2,1fr)}
  .card.destaque.wide{grid-template-columns:1fr}
  .card.destaque.wide .thumb{aspect-ratio:9/5;min-height:0}
}
@media(max-width:620px){
  .crumbs{padding-top:16px}
  .art-meta{flex-direction:column;align-items:flex-start}
  .art-body{font-size:16.5px}
  .caixa{padding:20px 18px 8px;border-radius:18px}
  .pn{grid-template-columns:1fr}
  .pn-a.next{text-align:left}
  .art-aside{grid-template-columns:1fr}
  .related .grid{grid-template-columns:1fr}
  .ed-card{grid-template-columns:1fr}
  .ed-thumbs{grid-template-rows:none;grid-template-columns:repeat(3,1fr);height:92px}
  .card.destaque .body,.nesta-box{padding:20px}
  .tema-head{grid-template-columns:1fr;gap:14px}
  .tema-ic{width:64px;height:64px}
  .tema-ic svg{width:30px;height:30px}
  .ed-mini{min-width:0;width:100%}
  .share-status{right:auto;left:0}
}
@media (pointer:coarse){
  .crumbs a{padding:12px 0}
  .ed-list a{padding:12px 0}
}
@media(prefers-reduced-motion:reduce){
  .tagpill,.sh,.pn-a,.ed-card,.ed-mini,.chip-link{transition:none}
}
@media(max-width:900px){#edicao,#acervo{scroll-margin-top:84px}}

/* ---------- celular: cards das listas viram linhas compactas (imagem à esquerda) ---------- */
@media(max-width:620px){
  .grid{gap:12px}
  .grid .card{display:grid;grid-template-columns:118px minmax(0,1fr);border-radius:16px}
  .grid .card .thumb{height:auto;min-height:128px}
  .grid .card .pills{left:8px;right:auto;bottom:8px}
  .grid .card .pill.sec{display:none}
  .grid .card .pill{width:30px;height:30px;padding:0;justify-content:center;border-radius:50%}
  .grid .card .pill > span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .grid .card .body{padding:12px 14px 12px}
  .grid .card h3{font-size:15.5px;line-height:1.28}
  .grid .card p,.grid .card .more{display:none}
  .grid .card .meta{margin-top:8px;flex-wrap:wrap;row-gap:2px}
  .grid .card:hover{transform:none}
}


/* =====================================================================
   V2 · filtros discretos: a matéria manda, o filtro acompanha.
   Etiqueta neutra (contorno e texto discretos), ícone na cor do filtro.
   A cor cheia só aparece no hover do item ou no clique (filtro ativo).
   ===================================================================== */
.fpills{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.fp{position:relative;display:inline-flex;align-items:center;gap:5px;padding:3px 10px 3px 8px;border-radius:100px;
  border:1px solid var(--line);background:transparent;color:var(--taupe-txt);font:600 11.5px/1.35 var(--sans);white-space:nowrap;
  transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}
.fp svg{width:13px;height:13px;flex:none;color:var(--txt);transition:color var(--dur-2) var(--ease-out)}
.fp-lg{padding:6px 13px 6px 10px;font-size:13px;min-height:32px}
.fp-lg svg{width:15px;height:15px}
/* hover do item (card, linha da lista) ou da própria etiqueta: cor cheia */
.card:hover .fp:not(.sec),.nesta li:hover .fp:not(.sec),.ed-card:hover .fp:not(.sec),a.fp:not(.sec):hover,a.fp:not(.sec):focus-visible{
  background:var(--c);border-color:var(--c);color:var(--on)}
.card:hover .fp:not(.sec) svg,.nesta li:hover .fp:not(.sec) svg,.ed-card:hover .fp:not(.sec) svg,a.fp:not(.sec):hover svg,a.fp:not(.sec):focus-visible svg{color:var(--on)}
.card:hover .fp.sec,.nesta li:hover .fp.sec,.ed-card:hover .fp.sec,a.fp.sec:hover,a.fp.sec:focus-visible{background:var(--soft);border-color:var(--soft);color:var(--txt)}
a.fp{z-index:4}
a.fp:focus-visible{outline:3px solid var(--green);outline-offset:2px}
/* barra de filtros do acervo: inativo neutro com ícone colorido; ativo com cor cheia */
.chip[data-filter]:not([data-filter="todos"]) svg{color:var(--txt)}
.chip[data-filter]:not([data-filter="todos"])[aria-selected="true"] svg{color:var(--on)}
/* chips de "outros temas" e ícone da página de tema */
.chip-link svg{color:var(--txt)}
.tema-ic{background:var(--soft);color:var(--txt);box-shadow:none}
.tema h1{color:var(--ink)}

/* cards: imagem limpa, etiqueta abaixo do título */
.card .thumb::after{display:none}
.card .body .fpills{margin-top:10px}
.card p{margin-top:10px}
.card.destaque .fpills{margin-top:12px}
.nesta a{margin-top:0}
.nesta .fpills{margin-top:8px}
.ed-foot .fpills{margin-top:0}

/* card de página (várias matérias) */
.pcard .pm{list-style:none;margin-top:12px;border-top:1px solid var(--line)}
.pcard .pm li{border-bottom:1px solid var(--line)}
.pcard .pm a{position:relative;z-index:4;display:block;padding:9px 0 9px 18px;font-size:13.5px;font-weight:600;line-height:1.4;color:var(--ink);transition:color var(--dur-2) var(--ease-out)}
.pcard .pm a::before{content:"";position:absolute;left:2px;top:17px;width:6px;height:6px;border-radius:50%;background:var(--coral)}
.pcard .pm a:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.pcard p{flex:0}
.pcard .meta{margin-top:auto;padding-top:14px}

/* ---------- página com várias matérias ---------- */
.art-head .art-title{margin-top:22px}
.art-body > .mat:first-child{margin-top:0}
.mat{scroll-margin-top:96px}
.mat + .mat{margin-top:56px;padding-top:48px;border-top:2px solid var(--line)}
.mat-head{margin-bottom:22px}
.mat-n{display:block;font:800 12.5px/1 var(--display);letter-spacing:.16em;color:var(--coral-txt);margin-bottom:10px}
.art-body h2.mat-t{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.6vw,31px);line-height:1.16;letter-spacing:-.015em;color:var(--ink);margin:0}
.art:not(.multi) .mat-head .mat-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.art:not(.multi) .mat-head{margin-bottom:18px}
.mat-head .fpills{margin-top:12px}
.mat-fina{font-size:18px;line-height:1.55;color:var(--body);margin-top:14px}
.mat-fig{margin:0 0 26px}
.mat-fig img{width:100%;height:auto;aspect-ratio:9/5;object-fit:cover;border-radius:var(--radius);background:var(--areia2)}
.art-body h3{font-family:var(--display);font-weight:700;font-size:21px;line-height:1.3;color:var(--ink);margin:1.6em 0 .5em}
.art-body .mat > p + p{margin-top:1.1em}
.art-body .mat > p{margin-top:0}
.art-body .mat > .caixa + p,.art-body .mat > h3 + p{margin-top:0}
/* índice lateral fixo */
.art-grid{grid-template-columns:minmax(0,1fr) 300px}
.art-body{grid-column:1;grid-row:1}
.art-aside{grid-column:2;grid-row:1}
.toc-side{position:static;align-self:stretch}
.toc-box{position:sticky;top:96px}
.toc{list-style:none;counter-reset:t}
.toc li{counter-increment:t;border-top:1px solid var(--line)}
.toc li:first-child{border-top:0}
.toc a{display:grid;grid-template-columns:28px 1fr;gap:6px;padding:11px 0;font-size:14px;font-weight:600;line-height:1.4;color:var(--body);
  transition:color var(--dur-2) var(--ease-out)}
.toc a::before{content:counter(t,decimal-leading-zero);font:800 13px/1.5 var(--display);color:var(--taupe)}
.toc a:hover{color:var(--green)}
.toc a[aria-current="true"]{color:var(--ink)}
.toc a[aria-current="true"]::before{color:var(--coral)}
.art-end{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:48px}
.art-end .aside-box:last-child:nth-child(odd){grid-column:1/-1}

@media(max-width:1060px){
  .art-grid{grid-template-columns:minmax(0,1fr)}
  .art-body,.art-aside{grid-column:auto;grid-row:auto}
  .toc-box{position:static}
  .art-aside.toc-side{display:block}
}
@media(max-width:620px){
  .art-end{grid-template-columns:1fr}
  .mat + .mat{margin-top:40px;padding-top:36px}
  .mat-fina{font-size:16.5px}
  /* celular: linhas compactas, só a etiqueta principal */
  .grid .card .fpills{margin-top:6px}
  .grid .card .fp.sec{display:none}
  .grid .card .fp{padding:2px 8px 2px 6px;font-size:11px}
  .grid .card .meta{margin-top:6px}
  .grid .pcard .pm{display:none}
}
@media (pointer:coarse){ .toc a{padding:13px 0} }
@media(prefers-reduced-motion:reduce){ .fp,.fp svg,.toc a{transition:none} }


/* =====================================================================
   V3 · Quem somos no lugar dos números do hero; anterior/próxima à esquerda
   ===================================================================== */
.hero{background:var(--paper)}
.quem{background:#fff;border-bottom:1px solid var(--line)}
.quem .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:56px;align-items:center;padding-top:64px;padding-bottom:64px}
.quem-fig{margin:0;border-radius:24px;overflow:hidden;background:var(--areia2);box-shadow:var(--shadow)}
.quem-fig img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.quem-logo{width:min(100%,400px);height:auto;margin-bottom:26px}
.quem .eyebrow{display:block}
.quem p{font-size:17.5px;line-height:1.7;color:var(--body);margin-top:12px;max-width:58ch}
.quem .cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px;align-items:center}
.quem .btn{min-height:48px}
.pn-a.next{text-align:left}
@media(max-width:900px){
  .quem .wrap{grid-template-columns:1fr;gap:30px;padding-top:44px;padding-bottom:48px}
}
@media(max-width:620px){
  .quem-logo{width:min(100%,300px);margin-bottom:20px}
  .quem p{font-size:16.5px}
  .quem .cta-row .btn{flex:1 1 auto;justify-content:center}
}
@media(max-width:900px){#quem-somos{scroll-margin-top:84px}}


/* =====================================================================
   V4 · índice com temas, galeria de fotos (bento) e ampliação
   ===================================================================== */
/* índice "Nesta página": título + etiquetas; número e título mudam juntos para o coral */
.toc a{align-items:start}
.toc-b{display:block}
.toc-t{display:block;transition:color var(--dur-2) var(--ease-out)}
.toc .fpills{margin-top:7px;gap:5px}
.toc .fp{font-size:11px;padding:2px 8px 2px 6px}
.toc .fp svg{width:12px;height:12px}
.toc a:hover .toc-t{color:var(--green)}
.toc a[aria-current="true"] .toc-t{color:var(--coral-txt)}
.toc a[aria-current="true"]::before{color:var(--coral-txt)}
.toc a[aria-current="true"] .fp:not(.sec){border-color:var(--c);background:var(--c);color:var(--on)}
.toc a[aria-current="true"] .fp:not(.sec) svg{color:var(--on)}

/* galeria: grade compacta, sem roubar o destaque do texto */
.galeria{margin:28px 0 30px}
.gal-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.gal-n{font-size:12.5px;color:var(--taupe-txt)}
.art-body .bento{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:8px;margin:0;padding:0}
.bento li{margin:0;padding:0;min-width:0}
.bento .s11{aspect-ratio:16/10}
.bento .s22{grid-column:span 2;grid-row:span 2}
.bento .s12{grid-row:span 2}
.bento .s21{grid-column:span 2}
.gal-it{position:relative;display:block;width:100%;height:100%;padding:0;border:0;border-radius:12px;overflow:hidden;background:var(--areia2);cursor:zoom-in}
.gal-it img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%;display:block;transition:transform var(--dur-3) var(--ease-out),filter var(--dur-2) var(--ease-out)}
.gal-it:hover img{transform:scale(1.04);filter:brightness(1.04)}
.gal-it::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(42,32,24,.08);pointer-events:none}
.gal-it:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.galeria figcaption{font-size:12.5px;color:var(--taupe-txt);margin-top:8px}

/* ampliação */
.lb{margin:0;padding:0;border:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;background:rgba(26,20,14,.94);color:#F3EADB;overflow:hidden}
.lb[open]{display:flex;flex-direction:column}
.lb::backdrop{background:rgba(26,20,14,.94)}
.lb-top{display:flex;align-items:center;justify-content:space-between;padding:14px 18px}
.lb-count{font:600 13px/1 var(--sans);letter-spacing:.06em;color:#CDBEA8}
.lb-stage{flex:1;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:0 18px 22px}
.lb-fig{margin:0;min-height:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.lb-fig img{max-width:100%;max-height:calc(100dvh - 150px);width:auto;height:auto;object-fit:contain;border-radius:10px;touch-action:pan-y;user-select:none;-webkit-user-drag:none;
  transition:opacity .14s ease,transform .14s ease}
.lb-fig img.sai-e{opacity:0;transform:translateX(-18px)}
.lb-fig img.sai-d{opacity:0;transform:translateX(18px)}
.lb-fig figcaption{display:flex;flex-direction:column;gap:3px;align-items:center;text-align:center;max-width:70ch;margin-top:12px;font-size:14px;line-height:1.45;color:#E9DECC}
.lb-cred{font-size:12px;color:#B7A893}
.lb-btn{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;cursor:pointer;
  transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}
.lb-btn:hover{background:var(--amber);border-color:var(--amber);color:var(--cocoa)}
.lb-btn:active{transform:scale(.94)}
.lb-btn:focus-visible{outline:3px solid var(--amber);outline-offset:3px}

@media(max-width:620px){
  .art-body .bento{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .bento .s22{aspect-ratio:3/2}
  .gal-it{border-radius:10px}
  .gal-head{flex-direction:column;gap:2px}
  .lb-stage{grid-template-columns:minmax(0,1fr);padding:0 10px 14px;position:relative}
  .lb-nav{position:absolute;bottom:20px;z-index:2}
  #lbPrev{left:16px} #lbNext{right:16px}
  .lb-fig figcaption{padding:0 64px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){ .gal-it img,.lb-fig img,.lb-btn,.toc-t{transition:none} }


/* =====================================================================
   V5 · links em texto, Quem somos, galeria e compartilhar por notícia
   ===================================================================== */
/* link dentro da matéria: texto laranja, sublinhado e seta; nunca botão */
.lnk{color:var(--coral-txt);font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;text-decoration-color:currentColor;
  transition:color var(--dur-2) var(--ease-out)}
.lnk-ar{display:inline-block;margin-left:4px;text-decoration:none;transition:transform var(--dur-2) var(--ease-out)}
.lnk:hover{color:#A82E0B}
.lnk:hover .lnk-ar{transform:translateX(3px)}
.lnk:focus-visible{outline:3px solid var(--green);outline-offset:3px;border-radius:3px}
.caixa li a.lnk{color:var(--coral-txt);text-decoration-color:currentColor}
.caixa li a.lnk:hover{color:#A82E0B}
.art-body .leia a.lnk{color:var(--coral-txt);text-decoration-color:currentColor}
@media (pointer:coarse){ .art-body p .lnk,.caixa li a.lnk{padding-block:6px;margin-block:-6px} }

/* Quem somos: logo 30% menor */
.quem-logo{width:min(100%,280px)}
.quem-fig{overflow:hidden}

/* galeria: miniaturas já recortadas no formato de cada espaço */
.gal-it img{object-position:50% 50%}

/* compartilhar: topo da página e fim de cada notícia */
.share-sm{margin-top:26px;padding-top:16px;border-top:1px dashed var(--line);flex-wrap:wrap}
.share-sm .lbl{letter-spacing:.12em}
.share-sm .sh{width:40px;height:40px}
.share-sm .share-status{position:static;margin-left:4px}
@media (pointer:coarse){ .share-sm .sh{width:44px;height:44px} }
@media(max-width:620px){
  .quem-logo{width:min(100%,210px)}
  .share{flex-wrap:wrap;row-gap:6px}
  .share .lbl{flex-basis:100%;margin:0 0 2px}
  .share-status{position:static;flex-basis:100%;margin:2px 0 0}
}
@media(prefers-reduced-motion:reduce){ .lnk,.lnk-ar{transition:none} }

/* ---------- vistoria mobile: alvos de toque de 44 px e letra mínima de 12 px ---------- */
@media (pointer:coarse){
  /* área de toque ampliada sem mudar o desenho */
  .crumbs a,a.fp,.aside-box .al,.ed-list a{position:relative}
  .crumbs a::after,a.fp::after{content:"";position:absolute;inset:-10px -6px}
  .aside-box .al{padding:12px 0;margin:-2px 0}
  .caixa li a.lnk{display:inline-block;padding:11px 0;margin:-11px 0}
  .chip-link{min-height:44px}
  .search{min-height:44px}
  .search input{min-height:30px}
  .toc a{padding:13px 0}
}
@media(max-width:620px){
  .fp{font-size:12px}
  .toc .fp{font-size:11.5px}
  .grid .card .fp{font-size:11.5px}
  .d-eyebrow,.aside-box h2,.pn-l,.nb-h{font-size:12px}
  .tema-q span{font-size:11.5px}
  .sub-note{font-size:12.5px}
  .card .meta{font-size:12.5px}
  .galeria figcaption,.art-fig figcaption{font-size:13px}
}


/* =====================================================================
   V6 · edição completa, organizações citadas clicáveis, crédito no rodapé
   ===================================================================== */
.art-eb{display:block;margin:20px 0 -10px}
/* índice longo (edição completa): rola por dentro se passar da altura da tela */
.toc-box{max-height:calc(100vh - 120px);overflow:auto;overscroll-behavior:contain}
@media(max-width:1060px){ .toc-box{max-height:none;overflow:visible} }

/* organizações citadas */
.orgs-hint{font-size:12.5px;color:var(--taupe-txt);margin:-6px 0 10px}
.org-link{display:inline-flex;align-items:center;font-size:13px;line-height:1.3;padding:6px 11px;border-radius:100px;background:var(--paper);border:1px solid var(--line);color:var(--ink);
  cursor:pointer;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}
.org-link:hover{border-color:var(--coral-txt);color:var(--coral-txt);background:#fff}
.org-link[aria-current="true"]{background:var(--amber);border-color:var(--amber);color:var(--cocoa)}
.org-link:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.orgs li{list-style:none}
.org{border-radius:4px;transition:background-color .35s var(--ease-out),box-shadow .35s var(--ease-out)}
.org.is-hit{background:#FDE3A7;box-shadow:0 0 0 3px #FDE3A7;color:var(--ink)}
.org.is-now{background:var(--amber);box-shadow:0 0 0 3px var(--amber);color:var(--cocoa)}
@media (pointer:coarse){ .org-link{min-height:44px;padding:10px 14px} }

/* rodapé: crédito */
.f-legal{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.f-credit{display:inline-flex;align-items:center;gap:8px;color:#E9DDCF}
.f-credit svg{flex:none;color:#E9DDCF;transition:transform var(--dur-3) var(--ease-out)}
.f-credit span:not(.sr-only){text-decoration:underline;text-decoration-color:rgba(233,221,207,.35);text-underline-offset:4px;transition:text-decoration-color var(--dur-2) var(--ease-out)}
.f-credit:hover span:not(.sr-only){text-decoration-color:var(--amber)}
.f-credit:hover svg{transform:rotate(-20deg)}
.f-credit:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:4px}
@media (pointer:coarse){ .f-credit{min-height:44px} }
@media(prefers-reduced-motion:reduce){ .org,.org-link,.f-credit svg{transition:none} }

/* barra flutuante das citações */
.org-bar{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:6px;
  padding:6px 6px 6px 16px;border-radius:100px;background:var(--cocoa);color:#F3EADB;box-shadow:0 14px 34px rgba(30,20,10,.32);
  max-width:calc(100vw - 32px);animation:obIn .32s var(--ease-out)}
.org-bar[hidden]{display:none}
@keyframes obIn{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
.ob-t{font:700 13.5px/1.2 var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}
.ob-n{font-size:12.5px;color:#CDBEA8;white-space:nowrap;margin-right:4px}
.ob-b{width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background var(--dur-2) var(--ease-out)}
.ob-b:hover:not(:disabled){background:var(--amber);color:var(--cocoa)}
.ob-b:disabled{opacity:.35;cursor:default}
.ob-b:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
@media (pointer:coarse){ .ob-b{width:44px;height:44px} }
@media(max-width:620px){ .org-bar{bottom:14px} .ob-t{max-width:34vw} }
/* crédito do rodapé: sem o recuo negativo dos links da linha final */
.f-bottom .f-credit{display:inline-flex;align-items:center;gap:9px;padding-block:4px;margin-block:0;text-decoration:none}
@media(prefers-reduced-motion:reduce){ .org-bar{animation:none} }
/* com a barra de citações aberta, o "voltar ao topo" sai da frente */
body.org-bar-on .to-top{opacity:0 !important;pointer-events:none;transform:translateY(12px)}


/* =====================================================================
   V7 · Quem somos com vídeo vertical em aquarela
   ===================================================================== */
.quem-fig{position:relative}
.quem-fig video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:cover;background:#E8E4CF}
.qv-btn{position:absolute;right:14px;bottom:14px;z-index:1;width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;
  background:rgba(63,45,31,.72);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  transition:background var(--dur-2) var(--ease-out),opacity var(--dur-2) var(--ease-out)}
.qv-btn[hidden]{display:none}
.qv-btn:hover{background:var(--cocoa)}
.qv-btn:focus-visible{outline:3px solid var(--amber);outline-offset:3px;opacity:1}
.quem-fig.is-playing .qv-btn{opacity:.5}
.quem-fig.is-playing:hover .qv-btn{opacity:1}
/* computador: o texto ocupa a altura do vídeo (logo no topo, botões na base) */
@media(min-width:901px){
  .quem .wrap{grid-template-columns:clamp(300px,29vw,380px) minmax(0,1fr);gap:clamp(40px,5.5vw,80px);align-items:stretch}
  .quem-tx{display:flex;flex-direction:column;align-items:flex-start;padding-block:4px}
  .quem-logo{margin-bottom:auto}
  .quem .cta-row{margin-top:auto}
  .quem p{font-size:clamp(18px,1.4vw,20px);line-height:1.75;max-width:60ch;margin-top:14px}
}
/* celular e tablet: vídeo vertical mais baixo (4:5), centrado, acima do texto */
@media(max-width:900px){
  .quem-fig{width:min(100%,460px);margin-inline:auto}
  .quem-fig video{aspect-ratio:4/5;object-position:50% 58%}
}
@media (pointer:coarse){ .quem-fig.is-playing .qv-btn{opacity:.8} }
@media(prefers-reduced-motion:reduce){ .qv-btn{transition:none} }

/* edições com menos de 3 capas */
.ed-thumbs.n1{grid-template-rows:1fr}.ed-thumbs.n2{grid-template-rows:repeat(2,1fr)}
@media(max-width:620px){.ed-thumbs.n1{grid-template-columns:1fr}.ed-thumbs.n2{grid-template-columns:repeat(2,1fr)}}

/* celular: campos com 16px para o iPhone não ampliar a tela ao tocar */
@media(max-width:620px){input,textarea,select{font-size:16px}}

/* ---------- cards de "Todas as matérias" e dos temas: mais baixos, com o texto em até 3 linhas ("(...)" no fim, ajustado por assets/js/cards.js) ---------- */
@media(min-width:621px){
  .grid .card .thumb{height:150px}
  .grid .card .body{padding:14px 18px 16px}
  .grid .card h3{font-size:18px}
  .grid .card .body .fpills{margin-top:8px}
  .grid .card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;margin-top:8px;line-height:1.5}
  .grid .card .more{margin-top:10px}
  .grid .card .meta{margin-top:10px}
}

/* =====================================================================
   Rodada 23/10 · espaçamento equilibrado: nada de vazio sem informação
   ===================================================================== */

/* Quem somos: logo 50% maior (de 280 para 420 px) e o texto centralizado na altura do vídeo */
.quem-logo{width:min(100%,420px)}
@media(min-width:901px){
  .quem-tx{justify-content:center}
  .quem-logo{margin-bottom:36px}
  .quem .cta-row{margin-top:34px}
}
@media(max-width:620px){ .quem-logo{width:min(100%,315px)} }

/* Nesta edição: o card do destaque cresce até a altura da lista ao lado (a imagem ocupa o que sobrava) */
section.block.edicao{padding-bottom:0}
.ed-lay{align-items:stretch}
.card.destaque .thumb{flex:1 0 auto}
.card.destaque .thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.card.destaque .body{flex:0 0 auto}

/* Todas as matérias: temas em fileiras equilibradas (sem uma palavra sozinha na última linha) */
.result-count:empty{display:none}
.filterbar{flex-direction:row;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-bottom:24px}
.filterbar .chips{flex:1 0 100%}
.filterbar .result-count{margin:0;min-height:0;flex:1 1 auto}
.filterbar .search{align-self:auto;margin-left:auto}
@media(min-width:1200px){
  .chips{flex-wrap:nowrap;gap:8px}
  .chip{padding:8px 12px;gap:6px;font-size:12.5px;white-space:nowrap}
  .chip svg{width:15px;height:15px}
}
@media(max-width:1199px){
  .chips{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
  .chip{justify-content:center;white-space:nowrap}
}
@media(max-width:899px){ .chips{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media(max-width:620px){
  .filterbar .search{order:2;flex:1 1 100%;margin-left:0}
  .filterbar .result-count{order:3;flex:1 1 100%}
}
@media(max-width:599px){
  .chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .chip[data-filter="todos"]{grid-column:1/-1}
  .chip{padding:9px 8px;gap:5px;font-size:12.5px}
  .chip svg{width:15px;height:15px}
}

/* Edições: cards do mesmo tamanho, duas imagens, o nome da edição e os títulos das principais matérias */
.ed-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.ed-card{display:flex;flex-direction:column}
.ed-card .ed-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr;gap:2px;height:170px;flex:none;background:var(--line)}
.ed-card .ed-thumbs.n1{grid-template-columns:1fr}
.ed-card .ed-thumbs.n0{background:var(--areia2)}
.ed-card .ed-body{padding:24px 26px 28px;flex:1}
.ed-card .ed-body h3{font-size:24px;margin-top:0}
.ed-titulos{list-style:none;margin:18px 0 0;display:grid;gap:12px}
.ed-titulos li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.42;color:var(--body)}
.ed-titulos li::before{content:"";position:absolute;left:2px;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--coral)}
@media(max-width:900px){
  .ed-strip{grid-template-columns:1fr;gap:18px}
  .ed-card{flex-direction:row;min-height:250px}
  .ed-card .ed-thumbs{flex:0 0 36%;height:auto;align-self:stretch;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr))}
  .ed-card .ed-thumbs img{height:0;min-height:100%}
  .ed-card .ed-thumbs.n1{grid-template-rows:minmax(0,1fr)}
  .ed-card .ed-body{padding:24px 26px 26px}
}
@media(max-width:620px){
  .ed-card{flex-direction:column;min-height:0}
  .ed-card .ed-thumbs{flex:none;width:100%;height:116px;align-self:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}
  .ed-card .ed-thumbs img{height:100%;min-height:0}
  .ed-card .ed-thumbs.n1{grid-template-columns:1fr}
  .ed-card .ed-body{padding:20px 20px 22px}
  .ed-card .ed-body h3{font-size:22px}
}

/* Membros financiadores: título na mesma fonte pequena de "Uma iniciativa do"; logos em fileiras equilibradas (5 e 4) */
.brandstrip .eyebrow{display:block}
.brandstrip .lockup{margin:22px auto 0}
.brandstrip h2.eyebrow.membros{font-family:var(--sans);font-size:12px;line-height:1.5;letter-spacing:.2em;font-weight:700;margin:48px 0 0}
.logos{display:flex;flex-wrap:wrap;justify-content:center;gap:34px 32px;margin-top:34px}
.logos .logo-tile{flex:0 0 calc((100% - 4 * 32px) / 5);min-width:0;min-height:80px}
@media(max-width:900px){ .logos .logo-tile{flex-basis:calc((100% - 2 * 32px) / 3)} }
@media(max-width:620px){
  .logos{gap:20px 16px;margin-top:28px}
  .logos .logo-tile{flex-basis:calc((100% - 16px) / 2);min-height:64px}
}

/* Receba a newsletter: texto de um lado e formulário do outro (antes tudo ficava à esquerda e o resto vazio) */
.subscribe .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,540px);gap:26px 64px;align-items:center;padding-top:52px;padding-bottom:52px}
.sub-form{align-items:stretch}
.sub-form input[type="email"]{flex:1 1 220px;min-width:0}
.sub-note{margin-top:4px}
@media(max-width:900px){ .subscribe .wrap{grid-template-columns:1fr;gap:22px} }
@media(max-width:620px){ .subscribe .wrap{padding-top:44px;padding-bottom:44px} }

/* =====================================================================
   Política de Privacidade: caixa "Li e concordo", janela e página
   ===================================================================== */

/* caixa de concordância, logo abaixo do e-mail e do botão */
.sub-ok{flex-basis:100%;display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:4px 0;cursor:pointer;font-size:14px;line-height:1.5;color:rgba(255,255,255,.94);border-radius:10px}
.sub-form .sub-ok input[type="checkbox"]{-webkit-appearance:none;appearance:none;flex:none;width:24px;height:24px;min-width:0;min-height:0;padding:0;margin:1px 0 0;border-radius:7px;background:#fff;border:2px solid #fff;cursor:pointer;
  transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}
.sub-form .sub-ok input[type="checkbox"]:checked{background:var(--amber) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233F2D1F' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/17px no-repeat;border-color:var(--amber)}
.sub-form .sub-ok input[type="checkbox"]:focus-visible{outline:3px solid #fff;outline-offset:3px}
.sub-ok.erro{outline:2px solid #FFD2C2;outline-offset:6px}
.sub-form .sub-ok.erro input[type="checkbox"]{border-color:#FFD2C2}
.priv-link{color:#fff;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;white-space:nowrap}
.priv-link:hover{color:var(--amber)}
.priv-link:focus-visible{outline:3px solid #fff;outline-offset:3px;border-radius:3px}
.sub-note{font-size:14px;font-weight:600;line-height:1.45;margin-top:2px}
.sub-note:empty{display:none}
footer .f-col li a[data-priv]{cursor:pointer}

/* texto da política (o mesmo na janela e na página) */
.priv-texto{color:var(--body);font-size:15.5px;line-height:1.7}
.priv-texto .priv-data{font-size:13px;color:var(--taupe-txt);letter-spacing:.02em}
.priv-texto .priv-resumo{margin-top:14px;padding:14px 18px;background:#EAF3EA;border-left:4px solid var(--green);border-radius:0 12px 12px 0;color:var(--ink)}
.priv-texto h2{font-family:var(--display);font-size:18px;font-weight:700;line-height:1.25;letter-spacing:-.005em;color:var(--green-deep);margin:26px 0 8px}
.priv-texto p+p{margin-top:10px}
.priv-texto ul{margin:6px 0 0 20px}
.priv-texto li{margin-top:7px;padding-left:2px}
.priv-texto strong{color:var(--ink)}
.priv-texto a{color:var(--coral-txt);font-weight:600;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.priv-texto a:hover{color:#A82E0B}

/* janela */
.priv-modal{margin:auto;border:0;padding:0;background:transparent;width:min(720px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);color:var(--body);overflow:visible}
.priv-modal::backdrop{background:rgba(42,32,24,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.priv-modal[open]{display:block;animation:priv-entra var(--dur-3) var(--ease-out)}
@keyframes priv-entra{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
.priv-painel{display:flex;flex-direction:column;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);background:var(--paper);border-radius:22px;box-shadow:0 30px 80px rgba(20,12,4,.38);overflow:hidden}
.priv-topo{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px 14px 28px;border-bottom:1px solid var(--line);flex:none}
.priv-titulo{font-family:var(--display);font-weight:800;font-size:clamp(20px,2.4vw,25px);line-height:1.15;letter-spacing:-.01em;color:var(--ink)}
.priv-x{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;
  transition:background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}
.priv-x:hover{background:var(--cream);border-color:var(--taupe)}
.priv-x:focus-visible,.priv-fechar:focus-visible,.priv-corpo:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.priv-corpo{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px 28px 26px}
.priv-corpo .priv-texto .priv-data{margin-top:14px}
.priv-carregando{padding:22px 0;color:var(--taupe-txt)}
.priv-rodape{flex:none;display:flex;justify-content:flex-end;padding:14px 22px 18px;border-top:1px solid var(--line);background:#fff}
.priv-fechar{min-height:48px}
html.priv-aberto{overflow:hidden}

/* página própria */
.priv-pagina{padding:8px 0 80px}
.priv-miolo{max-width:760px;padding-top:20px}
.priv-h1{font-family:var(--display);font-weight:800;font-size:clamp(30px,4.4vw,46px);line-height:1.08;letter-spacing:-.02em;color:var(--ink);margin-bottom:10px}

@media(max-width:620px){
  .sub-ok{font-size:14.5px}
  .priv-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px)}
  .priv-painel{max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);border-radius:18px}
  .priv-topo{padding:14px 12px 12px 18px}
  .priv-corpo{padding:2px 18px 22px}
  .priv-texto{font-size:15px}
  .priv-texto h2{font-size:17px;margin-top:22px}
  .priv-rodape{padding:12px 16px 14px}
  .priv-fechar{width:100%;justify-content:center}
  .priv-pagina{padding-bottom:56px}
}
@media(prefers-reduced-motion:reduce){ .priv-modal[open]{animation:none} .sub-form .sub-ok input[type="checkbox"]{transition:none} }
