/*
Theme Name: OceanWP Child
Template: oceanwp
Version: 1.0
*/

#enseignant_infos.postbox > div > div > p > label{
	font-weight:bold;
}
#enseignant_infos.postbox input:first-of-type{
	width:300px;
}
#enseignant_infos.postbox input:first-of-type,
#enseignant_infos.postbox select:first-of-type {
	position: absolute;
	left: 160px;
  
}
.logo-menu{float:left; width:200px;}

/* Pleine largeur “full-bleed” pour la section Elementor en-tête */
.efn-full-bleed {
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
}
.efn-full-bleed .elementor-section {
  max-width: none;
}


.single-enseignant #main #content-wrap{
  padding-top: 0;
  font-size:1.2em;
}

.enseignant-fiche h2{
	font-size:1.6em;
}
#enseignant-photo img{
	max-width:250px;
	border-radius:20px;
	border:1px solid #eee;
}
#enseignant-infos{
	list-style:none;
}
.enseignant-services{
	display:block; width:100%;
}
#enseignant-contact{
	max-width:500px;
}
.champ-erreur {
    border: 2px solid red;
    background-color: #ffeaea;
}
.single-header{
  display:flex;
  flex-direction: column;   /* mobile : photo au-dessus */
  gap:1rem;
  align-items:flex-start;
}
#enseignant-photo{ float:none !important; margin:0; }



/*ajustement de l'entête de la page enseignant sur mobile*/
@media (max-width: 768px) {
  .efn-full-bleed {
    height: 50px !important;
    min-height: 50px !important;
    overflow: hidden;
    margin-bottom:2em;
  }
  /* Supprime l'image de fond */
  .efn-full-bleed .elementor-background-overlay {
    background-size: cover !important;
  }
  .efn-full-bleed .elementor-background {
    display: none !important;
  }
  /* Ajuste l'overlay pour occuper toute la hauteur */
  .efn-full-bleed .elementor-background-overlay {
    position: absolute;
    inset: 0;
    height: 100% !important;
  }
}

@media (min-width: 768px) {
  .single-header{
    flex-direction: row;     /* desktop : côte à côte */
    align-items: flex-start;
  }
  .enseignant-identite{ flex:1 1 300px; }
  #enseignant-photo{
    order:2;                 /* photo à droite */
    margin-left: 2rem;
  }
  #enseignant-photo img{
    height:auto;
    display:block;
  }
}


/* Mobile : flux normal (photo au-dessus) */
@media (max-width: 767.98px) {
  #enseignant-photo { float: none !important; margin: 0 0 1rem 0; }
  #enseignant-photo img { max-width: 220px; }
}

/* Grille formulaire + agenda */
#enseignant-contact-agenda{
  display:flex;
  gap:32px;
  align-items:flex-start;
  flex-wrap:wrap; /* empile sur petits écrans */
	margin-top: 2em;
  border-top: 1px solid #999;
  padding-top: 1em;
}

/* Colonne gauche : formulaire 500px */
#enseignant-contact{
  flex:0 0 500px;
  max-width:500px;
  width:100%;
  padding-top:1em;
}

/* Colonne droite : agenda qui s'étire */
.enseignant-agenda{
  flex:1 1 300px;
  min-width:280px;
  background: #fff;
  padding: 1em;
}

/* Agenda Marc */
.agenda-item{
	border-bottom:1px solid #fff;padding-bottom:1rem;margin-bottom:1.25rem;
}
.agenda-item h3{
	color: #000;
	font-weight:bold;
}
.agenda-categorie{
	margin:0 0 .25rem 0;
	font-style:italic;
}

/* Tableau enseignants */

.efn-liste-enseignants .col-nom a{
	font-weight:bold;
}
.efn-liste-enseignants .col-nom a.lien-fiche{
  display:inline-flex; align-items:center; gap:.45em; text-decoration:none;
}
.efn-liste-enseignants .col-nom a.lien-fiche:hover{ text-decoration:underline; }
.efn-liste-enseignants .col-nom a.lien-fiche .ico-fiche{
  width:16px; height:16px; flex:0 0 16px; color:currentColor;
}
.efn-liste-enseignants .col-telephone a{
	 color:#000;
}

/* Table -> cartes en mobile, sans réduire la police et sans compresser le texte */
@media (max-width:760px){
  .efn-liste-enseignants .col-nom a.lien-fiche{ display:inline-flex; }
  .efn-liste-enseignants thead{ display:none; }
  .efn-liste-enseignants,
  .efn-liste-enseignants tbody,
  .efn-liste-enseignants tr,
  .efn-liste-enseignants td{ display:block; width:100%; }

  .efn-liste-enseignants tr{
    border:1px solid #e5e7eb; border-radius:10px;
    padding:.75rem .9rem; margin:.9rem 0; background:#fff;
  }

  /* Chaque cellule devient une ligne "label | valeur" en GRID (valeur peut passer à la ligne) */
  .efn-liste-enseignants td{
    border:0; border-bottom:1px solid #f1f5f9;
    padding:.5rem 0;
    display:grid;
    grid-template-columns: minmax(120px, 40%) 1fr;
    column-gap:.75rem;
    align-items:start;
    /* taille de police normale (hérite) */
    font-size:inherit;
    line-height:1.35;
    word-break:break-word;
  }
  .efn-liste-enseignants td:last-child{ border-bottom:0; }

  /* Libellés par colonne */
  .efn-liste-enseignants td::before{
    font-weight:600; color:#334155;
  }
  .efn-liste-enseignants td.col-nom::before{ content:"Nom"; }
  .efn-liste-enseignants td.col-telephone::before{ content:"Téléphone"; }
  .efn-liste-enseignants td.col-adistance::before{ content:"À distance"; }
  .efn-liste-enseignants td.col-payscp::before{ content:"Pays-CP"; }
  .efn-liste-enseignants td.col-localite::before{ content:"Localité"; }

  /* Nom en gras si tu veux */
  .efn-liste-enseignants .col-nom a{ font-weight:700; }

  /* Icône centrée verticalement pour "À distance" */
  .efn-liste-enseignants td.col-adistance{
    align-items:center;
    grid-template-columns: minmax(120px, 40%) auto;
  }

  /* Les liens peuvent aller à la ligne */
  .efn-liste-enseignants td a{ word-break:break-word; }
  .efn-liste-enseignants td.col-adistance{
    text-align: left !important;        /* écrase le style inline desktop */
    justify-items: start;                /* contenu de la 2e colonne à gauche */
    grid-template-columns: minmax(120px,40%) 1fr; /* même grille que les autres */
    align-items: center;
  }
  .efn-liste-enseignants td.col-adistance svg{
    display:inline-block; vertical-align:middle; margin-top:2px;
  }
}
/* Fin table->cartes en version mobile */

.enseignant-video{ position:relative; width:100%; max-width:960px; margin:1rem 0; }
.enseignant-video iframe,
.enseignant-video .wp-embedded-content{
  position:relative; width:100%; aspect-ratio:16/9; height:auto; display:block;
}

/* Compat older browsers (si besoin) */
@supports not (aspect-ratio: 16/9){
  .enseignant-video{ padding-top:56.25%; height:0; }
  .enseignant-video iframe,
  .enseignant-video .wp-embedded-content{
    position:absolute; top:0; left:0; width:100%; height:100%;
  }
}

