/**
 * Header C'BAU — logo carré, taille intermédiaire (ni énorme ni minuscule).
 */

.site-header .header-main {
	--main-height-desktop: 7rem; /* ~112px */
	--main-height-mobile: 7.25rem; /* ~80px */
}

/* Topbar vide (menus activés sans contenu) — filet de sécurité CSS */
.site-header .header-topbar:not(:has(.site-navigation li, .site-header-text > *)) {
	display: none !important;
}

.site-header .header-main .site-header-inner {
	height: auto !important;
	min-height: var(--main-height-mobile);
	padding-block: 0.375rem;
	align-items: center;
	overflow: visible;
}

@media screen and (min-width: 1024.02px) {
	.site-header .header-main .site-header-inner {
		min-height: var(--main-height-desktop);
		padding-block: 0.5rem;
	}
}

.site-header .site-brand {
	flex-shrink: 0;
	line-height: 0;
}

.site-header .site-brand a {
	display: inline-flex;
	align-items: center;
}

/* Entre 167px (trop grand) et ~44px (trop petit) */
.site-header .site-brand img {
	width: auto !important;
	max-width: 6.25rem;
	max-height: 7rem;
	height: auto !important;
	display: block;
	object-fit: contain;
}

@media screen and (min-width: 1024.02px) {
	.site-header .site-brand img {
		max-width: 6.5rem;
		max-height: 7.25rem;
	}
}

.site-header .header-main .site-header-inner > .column:has(.site-brand) {
	flex-shrink: 0;
	align-self: center;
	padding-inline-end: 0.625rem;
}

.site-drawer .site-brand img {
	width: auto !important;
	max-width: 5rem;
	max-height: 3.75rem;
	height: auto !important;
	display: block;
}

.site-footer .footer-brand-wrapper .site-brand img {
	width: auto !important;
	max-width: 9rem;
	max-height: 4.5rem;
	height: auto !important;
	display: block;
}

.site-footer .footer-brand-wrapper .site-brand img.logo-light,
.site-footer .footer-brand-wrapper .site-brand img.logo-dark {
	display: none !important;
}

.site-footer .footer-brand-wrapper .site-brand img.cbeau-logo {
	display: block !important;
}

.site-footer .footer-brand-wrapper .site-footer-social {
	margin-top: 1rem;
}

.site-footer .footer-brand-wrapper .site-footer-social .site-social {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 0.5rem;
	--social-size: 2.25rem;
}

.site-footer .footer-card-icons .item img {
	display: block;
	height: 1.125rem;
	width: auto;
	max-width: none;
}

.site-footer .footer-card-icons .item:last-child img {
	height: 1.35rem;
}

/* Footer — Liens utiles : double largeur pour les libellés longs */
@media screen and (min-width: 1024.02px) {
	.site-footer .footer-widgets-wrapper .cbeau-footer-legal {
		flex: 2 1 0%;
		min-width: 14rem;
		max-width: 22rem;
	}
}

.site-footer .footer-widgets-wrapper .cbeau-footer-legal .menu a {
	white-space: normal;
	line-height: 1.35;
}
