/* Guia da praia — so nas paginas com guia verificado (_data/guia-praias/). Gerado por _scripts/gen_praias_v2.py (guide_html). 15/10/2026
 * Assenta em css/praia-v2.css (main.pv2: --gold-l --txt --mut --line). Sem classes com "-grid"/"-card" (style.css ate 768 px).
 * Uma voz: o texto de abertura em Fraunces. O resto e uma tabela de consulta, discreta. Avisos oficiais em ambar, no topo.
 */
.pv2 .pvg-lead{font-family:'Fraunces',Georgia,serif; font-weight:300; font-size:clamp(1.12rem,1.6vw,1.28rem); line-height:1.66; color:rgba(255,255,255,.94); max-width:60ch; letter-spacing:-.003em;}
.pvg-for{display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; margin:20px 0 26px;}
.pvg-for > span{font-size:.82rem; color:var(--mut);}
.pvg-for ul{display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; list-style:none;}
.pvg-for li{padding:4px 11px; border-radius:999px; font-size:.8rem; color:#fff; border:1px solid rgba(232,201,122,.38); background:rgba(232,201,122,.06);}

main.pv2 > .pvg{padding-top:clamp(36px,5vw,56px) !important; padding-bottom:0 !important;}
.pvg__in{max-width:1120px; margin:0 auto; border-top:1px solid var(--line); padding-top:clamp(28px,4vw,44px);}
.pv2 .pvg__h{margin:0 0 18px; font-size:clamp(1.45rem,2.6vw,1.9rem);}
.pvg-list{margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:clamp(24px,4vw,56px);}
.pvg-row{display:grid; grid-template-columns:minmax(9.5rem,34%) minmax(0,1fr); gap:14px; align-items:baseline; padding:13px 0; border-bottom:1px solid var(--line);}
.pvg-row dt{display:flex; align-items:center; gap:9px; font-size:.84rem; color:var(--mut);}
.pvg-row dt svg{flex:0 0 18px; width:18px; height:18px; stroke:var(--gold-l); fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; transform:translateY(3px);}
.pvg-row dd{margin:0; font-size:.94rem; line-height:1.5; color:#fff;}
.pvg-row--warn{grid-column:1 / -1; grid-template-columns:9.5rem minmax(0,1fr); margin-bottom:6px; padding:14px 16px; border:1px solid rgba(224,122,38,.45); border-radius:4px 18px 4px 18px; background:rgba(224,122,38,.08);}
.pvg-row--warn dt{color:#f3a766;}
.pvg-row--warn dt svg{stroke:#f3a766;}

.pvg-tips{margin-top:clamp(28px,4vw,40px);}
.pv2 .pvg__h3{margin:0 0 14px; font-family:'Bodoni Moda',Georgia,serif; font-weight:600; font-size:1.2rem; color:#fff;}
.pvg-tips ul{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.6vw,32px); margin:0; padding:0; list-style:none;}
.pvg-tips li{position:relative; padding-top:16px; font-size:.92rem; line-height:1.6; color:var(--txt);}
.pvg-tips li::before{content:''; position:absolute; left:0; top:0; width:32px; height:2px; background:var(--gold-l); border-radius:2px;}

.pvg-src{margin-top:clamp(28px,4vw,40px); border:1px solid var(--line); border-radius:4px 22px 4px 22px; background:rgba(255,255,255,.025);}
.pvg-src summary{display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 10px; padding:15px 18px; cursor:pointer; list-style:none; font-size:.9rem; color:var(--txt);}
.pvg-src summary::-webkit-details-marker{display:none;}
.pvg-src summary::after{content:'+'; margin-left:auto; font-size:1.1rem; line-height:1; color:var(--gold-l);}
.pvg-src[open] summary::after{content:'–';}
.pvg-src summary:focus-visible{outline:2px solid var(--gold-l); outline-offset:3px; border-radius:6px;}
.pvg-src__n{font-family:'Fraunces',Georgia,serif; font-size:1.35rem; line-height:1; color:var(--gold-l);}
.pvg-src__d{font-size:.8rem; color:var(--mut);}
.pvg-src ul{margin:0; padding:2px 18px 4px; list-style:none; columns:2; column-gap:28px;}
.pvg-src li{break-inside:avoid; padding:5px 0; font-size:.76rem; line-height:1.4; overflow-wrap:anywhere;}
.pvg-src li a{color:var(--mut); text-decoration:none;}
.pvg-src li a:hover{color:#fff; text-decoration:underline;}
.pvg-src p{margin:8px 18px 16px; font-size:.78rem; line-height:1.5; color:var(--mut);}

@media (max-width:900px){ .pvg-list{grid-template-columns:minmax(0,1fr);} .pvg-tips ul{grid-template-columns:minmax(0,1fr); gap:18px;} }
@media (max-width:560px){
  .pvg-row{grid-template-columns:minmax(0,1fr); gap:4px; padding:12px 0;}
  .pvg-row dd{padding-left:27px;}
  .pvg-src ul{columns:1;}
  .pvg-src summary{padding:14px 15px;}
}
