/* Agorgi — Photos multiples et descriptif : affichage public */
.agorgi-photos,
.agorgi-descriptif { margin: 56px 0 0; }
.agorgi-photos__title,
.agorgi-descriptif__title {
	margin: 0 0 22px; padding-bottom: 14px; border-bottom: 1px solid currentColor;
	font-size: 15px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; line-height: 1.3;
}
/* Même typographie que les paragraphes du site (14 px, #444, interligne 1,75), listes comprises */
.agorgi-descriptif .agorgi-descriptif__text { max-width: 760px; }
.agorgi-descriptif .agorgi-descriptif__text,
.agorgi-descriptif .agorgi-descriptif__text p,
.agorgi-descriptif .agorgi-descriptif__text li { font-size: 14px; line-height: 1.75; color: #444; }
.agorgi-descriptif .agorgi-descriptif__text ul,
.agorgi-descriptif .agorgi-descriptif__text ol { margin: 0 0 1.6em; padding-left: 1.3em; }
.agorgi-descriptif__text > :first-child { margin-top: 0; }
.agorgi-descriptif__text h3 { margin: 1.6em 0 .5em; font-size: 18px; }
.agorgi-descriptif__text h4 { margin: 1.4em 0 .4em; font-size: 16px; }

.agorgi-photos__grid {
	display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px;
	/* !important : les listes du thème ont une marge et un retrait de 20 px */
	margin: 0 !important; padding: 0 !important; list-style: none !important;
}
.agorgi-photos__grid--single { grid-template-columns: minmax(0, 1fr); }
.agorgi-photos__item { margin: 0 !important; padding: 0 !important; }
.agorgi-photos__item::before, .agorgi-photos__item::marker { content: none; }
.agorgi-photos__link { display: block; overflow: hidden; background: #f2f2f2; aspect-ratio: 4 / 3; }
.agorgi-photos__grid--single .agorgi-photos__link { aspect-ratio: auto; }
.agorgi-photos__img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; transition: transform .5s ease; }
.agorgi-photos__grid--single .agorgi-photos__img { height: auto !important; }
.agorgi-photos__link:hover .agorgi-photos__img { transform: scale(1.03); }
.agorgi-photos__link:focus-visible { outline: 2px solid #111; outline-offset: 3px; }
.agorgi-photos__caption { margin: 8px 0 0; font-size: 13px; line-height: 1.5; color: #555; }
@media (max-width: 980px) { .agorgi-photos__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; } }
@media (max-width: 560px) { .agorgi-photos__grid { grid-template-columns: minmax(0, 1fr); gap: 16px; } }
@media (prefers-reduced-motion: reduce) { .agorgi-photos__img { transition: none; } }

/* Agrandissement */
.agorgi-photos-lightbox {
	width: 100vw; max-width: 100vw; height: 100vh; max-height: 100vh; height: 100dvh; max-height: 100dvh;
	margin: 0; padding: 0; border: 0; background: rgba(12, 12, 12, .96); color: #fff; overflow: hidden;
}
.agorgi-photos-lightbox::backdrop { background: rgba(12, 12, 12, .96); }
.agorgi-photos-lightbox__figure {
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	box-sizing: border-box; width: 100%; height: 100%; margin: 0; padding: 64px 76px 40px;
}
.agorgi-photos-lightbox__img { display: block; max-width: 100%; max-height: calc(100% - 40px); width: auto; height: auto; object-fit: contain; touch-action: pan-y; user-select: none; }
.agorgi-photos-lightbox__caption { min-height: 20px; margin: 14px 0 0; font-size: 13px; line-height: 1.5; text-align: center; color: #ddd; }
.agorgi-photos-lightbox button {
	position: absolute; display: flex; align-items: center; justify-content: center;
	width: 48px; height: 48px; padding: 0; border: 1px solid rgba(255,255,255,.35); border-radius: 0;
	background: rgba(0,0,0,.35); color: #fff; font-size: 24px; line-height: 1; cursor: pointer; box-shadow: none;
}
.agorgi-photos-lightbox button:hover,
.agorgi-photos-lightbox button:focus { background: rgba(255,255,255,.14); color: #fff; }
.agorgi-photos-lightbox button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.agorgi-photos-lightbox__close { top: 12px; right: 12px; }
.agorgi-photos-lightbox__prev { left: 14px; top: 50%; transform: translateY(-50%); }
.agorgi-photos-lightbox__next { right: 14px; top: 50%; transform: translateY(-50%); }
.agorgi-photos-lightbox[data-single] .agorgi-photos-lightbox__prev,
.agorgi-photos-lightbox[data-single] .agorgi-photos-lightbox__next { display: none; }
.agorgi-photos-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 720px) {
	.agorgi-photos-lightbox__figure { padding: 60px 12px 84px; }
	.agorgi-photos-lightbox__prev,
	.agorgi-photos-lightbox__next { top: auto; bottom: 18px; transform: none; }
	.agorgi-photos-lightbox__prev { left: calc(50% - 58px); }
	.agorgi-photos-lightbox__next { right: calc(50% - 58px); }
}
html.agorgi-photos-open { overflow: hidden; }
