/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* GENERAL */

.site-main>* {
    margin-bottom: 0;
}

html, body {
    font-family: 'Gilroy', sans-serif;
}

.entry-content:not(:first-child), .entry-summary:not(:first-child), .page-content:not(:first-child) {
    margin-top: 1em;
}

h1 {
	font-size: 70px;
}

h2 {
	font-size: 50px;
}

p {
  	margin-bottom: 5px;
	line-height:1.3;
}

.larger-grid-container {
	max-width: 1280px;
	margin-left: auto;
  	margin-right: auto;
}

.no-margin {
	margin: 0;
}

.separate-containers .site-main {
    margin: 0;
}

.separate-containers .comments-area, .separate-containers .inside-article, .separate-containers .page-header, .separate-containers .paging-navigation {
    padding: 40px 40px 0;
}

/* Boutons */
.btn-red {
	color: #fff!important;
	background-color: var(--contrast-3)!important;
	border-radius:10px!important;
	font-size:19px!important;
	padding:10px 45px!important;
	text-decoration: none;
}

.btn-red:hover {
	background-color: var(--contrast-2)!important;
}

.btn-yellow {
    background-color: #fdc400;
    color: #353c3f!important;
    border: none;
	border-radius:10px!important;
	font-size:19px!important;
	padding:10px 45px!important;
}

.btn-yellow:hover {
    background-color: var(--contrast-2)!important;
    color: #fff!important;
}

.inside-article .btn-red:hover {
	color: #fff;
	background-color: var(--contrast-2);
}

.inside-article .btn-centered {
	margin-left:auto;
	margin-right:auto;
}

.red-btn a:hover {
	background-color: #fffbf0;
	color: #222222;
}

.red-btn-black a:hover {
	background-color: #222222;
	color: #fffbf0;
}

.yellow-btn-black {
    background-color: #fdc400;
    color: #353c3f!important;
    border: none;
	border-radius:10px;
	font-size:19px;
	padding:12px 45px;
}

.yellow-btn-black:hover {
    background-color: var(--accent)!important;
    color: var(--contrast-3)!important;
}

.btn-header {
	display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
	padding: 10px 18px;
    border-radius: 8px;
    font-weight: 400;
    text-decoration: none;
    white-space: nowrap;
}

/* Liens textes */
.green-txt-link a {
	color: #a7beae!important;
	text-decoration: none;
}

.green-txt-link a:hover {
	color: #b85042!important;
}

/* HEADER */

.header-actions {
    display: flex;
    gap: 12px;
    align-items: center;
	justify-self: end;
    justify-content: flex-end;
	width: 100%;
}

.wp-block-navigation__container {
    gap: 25px;
}

.menu-agendate-wrapper {
    display: flex;
	flex-direction: column;
    align-items: stretch;
    gap: 12px;
	width: 100%;
}

.menu-header {
	margin-right: 5px;
}


.menus-top {
    display: flex;
    justify-content: space-between;
	width: 100%;
    align-items: center;
    flex-wrap: wrap; /* sécurité si écran plus petit */
}

.menu-principal,
.menu-membres {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 15px;
}

.menu-principal a, .menu-membres a {
	color: var(--contrast-2);
	text-decoration: none;
}

.menu-principal a:hover, .menu-membres a:hover {
	color: var(--contrast-3);
}

.menu-principal li, .menu-membres li {
	padding: 0 10px;
}

/* END HEADER */


/* PAGE ACCUEIL */
#acc-hero {
	padding: 70px 50px 0 0;
}

#acc-hero p {
	width: 70%;
}

#week-event {
	padding-bottom: 50px;
}

#week-event h2 {
	padding-left: 70px;
}

/* END PAGE ACCUEIL */

.agendate-bar-icons {
    display: flex;
	justify-content: right;
    gap: 24px;
	padding: 2rem 1rem;
}

.bar-icon-link {
    display: flex;
    gap: 8px;
    color: #ffffff;
    text-decoration: none;
    font-size: 18px;
}

.bar-icon-link:hover {
    color: #f15a3c; /* couleur Agendate */
}

.bar-icon-link .dashicons {
    font-size: 20px;
    line-height: 1;
}

.bar-icon-text {
    white-space: nowrap;
}

/* SLIDER EVENTS */

/* Aujourdhui */
.today {
	padding-left:70px;
	font-size:24px;
	font-weight:600;
	color:var(--base-2);
}

