/*
 * Agenda – The Events Calendar 6 (vues V2) aux couleurs du site.
 * Jaune #FFC400, gris-bleu #364A54, fond #F2F6F7, police Barlow.
 */

.tribe-common,
.tribe-events {
	--tec-font-family-sans-serif: 'Barlow', sans-serif;
	--tec-color-accent-primary: #FFC400;
	--tec-color-accent-primary-hover: #e6b000;
	--tec-color-accent-primary-active: #e6b000;
	--tec-color-accent-primary-background: rgba(255, 196, 0, .12);
	--tec-color-button-primary: #FFC400;
	--tec-color-button-primary-hover: #e6b000;
	--tec-color-button-primary-active: #e6b000;
	--tec-color-link-accent: #364A54;
	--tec-color-link-accent-hover: #FFC400;
	--tec-color-text-primary: #364A54;
	--tec-color-text-events-title: #364A54;
	--tec-color-border-active: #FFC400;
	--tec-color-icon-active: #FFC400;
	--tec-color-background-secondary: #F2F6F7;
}

/* Titre « Agenda » (réglage « HTML avant ») */
.tribe-events-before-html {
	display: block !important;
	margin-bottom: 30px;
}
.tribe-events-before-html .container.slider {
	margin-top: 0 !important;
	padding: 0;
	max-width: none;
}
.tribe-events-before-html .col-lg-12 {
	margin-bottom: 0 !important;
	padding: 0;
}
.agenda-titre__ligne {
	width: 100%;
	display: block;
	height: 2px;
	margin-bottom: 30px;
}
.tribe-events-before-html h2 {
	color: #FFC400;
	font-weight: 700;
}

/* Conteneur : espace sous l'en-tête du site */
.tribe-events-view,
#tribe-events-pg-template,
.tribe-events-pg-template {
	padding-top: 130px !important;
}
.tribe-events .tribe-events-l-container {
	padding-top: 0 !important;
}
/*
 * Largeur : même conteneur que le reste du site (.container du pied de page :
 * 1400px max, 80px de marge intérieure), ce qui laisse la place à la barre « Accès rapide ».
 */
