/* Logo Pour Toujours Pro animé (repris de l'ancienne page) : fournisseurs/pro-logo.svg dans un div.pf-pro-logo.
   Pages Pour les professionnels et À propos; fournisseurs/pt-logo-pro.js lance l'animation quand il devient visible. */
.pf-pro-logo {
	width: min(290px, 70vw);
	margin: 8px 0 22px;
	color: #000;
}

.pf-pro-logo #ptp-logo {
	display: block;
	width: 100%;
	height: auto;
	overflow: hidden;
}

.pf-pro-logo #ptp-logo g { transform-box: fill-box; }
.pf-pro-logo #ptp-logo.ptp-ready .ptp-pen { stroke-dasharray: 1; stroke-dashoffset: 1; }
.pf-pro-logo #ptp-logo.ptp-ready .ptp-gem-wipe { transform: translateY(115px); }
.pf-pro-logo #ptp-logo.ptp-ready .ptp-sparks { opacity: 0; transform: scale(0.6); transform-origin: center; }
.pf-pro-logo #ptp-logo.ptp-ready .ptp-word { transform: translateY(260px); }
.pf-pro-logo #ptp-logo.ptp-ready .ptp-tag { opacity: 0; transform: scale(0) rotate(-14deg); transform-origin: center; }
.pf-pro-logo #ptp-logo.ptp-go .ptp-pen { animation: ptp-draw 0.75s cubic-bezier(0.6, 0, 0.2, 1) forwards; }
.pf-pro-logo #ptp-logo.ptp-go .ptp-gem-wipe { animation: ptp-up 0.38s cubic-bezier(0.3, 0, 0.2, 1) 0.55s forwards; }
.pf-pro-logo #ptp-logo.ptp-go .ptp-sparks { animation: ptp-spark 0.32s cubic-bezier(0.3, 1.6, 0.5, 1) 0.82s forwards; }
.pf-pro-logo #ptp-logo.ptp-go .ptp-pour { animation: ptp-up 0.62s cubic-bezier(0.2, 0.9, 0.2, 1) 0.32s forwards; }
.pf-pro-logo #ptp-logo.ptp-go .ptp-toujours { animation: ptp-up 0.62s cubic-bezier(0.2, 0.9, 0.2, 1) 0.46s forwards; }
.pf-pro-logo #ptp-logo.ptp-go .ptp-tag { animation: ptp-pop 0.5s cubic-bezier(0.3, 1.2, 0.5, 1) 1.05s forwards; }

@keyframes ptp-draw { to { stroke-dashoffset: 0; } }
@keyframes ptp-up { to { transform: translateY(0); } }
@keyframes ptp-spark { to { opacity: 1; transform: scale(1); } }
@keyframes ptp-pop {
	0% { opacity: 0; transform: scale(0) rotate(-14deg); }
	55% { opacity: 1; transform: scale(1.18) rotate(4deg); }
	80% { opacity: 1; transform: scale(0.96) rotate(-1deg); }
	100% { opacity: 1; transform: scale(1) rotate(0); }
}

@media (prefers-reduced-motion: reduce) {
	.pf-pro-logo #ptp-logo.ptp-ready :is(.ptp-pen, .ptp-gem-wipe, .ptp-sparks, .ptp-word, .ptp-tag) {
		animation: none !important;
		opacity: 1 !important;
		stroke-dashoffset: 0 !important;
	}

	.pf-pro-logo #ptp-logo.ptp-ready :is(.ptp-gem-wipe, .ptp-sparks, .ptp-word, .ptp-tag) {
		transform: none !important;
	}
}
