/*
Theme Name:   Hello Elementor Child
Template:     hello-elementor
*/


/* General */
h1.entry-title {
	text-align:center;
}

ul li {
  margin-bottom: 8px; /* espace vertical entre chaque <li> */
}

/* Header */
/* Masquer la bordure en bas du header */
.home .header-cpts {
	border:none !important;
}

/* Fil d'ariane */
.breadcrumbs{
    margin-top: 10px;
    font-size: 12px;
}

.breadcrumbs .separator{
	    margin: 0 0.5rem;
}

.breadcrumbs a{
	color:#0B1D2C;
}

.breadcrumbs a:hover{
	color:#F08013;
	text-decoration:underline;
}

.breadcrumbs .current-item {
    font-weight: 500;
}

/* Carousel partenaires */
.carousel-partenaires .swiper {
	padding: 30px !important;
}

.carousel-partenaires .swiper-slide-inner {
	border-radius: 20px;
	height: 250px;
	width: 250px;
	box-shadow: 3px 3px 6px #E9F2F0;
	padding:20px;
	align-content:center;
}

.carousel-partenaires .swiper-slide-inner img {
	margin:auto;
}

/* Shortcode pages enfants */
/* Conteneur principal en flex */
.liste-pages-enfants {
	display: flex;
	flex-wrap: wrap;
	justify-content: center; 
	align-items: stretch;
	gap: 24px;
}

/* Style par défaut (desktop : 3 ou 4 par ligne selon largeur) */
.liste-pages-enfants .page-enfant {
	flex: 1 1 30%;   /* environ 1/3 de la ligne */
	max-width: 30%;
}

/* Chaque carte enfant */
.page-enfant {
	flex: 0 0 calc(33.333% - 24px); /* 3 colonnes avec marge compensée */
	max-width: calc(33.333% - 24px);
	padding: 12px;
	margin-bottom : 60px;

}

/* Carte cliquable */
.page-enfant > a {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  color: inherit;
  border-radius: 14px;
  overflow: hidden;
  background: #ffffff;
}

/* Image */
.img-page-enfant {
  width: 100%;        /* remplissage horizontal complet */
  height: 300px;      /* toutes les images ont la même hauteur */
  object-fit: cover;  /* crop pour remplir sans déformation */
  display: block;
	padding-bottom: 10px;
}

/* Titre des pages enfants */
.liste-pages-enfants .page-enfant h3{
	font-family: 'Montserrat', sans-serif; /* Police */
	font-size: 22px;                        /* Taille */
	font-weight: 700;                       /* Bold */
	line-height: 1.3;
	margin: 14px 12px 16px;
	color: #0B1D2C;
	text-align: center;
} 

.liste-pages-enfants .page-enfant a{
	text-decoration:none;
}


/* Hover */
.page-enfant:hover,
.page-enfant:focus-within {
	transform: translateY(-6px);
}

.liste-pages-enfants .page-enfant h3:hover {
	color: #F08013;
}

/* Responsive */
/* Tablette : 2 par ligne */
@media (min-width: 768px) and (max-width: 1024px) {
	.liste-pages-enfants .page-enfant {
		flex: 1 1 45%;
		max-width: 45%;
	}
}

/* Mobile : 1 par ligne */
@media (max-width: 767px) {
	.liste-pages-enfants .page-enfant {
		flex: 1 1 100%;
		max-width: 100%;
	}
}

@media (max-width: 520px) {
  .page-enfant { flex-basis: 100%; max-width: 100%; padding: 8px; }
  .img-page-enfant { height: 180px; }
  .page-enfant h3 { font-size: 1rem; margin: 10px; }
}


/* Formulaire Newsletter Brevo */
form {
  display: grid;
  grid-template-columns: 1fr;  /* grille principale simple */
  max-width: 800px;
  margin: 0 auto;
  font-family: poppins, sans-serif;
}

.field {
  background-color: white;
  border-radius: 10px;           /* border-radius sur tous les champs */
  margin-bottom: 18px;           /* espace vertical entre les champs */
}

/* Ligne 1 : 2 champs côte à côte */
.row {
  display: flex;                 /* flex pour deux champs côte à côte */
  justify-content: space-between; 
}

/* Chaque champ dans la ligne */
.row .field {
  flex: 1;                       /* occupe moitié de l’espace */
}

/* Espace horizontal entre les deux champs */
.row .field:first-child {
  margin-right: 16px;
}

/* Champs de saisie */
.field input {
  width: 100%;
  border: none !important;
  outline: none;
  background: #fff;
  font-size: 1rem;
  padding: 10px 12px;
  border-radius: 10px !important;           /* border-radius de 10px */
  box-sizing: border-box;
}

form input[type="text"],
form input[type="email"],
{
  font-family: poppins, sans-serif; /* texte en Poppins */
  color: #0B1D2C !important;                /* couleur du texte */
}

/* Bouton */
.actions {
  display: flex;
  justify-content: flex-start;   /* bouton aligné à gauche */
  margin-top: 18px;              /* espace entre email et bouton */
}

.actions input[type="submit"] {
  padding: 10px 20px;
  border: none;
  border-radius: 6px;
  background: white !important;
  color: #F08013 !important;
  font-weight: 600;
  cursor: pointer;
}

/* Archive categorie */
.archive.category .site-main{
	padding-top: 50px;
	padding-bottom: 50px;
}

.archive.category .entry-title{
	padding-bottom : 30px;
}

.archive.category .page-content{
  display: flex;
}

.archive.category .post{
	width: 30%;
	border: 1px solid #CBE7E5;
	border-radius: 10px;
	margin-right: 30px;
	margin-bottom: 30px;
}

.archive.category .entry-title a{
	font-size: 20px;
	font-weight: 700;
	color: #0B1D2C;
	padding:10px;
}

.archive.category .post p{
	margin: 10px;
}

/* Page qui sommes-nous - Popup communes */

.open-popup {
  position: fixed;
  inset: 0;
  display: none;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  z-index: 9999;
}

.open-popup.active {
  display: flex;
  opacity: 1;
  pointer-events: auto;
}

.popup-trigger, .close-popup { cursor: pointer; }
