/* ==========================================================================
   Thème DailyBul — Centre Daily-Bul & C°
   Chargé après themes/default/assets/pawtucket/css/main.css : ce fichier ne
   contient que les surcharges de la charte graphique.

   Charte :
     orange Archibul  #F28C28  couleur principale du catalogue en ligne
     vert du logo     #009846  couleur secondaire, par petites touches
     noir             #000000
     blanc            #FFFFFF
     gris neutre      #B3B3B3  secondaire (bordures, séparateurs)
     polices          Arial, Aptos, Calibri

   Accessibilité : l'orange sur fond blanc n'est pas assez contrasté pour du
   texte courant (2,4:1). Il sert donc de fond (avec texte noir, 8,6:1), de
   soulignement et de bordure ; les textes et liens restent en noir.
   ========================================================================== */

:root {
	--db-orange: #F28C28;
	--db-vert:   #009846;
	--db-noir:   #000000;
	--db-blanc:  #FFFFFF;
	--db-gris:   #B3B3B3;
	--db-police: Arial, Aptos, Calibri, "Helvetica Neue", Helvetica, sans-serif;
}

/* --------------------------------------------------------------------------
   Polices : main.css emploie Lato un peu partout, parfois en !important.
   Les polices d'icônes (Glyphicons, Font Awesome) sont épargnées.
   -------------------------------------------------------------------------- */
body,
body *:not(.glyphicon):not([class^="glyphicon-"]):not([class*=" glyphicon-"]):not(.fa):not([class^="fa-"]):not([class*=" fa-"]) {
	font-family: var(--db-police) !important;
}
body {
	color: var(--db-noir);
	background-color: var(--db-blanc);
}

/* --------------------------------------------------------------------------
   Liens
   -------------------------------------------------------------------------- */
a,
a:hover,
a:focus {
	color: var(--db-noir);
}
a:hover,
a:focus {
	text-decoration: underline;
	text-decoration-color: var(--db-orange);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}
div.browseFacetItem a:hover,
.detail H6 a,
a.readmore-js-toggle,
#footer ul a {
	color: var(--db-noir);
}

/* --------------------------------------------------------------------------
   En-tête et navigation
   -------------------------------------------------------------------------- */
.navbar {
	border-bottom: 4px solid var(--db-orange);
	box-shadow: none;
	-webkit-box-shadow: none;
}
/* main.css fixe .navbar-brand à 200px et étire l'image à width:100% :
   le logo doit garder ses proportions (735×589). */
.navbar-brand {
	width: auto;
	height: auto;
	padding-top: 6px;
	padding-bottom: 6px;
}
.navbar-brand img {
	width: auto !important;
	height: 96px !important;
	max-width: none;
	margin-top: 0 !important;
}
/* Menu, recherche et compte centrés verticalement sur la hauteur du logo */
@media (min-width: 768px) {
	.navbar .container.menuBar {
		display: flex;
		align-items: center;
	}
	.navbar .container.menuBar:before,
	.navbar .container.menuBar:after {
		display: none;
	}
	.navbar .container.menuBar > .navbar-collapse {
		flex: 1 1 auto;
	}
}
@media (max-width: 767px) {
	.navbar-brand img {
		height: 64px !important;
	}
	.navbar-toggle {
		margin-top: 21px;
	}
}
.navbar-default .navbar-nav > li > a {
	color: var(--db-noir);
	border-bottom: 3px solid transparent;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
	color: var(--db-noir);
	background-color: transparent;
	border-bottom-color: var(--db-orange);
	text-decoration: none;
}
.navbar .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus,
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
	color: var(--db-noir);
	background-color: transparent;
	border-bottom-color: var(--db-vert);
}
.navbar .form-control {
	border: 1px solid var(--db-gris);
}

/* --------------------------------------------------------------------------
   Formulaires et boutons
   -------------------------------------------------------------------------- */
.form-control:focus {
	border-color: var(--db-orange);
	box-shadow: 0 0 0 2px rgba(242, 140, 40, 0.35);
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.open .dropdown-toggle.btn-default,
.browse .btn,
.sets .btn {
	background-color: var(--db-orange);
	color: var(--db-noir);
}
.btn-default a,
.browse .btn a,
.sets .btn a {
	color: var(--db-noir);
}

/* --------------------------------------------------------------------------
   Navigation par facettes
   -------------------------------------------------------------------------- */
.filterMenuFacetList li.active {
	background-color: var(--db-orange);
}
.filterMenuFacetList li.active,
.filterMenuFacetList li.active a {
	color: var(--db-noir);
}

/* --------------------------------------------------------------------------
   Séparateurs et pied de page
   -------------------------------------------------------------------------- */
hr {
	border-top-color: var(--db-gris);
}

/* --------------------------------------------------------------------------
   Pied de page (views/pageFormat/pageFooter.php), d'après dailybulandco.be :
   bandeau de couleur avec coordonnées, don et réseaux sociaux, puis bande
   blanche des soutiens institutionnels. Les logos partenaires restent sur
   fond blanc et ne sont pas recolorés (chartes des institutions).
   -------------------------------------------------------------------------- */
#footer {
	margin: 40px 0 0 0;
	padding: 0;
	border-top: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--db-noir);
}
#footer a,
#footer ul a {
	color: var(--db-noir);
	text-decoration: underline;
}
#footer ul li {
	padding: 0;
}
.dbFooterMain {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 24px 40px;
	padding: 32px 30px;
	background-color: var(--db-orange);
}
.dbFooterCol {
	flex: 1 1 220px;
}
.dbFooterTitle {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 6px;
}
.dbFooterContact address {
	margin: 0;
	font-style: normal;
}
.dbFooterContact .fa {
	width: 1.2em;
}
.dbFooterActions {
	text-align: center;
}
#footer a.dbFooterDon {
	display: inline-block;
	padding: 8px 22px;
	background-color: var(--db-noir);
	color: var(--db-blanc);
	font-weight: bold;
	text-decoration: none;
	border: 2px solid var(--db-noir);
}
#footer a.dbFooterDon:hover,
#footer a.dbFooterDon:focus {
	background-color: var(--db-blanc);
	color: var(--db-noir);
}
#footer ul.dbFooterSocial {
	margin: 14px 0 0 0;
	font-size: 24px;
}
#footer ul.dbFooterSocial li {
	padding: 0 6px;
}
#footer ul.dbFooterSocial a {
	text-decoration: none;
}
#footer ul.dbFooterSocial a:hover,
#footer ul.dbFooterSocial a:focus {
	color: var(--db-blanc);
}
.dbFooterLegal {
	text-align: right;
	font-size: 13px;
}
.dbFooterSoutien {
	padding: 22px 30px 26px 30px;
	background-color: var(--db-blanc);
	border-top: 1px solid var(--db-gris);
	text-align: center;
}
.dbFooterSoutienTitre {
	font-size: 13px;
	margin-bottom: 12px;
}
#footer ul.dbFooterLogos {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 20px 48px;
	margin: 0;
}
#footer ul.dbFooterLogos li {
	padding: 0;
}
#footer ul.dbFooterLogos img {
	width: auto !important;
	height: 56px !important;
	max-width: 100%;
}
@media (max-width: 767px) {
	.dbFooterMain {
		flex-direction: column;
		text-align: center;
		padding: 26px 16px;
	}
	.dbFooterLegal {
		text-align: center;
	}
	#footer ul.dbFooterLogos img {
		height: 44px !important;
	}
}
