/*
Theme Name: breceenne
Template: Divi
Version: 1.0.0
*/


/************************/
/******* Menu *********/
/************************/
@media(max-width: 1071px){
    .et_pb_menu #menu-menu-principal.et-menu>li{
        padding-left: 7px;
        padding-right: 7px;
    }
}

/************************/
/******* Footer *********/
/************************/
.et-db #et-boc footer.et-l .footer-top .et_pb_column {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: 4rem;
}

.et-db #et-boc footer.et-l .footer-top .et_pb_column.et-last-child {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 4rem;
}
@media (min-width: 981px) {
    .et_pb_gutters3 .et_pb_column_1_2, .et_pb_gutters3.et_pb_row .et_pb_column_1_2 {
        width: 47.25%;
    }
}
.et-db #et-boc footer.et-l .footer-top .et_pb_column .et_pb_code {
    margin-bottom: 3% !important;
}

.et-db #et-boc footer.et-l .footer-top .et_pb_column .et_pb_module {
    text-align: end;
    margin-bottom: 3%;
}
.et-db #et-boc footer.et-l .footer-top .et_pb_column .svg-conteneur{
display: flex !important;
    flex-direction: row;
    gap: 1rem;
    justify-content: flex-end; /* Aligne les icônes à droite */
    align-items: center;
}
.et-db #et-boc footer.et-l .footer-top .et_pb_column .svg-conteneur a {
    display: inline-block;
    width: 32px !important;  /* Force une taille raisonnable */
    height: 32px !important;
    line-height: 0;          /* Supprime les espaces fantômes sous l'icône */
}

/* On force le SVG à prendre 100% de la largeur de son parent <a> (qui fait 2rem) */
.svg-conteneur a svg {
width: 100% !important;
    height: 100% !important;
    display: block;
}

/* On s'assure que le conteneur ne s'écrase pas et reste bien aligné à droite */
.et-db #et-boc footer.et-l .footer-top .et_pb_column:has(.et_pb_text) .svg-conteneur {
    display: flex !important;
    flex-direction: row;
    gap: 1.5rem; /* Augmenté un peu pour l'esthétique */
    justify-content: flex-end; /* Aligne les icônes à droite */
    align-items: center;
}

/* Optionnel : ajout d'un effet au survol pour rendre l'UI plus vivante */
.svg-conteneur a:hover svg path,
.svg-conteneur a:hover svg circle {
    fill: #ff000c; /* La couleur rouge de tes boutons */
    transition: fill 0.3s ease;
}

/* Footer */
.et-db #et-boc footer{
    height: 52px;
}

.et-db #et-boc footer .et_builder_inner_content,
.et-db #et-boc footer .et_builder_inner_content .et_pb_section,
.et-db #et-boc footer .et_builder_inner_content .et_pb_section .et_pb_row{
    height: 100%;
    padding: 0 !important;
}

.et-db #et-boc footer .et_builder_inner_content .et_pb_section .et_pb_row{
    display: flex;
    align-items: center;
}

.et-db #et-boc footer.et-l .footer-top .et_pb_column .et_pb_module{
    margin-bottom: 0 !important;
}

@media(max-width: 980px){
  .et-db #et-boc footer{
      height: auto;
  }
  .et-db #et-boc footer .et_builder_inner_content .et_pb_section .et_pb_row{
    padding: 0.8rem 0 !important;
  }
  .et-db #et-boc footer.et-l .footer-top .et_pb_column{
    margin: 0;
  }
}

/***************************************
 * CONTACT
 ***************************************/

.et-db #page-container .entete {
  --contact-shadow: 1px 5px 15px rgba(1, 1, 1, 0.1);
  --contact-radius: 10px;
  --contact-icon-bg: #ff000c;
  --contact-title-color: #091b5d;
  --contact-map-height: 430px;
  --contact-gap: 30px;
  --contact-offset: -110px;

  position: relative;
  padding-top: 0;
  padding-bottom: 40px;
  overflow: visible;
}

/* Ligne carte pleine largeur */
.et-db #page-container .entete > .et_pb_row_0 {
    max-width: none;
    margin-left: calc(50% - 50vw + (100vw - 100%) / 2);
    margin-right: calc(50% - 50vw + (100vw - 100%) / 2);
    padding: 0;
    width: 100%;
}

/* Carte */
.et-db #page-container .entete > .et_pb_row_0 .et_pb_column,
.et-db #page-container .entete > .et_pb_row_0 .et_pb_map_container,
.et-db #page-container .entete > .et_pb_row_0 .et_pb_map {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.et-db #page-container .entete > .et_pb_row_0 .et_pb_map {
  height: var(--contact-map-height);
}

