/* Carrousel « en arc » — voir inc/album-arc.php */
/* Couper ce qui dépasse à droite et à gauche (sinon défilement horizontal de toute la page).
   Sélecteur renforcé + !important : la règle « overflow » des conteneurs Elementor passe après sinon. */
.elementor .e-con.album-arc { overflow-x: clip !important; overflow-y: visible !important; }
@supports not (overflow: clip) { .elementor .e-con.album-arc { overflow: hidden !important; } }
.album-arc-carrousel { --arc-bleu: #153e75; --arc-orange: #f39718; position: relative; width: 100%; }
.album-arc-carrousel .swiper { overflow: visible; padding: 30px 0 150px; cursor: grab; }
.album-arc-carrousel .swiper:active { cursor: grabbing; }
.album-arc-carrousel .swiper-slide { transform-origin: 50% 100%; will-change: transform, opacity; transition-property: transform, opacity; }
.album-arc-carrousel .swiper-slide-image {
	display: block; width: 100%; aspect-ratio: 720 / 1000; object-fit: cover;
	border-radius: 1px 3px 3px 1px; background: #fff;
	/* tranche des pages à droite et en bas, puis ombre portée */
	box-shadow: 1px 1px 0 #f4f4f4, 2px 2px 0 #d9dde3, 3px 3px 0 #f4f4f4, 4px 4px 0 #cfd4db,
		0 16px 34px rgba(10, 30, 70, .25), 0 3px 8px rgba(10, 30, 70, .15);
	transition: box-shadow .4s ease;
}
/* Reliure (pli à gauche) + léger reflet sur la couverture */
.album-arc-carrousel .swiper-slide-inner { position: relative; margin: 0; }
.album-arc-carrousel .swiper-slide-inner::after {
	content: ""; position: absolute; inset: 0; pointer-events: none; border-radius: 1px 3px 3px 1px;
	background:
		linear-gradient(90deg, rgba(0, 0, 0, .28) 0, rgba(255, 255, 255, .22) 1.6%, rgba(0, 0, 0, .14) 3.2%, rgba(255, 255, 255, .08) 4.6%, transparent 7%),
		linear-gradient(115deg, rgba(255, 255, 255, .18) 0, rgba(255, 255, 255, 0) 38%, rgba(255, 255, 255, 0) 62%, rgba(255, 255, 255, .08) 100%);
}
.album-arc-carrousel .arc-actif .swiper-slide-image {
	box-shadow: 1px 1px 0 #f4f4f4, 2px 2px 0 #d9dde3, 3px 3px 0 #f4f4f4, 4px 4px 0 #cfd4db,
		0 26px 50px rgba(10, 30, 70, .34), 0 4px 10px rgba(10, 30, 70, .18);
}
.album-arc-carrousel .elementor-image-carousel-caption { display: none; }

/* Centre : flèche + client + usage de la carte active */
.arc-centre {
	position: relative; z-index: 0; margin: -110px auto 0; padding-bottom: 10px;
	display: flex; flex-direction: column; align-items: center;
	text-align: center; font-family: Poppins, sans-serif; pointer-events: none;
}
.arc-centre .arc-pointe { width: 0; height: 0; border: 8px solid transparent; border-bottom: 11px solid var(--arc-orange); border-top: 0; margin-bottom: 10px; }
.arc-centre .arc-nom { position: relative; font: italic 900 24px/1.05 Poppins, sans-serif; text-transform: uppercase; color: var(--arc-bleu); max-width: 190px; }
.arc-centre .arc-usage { position: relative; margin-top: 6px; font: 700 11px/1.2 Poppins, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--arc-orange); }
.arc-centre .arc-change { animation: arc-change .45s cubic-bezier(.22, 1, .36, 1); }
@keyframes arc-change { from { opacity: 0; transform: translateY(8px); } }

@media (max-width: 767px) {
	.album-arc-carrousel .swiper { padding: 20px 0 110px; }
	.arc-centre { margin-top: -80px; }
	.arc-centre .arc-nom { font-size: 18px; max-width: 150px; }
}
@media (prefers-reduced-motion: reduce) {
	.arc-centre .arc-change { animation: none; }
}