.week-range {
	padding-left:70px;
	font-size:24px;
	font-weight:600;
	color:var(--base-2);
}

/* Container du slider */
.swiper-container {
	max-width: 600px; /* Fixe la largeur du carré rouge */
    margin: 0 auto; /* Centre le conteneur */
	position: relative;
    padding: 20px 60px 20px 0;
	background: transparent;
	overflow: hidden;
}

.swiper-slide {
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: #fff;
    font-family: 'Gilroy', sans-serif;
}

/* Conteneur Swiper */
.swiper-wrapper {
    display: flex;
	padding: 0 0 0 70px;
}

.event-block {
    display: flex;
    align-items: flex-start;
    gap: 15px;
	max-width: 96%;
	width: 96%;
}

/* Image */
.event-image img {
	width: auto;
    height: 150px;
	max-width: 170px;
    object-fit: cover;
    border-radius: 8px;
	flex-shrink: 0;
}

.event-info h3 {
    font-size: 19px;
    font-weight: 600;
    margin: 0 0 5px;
    color: #fff;
	padding:10px 10px 0 0;
}

.event-info p {
    font-size: 15px;
	font-weight: 500;
    margin: 8px 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Icônes */
.event-info i {
    color: #fff;
    font-size: 16px;
}

/* Navigation flèches */
.swiper-button-next,
.swiper-button-prev {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-button-next {
    right: 25px; /* à l'intérieur du conteneur rouge */
}

.swiper-button-prev {
    left: 25px; /* à l'intérieur du conteneur rouge */
}

/* END SLIDER */

/* CALENDRIER */

/**** CODE POUR LA PAGE ACCUEIL SEULEMENT ****/
/* Caché l'en-tête par défaut du calendrier */
/*#home-calendar .tribe-events-header {
    display: none!important;
}

#home-calendar .tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
    padding-top: 0!important;
}

#home-calendar .tribe-events .tribe-events-calendar-month__day-cell {
    background-color: #fff;
    border-radius: 10px;
}*/
/**** END PAGE ACCUEIL ****/

/* EN-TÊTE DU CALENDRIER */

.tribe-common--breakpoint-medium.tribe-events .tribe-events-header {
    display: none;
}

/* Enlever le padding du haut */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
    padding-top: 0;
}

/* ===== Navigation mensuelle personnalisée ===== */

.agendate-month-nav {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 20px 60px;
    gap: 2rem;
}

/* Mois + année à gauche */
.agendate-month-title .month {
    display: block;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.1;
    text-transform: capitalize;
}

.agendate-month-title .year {
    display: block;
    font-size: 2rem;
	font-weight: 500;
    opacity: 0.7;
}

/* Flèches à droite */
.agendate-month-arrows {
    display: flex;
    gap: 0.75rem;
}

.agendate-month-arrows .arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #ffffff;
    color: #e55540; /* adapte à ta palette */
    text-decoration: none;
    font-size: 1.2rem;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.agendate-month-arrows .arrow:hover {
    background: #e55540;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.15);
}

/* Mobile */
@media (max-width: 600px) {
    .agendate-month-nav {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .agendate-month-arrows {
        align-self: flex-end;
    }
}

/* END EN-TÊTE DU CALENDRIER */

/* Taille uniforme des chiffres des jours (vue Mois) */
.tribe-events-calendar-month__day-date {
    font-size: 17px; /* ajuste selon ton design */
    line-height: 1;
}

.tribe-events-calendar-month__day-date-link {
    font-size: inherit;
}

/* Désactiver le clic sur les dates dans la vue mois */
.tribe-events-calendar-month__day-date-link {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}

/* Neutraliser le pseudo-élément natif (la lettre seule) */
.tribe-events-calendar-month__header-column::before {
    content: none !important;
}

/* Remettre le th à zéro pour éviter les effets de style internes */
.tribe-events-calendar-month__header-column {
    font-size: 0 !important; /* ne pas afficher de texte résiduel */
    position: relative;
}

/* Afficher nos 3 lettres depuis l'attribut abbr (Dim, Lun, Mar...) */
.tribe-events-calendar-month__header-column::after {
    content: attr(abbr);
    font-size: 40px !important;  /* ajuste la taille */
    font-weight: 700;
    color: #e74c3c;               /* ta couleur (orange/rouge) */
    text-transform: capitalize;
    display: block;
    text-align: left;
    line-height: 1.2;
    padding: 15px 15px 0;
}

/* Élargir l'espace pour afficher les 3 lettres côt à côte */
.tribe-events .tribe-events-calendar-month__header-column {
    padding-bottom: var(--tec-spacer-3);
    width: 100%;
}

/* Cacher la forme à une seule lettre */
.tribe-events-calendar-month__header-column-title {
    display: none!important;
}


/* Ne pas afficher les heures dans la vue mois */
.tribe-events .tribe-events-calendar-month__calendar-event-datetime {
    display: none !important;
}

/* Faire en sorte d'avoir des carrés avec coins arrondis */
.tribe-events .tribe-events-calendar-month__week {
    column-gap: 10px;
    margin-bottom: 10px;
}

/* ============================= */
/* Base : carrés pour tous les jours */
/* ============================= */

.tribe-events
.tribe-events-calendar-month__day {
    background-color: #ffffff;
    border-radius: 10px;
}

/* ===================================== */
/* Jours hors du mois affiché */
/* ===================================== */

.tribe-events
.tribe-events-calendar-month__day--other-month {
    background-color: #e1e1e1 !important;
    color: #222222;
    opacity: 0.6;
}

/* Forcer les jours du mois courant à être blancs */
.tribe-events
.tribe-events-calendar-month__day--current,
.tribe-events
.tribe-events-calendar-month__day--past,
.tribe-events
.tribe-events-calendar-month__day--future {
    background-color: #ffffff;
    opacity: 1;
}

/* ===================================== */
/* Neutraliser COMPLETEMENT le jour réel */
/* ===================================== */

/*.tribe-events
.tribe-events-calendar-month__day--current,
.tribe-events
.tribe-events-calendar-month__day--past,
.tribe-events
.tribe-events-calendar-month__day--future {
    background-color: inherit;
    box-shadow: none;
}*/

/* Enlever les bordures */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day {
    border-width: 0!important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__week {
    border-left: 0 solid var(--tec-color-border-secondary-month-grid)!important;
}

.tribe-events .tribe-events-calendar-month__header-column-title {
    color: var(--contrast-3)!important;
    font-size: 35px!important;
    font-weight: 600!important;
}

/* Remettre le texte en gris pour éviter le contraste blanc */
.tribe-events-calendar-month__day--other-month
.tribe-events-calendar-month__day-cell {
    color: #888 !important;
}

.tribe-events .tribe-events-calendar-month__calendar-event {
    margin: 0!important;
}

.tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-details {
    padding: 3px 0!important;
}

/* Retirer la ligne verticale et préparer l'espace pour un point */
.tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-details {
    border-left: none !important;
    position: relative;
    padding-left: 1rem!important;
}

/* Point par défaut (sera recoloré selon les catégories) */
/*.tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-details::before*/
.tribe-events-calendar-month__calendar-event-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.4rem;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #999;
}

/* Texte dans les cases */
.tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-title, .tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-title .tribe-events-calendar-month__calendar-event-title-link {
	text-decoration: none;
	font-size: 14px;
	line-height: 16px;
}

/* Laisser un espace à gauche seulement */
.tribe-events .tribe-events-calendar-month__calendar-event {
    padding: 0 0 0 15px;
}

/* COULEURS PAR CATÉGORIE */


/* JAUNE – Arts, culture et gastronomie */
article.tribe_events_cat-arts-culture-gastronomie .tribe-events-calendar-month__calendar-event-title::before {
    background-color: #fcc300!important;
}

/* ROUGE – Entrepreneuriat et réseautage */
article.tribe_events_cat-entrepreneuriat-reseautage .tribe-events-calendar-month__calendar-event-title::before {
    background-color: #e7402f;
}

/* ORANGE – Festivals et événements spéciaux */
article.tribe_events_cat-festivals-evenements-speciaux .tribe-events-calendar-month__calendar-event-title::before {
    background-color: #ef8300;
}

/* VERT – Jeunesse et famille */
article.tribe_events_cat-jeunesse-famille .tribe-events-calendar-month__calendar-event-title::before {
    background-color: #009f3b;
}

/* BLEU – Sports et loisirs */
article.tribe_events_cat-sports-loisirs .tribe-events-calendar-month__calendar-event-title::before {
    background-color: #0072b9;
}

/* VIOLET – Vie communautaire et municipale */
article.tribe_events_cat-vie-communautaire-municipale .tribe-events-calendar-month__calendar-event-title::before {
    background-color: #9601e3;
}

/* Cacher le bouton pour télécharger le calendrier */
.tribe-events-c-subscribe-dropdown__container {
	display:none!important;
}

/*** Fenêtre popup + infos sur un événement */

.tooltipster-box {
  width: 460px !important;
  max-width: 460px !important;
  border: none !important;              /* SUPPRIME la bordure noire */
  border-radius: 14px !important;       /* vrai radius */
  background: #f6f7f8 !important;       /* fond pâle */
  box-shadow: 0 18px 40px rgba(0,0,0,0.25) !important;
  overflow: hidden !important;          /* pour respecter le radius */
}

/* Base Tooltipster (sécurité) */
.tooltipster-base {
  max-width: none !important;
}

/* Contenu interne */
.tooltipster-content {
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

/* Tooltip événement */
.tribe-events-calendar-month__calendar-event-tooltip {
  overflow: visible !important;
  max-height: none !important;
}

/* Image */
.tribe-events-calendar-month__calendar-event-tooltip-featured-image-wrapper img {
  border-radius: 14px 14px 0 0;
  display: block;
}


/* Espacement interne */
.tribe-events-calendar-month__calendar-event-tooltip-datetime,
.tribe-events-calendar-month__calendar-event-tooltip-title,
.tribe-events-calendar-month__calendar-event-tooltip-description,
.tribe-events-calendar-month__calendar-event-tooltip-cost {
  padding: 8px 18px!important;
}

/* Texte description */
.tribe-events-calendar-month__calendar-event-tooltip-description,
.tribe-events-calendar-month__calendar-event-tooltip-cost,
.tribe-events-calendar-month__calendar-event-tooltip-datetime {
  line-height: 1.6;
  font-size: 14px;
  color: #444;
}


.tribe-events-calendar-month__calendar-event-tooltip-featured-image-wrapper {
  width: 100% !important;
  margin: 0;
}

.tribe-events-calendar-month__calendar-event-tooltip-featured-image-wrapper img {
  width: 100% !important;
  height: auto;
  display: block;
  object-fit: cover;
}


/* END CALENDRIER */

/* BARRE DE RECHERCHE */

/* Conteneur horizontal */
.searchandfilter ul {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    list-style: none;
    padding: 0;
    margin: 20px 0;
    justify-content: center;
	max-width: 1280px;
	padding-left: 90px;
}

/* Chaque champ */
.searchandfilter li {
    flex: 1 1 auto;
    min-width: 200px;
}

/* Pas de label */
.searchandfilter h4 {
    display: none;
}

/* Champs et bouton */
.searchandfilter input[type="text"],
.searchandfilter select,
.searchandfilter input[type="date"] {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.searchandfilter input[type="submit"] {
    background-color: #fdc400;
    color: #353c3f;
    border: none;
    padding: 8px 40px 10px;
    border-radius: 4px;
    cursor: pointer;
}

.searchandfilter input[type="submit"]:hover {
    background-color: var(--accent)!important;
    color: var(--contrast-3)!important;
}

/* END BARRE DE RECHERCHE */

/* SINGLE EVENT */

.tribe-events-single-custom .event-layout {
    max-width: 1200px;
    margin: 2rem auto;
}

.event-layout {
    display: grid;
    grid-template-columns: 1.3fr 1.7fr;
    gap: 2rem;
}

.event-sidebar {
    border-right: 1px solid #eee;
    padding-right: 2rem;
}

.event-title {
    font-size: 3rem;
    margin-bottom: 1rem;
	font-weight:700;
}

.event-time,
.event-venue,
.event-organizer {
    margin-bottom: 1.5rem;
}

.event-content img {
    border-radius: 16px;
    margin-bottom: 2rem;
	width: 90%;
}

#tribe-events-footer {
    padding: 30px 0;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
}

.event-footer-custom {
    display: flex;
    justify-content: center;
    margin: 4rem 0 2rem;
}

@media (max-width: 900px) {
    .event-layout {
        grid-template-columns: 1fr;
    }
    .event-sidebar {
        border-right: none;
        padding-right: 0;
    }
}

/* END SINGLE EVENT */


/* Corriger le hook sur les pages Community Events */
#content {
  flex-wrap: wrap;
}

#opt-in {
  flex: 0 0 100%;
  width: 100%;
}

/* ---------------------------- */
/* ------- RECHERCHE -------- */
.search-container {
    max-width: 1280px;
    margin: 40px auto;
    padding: 40px 20px 110px;
}

.search-header h1 {
    font-size: 55px;
    margin-bottom: 5px;
	color: var(--contrast-3);
	font-weight: 700;
}

.search-count {
    color: #777;
    margin-bottom: 30px;
}

/* LISTE */
.event-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* CARTE */
.event-card {
    display: flex;
    flex-direction: column;
    
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;

    border: 1px solid #e5e7eb;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);

    text-decoration: none;
    color: inherit;

    transition: all 0.25s ease;
}

.event-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}

