/* LFA Social Float — styles front */
.lfasf,
.lfasf * { box-sizing: border-box; }

.lfasf {
	position: fixed;
	bottom: 18px;
	z-index: 99990;
	display: flex;
	flex-direction: column;
	align-items: center;
	--lfasf-main: #16a34a;
	--lfasf-fab: 60px;
	--lfasf-net: 50px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* ---- Positions (classe posée par le JS selon l'appareil) ---- */
.lfasf.lfasf--right  { right: 18px; left: auto; align-items: flex-end; }
.lfasf.lfasf--left   { left: 18px; right: auto; align-items: flex-start; }
.lfasf.lfasf--center { left: 50%; right: auto; transform: translateX(-50%); align-items: center; }

/* ---- Bouton principal (taille forcée : indépendante du thème) ---- */
.lfasf__fab {
	width: var(--lfasf-fab) !important;
	height: var(--lfasf-fab) !important;
	min-width: var(--lfasf-fab) !important;
	min-height: var(--lfasf-fab) !important;
	max-width: var(--lfasf-fab) !important;
	max-height: var(--lfasf-fab) !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	border: 0 !important;
	border-radius: 50% !important;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	cursor: pointer;
	background: var(--lfasf-main);
	color: #fff;
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	box-shadow: 0 10px 26px -6px rgba(0,0,0,.35), 0 2px 8px -2px rgba(0,0,0,.2);
	transition: transform .3s cubic-bezier(.34,1.56,.64,1), background .2s;
	-webkit-tap-highlight-color: transparent;
}
.lfasf__fab:hover { transform: scale(1.06); }
.lfasf__fab:focus-visible { outline: 3px solid rgba(255,255,255,.7); outline-offset: 2px; }
.lfasf__fab svg { width: 30px; height: 30px; }
.lfasf__fab img { width: 60%; height: 60%; object-fit: contain; border-radius: 50%; }

.lfasf__fab-open,
.lfasf__fab-close {
	position: absolute;
	display: grid;
	place-items: center;
	transition: opacity .2s, transform .35s cubic-bezier(.34,1.56,.64,1);
}
.lfasf__fab-close { opacity: 0; transform: rotate(-45deg) scale(.6); }
.lfasf.is-open .lfasf__fab { background: #1a1d24; }
.lfasf.is-open .lfasf__fab-open { opacity: 0; transform: rotate(45deg) scale(.6); }
.lfasf.is-open .lfasf__fab-close { opacity: 1; transform: none; }

/* ---- Liste des réseaux ---- */
.lfasf__list {
	position: absolute;
	bottom: calc(var(--lfasf-fab) + 16px);
	display: flex;
	pointer-events: none;
}
.lfasf.lfasf--right  .lfasf__list { right: calc((var(--lfasf-fab) - var(--lfasf-net)) / 2); }
.lfasf.lfasf--left   .lfasf__list { left: calc((var(--lfasf-fab) - var(--lfasf-net)) / 2); }
.lfasf.lfasf--center .lfasf__list { left: 50%; transform: translateX(-50%); }

.lfasf__net {
	width: var(--lfasf-net) !important;
	height: var(--lfasf-net) !important;
	min-width: var(--lfasf-net) !important;
	min-height: var(--lfasf-net) !important;
	max-width: var(--lfasf-net) !important;
	max-height: var(--lfasf-net) !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-sizing: border-box;
	display: grid;
	place-items: center;
	text-decoration: none;
	color: #fff;
	position: relative;
	box-shadow: 0 6px 16px -4px rgba(0,0,0,.35);
	opacity: 0;
	transform: scale(.3) translateY(10px);
	transition: transform .34s cubic-bezier(.34,1.56,.64,1), opacity .24s, filter .15s;
	pointer-events: none;
}
.lfasf__net .lfasf__ico { display: grid; place-items: center; width: 26px; height: 26px; }
.lfasf__net svg { width: 26px; height: 26px; }
.lfasf.is-open .lfasf__net { opacity: 1; transform: none; pointer-events: auto; }
.lfasf__net:hover { filter: brightness(1.08); transform: scale(1.1); }
.lfasf__net:focus-visible { outline: 3px solid rgba(0,0,0,.35); outline-offset: 2px; }

/* Info-bulle */
.lfasf__tip {
	position: absolute;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	background: #1a1d24;
	color: #fff;
	padding: 6px 10px;
	border-radius: 8px;
	opacity: 0;
	pointer-events: none;
	transition: opacity .15s;
	box-shadow: 0 4px 12px -4px rgba(0,0,0,.4);
}
.lfasf__net:hover .lfasf__tip,
.lfasf__net:focus-visible .lfasf__tip { opacity: 1; }

/* ===== Style A : empilement vertical ===== */
.lfasf--style-stack .lfasf__list { flex-direction: column-reverse; gap: 12px; align-items: center; }
.lfasf--style-stack.lfasf--right  .lfasf__tip { right: calc(var(--lfasf-net) + 10px); }
.lfasf--style-stack.lfasf--left   .lfasf__tip { left: calc(var(--lfasf-net) + 10px); }
.lfasf--style-stack.lfasf--center .lfasf__tip { bottom: calc(var(--lfasf-net) + 8px); }

/* ===== Style B : barre horizontale ===== */
.lfasf--style-bar .lfasf__list {
	flex-direction: row;
	gap: 12px;
	bottom: calc((var(--lfasf-fab) - var(--lfasf-net)) / 2);
	align-items: center;
}
.lfasf--style-bar.lfasf--right  .lfasf__list { right: calc(var(--lfasf-fab) + 12px); left: auto; flex-direction: row-reverse; }
.lfasf--style-bar.lfasf--left   .lfasf__list { left: calc(var(--lfasf-fab) + 12px); right: auto; }
.lfasf--style-bar.lfasf--center .lfasf__list { bottom: calc(var(--lfasf-fab) + 12px); flex-direction: row; }
.lfasf--style-bar .lfasf__tip { bottom: calc(var(--lfasf-net) + 8px); }

/* ===== Style C : éventail (positions calculées par le JS) ===== */
.lfasf--style-arc .lfasf__list {
	flex-direction: row;
	gap: 0;
	bottom: calc((var(--lfasf-fab) - var(--lfasf-net)) / 2);
}
.lfasf--style-arc .lfasf__net { position: absolute; }
.lfasf--style-arc .lfasf__tip { bottom: calc(var(--lfasf-net) + 8px); }

/* ---- Stagger d'apparition ---- */
.lfasf.is-open .lfasf__net:nth-child(1) { transition-delay: .02s; }
.lfasf.is-open .lfasf__net:nth-child(2) { transition-delay: .05s; }
.lfasf.is-open .lfasf__net:nth-child(3) { transition-delay: .08s; }
.lfasf.is-open .lfasf__net:nth-child(4) { transition-delay: .11s; }
.lfasf.is-open .lfasf__net:nth-child(5) { transition-delay: .14s; }
.lfasf.is-open .lfasf__net:nth-child(6) { transition-delay: .17s; }
.lfasf.is-open .lfasf__net:nth-child(7) { transition-delay: .20s; }
.lfasf.is-open .lfasf__net:nth-child(8) { transition-delay: .23s; }

/* ---- Pulsation du bouton (attire l'œil, s'arrête à l'ouverture) ---- */
.lfasf--pulse:not(.is-open) .lfasf__fab {
	animation: lfasf-pulse 2.2s ease-out infinite;
}
@keyframes lfasf-pulse {
	0% {
		box-shadow: 0 10px 26px -6px rgba(0,0,0,.35), 0 2px 8px -2px rgba(0,0,0,.2),
			0 0 0 0 color-mix(in srgb, var(--lfasf-main) 55%, transparent);
	}
	70% {
		box-shadow: 0 10px 26px -6px rgba(0,0,0,.35), 0 2px 8px -2px rgba(0,0,0,.2),
			0 0 0 18px color-mix(in srgb, var(--lfasf-main) 0%, transparent);
	}
	100% {
		box-shadow: 0 10px 26px -6px rgba(0,0,0,.35), 0 2px 8px -2px rgba(0,0,0,.2),
			0 0 0 0 color-mix(in srgb, var(--lfasf-main) 0%, transparent);
	}
}

/* ---- Visibilité par appareil (seuils standard) ---- */
@media (min-width: 1025px) { .lfasf--sd-0 { display: none !important; } }
@media (min-width: 601px) and (max-width: 1024px) { .lfasf--st-0 { display: none !important; } }
@media (max-width: 600px) { .lfasf--sm-0 { display: none !important; } }

@media (prefers-reduced-motion: reduce) {
	.lfasf__fab,
	.lfasf__fab-open,
	.lfasf__fab-close,
	.lfasf__net { transition-duration: .01ms !important; }
	.lfasf--pulse:not(.is-open) .lfasf__fab { animation: none !important; }
}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}button.pswp__button{box-shadow:none!important;background-image:url(//www.lfa-services.com/wp-content/plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png)!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:0 -44px}button.pswp__button--zoom:hover{background-position:-88px 0}/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */.pswp{display:none;position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;-ms-touch-action:none;touch-action:none;z-index:1500;-webkit-text-size-adjust:100%;-webkit-backface-visibility:hidden;outline:0}.pswp *{-webkit-box-sizing:border-box;box-sizing:border-box}.pswp img{max-width:none}.admin-bar .pswp{height:calc(100% - var(--wp-admin--admin-bar--height,0px));top:var(--wp-admin--admin-bar--height,0)}.pswp--animate_opacity{opacity:.001;will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4, 0, .22, 1);transition:opacity 333ms cubic-bezier(.4, 0, .22, 1)}.pswp--open{display:block}.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--zoomed-in .pswp__img{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--dragging .pswp__img{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp__bg{position:absolute;left:0;top:0;width:100%;height:100%;background:#000;opacity:0;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;will-change:opacity}.pswp__scroll-wrap{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden}.pswp__container,.pswp__zoom-wrap{-ms-touch-action:none;touch-action:none;position:absolute;left:0;right:0;top:0;bottom:0}.pswp__container,.pswp__img{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.pswp__zoom-wrap{position:absolute;width:100%;-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 333ms cubic-bezier(.4, 0, .22, 1);transition:transform 333ms cubic-bezier(.4, 0, .22, 1)}.pswp__bg{will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4, 0, .22, 1);transition:opacity 333ms cubic-bezier(.4, 0, .22, 1)}.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{-webkit-transition:none;transition:none}.pswp__container,.pswp__zoom-wrap{-webkit-backface-visibility:hidden}.pswp__item{position:absolute;left:0;right:0;top:0;bottom:0;overflow:hidden}.pswp__img{position:absolute;width:auto;height:auto;top:0;left:0}.pswp__img--placeholder{-webkit-backface-visibility:hidden}.pswp__img--placeholder--blank{background:#222}.pswp--ie .pswp__img{width:100%!important;height:auto!important;left:0;top:0}.pswp__error-msg{position:absolute;left:0;top:50%;width:100%;text-align:center;font-size:14px;line-height:16px;margin-top:-8px;color:#ccc}.pswp__error-msg a{color:#ccc;text-decoration:underline}/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */.pswp__button{width:44px;height:44px;position:relative;background:0 0;cursor:pointer;overflow:visible;-webkit-appearance:none;display:block;border:0;padding:0;margin:0;float:left;opacity:.75;-webkit-transition:opacity .2s;transition:opacity .2s;-webkit-box-shadow:none;box-shadow:none}.pswp__button:focus,.pswp__button:hover{opacity:1}.pswp__button:active{outline:0;opacity:.9}.pswp__button::-moz-focus-inner{padding:0;border:0}.pswp__ui--over-close .pswp__button--close{opacity:1}.pswp__button,.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{background:url(//www.lfa-services.com/wp-content/plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png) 0 0 no-repeat;background-size:264px 88px;width:44px;height:44px}@media (-webkit-min-device-pixel-ratio:1.1),(-webkit-min-device-pixel-ratio:1.09375),(min-resolution:105dpi),(min-resolution:1.1dppx){.pswp--svg .pswp__button,.pswp--svg .pswp__button--arrow--left:before,.pswp--svg .pswp__button--arrow--right:before{background-image:url(//www.lfa-services.com/wp-content/plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.svg)}.pswp--svg .pswp__button--arrow--left,.pswp--svg .pswp__button--arrow--right{background:0 0}}.pswp__button--close{background-position:0 -44px}.pswp__button--share{background-position:-44px -44px}.pswp__button--fs{display:none}.pswp--supports-fs .pswp__button--fs{display:block}.pswp--fs .pswp__button--fs{background-position:-44px 0}.pswp__button--zoom{display:none;background-position:-88px 0}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__button--zoom{background-position:-132px 0}.pswp--touch .pswp__button--arrow--left,.pswp--touch .pswp__button--arrow--right{visibility:hidden}.pswp__button--arrow--left,.pswp__button--arrow--right{background:0 0;top:50%;margin-top:-50px;width:70px;height:100px;position:absolute}.pswp__button--arrow--left{left:0}.pswp__button--arrow--right{right:0}.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{content:'';top:35px;background-color:rgba(0,0,0,.3);height:30px;width:32px;position:absolute}.pswp__button--arrow--left:before{left:6px;background-position:-138px -44px}.pswp__button--arrow--right:before{right:6px;background-position:-94px -44px}.pswp__counter,.pswp__share-modal{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pswp__share-modal{display:block;background:rgba(0,0,0,.5);width:100%;height:100%;top:0;left:0;padding:10px;position:absolute;z-index:1600;opacity:0;-webkit-transition:opacity .25s ease-out;transition:opacity .25s ease-out;-webkit-backface-visibility:hidden;will-change:opacity}.pswp__share-modal--hidden{display:none}.pswp__share-tooltip{z-index:1620;position:absolute;background:#fff;top:56px;border-radius:2px;display:block;width:auto;right:44px;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.25);box-shadow:0 2px 5px rgba(0,0,0,.25);-webkit-transform:translateY(6px);-ms-transform:translateY(6px);transform:translateY(6px);-webkit-transition:-webkit-transform .25s;transition:transform .25s;-webkit-backface-visibility:hidden;will-change:transform}.pswp__share-tooltip a{display:block;padding:8px 12px;color:#000;text-decoration:none;font-size:14px;line-height:18px}.pswp__share-tooltip a:hover{text-decoration:none;color:#000}.pswp__share-tooltip a:first-child{border-radius:2px 2px 0 0}.pswp__share-tooltip a:last-child{border-radius:0 0 2px 2px}.pswp__share-modal--fade-in{opacity:1}.pswp__share-modal--fade-in .pswp__share-tooltip{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.pswp--touch .pswp__share-tooltip a{padding:16px 12px}a.pswp__share--facebook:before{content:'';display:block;width:0;height:0;position:absolute;top:-12px;right:15px;border:6px solid transparent;border-bottom-color:#fff;-webkit-pointer-events:none;-moz-pointer-events:none;pointer-events:none}a.pswp__share--facebook:hover{background:#3e5c9a;color:#fff}a.pswp__share--facebook:hover:before{border-bottom-color:#3e5c9a}a.pswp__share--twitter:hover{background:#55acee;color:#fff}a.pswp__share--pinterest:hover{background:#ccc;color:#ce272d}a.pswp__share--download:hover{background:#ddd}.pswp__counter{position:relative;left:0;top:0;height:44px;font-size:13px;line-height:44px;color:#fff;opacity:.75;padding:0 10px;margin-inline-end:auto}.pswp__caption{position:absolute;left:0;bottom:0;width:100%;min-height:44px}.pswp__caption small{font-size:11px;color:#bbb}.pswp__caption__center{text-align:left;max-width:420px;margin:0 auto;font-size:13px;padding:10px;line-height:20px;color:#ccc}.pswp__caption--empty{display:none}.pswp__caption--fake{visibility:hidden}.pswp__preloader{width:44px;height:44px;position:absolute;top:0;left:50%;margin-left:-22px;opacity:0;-webkit-transition:opacity .25s ease-out;transition:opacity .25s ease-out;will-change:opacity;direction:ltr}.pswp__preloader__icn{width:20px;height:20px;margin:12px}.pswp__preloader--active{opacity:1}.pswp__preloader--active .pswp__preloader__icn{background:url(//www.lfa-services.com/wp-content/plugins/woocommerce/assets/css/photoswipe/default-skin/preloader.gif) 0 0 no-repeat}.pswp--css_animation .pswp__preloader--active{opacity:1}.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn{-webkit-animation:clockwise .5s linear infinite;animation:clockwise .5s linear infinite}.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut{-webkit-animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite;animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite}.pswp--css_animation .pswp__preloader__icn{background:0 0;opacity:.75;width:14px;height:14px;position:absolute;left:15px;top:15px;margin:0}.pswp--css_animation .pswp__preloader__cut{position:relative;width:7px;height:14px;overflow:hidden}.pswp--css_animation .pswp__preloader__donut{-webkit-box-sizing:border-box;box-sizing:border-box;width:14px;height:14px;border:2px solid #fff;border-radius:50%;border-left-color:transparent;border-bottom-color:transparent;position:absolute;top:0;left:0;background:0 0;margin:0}@media screen and (max-width:1024px){.pswp__preloader{position:relative;left:auto;top:auto;margin:0;float:right}}@-webkit-keyframes clockwise{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes clockwise{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes donut-rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}50%{-webkit-transform:rotate(-140deg);transform:rotate(-140deg)}100%{-webkit-transform:rotate(0);transform:rotate(0)}}@keyframes donut-rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}50%{-webkit-transform:rotate(-140deg);transform:rotate(-140deg)}100%{-webkit-transform:rotate(0);transform:rotate(0)}}.pswp__ui{-webkit-font-smoothing:auto;visibility:visible;opacity:1;z-index:1550}.pswp__top-bar{position:absolute;left:0;top:0;height:44px;width:100%;display:flex;justify-content:flex-end}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right,.pswp__caption,.pswp__top-bar{-webkit-backface-visibility:hidden;will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4, 0, .22, 1);transition:opacity 333ms cubic-bezier(.4, 0, .22, 1)}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right{visibility:visible}.pswp__caption,.pswp__top-bar{background-color:rgba(0,0,0,.5)}.pswp__ui--fit .pswp__caption,.pswp__ui--fit .pswp__top-bar{background-color:rgba(0,0,0,.3)}.pswp__ui--idle .pswp__top-bar{opacity:0}.pswp__ui--idle .pswp__button--arrow--left,.pswp__ui--idle .pswp__button--arrow--right{opacity:0}.pswp__ui--hidden .pswp__button--arrow--left,.pswp__ui--hidden .pswp__button--arrow--right,.pswp__ui--hidden .pswp__caption,.pswp__ui--hidden .pswp__top-bar{opacity:.001}.pswp__ui--one-slide .pswp__button--arrow--left,.pswp__ui--one-slide .pswp__button--arrow--right,.pswp__ui--one-slide .pswp__counter{display:none}.pswp__element--disabled{display:none!important}.pswp--minimal--dark .pswp__top-bar{background:0 0}