/* Ligne des cartes contact */
.et-db #page-container .entete .et_pb_row.info-contact {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--contact-gap);
  width: 85%;
  max-width: 1200px;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 140px);
  z-index: 20;
  align-items: flex-start;
}

.et-db #page-container .entete .et_pb_row.info-contact::after{
  display: none;
}

/* Colonnes */
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_column {
  float: none;
  width: calc(33.333% - 20px);
  margin: 0;
  box-shadow: var(--contact-shadow);
  border-radius: var(--contact-radius);
  padding: 40px 35px 22px;
  background-color: #fff;
}

/* Bloc contenu */
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_blurb_content,
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_blurb_container,
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_module_header,
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_blurb_description {
  text-align: center;
}

.et-db #page-container .entete .et_pb_row.info-contact .et_pb_blurb_content {
  max-width: 100%;
}

.et-db #page-container #et-boc .entete .et_pb_row.info-contact .et_pb_blurb_description p.h4{
  color: #091B5D;
  font-weight: bold;
  font-size: 1.25rem;
  margin: 29px auto 11px auto;
  padding: 0;
  text-transform: uppercase;
  padding-bottom: 0 !important;
  padding-top: 0;
}

/* Icône ronde */
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_main_blurb_image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  margin: 0 auto 20px;
  background-color: var(--contact-icon-bg);
  border: 1px solid var(--contact-icon-bg);
  border-radius: 50%;
}

.et-db #page-container .entete .et_pb_row.info-contact .et_pb_main_blurb_image .et_pb_image_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.et-db #page-container .entete .et_pb_row.info-contact .et_pb_main_blurb_image .et-pb-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 25px;
  line-height: 1;
  color: #fff;
}

/* Liens */
.et-db #page-container .entete .et_pb_row.info-contact .et_pb_blurb_description a {
  word-break: break-word;
}

/****************************************/
/***** Gravity form - Page Contact ******/
/****************************************/
.et-db #page-container #et-boc .gform_wrapper .gform_heading{
  display: none;
}

.et-db #page-container #et-boc .gform-theme--foundation .gform_fields{
  column-gap: 1.125rem;
}

.et-db #page-container #et-boc .gform_wrapper form input:not([type="submit"])::placeholder,
.et-db #page-container #et-boc .gform_wrapper form textarea::placeholder,
.et-db #page-container #et-boc .gform_wrapper form input::placeholder {
  color: #989A9C;
}

.et-db #page-container #et-boc .gform_wrapper form input:not([type="submit"]),
.et-db #page-container #et-boc .gform_wrapper form textarea,
.et-db #page-container #et-boc .gform_wrapper form select,
.et-db #page-container #et-boc .gform_wrapper form a.chosen-single {
  background-color: #ECF1F8;
  border: none;
  border-radius: inherit;
  font-size: 1.125rem;
  font-weight: 400;
  color: #091b5d;
  font-family: "DM Sans 14pt";
  box-shadow: none;
}

.et-db #page-container #et-boc .gform_wrapper form .gf_placeholder{
color: #989A9C;
}

.et-db #page-container #et-boc .gform_wrapper form .gform-footer{
  justify-content: flex-end;
}

.et-db #page-container #et-boc .gform_wrapper form input[type="submit"]{
  text-transform: initial;
  font-size: 1.125rem;
  font-family: "DM Sans 14pt";
  font-weight: 400;
}

/* Responsive */
@media (max-width: 980px) {
  .et-db #page-container .entete {
    --contact-map-height: 320px;
    --contact-gap: 20px;
    --contact-offset: -60px;
  }

  .et-db #page-container .entete .et_pb_row.info-contact {
    width: 92%;
  }

  .et-db #page-container .entete .et_pb_row.info-contact .et_pb_column {
    width: 100% !important;
  }

  .et-db #page-container .et_builder_inner_content:has(.map){
    display: flex;
    flex-direction: column;
  }

  .et-db #page-container #et-boc .entete:has(.et_pb_row.map){
    order: 2;
    display: flex;
    flex-direction: column;
  }

  .et-db #page-container #et-boc .entete:has(.et_pb_row.map) .map{
    order: 2;
  }

  .et-db #page-container .et_pb_section:has(.gform_wrapper){
    order: 1;
  }

  .et-db #page-container .et_pb_section:has(.participation){
    order: 3;
    padding-top: 0 !important;
  }

  .et-db #page-container .entete .et_pb_row.info-contact{
    position: relative;
    left: inherit;
    bottom: inherit;
    transform: inherit;
  }
}

@media(max-width: 639px){
  .et-db #page-container #et-boc .gform_wrapper form .ginput_complex{
    gap: 40px;
  }
}