/* ===== seção avaliacoes (claro) · prefixo av- ===== */
#avaliacoes{
  --av-corpo:max(18px, var(--t-corpo));
  --av-t-m:clamp(1.3rem, 1rem + .95vw, 1.75rem);
  --av-t-g:clamp(1.65rem, .95rem + 2.3vw, 3rem);
  --av-rot:max(12px, var(--b-t-mono));
  --av-ouro:#9a7646;
  position:relative; isolation:isolate; overflow:clip;
  padding:var(--secao-y) var(--b-borda);
  display:grid;
  grid-template-columns:repeat(12, minmax(0,1fr));
  column-gap:clamp(1rem, 2vw, 2rem);
}
#avaliacoes .wf-rot{font-size:var(--av-rot)}
.av-fundo{position:absolute; inset:0; z-index:-1; pointer-events:none}
.av-luz{position:absolute; border-radius:50%}
.av-luz-1{width:62vw; height:62vw; right:-18vw; top:-22vw; background:radial-gradient(closest-side in oklab, var(--papel-2), transparent)}
.av-luz-2{width:56vw; height:56vw; left:-20vw; top:45%; background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--b-agua) 20%, var(--papel)), transparent); opacity:.75}
.av-grao{position:absolute; inset:0; opacity:.05; mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .3  0 0 0 0 .22  0 0 0 0 .15  0 0 0 1.2 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}

/* ---------- topo: título + nota ---------- */
.av-topo{grid-column:1 / span 8; grid-row:1; align-self:end}
.av-sobre{margin:0 0 1.6rem; display:flex; align-items:center; gap:.8rem}
.av-sobre::before{content:""; width:2.2rem; height:1px; background:currentColor; opacity:.7}
.av-titulo{margin:0; font-weight:300; letter-spacing:-.02em}
.av-titulo span{display:block}
.av-leve{font-size:var(--t-sub); line-height:1.15; color:var(--tinta-2); max-width:22ch; text-wrap:balance}
.av-forte{font-weight:700; font-size:clamp(3.2rem, 1rem + 8.6vw, 8.6rem); line-height:.92; letter-spacing:-.045em; margin-top:.08em; color:var(--tinta)}

.av-nota{grid-column:9 / -1; grid-row:1; align-self:end;
  position:relative; padding:1.5rem 1.6rem 1.7rem; border:1px solid var(--grade-clara-forte); border-radius:6px;
  background:
    repeating-linear-gradient(to right, var(--grade-clara) 0 1px, transparent 1px 25px),
    repeating-linear-gradient(to bottom, var(--grade-clara) 0 1px, transparent 1px 25px),
    color-mix(in oklab, var(--papel-2) 70%, var(--papel));
}
.av-nota-num{margin:.5rem 0 .4rem; display:flex; align-items:center; gap:1rem; flex-wrap:wrap}
.av-nota-valor{font-size:clamp(4rem, 2.5rem + 4vw, 6.6rem); font-weight:300; line-height:.9; letter-spacing:-.04em}
.av-estrelas{color:var(--bronze-txt); letter-spacing:.14em; font-size:1.15rem}
.av-nota-txt{margin:0 0 1.3rem; color:var(--tinta-2); font-size:var(--av-corpo); line-height:1.4}
.av-nota-txt b{color:var(--tinta); font-weight:600}
.av-nota-link{display:inline-flex; align-items:center; gap:.5rem; padding:.75rem 1.25rem; border-radius:999px; background:var(--tinta); color:var(--papel); font-weight:500; text-decoration:none; transition:background .25s, transform .25s}
.av-nota-link:hover{background:var(--traco-claro); transform:translateY(-2px)}

