/*
 Theme Name:   Eduma Child
 Theme URI:    http://educationwp.thimpress.com/
 Description:  Eduma Child Theme
 Author:       ThimPress
 Author URI:   http://thimpress.com
 Template:     eduma
 Version:      1.0.0
 Text Domain:  eduma-child
*/

/* Import Google Fonts - Inter */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* Appliquer Inter comme font-family par défaut pour tout le site */
/* IMPORTANT: Exclure les icônes FontAwesome, Ionicons, Flaticon, etc. */
*:not([class*="fa-"]):not([class*="ion-"]):not([class*="flaticon-"]):not([class*="icon"]):not(i) {
    font-family: 'Inter' !important;
}

body, html {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
}

.thim-about-author {
	display:none;
}
article .entry-header .entry-meta .author {
	display:none;
}
article .entry-header .entry-meta .entry-category {
	display:none;
}

.title-tag, .entry-title,.page-title,.comment-reply-title,.related-archive, .single-title  {
    text-transform: lowercase !important;
}
.elementor-heading-title,.elementor-size-default h3 a   {
    text-transform: lowercase !important;
}

.elementor-heading-title,.elementor-size-default h3 a::first-letter {
    text-transform: uppercase !important;
}

.entry-title {
    color:#5F7B8F
}

.comment-reply-title::first-letter {
    text-transform: uppercase !important;
}

.related-archive, .single-title::first-letter {
    text-transform: uppercase !important;
}

.title-tag::first-letter {
    text-transform: uppercase !important;
}

.entry-title::first-letter {
    text-transform: uppercase !important;
}

.page-title::first-letter {
    text-transform: uppercase !important;
}

.gallery-icon {
  width: 150px;
  height: 150px;
  object-fit: cover;
  margin: 0 auto;
}

.gallery-icon img{
  width: 150px;
  height: 150px;
  object-fit: contain;
  margin: 0 auto;
  display: block;
    background: #fff; /* optionnel : fond blanc pour les bandes */

}

/* Bande blanche pour les partenaires dans le footer */
footer#colophon .gallery-icon {
  background: linear-gradient(135deg, 
    rgba(255,255,255,0.95) 0%, 
    rgba(248,248,248,0.98) 50%, 
    rgba(240,240,240,0.9) 100%);
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 2px 20px rgba(0,0,0,0.15);
  position: relative;
}

/* Effet de fondu sur les bords */
footer#colophon .gallery-icon:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, 
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.1) 15%,
    rgba(255,255,255,0.1) 85%,
    rgba(255,255,255,0) 100%);
  border-radius: 8px;
  pointer-events: none;
}

/* Style pour rendre les logos visibles */
footer#colophon .gallery-icon img {
  filter: grayscale(80%) brightness(0.8) contrast(1.2);
  transition: all 0.3s ease;
  position: relative;
  z-index: 1;
}

footer#colophon .gallery-icon img:hover {
  filter: grayscale(0%) brightness(1) contrast(1);
  transform: scale(1.05);

}

.top_site_main .page-title-wrapper .page-title {
	color: #5F7B8F !important;
}


/* Uniformisation des cartes d'actualités */
.sc-list-post.thim-grid-posts .item-post {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin-bottom: 30px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 15px rgba(0,0,0,0.1);
}

.sc-list-post.thim-grid-posts .item-post .article-image {
  height: 250px;
  overflow: hidden;
  flex-shrink: 0;
  position: relative;
}

.sc-list-post.thim-grid-posts .item-post .article-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease;
}

.sc-list-post.thim-grid-posts .item-post:hover .article-image img {
  transform: scale(1.05);
}

/* Forcer la hauteur uniforme pour toutes les cartes dans une rangée */
.sc-list-post.thim-grid-posts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  align-items: stretch;
}

.sc-list-post.thim-grid-posts .item-post .article-wrapper {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 20px;
}

.sc-list-post.thim-grid-posts .item-post .article-wrapper .title {
  margin-bottom: auto;
  min-height: 60px;
  display: flex;
  align-items: flex-start;
}

.sc-list-post.thim-grid-posts .item-post .article-wrapper .desc {
  margin: 15px 0;
}

.sc-list-post.thim-grid-posts .item-post .article-wrapper .read-more {
  margin-top: auto;
  align-self: flex-start;
}

