/*
 * Call Me Gems — pied de page
 * Updated: 2026-08-09 18:20 (Europe/Zurich)
 *
 * Bande claire (certifications) + corps sombre (colonnes) + barre basse.
 */

.cmg-footer {
	background: var(--cmg-ink);
	color: var(--cmg-footer-tx);
	font-family: var(--cmg-sans);
	font-size: 13px;
	line-height: 1.7;
}

/* Bande claire : éthique + certifications. */
.cmg-footer__trust {
	background: var(--cmg-ivory);
	padding: 34px 20px;
	text-align: center;
}

.cmg-footer__ethic {
	margin: 0 0 22px;
	color: var(--cmg-ink);
	font-family: var(--cmg-serif);
	font-size: 22px;
	letter-spacing: 0.02em;
}

.cmg-footer__certs {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 26px 44px;
}

.cmg-footer__certs li {
	margin: 0;
	line-height: 0;
}

.cmg-footer__certs img {
	display: block;
	height: 40px;
	width: auto;
	max-width: 100%;
	opacity: 0.9;
	transition: opacity 0.2s ease;
}

.cmg-footer__certs a:hover img,
.cmg-footer__certs a:focus img {
	opacity: 1;
}

/* Corps sombre : colonnes alignées à gauche. */
.cmg-footer__main {
	max-width: var(--cmg-max);
	margin: 0 auto;
	padding: 56px var(--cmg-gutter) 36px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 40px 80px;
}

.cmg-footer__col {
	flex: 0 1 220px;
	min-width: 0;
	text-align: left;
}

.cmg-footer__title {
	margin: 0 0 16px;
	color: var(--cmg-footer-hd);
	font-family: var(--cmg-serif);
	font-weight: 500;
	font-size: 20px;
}

.cmg-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.cmg-footer a {
	color: var(--cmg-footer-tx);
	text-decoration: none;
	transition: color 0.2s ease;
}

.cmg-footer a:hover,
.cmg-footer a:focus {
	color: var(--cmg-gold);
}

.cmg-footer__contact {
	margin: 0 0 8px;
}

.cmg-footer__contact strong {
	color: var(--cmg-footer-hd);
	font-weight: 600;
}

/* Barre basse. */
.cmg-footer__bottom {
	max-width: var(--cmg-max);
	margin: 0 auto;
	padding: 22px var(--cmg-gutter) 28px;
	border-top: 1px solid var(--cmg-footer-rule);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	flex-wrap: wrap;
}

.cmg-footer__swiss {
	height: 38px;
	width: auto;
	flex: 0 0 auto;
}

.cmg-footer__copy {
	margin: 0;
	flex: 1 1 auto;
	text-align: center;
	font-size: 12px;
}

/* Instagram : pastille de marque (WebP de la bibliothèque médias). Le fichier
   source a un léger fond, on le rogne via un cadre arrondi en overflow hidden ;
   l'échelle est uniforme (scale), la proportion 1:1 reste intacte. */
.cmg-footer__ig {
	flex: 0 0 auto;
	display: inline-flex;
	width: 34px;
	height: 34px;
	border-radius: 8px;
	overflow: hidden;
	line-height: 0;
	transition: transform 0.2s ease;
}

.cmg-footer__ig img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.12);
}

.cmg-footer__ig:hover,
.cmg-footer__ig:focus {
	transform: scale(1.08);
}

/* ------------------------------------------------------------------ mobile */

@media (max-width: 600px) {

	.cmg-footer__main {
		padding: 40px 24px 28px;
		gap: 32px;
	}

	.cmg-footer__col {
		flex: 1 1 100%;
	}

	.cmg-footer__certs {
		gap: 22px 30px;
	}

	.cmg-footer__certs img {
		height: 34px;
	}

	.cmg-footer__bottom {
		flex-direction: column;
		text-align: center;
	}
}
