/* Pontos riscados : styles partagés entre la Bibliothèque et les pages Orixás. */
.pontos-page .content-block[id], .ponto-section[id], .ponto-card[id] {scroll-margin-top: 110px;}
.pontos-page .article-intro p {margin: 0 0 16px;}
.pontos-page .article-intro p:last-child {margin-bottom: 0;}
.ponto-toc {display: block;}
.ponto-toc h2 {font-family: Georgia, serif;}
.ponto-toc a {white-space: normal;}
.pontos-page a:not(.btn), .ponto-section a:not(.btn) {color: #0b5a3c; text-underline-offset: .2em;}
.pontos-page a:not(.btn):visited, .ponto-section a:not(.btn):visited {color: #4d5140;}
.pontos-page a:focus-visible, .ponto-section a:focus-visible, .ponto-dialog button:focus-visible {outline: 3px solid #a27014; outline-offset: 4px;}
.pontos-page h3 {color: var(--green-dark); font-family: Georgia, serif; font-size: 23px; margin: 28px 0 14px;}
.ponto-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 24px 0;}
.ponto-card {margin: 0; min-width: 0; padding: 16px; background: #fffefa; border: 1px solid #d9cda6; border-radius: 12px;}
.ponto-enlarge {display: block; border-radius: 8px; text-align: center; text-decoration: none;}
.ponto-enlarge img {display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain;}
.ponto-enlarge span {display: inline-block; margin: 3px 0 12px; font-size: 13px; text-decoration: underline;}
.ponto-enlarge:hover {background: #f7f2e6;}
.ponto-card figcaption {text-align: center; line-height: 1.6;}
.ponto-card figcaption strong {display: block; color: var(--green-dark); font-family: Georgia, serif; font-size: 21px; margin-bottom: 7px;}
.ponto-card figcaption p {font-size: 14px; margin-bottom: 10px;}
.ponto-card figcaption a {font-size: 14px; font-weight: 700;}
.ponto-glyphs {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;}
.ponto-glyphs .ponto-card {padding: 12px;}
.ponto-glyphs .ponto-card strong {font-size: 17px;}
.ponto-on-orixa {max-width: 760px; margin-left: auto; margin-right: auto;}
.ponto-on-orixa:has(> :only-child) {grid-template-columns: minmax(0, 400px); justify-content: center;}
.ponto-table {width: 100%; border-collapse: collapse; margin: 0 0 26px; font-size: 16px; line-height: 1.65;}
.ponto-table th, .ponto-table td {text-align: left; vertical-align: top; padding: 13px 14px; border-bottom: 1px solid #d9d5c6; overflow-wrap: anywhere;}
.ponto-table thead th {background: var(--green-dark); color: #fff8df;}
.ponto-table tbody th {width: 35%; font-weight: 600; color: #163f2c;}
.ponto-table tbody tr:nth-child(even) {background: #f1eee5;}
.ponto-dialog {width: min(760px, 94vw); max-height: 94dvh; box-sizing: border-box; background: #fffefa; border: 2px solid var(--gold); border-radius: 16px; padding: 18px; color: var(--green-dark);}
.ponto-dialog::backdrop {background: rgba(0, 20, 10, .85);}
.ponto-dialog-bar {display: flex; align-items: center; justify-content: space-between; gap: 14px;}
.ponto-dialog h2 {font: 700 20px Georgia, serif; margin: 0;}
.ponto-dialog button {padding: 10px 14px; border: 1px solid #0b5a3c; border-radius: 8px; background: #fff; color: #042c19; font: inherit; cursor: pointer;}
.ponto-dialog img {display: block; width: 100%; height: min(72dvh, 680px); object-fit: contain;}
.ponto-skip {position: absolute; left: 16px; top: -100px; padding: 12px; z-index: 200; background: #fff; color: #042c19;}
.ponto-skip:focus {top: 16px;}
@media (max-width: 620px) {
 .ponto-grid {grid-template-columns: 1fr; gap: 16px;}
 .ponto-glyphs {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px;}
 .ponto-glyphs .ponto-card {padding: 6px;}
 .ponto-glyphs .ponto-card strong {font-size: 15px;}
 .ponto-table {font-size: 15px;}
 .ponto-table th, .ponto-table td {padding: 11px 8px;}
 .ponto-table tbody th {width: 37%;}
 .pontos-page .content-block[id], .ponto-section[id], .ponto-card[id] {scroll-margin-top: 155px;}
}
@media print {
 .ponto-enlarge span, .ponto-dialog, .ponto-skip {display: none;}
 .ponto-card, .ponto-table tr {break-inside: avoid;}
 .ponto-grid {grid-template-columns: repeat(2, minmax(0, 1fr));}
}

.ponto-card-wide {grid-column: 1 / -1;}
.ponto-card-wide .ponto-enlarge img {aspect-ratio: 1000 / 520;}