.tribe-events-view .tribe-common-l-container,
#tribe-events-pg-template,
.tribe-events-pg-template {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 1400px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 80px !important;
	padding-right: 80px !important;
}
@media (max-width: 991px) {
	.tribe-events-view .tribe-common-l-container,
	#tribe-events-pg-template,
	.tribe-events-pg-template {
		padding-left: 40px !important;
		padding-right: 80px !important;
	}
}
@media (max-width: 767px) {
	.tribe-events-view .tribe-common-l-container,
	#tribe-events-pg-template,
	.tribe-events-pg-template {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

/* Barre de recherche */
.tribe-events .tribe-events-c-events-bar {
	background: #F2F6F7;
	border: 0;
}
.tribe-common .tribe-common-c-btn,
.tribe-common a.tribe-common-c-btn,
.tribe-events .tribe-events-c-events-bar__search-button {
	background-color: #FFC400 !important;
	color: #fff !important;
	border-radius: 0;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: .5px;
}
.tribe-common .tribe-common-c-btn:hover,
.tribe-common .tribe-common-c-btn:focus {
	background-color: #364A54 !important;
}
.tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after {
	background-color: #FFC400;
}

/* Barre de navigation du mois */
.tribe-events .tribe-events-c-top-bar__nav-link {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #FFC400;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.tribe-events .tribe-events-c-top-bar__nav-link,
.tribe-events .tribe-events-c-top-bar__nav-link:hover,
.tribe-events .tribe-events-c-top-bar__nav-link:focus,
.tribe-events .tribe-events-c-top-bar__nav-link:active {
	color: #fff !important;
	background: #FFC400 !important;
	opacity: 1 !important;
}
.tribe-events .tribe-events-c-top-bar__nav-link {
	border-radius: 50% !important;
}
.tribe-events .tribe-events-c-top-bar__nav-link:hover,
.tribe-events .tribe-events-c-top-bar__nav-link:focus-visible {
	background: #364A54 !important;
}
/* Flèche sans mois/page suivant(e) : bouton désactivé */
.tribe-events button.tribe-events-c-top-bar__nav-link[disabled],
.tribe-events button.tribe-events-c-top-bar__nav-link[disabled]:hover {
	background: #FFC400 !important;
	opacity: .35 !important;
	cursor: default;
}

/* Le sélecteur de date doit passer au-dessus de la liste (sinon l'événement survolé le recouvre) */
.tribe-events .tribe-events-header {
	z-index: 50 !important;
}
.tribe-events .tribe-events-c-top-bar__datepicker-container {
	z-index: 60 !important;
}
.tribe-events .tribe-events-c-top-bar__nav-link-icon-svg {
	width: 9px;
	height: 14px;
}
.tribe-events .tribe-events-c-top-bar__nav-link-icon-svg path {
	fill: #fff !important;
}
/* Le thème donne une largeur fixe aux li de navigation de l'ancien calendrier */
.tribe-events .tribe-events-c-top-bar__nav-list {
	flex-direction: row;
}
/* Le thème positionne tous les <nav> en absolu (menu principal) : on remet les flèches dans la barre */
.tribe-events nav.tribe-events-c-top-bar__nav,
.tribe-events nav.tribe-events-c-nav {
	position: static !important;
	left: auto !important;
	top: auto !important;
	width: auto !important;
	height: auto !important;
	transform: none !important;
}
.tribe-events .tribe-events-c-top-bar__nav {
	display: flex !important;
	align-items: center;
	margin-right: 14px;
}
.tribe-events .tribe-events-c-top-bar__nav-list-item {
	width: auto !important;
	float: none !important;
	margin: 0 3px !important;
}
.tribe-events .tribe-events-c-top-bar__today-button {
	border-color: #FFC400;
	color: #364A54;
}
.tribe-events .tribe-events-c-top-bar__datepicker-button {
	color: #364A54;
	font-weight: 700;
}

/* En-tête des jours : bandeau jaune comme l'ancien calendrier */
.tribe-events .tribe-events-calendar-month__header {
	background: #FFC400;
}
.tribe-events .tribe-events-calendar-month__header-column {
	padding: 12px 0;
	text-align: center;
}
.tribe-events .tribe-events-calendar-month__header-column-title {
	display: block;
	padding: 0 !important;
	text-align: center !important;
}
.tribe-events .tribe-events-calendar-month__header-column-title {
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 1px;
	text-align: center;
}
/* Nom complet du jour (LUNDI…) à la place de l'initiale, comme l'ancien calendrier */
@media (min-width: 768px) {
	.tribe-events .tribe-events-calendar-month__header-column-title > span[aria-hidden="true"] {
		display: none;
	}
	.tribe-events .tribe-events-calendar-month__header-column-title > .screen-reader-text {
		position: static !important;
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
		overflow: visible !important;
		clip: auto !important;
		clip-path: none !important;
		white-space: nowrap;
		margin-left: 15px !important;
	}
}

/* Cases des jours */
.tribe-events .tribe-events-calendar-month__day-date {
	color: #364A54;
	font-size: 14px;
	font-weight: 700;
}
.tribe-events .tribe-events-calendar-month__day--past .tribe-events-calendar-month__day-date,
.tribe-events .tribe-events-calendar-month__day--other-month .tribe-events-calendar-month__day-date {
	color: #b9b9b9;
}
.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
	display: inline-block;
	background: #FFC400;
	color: #fff;
	padding: 2px 8px;
}
.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-link {
	color: #fff;
}
.tribe-events .tribe-events-calendar-month__day--current {
	background: rgba(255, 196, 0, .08);
}

/* Événements dans le mois : étiquettes gris-bleu */
.tribe-events .tribe-events-calendar-month__calendar-event {
	background: #364A54;
	padding: 6px 8px;
	margin-bottom: 4px;
}
.tribe-events .tribe-events-calendar-month__calendar-event-datetime,
.tribe-events .tribe-events-calendar-month__calendar-event-datetime time,
.tribe-events .tribe-events-calendar-month__calendar-event-datetime span {
	color: #fff !important;
	opacity: .8;
	font-size: 11px;
}
.tribe-events .tribe-events-calendar-month__calendar-event-title,
.tribe-events .tribe-events-calendar-month__calendar-event-title-link {
	color: #fff !important;
	font-size: 12px;
	font-weight: 600;
}
.tribe-events .tribe-events-calendar-month__calendar-event:hover {
	background: #FFC400;
}
.tribe-events .tribe-events-calendar-month__multiday-event-bar-inner {
	background: #364A54;
	color: #fff;
}

/* Vue mobile : pastilles */
.tribe-events .tribe-events-calendar-month__mobile-events-icon--event {
	background-color: #FFC400;
}
.tribe-events .tribe-events-calendar-month__day-cell--selected,
.tribe-events .tribe-events-calendar-month__day-cell--selected:hover {
	background-color: #FFC400;
}

/* Vue liste */
.tribe-events .tribe-events-calendar-list__month-separator-text {
	color: #FFC400;
	font-weight: 700;
	text-transform: uppercase;
}
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
	color: #364A54;
}
.tribe-events .tribe-events-calendar-list__event-title-link {
	color: #364A54;
}
.tribe-events .tribe-events-calendar-list__event-title-link:hover {
	color: #FFC400;
	border-color: #FFC400;
}

/* Bouton « S'abonner au calendrier » / « Ajouter au calendrier » */
.tribe-events .tribe-events-c-subscribe-dropdown__button,
.tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button {
	background: #FFC400 !important;
	border-color: #FFC400 !important;
	color: #fff !important;
	border-radius: 0;
	text-transform: uppercase;
	font-weight: 700;
}
.tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-text,
.tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button svg path {
	color: #fff !important;
	fill: #fff !important;
}

/*
 * Fiche événement
 */
.single-tribe_events #tribe-events-content.tribe-events-single {
	max-width: none;
	margin: 0;
	padding: 0 0 20px;
}

