/**
* Theme Name: Arolax Child
* Description: This is a child theme of Arolex
* Author: <a href="http://themeforest.net/user/crowdytheme">CrowdyTheme</a>
* Template: arolax
* Version: 3.0.2
*/


@media (max-width: 767px){
    .wcf--text,
    .wcf--text *{
      animation: none !important;
      transition: none !important;
      transform: none !important;
    }
  }

  
  @media (max-width: 768px){
    * { background-attachment: scroll !important; }
  }

.default-blog-header, footer {
    display: none !important;
}

.hader-AQ {
    position: relative;
    box-sizing: border-box;
    position: relative;
}

.hader-AQ:after {
    content: "";
    position: absolute;
    left: 10px;
    top: 10px;
    bottom: 10px;
    right: 10px;
    background: transparent;
    border: solid 3px #d9b357;
    z-index: 101; /* On met un z-index plus élevé pour after */
    pointer-events: none;
}

.hader-AQ .e-con-inner:before {
    content: "";
    position: absolute;
    left: 20px;
    top: 20px;
    bottom: 20px;
    right: 20px;
    background: transparent;
    border: solid 3px #d9b357;
    z-index: 100; /* On laisse before derrière after */
    pointer-events: none;
}


.txt_AQ:after {
    content: "";
    width: 0;
    height: 2px;
    background-color: #d9b357;
    position: absolute;
    top: 50%;
    right: -50px;
    z-index: 100;
    animation: draw-line-AQ 1s 0.3s forwards; /* Ajout d'un delay de 0.3s */
}

@keyframes draw-line-AQ {
    from {
        width: 0;
    }
    to {
        width: 100px;
    }
}

/* Mobile adaptation: puts the line below the text, vertical, width 2px, height 100px */
@media (max-width: 640px) {
    .txt_AQ:after {
        top: auto;
        bottom: -50px; /* position le trait en dessous, ajuste selon besoin */
        right: 50%;
        left: 50%;
        transform: translateX(-50%);
        width: 2px;
        height: 0;
        animation: draw-line-AQ-mobile 1s 0.3s forwards;
    }
}

@keyframes draw-line-AQ-mobile {
    from {
        height: 0;
    }
    to {
        height: 100px;
    }
}



.form_cadre_top {
    transform: translateX(-150px) !important;
}

.form_cadre_bottom {
    transform: translateX(-150px) !important;
}

@media (max-width: 768px) {
    .form_cadre_top,
    .form_cadre_bottom {
        transform: translateX(-25%) !important;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}



/* =========================
   CF7 RSVP – Layout + UI
   ========================= */

/* Grille principale : 2 colonnes (50/50) */
.rsvp-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  
  /* Bloc champ */
  .rsvp-grid .rsvp-field{
    margin: 0;
  }
  
  /* Champs en pleine largeur */
  .rsvp-grid .rsvp-field.full{
    grid-column: 1 / -1;
  }
  
  /* Neutralise les marges <p> internes */
  .rsvp-grid p{
    margin: 0;
  }
  
  /* Labels */
  .rsvp-grid label{
    display: block;
    font-weight: 600;
    margin: 0 0 6px 0;
  }
  
  /* Inputs / textarea full width */
  .rsvp-grid input[type="text"],
  .rsvp-grid input[type="email"],
  .rsvp-grid input[type="number"],
  .rsvp-grid textarea{
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,0.15);
    outline: none;
  }
  
  /* Textarea : hauteur confortable */
  .rsvp-grid textarea{
    min-height: 120px;
    resize: vertical;
  }
  
  /* Focus */
  .rsvp-grid input[type="text"]:focus,
  .rsvp-grid input[type="email"]:focus,
  .rsvp-grid input[type="number"]:focus,
  .rsvp-grid textarea:focus{
    border-color: rgba(0,0,0,0.35);
  }
  
  /* Fieldset / Legend (radio/checkbox) */
  .rsvp-grid .rsvp-fieldset{
    border: 0;
    padding: 0;
    margin: 0;
    min-inline-size: auto;
  }
  
  .rsvp-grid .rsvp-fieldset legend{
    font-weight: 600;
    margin: 0 0 6px 0;
    padding: 0;
  }
  
  /* Radios/checkbox CF7 : options en ligne */
  .rsvp-grid .wpcf7-list-item{
    display: inline-flex;
    align-items: center;
    margin: 0 14px 6px 0;
  }
  
  .rsvp-grid .wpcf7-list-item input{
    margin: 0 8px 0 0;
  }
  
  .rsvp-grid .wpcf7-list-item-label{
    font-weight: 400;
  }
  
  /* =========================
     Vin / Repas / Brunch sur 1 ligne
     ========================= */
  .rsvp-events-3{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
  
  /* =========================
     Bouton submit
     ========================= */
  .rsvp-submit{
    margin-top: 18px;
  }
  
  .rsvp-submit .wpcf7-submit{
    padding: 12px 18px;
    border-radius: 10px;
    border: none;
    cursor: pointer;
  }
  
  /* Messages CF7 (erreurs) */
  .wpcf7-not-valid-tip{
    margin-top: 6px;
    font-size: 0.9em;
  }
  
  /* =========================
     Responsive
     ========================= */
  
  /* Tablette : le bloc 3 colonnes passe à 2 */
  @media (max-width: 900px){
    .rsvp-events-3{
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  
  /* Mobile : tout en 1 colonne */
  @media (max-width: 640px){
    .rsvp-grid{
      grid-template-columns: 1fr;
    }
    .rsvp-grid .rsvp-field.full{
      grid-column: auto;
    }
    .rsvp-events-3{
      grid-template-columns: 1fr;
    }
    .rsvp-grid .wpcf7-list-item{
      margin-right: 12px;
    }
  }
  