:root {
  --papel: #F4EFE4;
  --papel-claro: #FBF8F1;
  --papel-fundo: #EDE6D6;
  --tinta: #1E2230;
  --tinta-2: #4B4F5D;
  --linha: #D6CCB8;
  --verde: #0F6E5E;
  --verde-escuro: #0A5246;
  --verde-claro: #DCEDE6;
  --vermelho: #B8342A;
  --grafite: #6A6356;
  --hachura: #CFC4AE;
  --t-titulo: 'Schibsted Grotesk', 'Instrument Sans', sans-serif;
  --t-texto: 'Instrument Sans', system-ui, sans-serif;
  --t-dado: 'Red Hat Mono', ui-monospace, monospace;
  --sombra: 0 1px 2px rgba(30, 34, 48, .08), 0 8px 22px -10px rgba(30, 34, 48, .28);
  --raio: 6px;
  --e1: 8px;
  --e2: 16px;
  --e3: clamp(20px, 2.4vw, 28px);
  --e4: clamp(32px, 4vw, 48px);
  --e5: clamp(48px, 6.5vw, 80px);
  --e6: clamp(64px, 9vw, 120px);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 16px; }
body { margin: 0; background: var(--papel); color: var(--tinta); font: 400 1.0625rem/1.65 var(--t-texto); overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--verde); text-underline-offset: 3px; text-decoration-thickness: 1px; }
a:hover { color: var(--verde-escuro); text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--verde); outline-offset: 3px; border-radius: 3px; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.pular { position: absolute; left: -999px; top: 8px; background: var(--tinta); color: var(--papel); padding: 8px 14px; border-radius: 4px; z-index: 10; }
.pular:focus { left: 8px; }
.defs { position: absolute; }
.hachura-fundo { fill: var(--papel-fundo); }
.hachura-traco { stroke: var(--hachura); stroke-width: 3; }

/* Topo: tira de papel picotado */
.topo { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px clamp(16px, 4vw, 40px); border-bottom: 1px dashed var(--linha); }
.marca { display: inline-flex; align-items: center; gap: 10px; color: var(--tinta); text-decoration: none; font: 600 1.2rem/1 var(--t-titulo); letter-spacing: -0.02em; }
.marca b { font-weight: 900; color: var(--verde); }
.marca:hover { color: var(--tinta); }
.marca-tag svg { width: 26px; height: 26px; fill: var(--verde); stroke: none; transform: rotate(-12deg); }
.marca-tag circle { fill: var(--papel); }
.topo-nav { display: flex; gap: 22px; font-size: .95rem; }
.topo-nav a { color: var(--tinta-2); text-decoration: none; }
.topo-nav a:hover { color: var(--verde); text-decoration: underline; }
@media (max-width: 640px) { .topo-nav { display: none; } }

/* Abertura: as cinco etiquetas penduradas no barbante */
.abre { padding: var(--e4) clamp(16px, 4vw, 40px) var(--e2); }
.varal { list-style: none; margin: 0 auto; padding: 22px 0 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--e4); max-width: 1180px; position: relative; }
.varal::before { content: ''; position: absolute; left: -2%; right: -2%; top: 8px; height: 18px; border-top: 2px solid var(--grafite); border-radius: 50% 50% 0 0 / 100% 100% 0 0; opacity: .55; }
.etq { transform: rotate(var(--giro)); transform-origin: 50% 0; }
@media (max-width: 640px) {
  .abre { padding-left: 0; padding-right: 0; }
  .abre-texto { padding: 0 16px; }
  .varal { display: flex; gap: var(--e2); overflow-x: auto; scroll-snap-type: x mandatory; padding: 22px 16px 18px; scrollbar-width: none; }
  .varal::-webkit-scrollbar { display: none; }
  .varal::before { left: 0; right: 0; width: 290%; }
  .etq { flex: 0 0 46%; scroll-snap-align: center; }
  .etq-nome { font-size: .9rem; }
}
.etq a { position: relative; display: flex; flex-direction: column; gap: 8px; background: var(--papel-claro); padding: 26px clamp(6px, 1vw, 12px) clamp(8px, 1.2vw, 14px); border-radius: 4px 4px var(--raio) var(--raio); clip-path: polygon(20% 0, 80% 0, 100% 9%, 100% 100%, 0 100%, 0 9%); box-shadow: var(--sombra); color: var(--tinta); text-decoration: none; filter: drop-shadow(0 6px 10px rgba(30,34,48,.14)); transition: transform .35s cubic-bezier(.16,1,.3,1); }
.etq a:hover { transform: translateY(4px); }
.etq-furo { position: absolute; top: 8px; left: 50%; width: 10px; height: 10px; margin-left: -5px; border-radius: 50%; background: var(--papel); box-shadow: inset 0 1px 2px rgba(0,0,0,.35); }
.etq-foto { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 3px; }
.etq-nome { font: 600 clamp(.72rem, 1.3vw, .98rem)/1.2 var(--t-titulo); letter-spacing: -0.01em; }
.etq .carimbo { align-self: flex-start; }

