/*
Theme Name: generatepress-child
Description: Thème enfant créé par Éole Digital
Author: Éole Digital
Author URI: 
Template: generatepress 
Version: 0.1.0
*/

/* font headings */
/* poppins-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 400;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-500 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 500;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-500italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 500;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-600 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-600italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 600;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-700 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 700;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-700italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 700;
    src: url('/wp-content/themes/generatepress-child/fonts/poppins-v22-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* font corps de texte */
  /* nunito-regular - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 400;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: italic;
    font-weight: 400;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-500 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 500;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-500italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: italic;
    font-weight: 500;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-600 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 600;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-600italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: italic;
    font-weight: 600;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-700 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 700;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* nunito-700italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Nunito';
    font-style: italic;
    font-weight: 700;
    src: url('/wp-content/themes/generatepress-child/fonts/nunito-v26-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
/* === Ombres Générales === */
.shadow {
    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
}

.btn-shadow {
    box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.2);
}

/* .btn-shadow {
  box-shadow: 3px 3px 7px 0px rgba(31, 78, 121, 0.2);
} */

/* Ombres pour le header et le menu sticky */
.site-header, .sticky-enabled .main-navigation.is_stuck {
    box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.2);
}

/* Arrondis sur MetaSlider */
.radius-slider img {
    border-radius: 4px;
}

/* Cacher certains éléments sur mobile */
@media screen and (max-width: 480px){
    .mobile-display-none {
        display: none !important;
    }
}

/* ============================================
   FORMULAIRE CONTACT - VERSION FDO OPTIMISÉE
   ========================================== */

/* Champs de formulaire : Text, Email, Téléphone, Number, Textarea, Select */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form textarea,
.wpcf7-form select {
    color: var(--contrast-2);
    background-color: var(--base-3);
    font-size: 1rem;
    width: 100%; /* Champs adaptables */
    max-width: 100%; /* Limite la largeur pour éviter des champs trop longs */
    border-radius: 4px;
    padding: 10px; /* Ajoute un padding interne */
    /* margin-bottom: 5px; Ajoute de l'espace entre les champs */
    /* border: 1px solid var(--contrast-2); Une bordure par défaut */
	transition: border-color 0.3s, box-shadow 0.3s;
}

.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus {
    border-color: var(--cta);
    box-shadow: 0 0 5px var(--cta);
}

/* Survol des champs (exclut le bouton de soumission) */
.form-container input[type="text"]:hover,
.form-container input[type="email"]:hover,
.form-container input[type="tel"]:hover,
.form-container input[type="number"]:hover,
.form-container textarea:hover,
.form-container select:hover {
  border: solid 1px var(--cta); /* Couleur au survol */
}

/* Gestion du textarea */
.form-container textarea {
    height: 15vh; /* Hauteur spécifique pour les textarea */
    width: 100%;
    margin-bottom: 0;
}

.form-container .form-full {
  margin-top: 0; /* Réduit l'espace au-dessus de la div */
}

/* Texte des mentions */
.form-acceptance {
  font-size: 0.9rem;
  margin-top: 10px;
  color: var(--contrast);
  line-height: 1.4;
}

/* Bouton d'envoi */
.wpcf7-submit {
    border-radius: 40px;
    font-weight: 700;
    font-size: 20px;
    margin-top: 2vh;
    padding: 11px 20px; /* Ajuste la taille du bouton */
    /* background-color: var(--cta); Couleur du bouton */
    /* color: var(--base); Couleur du texte du bouton */
    cursor: pointer;
}

/* Table (pour aligner les champs dans la structure actuelle) */
.wpcf7-form table {
    width: 100%; /* Force la largeur des tableaux */
    table-layout: fixed; /* Évite les débordements */
    border: none;
    margin-bottom: 0;
}
.wpcf7-form table, tr, td {
    border: none; /* Retire toutes les bordures */
}

/* Checkbox */
.form-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 15px; /* Espace entre les options de la checkbox */
}

/* Fichiers */
.wpcf7-form input[type="file"] {
    word-break: break-word; /* Évite que les noms de fichiers dépassent */
    margin-bottom: 10px;
}

/* Gestion des colonnes (Flexbox) */
.form-grid {
    display: flex;
    gap: 10px;
}
.form-col {
    flex: 1; /* Colonne responsive : prend 50% de l'espace */
}
.form-full {
    width: 100%; /* Colonne pleine largeur */
}


@media screen and (max-width: 600px) {

  .form-container {
      padding: 0 5px; /* Padding interne pour éviter les débordements */
      overflow-x: hidden; /* Empêche tout débordement horizontal */
  }

  .form-grid {
      flex-direction: column; /* Passe les colonnes en mode vertical */
  }

  .form-full,
  .form-col {
      width: 100%;
      max-width: 100%;
      margin: 0;
      padding: 0;
  }

  .form-col > .wpcf7-form-control-wrap,
  .form-full > .wpcf7-form-control-wrap {
      display: block;
      margin-bottom: 0px; /* Espace harmonisé entre les champs */
  }

  .wpcf7-form input[type="text"],
  .wpcf7-form input[type="email"],
  .wpcf7-form input[type="tel"],
  .wpcf7-form input[type="number"],
  .wpcf7-form select,
  .wpcf7-form textarea {
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
      margin-bottom: 0; /* On évite la marge interne supplémentaire */
  }

  .wpcf7-form textarea {
      margin-bottom: 1px; /* Petit espace sous le textarea */
  }

  .wpcf7-form-control-wrap {
      display: block;
      width: 100%;
  }

  /* Correction alignement checkbox acceptance */
  .form-acceptance {
      display: flex;
      align-items: flex-start;
      gap: 10px;
   /* margin-top: 10px; */
  }

  .form-acceptance label {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      width: 100%;
  }
}