/* IMAGE */
.event-image img {
    width: 100%;
	max-width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: 8px;
}

/* CONTENU */
.event-content {
    padding: 15px;
}

.event-title {
    margin-bottom: 5px;
    font-size: 22px;
}

.event-meta {
    font-size: 14px;
    color: #666;
    margin: 5px 0;
}

.event-excerpt {
    margin-top: 10px;
    color: #444;
    line-height: 1.5;
}
/* END RECHERCHE */


/* FORMULAIRE DE CONTACT */
.uacf7-row {
    margin-left: -5px!important;
    margin-right: -5px!important;
}

.uacf7-col-3, .uacf7-col-4, .uacf7-col-6, .uacf7-col-12 {
    padding-left: 5px!important;
    padding-right: 5px!important;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="tel"], input[type="number"], textarea, select {
    background-color: var(--base-3)!important;
    border-color: var(--contrast-2)!important;
}

input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    border: 0px solid;
    border-radius: 10px!important;
    padding: 10px 15px;
    max-width: 100%;
	margin-bottom: 15px!important;
	width: 100%;
}

input[type="submit"] {
    color: var(--base-3);
    background-color: var(--contrast-3);
	border-radius: 10px!important;
	padding: 5px 90px 10px;
	font-weight: 600;
	font-size: 19px;
}

