/*
Theme Name: Promsoc
Theme URI: https://image-c.be/
Description: Wordpress theme - Prom Soc
Author: Image et communication
Author URL: https://image-c.be/
Template: hello-elementor
Version: 1.0.0
License: GNU General Public License v2 or later
License URL: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Archive formations */

.wpc-filters-section {
  border: 2px solid #004E95;
  padding: 15px 35px;
  border-radius: 25px;
  color: #004E95;
}

.widget-title.wpc-filter-title {
  margin: 0;
}

.wpc-filter-content {
  margin-top: 15px;
}

.wpc-filter-content a{
	color: #000 !important;
}

.wpc-open-icon{
	border-color:#004E95 !important;
}

.post-type-archive-formations article{
	position: relative;
}
.post-type-archive-formations .elementor-post__text{
	position: absolute;
	height: 100%;
}

.post-type-archive-formations .elementor-post__thumbnail__link{
	margin-bottom: 0px !important;
}

.post-type-archive-formations .elementor-post__read-more{
	position: absolute;
	bottom: 5%;
	right: 5%;
	font-size: 15px !important;
	color: #fff;
	background-color: #004E95;
	border: solid 3px #004E95;
	border-radius: 10px;
	padding: 5px 15px;
	z-index: 2;
}

.post-type-archive-formations .elementor-post__title{
	position: absolute;
	top:0;
	line-height: initial !important;
	padding: 5px;
	background-color:#467FF7;
	width: 100%;
}

.page-id-802 .wpforms-container{
	min-width: 700px;
	max-width: 100%;
}

.wpc-filters-section .children{
	display: block !important;
}

.wpc-toggle-children-list{
	display: none !important;
}

@media (max-width: 767px){
	.post-type-archive-formations .elementor-post__text{
		position: initial;
		order: -1;
	}
	.post-type-archive-formations .elementor-post__title{
		position: initial;
	}
	
}

/*Dynamic content */

.dynamic-bloc{
	display: flex;
	flex-direction: row;
	gap: 15px;
	padding: 17.5px 15px 17.5px 15px;
}

.dynamic-column {
	text-align: inherit;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
}

.dynamic-column-content{
	margin: 0 auto;
	height: 100%;
	width: 75%;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}

.dynamic-column-content > div{
	width: 100%;
}

.page-id-802 .wpforms-container{
	min-width: auto !important;
}

.dynamic-title{
	font-weight: 600;
	font-size: 40px;
	margin-bottom: 35px !important;
}

.dynamic-cta {
	font-family: "PT Sans", Sans-serif;
	color: #fff !important;
	font-size: 15px;
	font-weight: 600;
	background-color: #004E95;
	border: 3px solid #004E95;
	border-radius: 10px 10px 10px 10px;
	padding: 12px 24px;
	display: inline-block;
	margin-top: 20px;
}

.dynamic-cta:hover {
	background-color: transparent;
	color: var(--dynamic-cta-color) !important;
}

.dynamic-column.text-right{
	order: 2;
}

.dynamic-divider {
	border-block-start: 3px solid #004E95;
	width: 65%;
	margin-bottom: 10px;
}

.event-half img{
	object-fit: cover;
  object-position: center;
  min-height: 100%;
  max-width: 100%;
	width: 100%; 
}

.event-full-width {
	width: 100%;
}

@media (max-width:1200px){	
	.dynamic-bloc{
		flex-direction: column;
		gap: 0px;
	}
	
	.event-half img{
		margin-top: 20px;
	}
	
	.text-right {
		order: 0 !important;
	}
	
	.dynamic-column-content{
		width: 100% !important;
	}
}

@media (min-width: 1200px){
	.event-half{
		width: 50%;
	}
	
	.dynamic-bloc{
		min-height: 500px;
	}
	
	.dynamic-bloc.only-text{
		min-height: auto !important;
	}
	
	.event-half img{
	  height: 0;
	}
}

/*Popup*/ 
.hide-popup #elementor-popup-modal-1132{
	display:none !important;
}

/*Planning Formation*/
.planning-table td {
  border: none;
  background: none !important;
  padding: 5px;
}

