.gauge{position:relative;padding-top:34px;--bh:16px}
.gauge .bar{display:flex;gap:3px;height:var(--bh)}
.gauge .z{display:block;min-width:8px}
.gauge .z.conf{background:var(--green-deep)}
.gauge .z.forte{background:var(--ink)}
.gauge .z.rumor{background:repeating-linear-gradient(90deg,var(--amber) 0 5px,transparent 5px 9px);box-shadow:inset 0 0 0 2px var(--amber)}
.gauge .needle{position:absolute;top:8px;height:calc(26px + var(--bh) + 4px);left:calc(var(--pct)*100%);width:3px;margin-left:-1.5px;background:var(--ink);z-index:2;box-shadow:0 0 0 2px var(--paper)}
.gauge .needle::after{content:"";position:absolute;left:50%;top:-8px;transform:translateX(-50%);width:11px;height:11px;border-radius:50%;background:var(--ink)}
.gauge .needle b{position:absolute;top:-10px;right:12px;white-space:nowrap;font-family:var(--disp);font-weight:800;font-size:15px;line-height:1;color:var(--ink)}
.gauge .ticks{display:flex;justify-content:space-between;font-family:var(--disp);font-size:12px;font-weight:600;color:var(--ink-2);margin-top:10px}
.gauge .gl{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px}
.gauge.big{--bh:26px}
.gauge.big .needle b{font-size:18px}
.motion .gauge .needle{transition:left 1.8s cubic-bezier(.25,.8,.2,1) .25s}
.motion .gauge .bar{transition:clip-path 1.1s cubic-bezier(.3,.7,.2,1)}
.motion .gauge:not(.on) .needle{left:0}
.motion .gauge:not(.on) .bar{clip-path:inset(0 100% 0 0)}
.motion .gauge:not(.on) .needle b{opacity:0}
.motion .gauge .needle b{transition:opacity .4s 1.6s}
@media (prefers-reduced-motion:reduce){.motion .gauge .needle,.motion .gauge .bar,.motion .gauge .needle b{transition:none}}