/* Lien retour */
.single-tribe_events .tribe-events-back {
	margin: 0 0 25px;
}
.single-tribe_events .tribe-events-back a {
	color: #364A54;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .5px;
	text-decoration: none;
}
.single-tribe_events .tribe-events-back a:hover {
	color: #FFC400;
}

/* « Cet évènement est passé » */
.single-tribe_events .tribe-events-notices {
	background: #F2F6F7;
	border: 0;
	border-left: 4px solid #FFC400;
	color: #364A54;
	padding: 10px 15px;
	margin: 0 0 25px;
	font-size: 14px;
	text-shadow: none;
}
.single-tribe_events .tribe-events-notices ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Titre et date */
.single-tribe_events .tribe-events-single-event-title {
	color: #364A54;
	font-size: 36px;
	font-weight: 700;
	line-height: 1.2;
	border: 0;
	margin: 0 0 10px;
	padding: 0;
}
.single-tribe_events .tribe-events-schedule {
	margin: 0 0 30px;
	padding: 0;
	border: 0;
}
.single-tribe_events .tribe-events-schedule,
.single-tribe_events .tribe-events-schedule h2,
.single-tribe_events .tribe-events-schedule span {
	color: #ED7103;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
}

/* La navigation du haut fait doublon avec celle du bas */
.single-tribe_events #tribe-events-header {
	display: none !important;
}

/* Description */
.single-tribe_events .tribe-events-single-event-description {
	margin: 0;
}
.single-tribe_events .tribe-events-single-event-description > :last-child {
	margin-bottom: 25px;
}
.single-tribe_events .tribe-events-c-subscribe-dropdown {
	margin: 0 !important;
}
.single-tribe_events .tribe-events-schedule {
	margin-bottom: 20px !important;
}
/* Conteneur du bouton « Ajouter au calendrier » : sans les marges des vues du calendrier */
.single-tribe_events .tribe_events > .tribe-events.tribe-common {
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
}