/* Pour la version grid avec feature item */
.thim-list-post-inner .feature-item .item-post {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.thim-list-post-inner .feature-item .article-image {
  height: 300px;
  overflow: hidden;
  flex-shrink: 0;
}

.thim-list-post-inner .feature-item .article-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Égalisation des hauteurs pour les grids horizontales et verticales */
.thim-grid-posts.has-horizontal .grid-horizontal,
.thim-grid-posts.has-vertical .grid-vertical {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.thim-grid-posts.has-horizontal .grid-horizontal .item-post,
.thim-grid-posts.has-vertical .grid-vertical .item-post {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* Styles pour les carousels/sliders d'actualités */
.thim-carousel-post .item-post,
.carousel-post .item-post,
.slider-post .item-post {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 15px rgba(0,0,0,0.1);
}

.thim-carousel-post .item-post .article-image,
.carousel-post .item-post .article-image,
.slider-post .item-post .article-image {
  height: 250px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

.thim-carousel-post .item-post .article-image img,
.carousel-post .item-post .article-image img,
.slider-post .item-post .article-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.thim-carousel-post .item-post .article-wrapper,
.carousel-post .item-post .article-wrapper,
.slider-post .item-post .article-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  padding: 20px !important;
}

/* Style spécifique pour les éléments carousel dans la structure Eduma */
.thim-widget-area .thim-list-post-inner .item-post,
.elementor-widget-container .thim-list-post-inner .item-post {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 15px rgba(0,0,0,0.1);
}

.thim-widget-area .thim-list-post-inner .item-post .article-image,
.elementor-widget-container .thim-list-post-inner .item-post .article-image {
  height: 250px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

.thim-widget-area .thim-list-post-inner .item-post .article-image img,
.elementor-widget-container .thim-list-post-inner .item-post .article-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Styles spécifiques pour le widget Elementor thim-ekits-post */
.thim-ekits-post .thim-ekits-post__article {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.thim-ekits-post .elementor-element-14ae4c23 {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.thim-ekits-post .elementor-widget-thim-loop-item-featured-image {
  height: 250px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

.thim-ekits-post .elementor-widget-thim-loop-item-featured-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.thim-ekits-post .elementor-element-8198f9d {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}

.thim-ekits-post .elementor-widget-thim-loop-item-read-more {
  margin-top: auto !important;
}

/* Forcer une hauteur égale pour toutes les slides du swiper */
.thim-ekits-post.swiper-container .swiper-wrapper {
  align-items: stretch !important;
}

.thim-ekits-post.swiper-container .swiper-slide {
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Forcer les titres sur une seule ligne pour éviter les décalages */
.thim-ekits-post .elementor-widget-thim-loop-item-title .elementor-heading-title,
.thim-ekits-post .elementor-heading-title {

  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

.thim-ekits-post .elementor-widget-thim-loop-item-title {
  height: 80px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  padding: 10px 0 !important;
}

/* Styles additionnels pour uniformiser les autres éléments */
.thim-ekits-post .elementor-widget-thim-loop-item-excerpt {
  height: 50px !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

.wpr-feature-list-description {
	font-size:16px !important;
}

.widget_book-event {
  display: none !important;
}

.dpro-admin-notice.dup-license-message {
  display: none !important;
}

/* === CORRECTIONS TYPOGRAPHIQUES FRANÇAISES === */
/* Supprimer toutes les transformations Title Case (majuscules à chaque mot) */

/* Titres et en-têtes */
h1, h2, h3, h4, h5, h6,
.page-title,
.entry-title,
.post-title,
.section-title,
.widget-title,
.elementor-heading-title,
.thim-heading,
.heading-title,
.card-title,
.card-title a,
.membre-nom,
.membre-poste,
.job-title,
.course-title,
.event-title,
.archive-title,
.category-title {
	text-transform: none !important;
}

/* Navigation et menus */
.main-navigation a,
.primary-menu a,
.menu-item a,
.nav-link,
.nav-menu a,
.thim-ekits-menu-nav a,
.site-menu a,
.breadcrumb,
.breadcrumb a,
.thim-breadcrumb,
.thim-breadcrumb a {
	text-transform: none !important;
}

/* Boutons et liens */
button,
.button,
.btn,
.wp-block-button__link,
input[type="submit"],
input[type="button"],
.submit-button,
.read-more,
.more-link {
	text-transform: none !important;
}

/* Contenu des articles */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	text-transform: none !important;
}

/* Widgets et sidebars */
.widget h2,
.widget h3,
.widget-title,
.widgettitle {
	text-transform: none !important;
}

/* Elementor */
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor h1,
.elementor-widget-text-editor h2,
.elementor-widget-text-editor h3,
.elementor-widget-text-editor h4,
.elementor-widget-text-editor h5,
.elementor-widget-text-editor h6 {
	text-transform: none !important;
}

/* LearnPress */
.course-title,
.course-name,
.lesson-title,
.quiz-title {
	text-transform: none !important;
}

/* Formulaires */
label,
.form-label,
legend,
.field-label,
.input-label {
	text-transform: none !important;
}

/* Métadonnées */
.entry-meta,
.post-meta,
.meta-info,
.byline,
.posted-on,
.cat-links,
.tags-links {
	text-transform: none !important;
}

/* Footer */
.footer-widget-title,
.footer-heading,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6 {
	text-transform: none !important;
}

/* Garantir la majuscule au début des phrases seulement */
.entry-title::first-letter,
.page-title::first-letter,
.section-title::first-letter,
.card-title a::first-letter,
.widget-title::first-letter {
	text-transform: uppercase !important;
}

/* Forcer la casse normale pour tout le reste */
body * {
	-webkit-text-transform: none;
	-moz-text-transform: none;
	-ms-text-transform: none;
}

/* Exceptions pour les acronymes et codes */
.uppercase,
.all-caps,
abbr,
acronym,
code,
kbd {
	text-transform: uppercase !important;
}