/* ==========================================================================
   SwissKH, corrections de base sur le markup Elementor
   ========================================================================== */

/* Titres rendus en <p> (surtitres, libellés) : pas d'espacement de paragraphe du kit. */
.elementor-widget-heading p.elementor-heading-title,
.elementor-widget-heading span.elementor-heading-title { margin: 0; }

/* Dernier paragraphe d'un bloc texte : pas de marge résiduelle. */
.elementor-widget-text-editor > *:last-child,
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Listes d'icônes sans icône : pas de retrait. */
.elementor-icon-list-item .elementor-icon-list-icon:empty { display: none; }

/* Lien fléché (classe skh-link-arrow sur un widget Titre avec lien) : flèche dessinée en CSS. */
.skh-link-arrow a::after {
	content: ""; width: 16px; height: 16px; flex: none; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='square'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='square'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .35s var(--skh-ease);
}
.skh-link-arrow a:hover::after { transform: translateX(4px); }
.skh-link-arrow .elementor-heading-title { line-height: 1.2; }

/* Tuiles décors : pastille flèche et grilles mobiles. */
.skh-decor-arrow .elementor-icon { width: 36px; height: 36px; display: grid; place-items: center; }
.skh-decor-arrow .elementor-icon svg { width: 15px; height: 15px; }
@media (max-width: 960px) {
	.e-con.skh-decor-xl { grid-row: span 1; aspect-ratio: 4 / 3; }
}