input[type="submit"]:hover {
    color: var(--contrast);
    background-color: var(--base-2);
}

/* PAGE CONTACT */
/* Le bouton doit être beige */
#contact input[type="submit"] {
    color: var(--contrast);
    background-color: var(--base-2);
	border-radius: 10px!important;
	padding: 5px 90px 10px;
	font-weight: 600;
	font-size: 19px;
}

#contact input[type="submit"]:hover {
    color: var(--base-2);
    background-color: var(--contrast-2);
}

#contact {
	padding-bottom: 110px;
}

/* Centrer le bouton Envoyer dans Contact Form 7 */
.wpcf7 form .wpcf7-submit {
    display: block;
    margin: 0 auto; /* Centre horizontalement */
}

.wpcf7 form.sent .wpcf7-response-output {
	color: var(--base-3)!important; /* Blanc */
    border-color: var(--base);
}	

/* Formulaire Opt-in */
#opt-in {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

#opt-in > * {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

[data-form="1ff30a40-dd19-11f0-94f9-b337fe39d232"] .form-control {
	font-family: 'Gilroy', sans-serif!important;
    border: 1px solid #b1b1b2!important;
    border-radius: 10px!important;
    color: #606266!important;
    font-size: 17px!important;
    padding: 10px 15px!important;
	margin-bottom:0!important;
}