/* ---------- fala em destaque ---------- */
.av-destaque{grid-column:1 / -1; margin:clamp(4.5rem, 9vw, 8rem) 0 0; display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:clamp(1rem, 2vw, 2rem)}
.av-destaque > *{grid-column:1 / -1}
.av-destaque-txt{margin:0; position:relative}
.av-destaque-txt::before{content:"“"; position:absolute; left:-.05em; top:-.62em; font-size:clamp(6rem, 4rem + 6vw, 11rem); font-weight:300; line-height:1; color:color-mix(in oklab, var(--av-ouro) 45%, transparent); pointer-events:none}
.av-destaque-txt p{margin:0; font-weight:300; letter-spacing:-.018em; text-wrap:pretty}
.av-d-abre{display:block; position:relative; font-size:clamp(1.9rem, .9rem + 3.3vw, 4.4rem); line-height:1.06; letter-spacing:-.03em; max-width:27ch}
.av-d-abre b{font-weight:700}
.av-d-resto{display:block; margin:clamp(1.4rem, 2.5vw, 2.4rem) 0 0 calc(41.66% + .5rem); font-size:var(--av-t-m); line-height:1.38; color:var(--tinta-2); max-width:34ch}
.av-assinatura{display:flex; align-items:flex-end; gap:1.2rem; margin:1.2rem 0 0 calc(var(--b-borda) * -1); width:calc(91.66% + var(--b-borda))}
.av-traco{flex:1 1 auto; height:150px; overflow:visible; display:block}
.av-traco-p{stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round}
.av-assinatura .av-quem{flex:none; margin:0 0 .25rem}

.av-quem{display:flex; flex-wrap:wrap; align-items:baseline; gap:.3rem .9rem; margin-top:1.1rem}
.av-nome{font-weight:600; font-size:1.05rem; color:var(--tinta)}

/* ---------- as outras falas: ritmo editorial ---------- */
.av-falas{grid-column:1 / -1; display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:inherit; row-gap:clamp(3rem, 6vw, 5.5rem); margin-top:clamp(5rem, 10vw, 8.5rem); column-gap:clamp(1rem, 2vw, 2rem)}
.av-fala{margin:0; position:relative}
.av-fala blockquote{margin:0}
.av-fala p{margin:0; text-wrap:pretty}
.av-p p{font-size:var(--av-corpo); line-height:1.55}
.av-m p{font-size:var(--av-t-m); line-height:1.32; font-weight:400; letter-spacing:-.01em}
.av-g p{font-size:var(--av-t-g); line-height:1.12; font-weight:300; letter-spacing:-.02em}
.av-g b{font-weight:700}
.av-fala::before{content:""; display:block; width:2.4rem; height:1px; background:var(--av-ouro); margin-bottom:1.1rem}
.av-palavra{font-weight:700; background:linear-gradient(color-mix(in oklab, var(--av-ouro) 70%, transparent), color-mix(in oklab, var(--av-ouro) 70%, transparent)) left bottom / 100% 2px no-repeat; padding-bottom:.04em}
.js .av-fala .av-palavra{background-size:0 2px; transition:background-size 1.1s var(--curva) .55s}
.js .av-fala.surgiu .av-palavra{background-size:100% 2px}
.av-g::before{content:"“"; width:auto; height:auto; background:none; margin:0 0 -.18em -.04em; font-size:clamp(4rem, 3rem + 3vw, 6.5rem); font-weight:300; line-height:.8; color:var(--av-ouro)}
@media (prefers-reduced-motion:reduce){.js .av-fala .av-palavra{background-size:100% 2px; transition:none}}

.av-f1{grid-column:1 / span 5; grid-row:1}
.av-f2{grid-column:8 / span 5; grid-row:1; margin-top:5rem}
.av-f3{grid-column:2 / span 9; grid-row:2}
.av-f4{grid-column:1 / span 4; grid-row:3}
.av-f5{grid-column:6 / span 6; grid-row:3; margin-top:3rem}
.av-f6{grid-column:2 / span 5; grid-row:4}
.av-f7{grid-column:7 / span 6; grid-row:4; margin-top:2.5rem}

/* ---------- tablet ---------- */
@media (max-width:1100px){
  .av-topo{grid-column:1 / span 7}
  .av-nota{grid-column:8 / -1}
}
/* ---------- celular ---------- */
@media (max-width:820px){
  #avaliacoes{padding-bottom:calc(var(--secao-y) + 90px)}
  .av-topo,.av-nota,.av-destaque{grid-column:1 / -1; grid-row:auto}
  .av-nota{margin-top:2.4rem; justify-self:start; width:100%}
  .av-falas{grid-template-columns:minmax(0,1fr)}
  .av-falas .av-fala{grid-column:1; grid-row:auto; margin-top:0}
  .av-f2,.av-f5,.av-f7{margin-left:8%}
  .av-forte{font-size:16.5vw}
  .av-d-resto{margin-left:0}
  .av-assinatura{width:calc(100% + var(--b-borda))}
  .av-traco{height:84px}
  .av-assinatura{flex-direction:column; align-items:stretch; gap:.4rem}
  .av-assinatura .av-quem{align-self:flex-end}
}
