/*
Theme Name:   Résidence Les Ancolies — Child
Theme URI:    https://residancolies.fr/
Description:  Thème enfant GeneratePress pour la Résidence Les Ancolies (Val Thorens). Polices auto-hébergées, réglages performance et données structurées SEO/GEO. Remplace le thème payant + Elementor.
Author:       Infinity Aurora
Author URI:   https://residancolies.fr/
Template:     generatepress
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  residancolies-child
Tags:         custom-colors, custom-menu, featured-images, translation-ready
*/

/* ==========================================================================
   1. VARIABLES DE MARQUE  —  ajuste ici les couleurs / polices du site
   ========================================================================== */
:root{
  /* Couleurs (valeurs de départ — à caler sur la DA finale) */
  --ra-ink:        #18140f;   /* texte principal / sombre    */
  --ra-ink-soft:   #3a342c;   /* texte secondaire            */
  --ra-muted:      #8a8073;   /* texte discret               */
  --ra-line:       #e8e2d8;   /* filets / bordures           */
  --ra-paper:      #fbf8f3;   /* fond clair                  */
  --ra-paper-2:    #f4efe6;   /* fond alterné                */
  --ra-dark:       #141210;   /* sections sombres            */
  --ra-gold:       #b4894e;   /* accent principal (or alpin) */
  --ra-gold-dark:  #9a743b;   /* accent survol               */
  --ra-white:      #ffffff;

  /* Typographie */
  --ra-font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ra-font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;

  /* Rythme */
  --ra-radius: 3px;
  --ra-maxw:   1180px;
}

/* ==========================================================================
   2. BASE
   ========================================================================== */
body{
  font-family: var(--ra-font-body);
  color: var(--ra-ink);
  background: var(--ra-paper);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4{
  font-family: var(--ra-font-display);
  font-weight: 600;
  line-height: 1.12;
  color: var(--ra-ink);
}
a{ color: var(--ra-gold); }
a:hover{ color: var(--ra-gold-dark); }

/* Largeur de contenu alignée sur GeneratePress */
.grid-container{ max-width: var(--ra-maxw); }

/* ==========================================================================
   3. BOUTONS
   ========================================================================== */
.button,
button,
input[type="submit"],
.wp-block-button__link{
  background: var(--ra-gold);
  color: #fff;
  border: 1px solid var(--ra-gold);
  border-radius: var(--ra-radius);
  font-family: var(--ra-font-body);
  font-weight: 600;
  letter-spacing: .03em;
  padding: 13px 26px;
  transition: background .2s, border-color .2s;
}
.button:hover,
button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover{
  background: var(--ra-gold-dark);
  border-color: var(--ra-gold-dark);
  color: #fff;
}
.button.is-outline,
.wp-block-button.is-style-outline .wp-block-button__link{
  background: transparent;
  color: var(--ra-ink);
  border-color: var(--ra-ink);
}

/* ==========================================================================
   4. EN-TÊTE / NAVIGATION  (à affiner avec GeneratePress Elements)
   ========================================================================== */
.main-navigation .main-nav ul li a{
  font-weight: 500;
  letter-spacing: .02em;
}
.main-navigation .main-nav ul li a:hover{
  color: var(--ra-gold);
}

/* ==========================================================================
   5. UTILITAIRES DE SECTION
   ========================================================================== */
.ra-section{ padding: 96px 0; }
.ra-dark{ background: var(--ra-dark); color: #f1ece2; }
.ra-dark h1,.ra-dark h2,.ra-dark h3{ color:#fff; }
.ra-paper-2{ background: var(--ra-paper-2); }
.ra-kicker{
  font-family: var(--ra-font-body);
  font-size: 12px;
  letter-spacing: .26em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ra-gold);
}

/* ==========================================================================
   6. CARTES LOGEMENTS  (grille MotoPress / GenerateBlocks)
   ========================================================================== */
.ra-rooms{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.ra-room{
  background:#fff; border-radius:var(--ra-radius); overflow:hidden;
  box-shadow:0 18px 40px -28px rgba(40,30,15,.35);
  display:flex; flex-direction:column; transition:transform .25s, box-shadow .25s;
}
.ra-room:hover{ transform:translateY(-5px); box-shadow:0 30px 55px -28px rgba(40,30,15,.45); }
.ra-room img{ width:100%; aspect-ratio:4/3; object-fit:cover; }
.ra-room .ra-room-body{ padding:20px 22px 24px; display:flex; flex-direction:column; flex:1; }
.ra-room h3{ font-size:24px; margin:2px 0 4px; }
.ra-room .ra-price{ margin-top:auto; padding-top:16px; font-family:var(--ra-font-display); font-size:24px; color:var(--ra-ink); }

@media (max-width: 900px){
  .ra-section{ padding:64px 0; }
  .ra-rooms{ grid-template-columns:1fr; }
}

/* ==========================================================================
   7. FORMULAIRE DE CONTACT (Contact Form 7)
   ========================================================================== */
.wpcf7-form{ font-family: var(--ra-font-body); }
.wpcf7-form label{
  display:block;
  font-size:12px;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--ra-muted);
  margin:0 0 16px;
}
.wpcf7-form input.wpcf7-form-control,
.wpcf7-form textarea.wpcf7-form-control,
.wpcf7-form select.wpcf7-form-control{
  display:block;
  width:100%;
  margin-top:6px;
  padding:12px 14px;
  border:1px solid var(--ra-line);
  border-radius:var(--ra-radius);
  background:#fdfbf7;
  font-family:var(--ra-font-body);
  font-size:15px;
  color:var(--ra-ink);
  transition:border-color .2s, box-shadow .2s;
}
.wpcf7-form input.wpcf7-form-control:focus,
.wpcf7-form textarea.wpcf7-form-control:focus,
.wpcf7-form select.wpcf7-form-control:focus{
  outline:none;
  border-color:var(--ra-gold);
  box-shadow:0 0 0 3px rgba(180,137,78,.15);
}
.wpcf7-form textarea.wpcf7-form-control{ min-height:120px; resize:vertical; }

/* Deux colonnes (dates d'arrivée / départ) */
.wpcf7-form .ra-2col{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }

/* Case à cocher de consentement */
.wpcf7-form .wpcf7-acceptance{ display:block; margin:4px 0 20px; }
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item{ margin:0; }
.wpcf7-form .wpcf7-acceptance label{
  display:flex; align-items:flex-start; gap:10px;
  text-transform:none; letter-spacing:0; font-weight:400;
  font-size:13px; color:var(--ra-ink-soft); margin:0;
}
.wpcf7-form .wpcf7-acceptance input{ margin-top:3px; }

/* Bouton d'envoi */
.wpcf7-form input.wpcf7-submit{
  background:var(--ra-gold);
  color:#fff;
  border:1px solid var(--ra-gold);
  border-radius:var(--ra-radius);
  font-weight:600;
  letter-spacing:.03em;
  padding:14px 30px;
  cursor:pointer;
  transition:background .2s, border-color .2s;
}
.wpcf7-form input.wpcf7-submit:hover{ background:var(--ra-gold-dark); border-color:var(--ra-gold-dark); }
.wpcf7-form .wpcf7-spinner{ margin:0 0 0 12px; }

/* Messages de retour */
.wpcf7-response-output{ border-radius:var(--ra-radius); font-size:14px; }

/* Champ « logement » caché : ne rien afficher */
.wpcf7-form .wpcf7-form-control-wrap.logement input[type="hidden"]{ display:none; }

@media (max-width: 600px){
  .wpcf7-form .ra-2col{ grid-template-columns:1fr; gap:0; }
}
