/*
 Theme Name:   ELA - THEME
 Theme URI:    https://we-june.com
 Description:  Template pour ELA
 Author:       WE JUNE Agency & Maxime G. Martin - Clower
 Author URI:   https://we-june.com  & https://clower.fr
 Version:      1.0.0
*/

:root {
   /* Variables personnalisées pour le thème */
   --primary: #3C5993;
   --primary-rgb: 60, 89, 147;
   --secondary: #af4e3c;
   --secondary-rgb: 175, 78, 60;
   --danger: #FFD829;
   --danger-rgb: 255, 216, 41;
   --tertiary: #158C2E;
   --tertiary-dark: #00632f;
   --light: #dddddd;
   --dark: #1f1f1f;
   --white: #ffffff;

   /* Surcharge des variables Bootstrap définies dans custom-style.css */
   --bs-primary: var(--primary);
   --bs-primary-rgb: var(--primary-rgb);
   /* RGB de #ff2600 */
   --bs-secondary: var(--secondary);
   --bs-secondary-rgb: var(--secondary-rgb);
   --bs-success: var(--tertiary);
   --bs-success-rgb: 21, 140, 46;
   --bs-info: #0dcaf0;
   --bs-info-rgb: 13, 202, 240;
   --bs-warning: #ffe000;
   --bs-warning-rgb: 255, 224, 0;
   --bs-danger: var(--danger);
   --bs-danger-rgb: var(--danger-rgb);
   --bs-light: var(--light);
   --bs-light-rgb: 221, 221, 221;
   --bs-dark: var(--dark);
   --bs-dark-rgb: 31, 31, 31;

   /* Variables de couleur dérivées (utilisées par les classes Bootstrap) */
   --bs-primary-text-emphasis: #801a00;
   /* Version plus foncée de #ff2600 */
   --bs-primary-bg-subtle: #ffe6e0;
   /* Version très claire de #ff2600 */
   --bs-primary-border-subtle: #ffb3a6;
   /* Version claire de #ff2600 */

   /* Autres variables Bootstrap importantes */
   --bs-body-color: var(--bs-dark);
   --bs-body-color-rgb: var(--bs-dark-rgb);
   --bs-body-bg: var(--white);
   --bs-body-bg-rgb: 255, 255, 255;
   --bs-link-color: var(--bs-primary);
   --bs-link-color-rgb: var(--bs-primary-rgb);
}