[data-form="1ff30a40-dd19-11f0-94f9-b337fe39d232"] .main-form .btn {
    width: 40%!important;
    margin-left: auto;
    margin-right: auto;
    float: inline-end;
}

/* END FORMULAIRE DE CONTACT */


/* FORMULAIRE MEMBERS */

.um-form {
	
}

.um .um-button {
	font-size: 19px!important;
	border-radius: 10px !important;
}

.um .um-button:hover {
    color: #fff!important;
}

.um a.um-button, .um a.um-button.um-disabled:active, .um a.um-button.um-disabled:focus, .um a.um-button.um-disabled:hover, .um input[type=submit].um-button, .um input[type=submit].um-button:focus {
    background: #e84130!important;
}

.um a.um-button:hover, .um input[type=submit].um-button:hover {
    background-color: #353c3f!important;
}

.um-center .um-button {
    display: inline-block !important;
    width: auto !important;
    min-width: 250px !important;
    float: right;
}

.um .um-button.um-alt, .um input[type=submit].um-button.um-alt {
    color: #666;
	background: #fdc400!important;
	border-radius: 10px !important;
}

/* END FORMULAIRE MEMBERS */

/* ---------------------------- */
/* ------ ESPACE MEMBRE ------ */
.member-top-bar {
  padding: 2rem 2rem;
}