/* Bouton « Ajouter au calendrier » */
.single-tribe_events .tribe-events-c-subscribe-dropdown__container {
	margin: 0 0 30px !important;
	padding: 0 !important;
	justify-content: flex-start;
}

/* Bloc Détails / Lieu / carte */
.single-tribe_events .tribe-events-event-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 40px;
	background: #F2F6F7 !important;
	border: 0 !important;
	margin: 0 0 40px !important;
	padding: 30px 35px !important;
	width: 100% !important;
	box-sizing: border-box;
	font-size: 15px;
}
.single-tribe_events .tribe-events-event-meta::before,
.single-tribe_events .tribe-events-event-meta::after {
	display: none !important;
}
.single-tribe_events .tribe-events-meta-group {
	flex: 1 1 220px;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}
.single-tribe_events .tribe-events-meta-group-gmap {
	flex: 2 1 320px;
}
.single-tribe_events .tribe-events-venue-map {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}
.single-tribe_events .tribe-events-venue-map iframe {
	width: 100% !important;
	height: 260px !important;
	border: 0;
}
.single-tribe_events .tribe-events-single-section-title {
	color: #364A54 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px;
	margin: 0 0 15px !important;
	padding-bottom: 8px;
	border-bottom: 3px solid #FFC400;
	display: inline-block;
}
.single-tribe_events .tribe-events-meta-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.single-tribe_events .tribe-events-meta-list li {
	margin: 0 0 10px;
	color: #364A54;
	line-height: 1.5;
}
.single-tribe_events .tribe-events-meta-label,
.single-tribe_events .tribe-events-meta-list strong {
	display: block;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .5px;
	color: #364A54;
}
.single-tribe_events .tribe-events-event-meta a {
	color: #364A54;
	text-decoration: underline;
}
.single-tribe_events .tribe-events-event-meta a:hover {
	color: #ED7103;
}
.single-tribe_events .tribe-events-event-meta abbr {
	border: 0;
	text-decoration: none;
}

/* Navigation événement précédent / suivant, alignée sur la largeur du contenu */
.single-tribe_events #tribe-events-footer {
	margin: 0 !important;
	padding: 25px 0 0 !important;
	border-top: 1px solid #D2E2EB;
}
.single-tribe_events #tribe-events-footer nav.tribe-events-nav-pagination {
	position: static !important;
	width: auto !important;
	transform: none !important;
}
.single-tribe_events #tribe-events-footer .tribe-events-sub-nav {
	display: flex !important;
	flex-direction: row !important;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}
.single-tribe_events #tribe-events-footer .tribe-events-sub-nav li {
	position: static !important;
	float: none !important;
	width: auto !important;
	max-width: 48%;
	margin: 0 !important;
	padding: 0 !important;
}
.single-tribe_events #tribe-events-footer .tribe-events-nav-next {
	margin-left: auto !important;
	text-align: right;
}
.single-tribe_events #tribe-events-footer .tribe-events-sub-nav li a {
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	background: #FFC400 !important;
	color: #fff !important;
	padding: 12px 24px !important;
	border-radius: 30px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.3;
	transition: background .2s;
}
.single-tribe_events #tribe-events-footer .tribe-events-sub-nav li a:hover {
	background: #364A54 !important;
}
.single-tribe_events #tribe-events-footer .tribe-events-sub-nav li a span {
	font-size: 18px;
	line-height: 1;
}

@media (max-width: 767px) {
	.tribe-events-view,
	#tribe-events-pg-template,
	.tribe-events-pg-template {
		padding-top: 160px !important;
	}
	.single-tribe_events .tribe-events-single-event-title {
		font-size: 26px;
	}
	.single-tribe_events .tribe-events-schedule,
	.single-tribe_events .tribe-events-schedule h2,
	.single-tribe_events .tribe-events-schedule span {
		font-size: 17px;
	}
	.single-tribe_events .tribe-events-event-meta {
		padding: 20px !important;
	}
	.single-tribe_events #tribe-events-footer .tribe-events-sub-nav li a {
		padding: 10px 16px !important;
		font-size: 13px;
	}
}