.planning-table caption{
	text-align: left;
    font-size: 16px;
    font-weight: bold;
}

.planning-comment {
  position: relative;
  top: -15px;
}

#cours-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* 2 colonnes sur PC, 1 sur mobile */
    gap: 15px;
    margin-top: 10px;
}

#cours-list div {
    padding: 10px;
    border-radius: 8px;
}

.jours-container {
    margin-top: 10px;
    padding: 5px;
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 5px;
}

/* ============================= */
/* 🔹 STYLE GLOBAL DU FORMULAIRE */
/* ============================= */
#wpforms-form-2322 {
    background: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    max-width: 800px;
    margin: auto;
}

/* Labels */
#wpforms-form-2322 label {
    font-weight: bold;
    color: #1C244B;
    font-size: 14px;
}

/* Champs de saisie (text, email, téléphone, etc.) */
#wpforms-form-2322 input[type="text"],
#wpforms-form-2322 input[type="email"],
#wpforms-form-2322 input[type="tel"],
#wpforms-form-2322 textarea,
#wpforms-form-2322 select {
    width: 100%;
    padding: 10px;
    border: 2px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
    transition: border-color 0.3s ease;
}

#wpforms-form-2322 input:focus,
#wpforms-form-2322 textarea:focus,
#wpforms-form-2322 select:focus {
    border-color: #004E95;
    outline: none;
}

/* ============================= */
/* 🔹 STYLE DES CHECKBOXES ET RADIOS */
/* ============================= */
#wpforms-form-2322 input[type="checkbox"],
#wpforms-form-2322 input[type="radio"] {
    accent-color: #004E95; /* Couleur principale */
    width: 18px;
    height: 18px;
    margin-right: 8px;
}

/* Ajustement des labels */
#wpforms-form-2322 .wpforms-field-checkbox label,
#wpforms-form-2322 .wpforms-field-radio label {
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
}

#wpforms-2322-field_4 label{
	padding: 0 !important;
}

/* ============================= */
/* 🔹 STYLE DU BOUTON DE VALIDATION */
/* ============================= */
#wpforms-form-2322 .wpforms-submit {
    background: #004E95;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    padding: 12px 20px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    width: 100%;
    text-align: center;
}

#wpforms-form-2322 .wpforms-submit:hover {
    background: #1C244B;
    transform: scale(1.05);
}

#wpforms-form-2322 .wpforms-submit:active {
    transform: scale(1);
}

/* ============================= */
/* 🔹 RESPONSIVE & MISE EN PAGE */
/* ============================= */

/* Cours en 2 colonnes sur PC et 1 colonne sur mobile */
#cours-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 15px;
    margin-top: 10px;
}

/* Style des blocs de cours */
#cours-list div {
    background: #f9f9f9;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #ddd;
    transition: box-shadow 0.3s ease;
}

#cours-list div:hover {
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.15);
}

/* Style des jours disponibles */
.jours-container {
    margin-top: 10px;
    padding: 8px;
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 5px;
}

/* Responsive */
@media (max-width: 600px) {
    #wpforms-form-2322 {
        padding: 8px;
    }
    
    #wpforms-form-2322 .wpforms-submit {
        font-size: 14px;
        padding: 10px;
    }
}

@media (max-width: 400px) {
   #cours-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between; /* Répartit les éléments sur la largeur */
		max-width: 100%; /* Empêche le dépassement */
		width: 100%;
		box-sizing: border-box;
	}
	
	#cours-list div {
		max-width: 100%; /* Ne dépasse pas la largeur du parent */
		width: 100%;
		box-sizing: border-box;
		padding: 10px;
		overflow: hidden; /* Cache tout dépassement */
		word-wrap: break-word;
		overflow-wrap: break-word;
	}
}

.jours-container input{
	margin: 0 0 0 10px !important;
}

/* Style du tooltip */
.custom-tooltip {
    position: absolute;
    background: #004E95;
    color: #ffffff;
    padding: 6px 10px;
    border-radius: 5px;
    font-size: 12px;
    white-space: nowrap;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    transition: opacity 0.2s ease-in-out;
}