.member-greeting {
  margin: 0;
  color: #ffffff;
  font-size: 1.2rem;
}

.member-greeting strong {
  color: #f4c430;
}

.dashboard-section {
  max-width: 1280px;
  margin: 0 auto;
}

.dashboard-action a {
  display: inline-block;
  background: #e74c3c;
  color: #fff;
  padding: 0.9rem 1.4rem;
  border-radius: 8px;
  font-weight: 600;
}

.my-events-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.5rem;
}

.event-card {
  background: #fff;
  padding: 1.5rem;
  border-radius: 10px;
  box-shadow: 0 8px 25px rgba(0,0,0,0.05);
}

.event-card h3 {
  font-size: 24px;
}

/* Cacher la photo de profil */
.um-account-meta {
    display: none;
}

/** COMMUNITY **/
.entry-header {
    padding-top: 10px;
}

/*.entry-content {
    padding-bottom: 80px;
}*/

.entry-header h1 {
    color: var(--contrast-3);
    font-size: 50px;
    font-weight: 700;
}

/* Enlever la limite TEC uniquement quand full width */
.tec-full-width .tribe-common .tribe-events-l-container {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}

/* ---------------------------- */
/* -------- RESPONSIVE -------- */

/* PORTABLE */
@media (max-width: 1680px) {

}


/* TABLETTE PRO */
@media (max-width: 1480px) {

	.larger-grid-container {
		width: 90%!important;
	}
	
	.menus-top {
        justify-content: flex-end;
    }

    .header-actions {
        justify-content: flex-end;
        width: 100%;
    }
	
	.menu-agendate-wrapper {
    	align-items: flex-end;
	}
	
	.menus-top {
    	justify-content: flex-end;
    	gap: 30px;
	}
	
	#gros-titre {
		font-size: 55px!important;
	}
	
	h1 {
		font-size: 50px!important;
	}
	
	/**** ACCUEIL *****/
	#acc-hero {
		padding: 30px 10px 0 0;
	}

	#week-event {
		padding-bottom: 50px;
	}

	#week-event h2 {
		padding-left: 50px;
	}
	
	.week-range {
    	padding-left: 50px;
	}

	/* Container du slider */
	.swiper-container {
		max-width: 450px; /* Fixe la largeur du carré rouge */
    	margin: 0 auto; /* Centre le conteneur */
    	padding: 20px 20px;
	}
	
	.swiper-wrapper {
    	padding: 0 0 0 30px;
	}
	
	.swiper-button-next {
    	right: 5px;
	}
	
	.swiper-button-prev {
    	left: 5px;
	}

	/** CONTACT **/
	#contact h2 {
        font-size: 32px !important;
    }
	
	/** CALENDRIER **/
	.agendate-month-nav {
    	margin: 20px 0;
	}
	
	/** SLIDER EVENTS **/
	/* Image */
	.event-image img {
    	height: 140px;
		max-width: 160px;
	}
}