.hero{padding:36px 0 56px}
.stamp{display:flex;align-items:center;gap:14px;font-family:var(--disp);font-weight:700;font-size:15px;margin-bottom:20px;color:var(--ink-2);flex-wrap:wrap}
.hero h1{font-size:clamp(50px,9.2vw,140px)}
.hero .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;margin-top:40px}
.hero .copy{grid-column:1/7;display:flex;flex-direction:column}
.hero .why{margin-top:22px;padding:16px 0 0;border-top:3px solid var(--ink);font-size:18px;line-height:1.5}
.hero .why b{font-family:var(--disp);font-weight:700;color:var(--green-deep);display:block;font-size:14px;margin-bottom:4px}
.hero .dek{font-size:23px;line-height:1.5;color:var(--ink-2)}
.hero .dek::first-letter{font-family:var(--disp);font-weight:800;font-size:3.1em;float:left;line-height:.82;margin:6px 10px 0 0;color:var(--green-deep)}
.by{margin-top:auto;font-family:var(--disp);font-size:14px;font-weight:600;color:var(--ink-2);padding-top:12px;border-top:1px solid var(--hair);display:block;line-height:1.4}
.by a{color:var(--ink);border-bottom:2px solid var(--green-deep)}
.hero .copy .spacer{flex:1 1 auto;min-height:18px}
.resumo{grid-column:8/-1;background:var(--forest);color:#E9ECEA;border-top:4px solid var(--green);padding:22px 24px 20px;align-self:stretch;display:flex;flex-direction:column}
.resumo header{display:flex;align-items:center;gap:12px;font-family:var(--disp);padding-bottom:14px;border-bottom:1px solid rgba(233,236,234,.18)}
.resumo header img{width:40px;height:40px}
.resumo header b{font-size:18px;font-weight:700;display:block;line-height:1.1}
.resumo header span{font-size:13px;color:#A9BDB5}
.resumo ul{list-style:none;margin-top:6px;flex:1}
.resumo li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:baseline;padding:12px 0;border-bottom:1px solid rgba(233,236,234,.12);font-size:16.5px;line-height:1.45}
.resumo li:last-child{border-bottom:0}
.resumo .d-conf{background:var(--green)}.resumo .d-forte{background:#E9ECEA}.resumo .d-rumor{border-color:var(--amber-lt)}
.resumo li b{font-family:var(--disp);font-weight:700}
.resumo .ask-link{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:14px;border-top:1px solid rgba(233,236,234,.18);font-family:var(--disp);font-weight:700;font-size:15px;color:var(--green)}
.resumo .ask-link:hover{color:#8BE9BE}

.front{padding:44px 0 16px}
.front .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px}
.front .sechead{grid-column:1/-1}
.lead{grid-column:1/8}
.lead h2{font-size:50px}
.lead p{margin-top:14px;color:var(--ink-2);max-width:54ch}
.col{grid-column:8/-1;display:grid;align-content:start;border-left:1px solid var(--green-deep);padding-left:32px}
.col a{padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid var(--hair)}
.col a:last-child{border-bottom:0;margin-bottom:0}
.col h3{font-family:var(--disp);font-weight:700;font-size:26px;line-height:1.12;letter-spacing:-.012em}
.col p{font-size:16px;color:var(--ink-2);margin-top:6px}

/* faixa do caderno: 1 matéria com logo + índice corrido */
.cad{padding:36px 0 20px}
.cad .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0 32px;border-top:2px solid var(--ink);padding-top:26px}
.cad .top{grid-column:1/6}
.cad .top h3{font-family:var(--disp);font-weight:800;font-variation-settings:"wdth" 85;font-size:34px;line-height:1;letter-spacing:-.012em;margin-top:2px}
.cad .top p{font-size:16.5px;color:var(--ink-2);margin-top:10px}
.cad ol{grid-column:6/-1;list-style:none;counter-reset:n}
.cad ol li{border-bottom:1px solid var(--hair)}
.cad ol li:first-child a{padding-top:0}
.cad ol a{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;padding:18px 0;align-items:start}
.cad ol .ph{aspect-ratio:3/2}
.cad ol strong{display:block;font-family:var(--disp);font-weight:700;font-size:21px;line-height:1.18;letter-spacing:-.01em}
.cad ol span.l{display:block;font-size:15.5px;color:var(--ink-2);margin-top:4px;line-height:1.45}
.cad ol .kick{margin:0 0 4px}

.termo{padding:48px 0 72px}
.termo .side{display:grid;grid-template-columns:7fr 5fr;gap:0 56px;align-items:end;margin-bottom:30px}
.termo .side p{font-size:16.5px;color:var(--ink-2)}
.termo .side a.more{display:inline-block;margin-top:12px;font-family:var(--disp);font-weight:700;border-bottom:2px solid var(--green-deep)}
.termo .list{list-style:none;border-top:2px solid var(--ink);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px}
.termo .list li{border-bottom:1px solid var(--hair);min-width:0}
.termo .list a{display:grid;grid-template-columns:128px minmax(0,1fr);gap:18px;align-items:baseline;padding:16px 0}
.termo .list strong{display:block;font-family:var(--disp);font-weight:700;font-size:20px;line-height:1.2;letter-spacing:-.01em}
.termo .list span.l{display:block;font-size:15.5px;color:var(--ink-2);margin-top:4px;line-height:1.45}

@media (max-width:860px){
  /* r5: mobile enxuto, só blocos secundários saem */
  .front .lead p,.col a p,.col .ph,.cad .top p,.cad ol li:nth-child(3),.termo .list,.termo .side p{display:none}
  .termo .side a.more{margin-top:0}
  .hero{padding:24px 0 40px}
  .stamp{font-size:14px;gap:8px 12px;margin-bottom:14px}
  .hero h1{font-size:clamp(46px,13.2vw,64px)}
  .hero .grid{grid-template-columns:1fr;margin-top:24px;gap:28px}
  .hero .copy,.resumo{grid-column:1/-1}
  .hero .dek{font-size:19px}
  .hero .copy .spacer{display:none}
  .hero .by{margin-top:20px}
  .resumo{padding:18px 18px 16px}
  .resumo li{font-size:15.5px}
  .front{padding:32px 0 8px}
  .lead,.col{grid-column:1/-1}
  .lead h2{font-size:34px}
  .col{border-left:0;padding-left:0;border-top:1px solid var(--green-deep);padding-top:22px;margin-top:28px}
  .col h3{font-size:21px}
  .cad .grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .cad .top,.cad ol{grid-column:1/-1}
  .cad .top h3{font-size:30px}
  .cad ol a{grid-template-columns:104px minmax(0,1fr);gap:14px}
  .cad ol strong{font-size:18px}
  .cad ol span.l{display:none}
  .termo{padding:32px 0 48px}
  .termo .side{grid-template-columns:minmax(0,1fr);gap:22px}
  .termo .list{grid-template-columns:minmax(0,1fr)}
  .termo .list a{grid-template-columns:minmax(0,1fr);gap:6px}
  .termo .list strong{font-size:18px}
}