.abre-texto { max-width: 46rem; margin: var(--e5) auto 0; }
.abre h1 { font: 900 clamp(2.15rem, 5.2vw, 4.25rem)/1.02 var(--t-titulo); letter-spacing: -0.035em; margin: 0 0 var(--e3); text-wrap: balance; }
.abre-resumo p { font-size: clamp(1.08rem, 1.6vw, 1.22rem); margin: 0 0 14px; color: var(--tinta); }
.abre-resumo p:first-child::first-line { font-weight: 600; }
.atalhos { display: flex; flex-wrap: wrap; gap: var(--e1) var(--e3); margin-top: var(--e4); padding-top: var(--e2); border-top: 1px dashed var(--linha); font-size: .95rem; }
.atalhos a { color: var(--tinta-2); }
.atalhos a:hover { color: var(--verde); }

/* Carimbos */
.carimbo { display: inline-block; font: 800 .78rem/1.1 var(--t-titulo); text-transform: uppercase; letter-spacing: .07em; padding: 6px 9px 5px; border: 2px solid currentColor; border-radius: 4px; transform: rotate(-3deg); box-shadow: inset 0 0 0 2px var(--papel-claro), inset 0 0 0 3px currentColor; background: transparent; white-space: nowrap; }
.carimbo-mini { font-size: .62rem; padding: 4px 6px 3px; letter-spacing: .05em; box-shadow: none; border-width: 1.5px; }
.carimbo-real { color: var(--verde); }
.carimbo-comum { color: var(--tinta-2); }
.carimbo-acima { color: var(--vermelho); }
.carimbo-lacuna { color: var(--grafite); border-style: dashed; box-shadow: none; }

@media (prefers-reduced-motion: no-preference) {
  .etq .carimbo { animation: bate .5s cubic-bezier(.16,1,.3,1) both; animation-delay: calc(.35s + var(--n, 0) * .09s); }
  .etq:nth-child(2) { --n: 1; } .etq:nth-child(3) { --n: 2; } .etq:nth-child(4) { --n: 3; } .etq:nth-child(5) { --n: 4; }
  @keyframes bate { from { transform: scale(1.5) rotate(-9deg); opacity: .35; } to { transform: rotate(-3deg); opacity: 1; } }
}

/* Texto longo */
.longo { max-width: 44rem; margin: 0 auto; padding: var(--e4) clamp(16px, 4vw, 24px) var(--e5); }
.longo h2 { font: 800 clamp(1.5rem, 2.6vw, 1.95rem)/1.15 var(--t-titulo); letter-spacing: -0.025em; margin: var(--e6) 0 var(--e2); text-wrap: balance; }
.longo h3 { font: 800 1.2rem/1.25 var(--t-titulo); margin: var(--e4) 0 var(--e1); }
.longo p { margin: 0 0 1.15rem; }
.longo ul { padding-left: 1.2rem; margin: 0 0 1.2rem; }
.longo li { margin-bottom: .45rem; }
.longo li::marker { color: var(--verde); }
.longo strong { font-weight: 600; }