/* Implementing the reset css */
*,
*::before,
*::after {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

html {
   font-family: sans-serif;
   line-height: 1.15;
   -webkit-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
   -ms-overflow-style: scrollbar;
   -webkit-tap-highlight-color: transparent;
}

body {
   margin: 0;
}
*{
   color: #3C5994;
}

h1,
h2,
h3,
h4,
h5,
h6 {
   font-family: "indivisible", sans-serif;
   font-weight: 700;
   font-style: normal;
   letter-spacing: 0.1rem;
   margin-bottom: 1em;
}

p,
span,
a,
label,
input,
textarea,
select {
   font-family: "articulat-cf", sans-serif;
   font-weight: 600;
   font-style: normal;
   color: #3C5994;
}

article,
aside,
figcaption,
figure,
footer,
header,
main,
nav,
section {
   display: block;
}

[hidden] {
   display: none !important;
}

a {
   background-color: transparent;
   -webkit-text-decoration-skip: objects;
   text-decoration: none;
}

h2 {
   color:#3C5994;
   text-transform: uppercase;
}

h2 span.titleSpan {
   display: block;
   color: #ffe000;
   font-weight: 700;
}

p {
   margin-bottom: 1.5rem;
}

.py-6 {
   padding: 5em 0;
}

i {
   color: #ffffff;
}

.home header {
   background-color: transparent !important;
   position: absolute !important;
   top: 0;
   left: 0;
   right: 0;
   z-index: 1000 !important;
}

.home .breadcrumb {
   display: none;
}

.breadcrumb {
   font-size: small;
   margin: 1em;
}

.member-header .left-menu a,
.member-header .right-menu a {
   text-decoration: none;
   color: #2e3192;
   /* Main color */
}

.card-body {
   min-height: 200px;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   align-items: center;
}

.card-body a {
   width: fit-content;
}

.list-group {
   border: 1px solid gray;
   padding: .2rem .8rem;
}

.list-group-item.active {
   background: none;
}

.list-group-item {
   border-left: none;
   border-top: none;
   border-right: none;
   border-bottom: 1px solid grey;
}

.list-group-item:last-child {
   border-bottom: none;
}

* .dropdown-toggle::after {
   display: none;
}

.nav-item {
   margin: 0 1rem;
}

.custom-logo-link {
   max-width: 250px;
}

.custom-logo {
   width: 100%;
   height: 100%;
   object-fit: contain;
   max-height: 192px;
   max-width: 192px;
}

/* Header (barre bleue + menu blanc) */

.bg-primary .navbar-nav .nav-link {
   font-family: "articulat-cf", sans-serif;
   color: var(--white);
   font-weight: 500;
   letter-spacing: .2px;
}

.bg-primary .navbar-nav .nav-link:hover,
.bg-primary .navbar-nav .nav-link:focus,
.bg-primary .navbar-nav .nav-item.active>.nav-link {
   color: var(--white);
}

.navbar .dropdown-menu {
   border-radius: 0;
   border: none;
   box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
   margin-top: 0;
   /* éviter tout "trou" entre l'item et le menu */
   z-index: 1000;
}

.navbar .dropdown-menu .dropdown-item {
   padding: .6rem 1rem;
   color: var(--primary);
}

.navbar .dropdown-menu .dropdown-item:hover,
.navbar .dropdown-menu .dropdown-item:focus {
   background: #fff;
   color: var(--primary);
}

/* Sous-menus au survol sous chaque item */
.navbar .dropdown:hover>.dropdown-menu {
   display: block;
}

.navbar .dropdown-menu {
   display: none;
}

/* Burger blanc + menu mobile plein écran */
.navbar-toggler {
   border-color: rgba(255, 255, 255, .25);
}

.navbar-toggler .navbar-toggler-icon {
   filter: invert(1);
}

.wp-block-group__inner-container>h2.wp-block-heading:first-child {
   color: #3C5994;
   text-transform: uppercase;
   margin-bottom: 1em;
}

.wp-block-group__inner-container>h2.wp-block-heading:nth-child(2) {
   color: var(--bs-primary);
}

button,
.wp-block-button>a,
.btn {
   background-color: transparent;
   color: var(--bs-primary);
   border: 1px solid var(--bs-primary);
   border-radius: 0;
   padding: 0.5rem 1rem;
   font-size: 1rem;
   letter-spacing: 0.05em;
}

.btn:hover,
.btn:focus {
   background-color: transparent;
   color: var(--bs-primary);
   border: 1px solid var(--bs-primary);
}

.wp-block-group:has(figure) {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 2rem;
   overflow: hidden;
}

.wp-block-group:has(figure) figure {
   width: 100%;
   height: 100%;
   object-fit: cover;
   max-height: 400px;
}

.wp-block-image img {
   object-fit: cover;
   width: 100% !important;
   height: 100% !important;
}

iframe {
   width: 100%;
   height: 100%;
}

form.wpcf7-form input[type="text"],
form.wpcf7-form input[type="email"],
form.wpcf7-form textarea {
   width: 100%;
   padding: 0.5rem;
   border: none;
   border-bottom: 1px solid #ccc;
   border-radius: 4px;
   font-size: 1rem;
   color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

form.wpcf7-form label {
   font-weight: bold;
   color: var(--bs-primary);
   display: block;
   margin-bottom: 0.5rem;
}

form.wpcf7-form input[type="submit"] {
   background-color: var(--bs-primary);
   color: #fff;
   padding: 0.75rem 1.5rem;
   border: none;
   border-radius: 4px;
   cursor: pointer;
   font-size: 1rem;
   transition: background-color 0.3s ease;
}

@media (max-width: 991.98px) {
   .wp-block-group:has(figure) {
      display: flex;
      flex-direction: column-reverse;
      gap: 2rem;
   }

   .wp-block-group:has(figure) figure {
      width: 100%;
      height: 100%;
      object-fit: contain;
      max-height: 400px;
      max-width: 100%;
      overflow: hidden;
   }

   #navbarSupportedContent {
      position: fixed;
      inset: 0;
      background: var(--primary);
      padding: 2rem;
      overflow-y: auto;
   }

   .navbar-collapse.show .close-menu {
      display: inline-block !important;
   }

   .navbar-nav .nav-link {
      color: #fff;
      font-size: 1.25rem;
      padding: .75rem 0;
   }

   /* Dropdowns toujours dépliés en mobile */
   .navbar .dropdown-toggle {
      pointer-events: auto;
   }

   .navbar .dropdown-menu {
      display: block !important;
      position: static;
      float: none;
      background: transparent;
      border: 0;
      box-shadow: none;
      margin: 0;
      padding: 0 0 0 1rem;
      text-align: center;
   }

   .navbar .dropdown-menu .dropdown-item {
      color: #fff;
      padding: .5rem 0;
   }

   .navbar .dropdown-menu .dropdown-item:hover,
   .navbar .dropdown-menu .dropdown-item:focus {
      background: transparent;
      color: #fff;
   }
}

/* Pagination centrée style minimal */
.pagination {
   gap: .25rem;
   justify-content: center;
}

.pagination .page-numbers {
   color: var(--primary);
   padding: 0 .25rem;
}

.pagination .page-numbers.current {
   color: #ffcc33;
}

/*LATEST NEWS*/

.latestNews .bigNews {
   min-height: 25em;
}

/*COMMITTEES*/

.committeesCard {
   border-radius: 0;
}

.page-id-89 img{
   max-height: 270px;
}

/*FOOTER*/

footer {
   color: #ffffff;
}

footer h3 {
    font-size: 1.25rem;
    letter-spacing: normal;
    margin-bottom: 1em;
    color: #ffffff;
}

footer p {
   font-weight: 300;
   color: #ffffff;
}

ul#menu-footer li {
    margin: 0 4em;
    text-transform: uppercase;
}