/* TABLETTE MINI */
@media (max-width: 995px) {
	
	/** HEADER **/
	
	/* Cacher les boutons */
	.header-actions {
		display: none;
	}
	
	.menu-agendate-wrapper {
		display: none;
	}
	
	#site-header {
		display: none;
	}
	
	/* Afficher le logo en plus gros */
	.navigation-branding img, .site-logo.mobile-header-logo img {
    	height: 120px!important;
	}
	
	:root {
    	--gp-slideout-width: 600px!important;
	}
	
	.menu-toggle {
    	font-size: 35px!important;
	}
	
	.main-navigation a {
    	font-weight: 500!important;
    	font-size: 28px!important;
	}
	
	.main-navigation .main-nav ul li a {
    	padding-left: 50px;
	}
	
	/**** ACCUEIL *****/
	#acc-hero {
		padding: 60px 20px;
	}
	
	/** SLIDER EVENTS **/
	
	/* Container du slider */
	.swiper-container {
		max-width: 700px; /* Fixe la largeur du carré rouge */
    	padding: 20px 30px;
	}
	
	/* Image */
	.event-image img {
    	height: 160px;
		max-width: 190px;
	}
	
	.event-info h3 {
    	font-size: 24px!important;
    	font-weight: 600;
	}
	
	.event-info p {
    	font-size: 20px!important;
	}
	
	/** RÉSULTATS RECHERCHE **/
	.event-list {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* TÉLÉPHONE */
@media (max-width: 560px) {
	
	.larger-grid-container {
		width: 100%!important;
		padding: 0 20px;
	}
	
	.container .site-content .content-area {
        width: 100%;
    }
	
	.separate-containers .inside-article {
		padding: 40px 15px 0;
	}
	
	h1 {
		font-size: 38px!important;
	}
	
	h2 {
		font-size: 34px!important;
	}
	
	h3 {
		font-size: 30px!important;
	}
	
	#gros-titre {
		font-size: 55px!important;
	}
	
	.btn-red {
    	font-size: 20px!important;
    	padding: 12px 30px!important;
	}
	
	.yellow-btn-black {
    	font-size: 20px!important;
    	padding: 12px 25px!important;
	}
	
	/** HEADER **/
	
	/* Afficher le logo en plus gros */
	.navigation-branding img, .site-logo.mobile-header-logo img {
    	height: 90px!important;
	}
	
	:root {
    	--gp-slideout-width: 100%!important;
	}
	
	.menu-toggle {
    	font-size: 25px!important;
	}
	
	.main-navigation a {
    	font-weight: 600!important;
    	font-size: 20px!important;
	}
	
	.main-navigation .main-nav ul li a {
    	padding-left: 30px;
	}
	
	/** END HEADER **/
	
	/**** FOOTER *****/
	#opt-in p {
		font-size: 25px!important;
	}
	
	#contact-footer p {
		font-size: 22px!important;
	}
	
	.site-footer p {
		text-align: center;
	}
	
	/**** ACCUEIL *****/
	#acc-hero {
        padding: 60px 0;
    }
	
	#acc-hero p {
		width: 100%;
	}
	
	/* Container du slider */
	.swiper-container {
		max-width: 300px; /* Fixe la largeur du carré rouge */
    	padding: 20px 10px;
	}
	
	#week-event {
    	padding-bottom: 10px;
	}
	
	.event-block {
    	display: block;
	}

	/* Image */
	.event-image img {
    	max-width: 220px;
    	height: 180px;
	}

	.event-info {
    	padding-right: 20px;
	}
	
	.swiper-button-next {
    	right: 0;
	}
	
	.swiper-button-prev {
    	left: 0;
	}
	
	/**** CONTACT *****/
	#contact {
		padding: 60px 0;
	}
	
	#contact p {
		font-size: 22px !important;
	}
	
	/**** CALENDAR *****/
	.tribe-events .tribe-events-l-container {
    	padding-top: 0;
	}
	
	.tribe-events .tribe-events-header {
    	padding: 0 19px 30px;
	}
	
	.agendate-month-nav {
    	display: none;
	}
	
	/* Cacher la sélection par catégorie */
	.tec-events-category-color-filter {
    	display: none;
	}
	
	/* Cacher le bouton pour changer de vue */
	.tribe-events .tribe-events-c-events-bar {
    	display: none;
	}
	
	.tribe-common .tribe-common-l-container {
    	padding-left: 5px;
    	padding-right: 10px;
		max-width: 100%;
	}
	
	.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull {
        margin-left: 0;
        width: calc(100% + 0px);
        max-width: calc(100% + 0px);
    }
	
	.tribe-events .tribe-events-calendar-list__event-date-tag {
    	width: 15%;
	}
	
	.tribe-events .tribe-events-calendar-list__event-wrapper {
    	width: 85%;
	}
	
	.tribe-common button {
    	padding: 5px 25px;
    	border-radius: 10px;
	}
	
	/** CACHER POUR LE MOMENT LA NAVIGATION SOUS LA LISTE DES ÉVÉNEMENTS **/
	.tribe-events .tribe-events-calendar-list-nav {
    	/*padding-top: var(--tec-spacer-5);*/
		display:none;
	}
	
	/** RÉSULTATS RECHERCHE **/
	.event-list {
        grid-template-columns: 1fr;
    }
}