/* Régua de 90 dias: sai da coluna e ocupa a largura */
.regua { position: relative; width: min(1180px, calc(100vw - 32px)); margin: var(--e5) 0 var(--e5) 50%; transform: translateX(-50%); background: var(--papel-claro); padding: var(--e4) clamp(16px, 3vw, 40px); border-radius: var(--raio); box-shadow: var(--sombra); --dente: radial-gradient(circle at 50% 0, transparent 6px, #000 6.5px); -webkit-mask: radial-gradient(circle 7px at 50% 0, transparent 6.5px, #000 7px) 0 0 / 22px 51% repeat-x, radial-gradient(circle 7px at 50% 100%, transparent 6.5px, #000 7px) 0 100% / 22px 51% repeat-x; mask: radial-gradient(circle 7px at 50% 0, transparent 6.5px, #000 7px) 0 0 / 22px 51% repeat-x, radial-gradient(circle 7px at 50% 100%, transparent 6.5px, #000 7px) 0 100% / 22px 51% repeat-x; }
.regua-cab { max-width: 46rem; margin-bottom: var(--e4); }
.regua-cab h2 { font: 900 clamp(1.7rem, 3.4vw, 2.6rem)/1.05 var(--t-titulo); letter-spacing: -0.035em; margin: 0 0 10px; }
.regua-cab p { margin: 0; color: var(--tinta-2); }
.regua-eixo { display: flex; justify-content: space-between; font: 400 .74rem/1 var(--t-dado); color: var(--tinta-2); margin: 0 0 6px; }
.regua > .regua-eixo { margin-left: calc(220px + 18px); margin-right: calc(150px + 18px); }
.eixo-hoje { color: var(--verde); font-weight: 500; }
.regua-linhas { list-style: none; margin: 0; padding: 0; }
.regua-linha { display: grid; grid-template-columns: 220px 1fr 150px; align-items: center; gap: 18px; padding: var(--e2) 0; border-top: 1px dashed var(--linha); }
.regua-linha:last-child { border-bottom: 1px dashed var(--linha); }
.regua-quem { display: flex; align-items: center; gap: 12px; color: var(--tinta); text-decoration: none; }
.regua-quem b { display: block; font: 600 .98rem/1.2 var(--t-titulo); }
.regua-quem small { font: 400 .74rem/1.3 var(--t-dado); color: var(--tinta-2); }
.regua-foto { width: 46px; height: 58px; object-fit: cover; border-radius: 3px; flex: none; }
.trilha { display: block; width: 100%; height: 44px; border-radius: 3px; }
.laudo .trilha { height: 56px; }
.trilha-cheio { fill: var(--verde-claro); }
.trilha-linha { fill: none; stroke: var(--verde); stroke-width: 2.4; vector-effect: non-scaling-stroke; }
.trilha-hoje { stroke: var(--verde); stroke-width: 3; vector-effect: non-scaling-stroke; }
.regua-linha .carimbo { justify-self: start; }
.regua-legenda { display: flex; flex-wrap: wrap; gap: var(--e1) var(--e3); margin-top: var(--e3); font-size: .85rem; color: var(--tinta-2); }
.regua-legenda p { margin: 0; display: flex; align-items: center; gap: 8px; }
.leg { display: inline-block; width: 26px; height: 12px; border-radius: 2px; }
.leg-vazio { background: repeating-linear-gradient(45deg, var(--papel-fundo) 0 4px, var(--hachura) 4px 6px); }
.leg-linha { height: 3px; background: var(--verde); }
.leg-hoje { width: 3px; height: 16px; background: var(--verde); }
@media (max-width: 760px) {
  .regua > .regua-eixo { margin: 0 0 6px; }
  .regua-linha { grid-template-columns: 1fr auto; gap: 8px 12px; }
  .regua-trilha { grid-column: 1 / -1; order: 3; }
  .regua-linha .carimbo { justify-self: end; }
}

/* Como sai o carimbo: folha de regras, não cartões */
.carimbos { margin: var(--e4) 0 var(--e5); border-top: 2px solid var(--tinta); }
.carimbo-caso { display: grid; grid-template-columns: 210px 1fr; gap: 18px; align-items: start; padding: var(--e3) 0; border-bottom: 1px dashed var(--linha); }
.carimbo-caso p { margin: 0; color: var(--tinta-2); }
.carimbo-caso .carimbo { justify-self: start; margin-top: 3px; }
.carimbo-caso-hoje { background: linear-gradient(90deg, var(--papel-fundo), transparent 85%); padding-left: 12px; margin-left: -12px; }
@media (max-width: 560px) { .carimbo-caso { grid-template-columns: 1fr; gap: 8px; } }

/* Tabela */
.tabela-rolo { width: min(1180px, calc(100vw - 32px)); margin: var(--e5) 0 var(--e2) 50%; transform: translateX(-50%); overflow-x: auto; background: var(--papel-claro); border-radius: var(--raio); box-shadow: var(--sombra); }
.tabela { border-collapse: collapse; width: 100%; min-width: 760px; font-size: .92rem; }
.tabela th, .tabela td { text-align: left; padding: 14px 16px; border-bottom: 1px dashed var(--linha); vertical-align: top; }
.tabela thead th { font: 800 .95rem/1.2 var(--t-titulo); border-bottom: 2px solid var(--tinta); }
.tabela thead th a { color: var(--tinta); text-decoration: none; }
.tabela tbody th { font-weight: 600; color: var(--tinta-2); position: sticky; left: 0; background: var(--papel-claro); min-width: 150px; }
.tabela td { font-family: var(--t-dado); font-size: .84rem; }
.tabela tr:last-child th, .tabela tr:last-child td { border-bottom: 0; }
.longo .tabela-nota { width: min(1180px, calc(100vw - 32px)); margin: 0 0 var(--e5) 50%; transform: translateX(-50%); font-size: .84rem; color: var(--tinta-2); }

/* As cinco */
.cinco { margin: var(--e4) 0 var(--e5); }
.cinco-item { display: grid; grid-template-columns: 150px 1fr; gap: var(--e3); padding: var(--e4) 0; border-top: 1px dashed var(--linha); }
.cinco-item:last-child { border-bottom: 1px dashed var(--linha); }
.cinco-foto img { width: 150px; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--raio); }
.cinco-txt h3 { margin: 0 0 6px; font: 800 1.25rem/1.2 var(--t-titulo); }
.cinco-txt h3 a { color: var(--tinta); text-decoration: none; }
.cinco-txt p { margin: 0 0 10px; }
.cinco-pe { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.mais { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.mais svg, .botao svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 520px) { .cinco-item { grid-template-columns: 96px 1fr; gap: 14px; } .cinco-foto img { width: 96px; } }

/* Fotos oficiais, embaixo */
.oficiais { display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--e2); margin: var(--e4) 0 var(--e5); }
.oficial { margin: 0; background: #fff; border-radius: var(--raio); padding: 10px; box-shadow: var(--sombra); }
.oficial-img { width: 100%; aspect-ratio: 1; object-fit: contain; }
.oficial figcaption { font-size: .8rem; line-height: 1.3; margin-top: 6px; }
.oficial figcaption a { font-weight: 600; display: block; }
.oficial figcaption span { color: var(--tinta-2); font-size: .72rem; }
@media (max-width: 640px) { .oficiais { grid-template-columns: repeat(3, 1fr); } }

/* Mini tabela das fichas */
.mini-tabela { margin: var(--e4) 0; background: var(--papel-claro); border-radius: var(--raio); padding: 6px 16px; box-shadow: var(--sombra); }
.mini-tabela table { border-collapse: collapse; width: 100%; font-size: .93rem; }
.mini-tabela th, .mini-tabela td { text-align: left; padding: 9px 0; border-bottom: 1px dashed var(--linha); vertical-align: top; }
.mini-tabela tr:last-child th, .mini-tabela tr:last-child td { border-bottom: 0; }
.mini-tabela th { font-weight: 600; color: var(--tinta-2); padding-right: 16px; width: 42%; }
.mini-tabela td { font-family: var(--t-dado); font-size: .86rem; }

/* Ficha */
.ficha-abre { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--e5); max-width: 1180px; margin: 0 auto; padding: var(--e4) clamp(16px, 4vw, 40px) var(--e2); align-items: start; }
.ficha-foto { margin: 0; position: sticky; top: 16px; }
.ficha-foto img { width: 100%; max-height: 82vh; object-fit: cover; border-radius: var(--raio); box-shadow: var(--sombra); }
.ficha-cab h1 { font: 900 clamp(2rem, 4.2vw, 3.4rem)/1.03 var(--t-titulo); letter-spacing: -0.035em; margin: 0 0 var(--e3); text-wrap: balance; }
.ficha-resumo { font-size: 1.12rem; margin: 0 0 var(--e4); }
.laudo { position: relative; background: var(--papel-claro); border-radius: var(--raio) var(--raio) 0 0; padding: 20px 20px 26px; box-shadow: var(--sombra); -webkit-mask: linear-gradient(#000 0 0) top / 100% calc(100% - 9px) no-repeat, conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) bottom / 18px 9px repeat-x; mask: linear-gradient(#000 0 0) top / 100% calc(100% - 9px) no-repeat, conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) bottom / 18px 9px repeat-x; }
.laudo-topo { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.laudo-topo p { margin: 0; flex: 1 1 200px; font-size: .95rem; color: var(--tinta-2); }
.laudo-trilha { margin-bottom: 14px; }
.laudo-trilha .regua-eixo { margin: 6px 0 0; }
.laudo-campos { display: grid; grid-template-columns: 1fr 1fr; gap: 0 22px; margin: 0; }
.laudo-campo { padding: 9px 0; border-top: 1px dashed var(--linha); display: flex; justify-content: space-between; gap: 10px; }
.laudo-campo dt { font-size: .86rem; color: var(--tinta-2); }
.laudo-campo dd { margin: 0; font: 500 .9rem/1.4 var(--t-dado); text-align: right; }
.laudo-campo dd.lacuna { color: var(--grafite); font-weight: 400; background: repeating-linear-gradient(45deg, var(--papel-fundo) 0 4px, #E4DCCB 4px 6px); padding: 0 8px; border-radius: 3px; }
.laudo-faixa { margin: 12px 0 0; font-size: .88rem; color: var(--tinta-2); }
.laudo-faixa b { font: 500 .88rem var(--t-dado); color: var(--tinta); }
.compra { display: flex; flex-wrap: wrap; gap: var(--e2); margin-top: var(--e3); }
.botao { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 20px; background: var(--verde); color: var(--papel-claro); border-radius: 8px; font-weight: 600; text-decoration: none; transition: background .2s; }
.botao:hover { background: var(--verde-escuro); color: #fff; }
.compra-fim { margin: var(--e3) 0 var(--e5); }
.ficha-oficial { margin: var(--e5) 0 var(--e3); display: grid; grid-template-columns: 180px 1fr; gap: 18px; align-items: center; }
.ficha-oficial img { background: #fff; border-radius: var(--raio); padding: 10px; box-shadow: var(--sombra); width: 180px; aspect-ratio: 1; object-fit: contain; }
.ficha-oficial figcaption { font-size: .9rem; color: var(--tinta-2); }
@media (max-width: 820px) {
  .ficha-abre { grid-template-columns: 1fr; }
  .ficha-foto { position: static; }
  .ficha-foto img { max-height: 62vh; width: 100%; }
}
@media (max-width: 460px) { .laudo-campos { grid-template-columns: 1fr; } .ficha-oficial { grid-template-columns: 110px 1fr; } .ficha-oficial img { width: 110px; } }

/* Situação */
.sit-abre { max-width: 52rem; margin: 0 auto; padding: var(--e4) clamp(16px, 4vw, 24px) 0; }
.sit-abre h1 { font: 900 clamp(2rem, 4.6vw, 3.6rem)/1.04 var(--t-titulo); letter-spacing: -0.035em; margin: var(--e5) 0 var(--e2); text-wrap: balance; }
.sit-fotos { display: grid; grid-template-columns: 1.25fr 1fr; gap: var(--e3); align-items: end; }
.sit-foto { position: relative; display: block; color: var(--papel-claro); text-decoration: none; }
.sit-foto img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--raio); box-shadow: var(--sombra); }
.sit-foto:nth-child(2) img { aspect-ratio: 1; }
.sit-foto span { position: absolute; left: 10px; bottom: 10px; right: 10px; background: rgba(30, 34, 48, .82); padding: 6px 10px; border-radius: 4px; font: 600 .82rem/1.3 var(--t-titulo); }
.sit-foto:hover { color: #fff; }

/* Selo, disclosure e vizinhos */
.selo { display: flex; gap: var(--e2); align-items: center; margin: var(--e6) 0 var(--e2); padding: var(--e3) 0; border-top: 2px solid var(--tinta); border-bottom: 1px dashed var(--linha); }
.selo-marca { width: 58px; height: 58px; flex: none; transform: rotate(-8deg); }
.selo-marca circle { fill: none; stroke: var(--verde); stroke-width: 2.5; }
.selo-marca circle + circle { stroke-width: 1.2; stroke-dasharray: 3 3; }
.selo-marca text { fill: var(--verde); font: 900 17px var(--t-titulo); }
.selo-tit { margin: 0 0 4px !important; font: 600 1rem/1.3 var(--t-titulo); }
.selo-aviso { margin: 0 !important; font-size: .9rem; color: var(--tinta-2); }
.disclosure { font-size: .85rem; color: var(--tinta-2); font-style: italic; }
.vizinhos { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: var(--e2); margin-top: var(--e5); }
.vizinhos a { display: flex; flex-direction: column; gap: 6px; font: 600 .82rem/1.25 var(--t-titulo); color: var(--tinta); text-decoration: none; }
.vizinhos img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 4px; }

.vazio { max-width: 40rem; margin: 0 auto; padding: 80px 20px; }
.vazio h1 { font: 900 2.4rem/1.1 var(--t-titulo); letter-spacing: -0.03em; }

.rodape { background: var(--tinta); color: #D9D4C8; margin-top: var(--e5); }
.rodape-in { max-width: 1180px; margin: 0 auto; padding: var(--e5) clamp(16px, 4vw, 40px); }
.rodape-marca { font: 600 1.3rem/1 var(--t-titulo); color: var(--papel); margin: 0 0 12px; }
.rodape-marca b { font-weight: 900; color: #7CC9B5; }
.rodape p { max-width: 44rem; margin: 0 0 14px; font-size: .95rem; }
.rodape-links { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.rodape a { color: #A9DCCD; }
.rodape-aviso { font-size: .82rem !important; color: #ABA697; }
.oficial-falta { display: grid; place-items: center; aspect-ratio: 1; font-size: .78rem; color: var(--grafite); text-align: center; background: repeating-linear-gradient(45deg, var(--papel-fundo) 0 4px, #E4DCCB 4px 6px); border-radius: 4px; padding: 6px; }
.ficha-oficial-falta { margin: var(--e5) 0 var(--e3); font-size: .9rem; color: var(--tinta-2); padding: 14px 16px; border: 1px dashed var(--linha); border-radius: var(--raio); }
.proposta { max-width: 52rem; margin: 0 auto var(--e4); text-align: center; font: 600 clamp(1.2rem, 2.4vw, 1.75rem)/1.3 var(--t-titulo); letter-spacing: -0.015em; color: var(--tinta); text-wrap: balance; }
.proposta strong { font-weight: 900; color: var(--verde); }
@media (max-width: 640px) { .proposta { padding: 0 16px; text-align: left; } }

/* Produto sem foto: o nome no lugar da imagem, sobre a mesma hachura da lacuna */
.sem-foto { display: grid; place-items: center; width: 100%; aspect-ratio: 4 / 5; padding: 10px; text-align: center; font: 600 .9rem/1.25 var(--t-titulo); color: var(--grafite); background: repeating-linear-gradient(45deg, var(--papel-fundo) 0 4px, #E4DCCB 4px 6px); border-radius: var(--raio); }
.cinco-foto .sem-foto { width: 150px; }
@media (max-width: 520px) { .cinco-foto .sem-foto { width: 96px; font-size: .74rem; } }
.sem-foto-grande { min-height: 280px; max-height: 62vh; font-size: clamp(1.2rem, 3vw, 2rem); box-shadow: var(--sombra); }
.volta { margin: var(--e5) 0 var(--e3); font: 600 .95rem/1.4 var(--t-titulo); }
