/**
 * Layout — conteneurs, sidebars, footer sombre Bitelo, retour en haut.
 */

.bt-theme .container {
	max-width: var(--bt-container-width);
}

.bt-theme #main-content {
	padding-top: var(--bt-spacing-lg);
	padding-bottom: var(--bt-spacing-xl);
}

/* ---- Sidebar : widgets en cartes arrondies ---- */
.bt-theme .et_pb_extra_column_sidebar .widget,
.bt-theme .et_pb_widget_area .widget {
	background: var(--bt-color-surface);
	border: 1px solid var(--bt-color-border);
	border-radius: var(--bt-radius-lg);
	box-shadow: var(--bt-shadow-sm);
	padding: var(--bt-spacing-lg);
	margin-bottom: var(--bt-spacing-lg);
}

.bt-theme .widget .widgettitle,
.bt-theme .widget .widget-title {
	font-size: var(--bt-font-size-lg);
	font-weight: 600;
	color: var(--bt-color-heading);
	letter-spacing: -0.01em;
	text-transform: none;
	padding-bottom: var(--bt-spacing-sm);
	margin-bottom: var(--bt-spacing-md);
	border-bottom: 2px solid var(--bt-color-accent);
	display: block;
}

.bt-theme .widget ul li {
	padding: 0.4rem 0;
	border-bottom: 1px solid var(--bt-color-border);
}

.bt-theme .widget ul li:last-child {
	border-bottom: 0;
}

.bt-theme .widget ul li a {
	color: var(--bt-color-text);
	transition: color var(--bt-transition-fast), padding-left var(--bt-transition-fast);
}

.bt-theme .widget ul li a:hover {
	color: var(--bt-color-accent);
	padding-left: 4px;
}

/* ---- Widget « Suivez-nous » (et_social_followers, HTML artisanal) ----
   Carte Bitelo : les libellés sont des <h3> dans le contenu, il faut
   les ramener à une taille de lien ; les <p> vides et <br> parasites
   du markup sont neutralisés. */
.bt-theme .widget_et_social_followers {
	background: var(--bt-color-surface);
	border: 1px solid var(--bt-color-border);
	border-radius: var(--bt-radius-lg);
	box-shadow: var(--bt-shadow-sm);
	padding: var(--bt-spacing-lg);
	overflow: hidden;
}

.bt-theme .widget_et_social_followers .widgettitle {
	background: transparent !important;
	color: var(--bt-color-heading);
	font-size: var(--bt-font-size-lg);
	font-weight: 600;
	letter-spacing: 0;
	padding: 0 0 var(--bt-spacing-sm);
	margin: 0 0 var(--bt-spacing-sm);
	border-bottom: 2px solid var(--bt-color-accent);
}

.bt-theme .widget_et_social_followers .widget_list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bt-theme .widget_et_social_followers .widget_list li {
	align-items: center;
	padding: 0.65rem 0;
	border-bottom: 1px solid var(--bt-color-border);
}

.bt-theme .widget_et_social_followers .widget_list li:last-child {
	border-bottom: 0;
}

.bt-theme .widget_et_social_followers h3 {
	font-size: var(--bt-font-size-base) !important;
	font-weight: 500;
	letter-spacing: 0;
	margin: 0 0 0 14px !important;
	line-height: 1.3;
	transition: color var(--bt-transition-fast);
}

.bt-theme .widget_et_social_followers li:hover h3 {
	color: var(--bt-color-accent);
}

.bt-theme .widget_et_social_followers .widget_list p,
.bt-theme .widget_et_social_followers .widget_list br {
	display: none;
}

.bt-theme .widget_et_social_followers .et-extra-icon {
	flex-shrink: 0;
	transition: transform var(--bt-transition-fast);
}

.bt-theme .widget_et_social_followers li:hover .et-extra-icon {
	transform: translateY(-2px);
}

/* ---- Footer : sombre, arrondi vers le haut, accents bleus ---- */
.bt-theme #footer {
	background: var(--bt-color-dark);
	color: #b2b2b2;
	border-top: 0;
	border-radius: var(--bt-radius-xl) var(--bt-radius-xl) 0 0;
	margin-top: var(--bt-spacing-xl);
}

.bt-theme #footer .widget {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.bt-theme #footer .widgettitle,
.bt-theme #footer .widget-title {
	color: #ffffff;
	border-bottom-color: var(--bt-color-accent);
}

.bt-theme #footer a {
	color: #b2b2b2;
	transition: color var(--bt-transition-fast);
}

.bt-theme #footer a:hover {
	color: #ffffff;
}

.bt-theme #footer .widget ul li {
	border-bottom-color: rgba(255, 255, 255, 0.08);
}

.bt-theme #footer-bottom {
	background: rgba(0, 0, 0, 0.3);
	padding: var(--bt-spacing-md) 0;
	font-size: var(--bt-font-size-sm);
}

/* Tout le bas de footer sur une seule ligne :
   copyright/mentions à gauche, menu + icônes sociales à droite */
.bt-theme #footer-bottom .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
}

.bt-theme #footer-info {
	color: #5e5e5e;
	margin: 0;
	float: none;
}

.bt-theme #footer-bottom #footer-nav {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	margin: 0;
	float: none;
}

.bt-theme #footer-bottom #footer-nav > ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0 0.25rem;
}

.bt-theme #footer-bottom .et-extra-social-icons {
	display: flex;
	align-items: center;
	margin: 0;
	float: none;
}

/* Liens du footer-nav : affichage simple, comme le design d'origine */
.bt-theme #footer-nav ul li a {
	color: #eaeaea;
	font-size: var(--bt-font-size-sm);
	transition: color var(--bt-transition-fast);
}

.bt-theme #footer-nav ul li a:hover {
	color: var(--bt-color-accent);
}

/* Icônes sociales */
.bt-theme .et-extra-social-icons .et-extra-social-icon {
	transition: transform var(--bt-transition-fast), opacity var(--bt-transition-fast);
}

.bt-theme .et-extra-social-icons .et-extra-social-icon:hover {
	transform: translateY(-2px);
	opacity: 0.85;
}

/* ---- Retour en haut (natif Extra, restylé pilule bleue) ---- */
.bt-theme #back_to_top {
	background-color: var(--bt-color-accent);
	border-radius: var(--bt-radius-pill);
	box-shadow: var(--bt-shadow-md);
	transition: background-color var(--bt-transition-fast), transform var(--bt-transition-fast),
		box-shadow var(--bt-transition-fast);
}

.bt-theme #back_to_top:hover {
	background-color: var(--bt-color-accent-hover);
	transform: translateY(-3px);
	box-shadow: var(--bt-shadow-lg);
}

.bt-theme.bt-hide-back-to-top #back_to_top {
	display: none !important;
}