/*
 * Agenda de l'extranet (rendu par le thème, couleur bleu extranet #0a4886).
 */
.petr-agenda {
	font-family: 'Barlow', sans-serif;
	color: #364A54;
	margin: 20px 0 40px;
}
.petr-agenda__nav {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 15px;
	flex-wrap: wrap;
}
.petr-agenda__titre-mois {
	margin: 0;
	font-size: 26px;
	font-weight: 500;
	min-width: 200px;
	text-align: center;
}
.petr-agenda__fleche {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #0a4886;
	color: #fff !important;
	font-size: 24px;
	line-height: 32px;
	text-align: center;
	text-decoration: none !important;
}
.petr-agenda__aujourdhui {
	margin-left: auto;
	border: 1px solid #0a4886;
	padding: 4px 14px;
	color: #0a4886;
	text-decoration: none !important;
}
.petr-agenda__table-wrap {
	overflow-x: auto;
}
.petr-agenda__table,
.petr-agenda__table th,
.petr-agenda__table td {
	border: 1px solid #D2E2EB;
}
.petr-agenda__table {
	width: 100%;
	min-width: 700px;
	table-layout: fixed;
	border-collapse: collapse;
}
.petr-agenda__table th {
	background: #0a4886;
	color: #fff;
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 1px;
	text-align: center;
	padding: 10px 0;
	border-color: #0a4886;
}
.petr-agenda__table td {
	height: 110px;
	vertical-align: top;
	padding: 6px;
}
.petr-agenda__num {
	display: inline-block;
	font-weight: 700;
	font-size: 13px;
	margin-bottom: 4px;
}
.petr-agenda__jour-cell.is-hors-mois {
	background: #fafafa;
}
.petr-agenda__jour-cell.is-hors-mois .petr-agenda__num {
	color: #b9b9b9;
}
.petr-agenda__jour-cell.is-aujourdhui .petr-agenda__num {
	background: #0a4886;
	color: #fff;
	padding: 1px 7px;
}
.petr-agenda__event {
	display: block;
	background: #364A54;
	color: #fff !important;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	padding: 5px 7px;
	margin-bottom: 4px;
	text-decoration: none !important;
}
.petr-agenda__event:hover {
	background: #0a4886;
}
.petr-agenda__heure {
	display: block;
	font-weight: 400;
	font-size: 11px;
	opacity: .8;
}
.petr-agenda__liste {
	list-style: none;
	padding: 0;
	margin: 0;
}
.petr-agenda__item {
	display: flex;
	gap: 20px;
	padding: 15px 0;
	border-bottom: 1px solid #D2E2EB;
}
.petr-agenda__date {
	flex: 0 0 70px;
	text-align: center;
	background: #0a4886;
	color: #fff;
	padding: 8px 0;
	align-self: flex-start;
}
.petr-agenda__jour {
	display: block;
	font-size: 26px;
	font-weight: 700;
	line-height: 1;
}
.petr-agenda__mois {
	font-size: 12px;
	text-transform: uppercase;
}
.petr-agenda__titre {
	font-size: 18px;
	font-weight: 700;
	color: #364A54 !important;
}
.petr-agenda__meta {
	margin: 4px 0 6px;
	font-size: 14px;
}
.petr-agenda__cat {
	display: inline-block;
	font-size: 11px;
	background: #F2F6F7;
	padding: 2px 8px;
	margin-right: 5px;
}
.petr-agenda__cat--extranet {
	background: #0a4886;
	color: #fff;
}
.petr-agenda__voir-tout {
	display: inline-block;
	margin-top: 15px;
	background: #0a4886;
	color: #fff !important;
	padding: 10px 20px;
	border-radius: 30px;
	text-decoration: none !important;
}

/* L'ancien calendrier extranet réservait de la place pour son titre en absolu */
#extranet-calendar {
	padding-top: 0;
}
