/* ============================================================
   CHARTE NORMANDY HOSPITALITY (holding) — variables propres au groupe
   (seul fichier propre au site du groupe ; base.css reste le gabarit commun)
   Source : Chartes graphiques/GROUPE/ — logo lettrage manuscrit #bd8079,
   TC Aurellia (famille partagée du groupe, 4 variantes woff2).
   ============================================================ */

@font-face {
  font-family: "Aurellia";
  src: url("../fonts/aurellia-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Aurellia";
  src: url("../fonts/aurellia-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

:root {
  /* Couleurs — le vieux rose du lettrage NH sur fond crème, encre brune */
  --couleur-principale: #a05a52;   /* vieux rose assombri (AA sur crème) */
  --couleur-accent: #bd8079;       /* la teinte exacte du logo — filets, décor */
  --couleur-accent-texte: #96534b; /* surtitres sur clair (contraste AA) */
  --fond: #faf6f2;                 /* crème chaud */
  --fond-rgb: 250, 246, 242;       /* repli rgba() pour navigateurs sans color-mix() */
  --fond-sombre: #40302c;          /* brun profond — bandeau, pied de page */
  --encre: #2e2320;                /* texte courant */
  --encre-douce: #6f5c56;          /* texte secondaire */

  /* Typographies — TC Aurellia partout (famille du groupe) */
  --typo-titres: "Aurellia", Georgia, serif;
  --typo-intitules: "Aurellia", "Trebuchet MS", sans-serif;
  --typo-corps: "Aurellia", Georgia, serif;

  --style-titres: normal;
  --style-corps: normal;
}

/* L'en-tête et le pied portent le logo image (lettrage manuscrit du graphiste). */
.entete .entete__marque, .pied .pied__marque { transform: none; }
.entete__marque img { height: 44px; width: auto; display: block; }
.pied__marque img { height: 64px; width: auto; display: block;
  filter: brightness(0) invert(1); opacity: 0.92; }

/* Héros du groupe : pas de photo — le logo seul sur le crème, comme une carte de visite. */
.heros-groupe {
  min-height: max(72vh, 30rem);
  display: grid;
  place-items: center;
  text-align: center;
  padding: clamp(6rem, 12vh, 9rem) 4vw clamp(3rem, 6vh, 5rem);
  background:
    radial-gradient(ellipse at 50% 0%, color-mix(in srgb, var(--couleur-accent) 12%, transparent), transparent 65%),
    var(--fond);
}
.heros-groupe__logo {
  width: min(520px, 78vw);
  height: auto;
  margin-inline: auto;
  display: block;
}
.heros-groupe h1 {
  font-size: clamp(1.15rem, 2.4vw, 1.55rem);
  max-width: 42ch;
  margin: 1.8rem auto 0;
  color: var(--encre);
}
.heros-groupe .heros-groupe__soustitre {
  color: var(--encre-douce);
  max-width: 52ch;
  margin: 1rem auto 0;
  font-size: clamp(0.98rem, 1.6vw, 1.08rem);
}
.heros-groupe .boutons { margin-top: 2.2rem; display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }

/* Grille des maisons : 3 colonnes de cartes photo légendées. */
.maisons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.5rem, 3vw, 2.5rem);
}
@media (max-width: 980px) { .maisons { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .maisons { grid-template-columns: 1fr; } }
.maison { display: flex; flex-direction: column; background: color-mix(in srgb, var(--fond) 55%, white); border: 1px solid color-mix(in srgb, var(--couleur-accent) 35%, transparent); }
.maison__photo { display: block; overflow: hidden; aspect-ratio: 4 / 3; }
.maison__photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.6s ease; }
.maison:hover .maison__photo img { transform: scale(1.03); }
.maison__corps { padding: 1.4rem 1.5rem 1.6rem; display: flex; flex-direction: column; flex: 1; text-align: center; align-items: center; }
.maison__lieu {
  font-family: var(--typo-intitules);
  font-size: 0.72rem;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--couleur-accent-texte);
  margin-bottom: 0.5rem;
}
.maison h3 { font-size: clamp(1.35rem, 2.2vw, 1.6rem); margin-bottom: 0.55rem; }
.maison p { color: var(--encre-douce); font-size: 0.95rem; flex: 1; }
.maison__liens { margin-top: 1.2rem; display: flex; gap: 1.2rem; flex-wrap: wrap; align-items: baseline; justify-content: center; }
.maison__liens a {
  font-family: var(--typo-intitules);
  font-size: 0.8rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--couleur-principale);
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--couleur-accent) 55%, transparent);
  padding-bottom: 0.15rem;
}
.maison__liens a:hover { border-bottom-color: var(--couleur-principale); }

/* Presse : liste d'articles datés, sobre. */
.presse-liste { list-style: none; max-width: 820px; margin-inline: auto; }
.presse-liste li {
  border-bottom: 1px solid color-mix(in srgb, var(--couleur-accent) 40%, transparent);
  padding: 1.35rem 0;
}
.presse-liste .presse-media {
  font-family: var(--typo-intitules);
  font-size: 0.72rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--couleur-accent-texte);
}
.presse-liste .presse-date { color: var(--encre-douce); font-size: 0.85rem; margin-left: 0.6rem; letter-spacing: 0.06em; }
.presse-liste h3 { font-size: clamp(1.1rem, 2vw, 1.3rem); margin: 0.45rem 0 0.3rem; }
.presse-liste h3 a { color: var(--encre); text-decoration: none; }
.presse-liste h3 a:hover { color: var(--couleur-principale); }
.presse-liste p { color: var(--encre-douce); font-size: 0.95rem; }

/* Cartes cadeaux : rangée compacte par maison. */
.cadeaux { max-width: 820px; margin-inline: auto; }
.cadeaux__rangee {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  flex-wrap: wrap;
  border-bottom: 1px solid color-mix(in srgb, var(--couleur-accent) 40%, transparent);
  padding: 1.05rem 0;
}
.cadeaux__nom { font-family: var(--typo-titres); font-size: 1.15rem; }
.cadeaux__nom small { display: block; font-family: var(--typo-intitules); font-size: 0.72rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--encre-douce); margin-top: 0.2rem; }
.cadeaux__action a {
  font-family: var(--typo-intitules);
  font-size: 0.8rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--couleur-principale);
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--couleur-accent) 55%, transparent);
  padding-bottom: 0.15rem;
}
.cadeaux__action a:hover { border-bottom-color: var(--couleur-principale); }

/* Bandeau « Trois étapes » de la page privatisations : trois colonnes aérées,
   beaucoup d'air au-dessus et en dessous, surtitre et titre en grand. */
.bandeau--aere { padding-block: clamp(5.5rem, 11vw, 9rem); }
.bandeau--aere .surtitre--majeur {
  font-size: clamp(0.95rem, 1.6vw, 1.15rem);
  letter-spacing: 0.3em;
  margin-bottom: 1.2rem;
}
.bandeau--aere h2 { font-size: clamp(2.1rem, 4.2vw, 3.1rem); }

.bandeau-etapes {
  margin-top: clamp(2.5rem, 5vw, 3.5rem);
  text-align: center;
}
.bandeau-etapes .etape-num {
  font-family: var(--typo-titres);
  font-size: 2.6rem;
  color: var(--couleur-accent);
  display: block;
  margin-bottom: 0.6rem;
}
.bandeau-etapes h3 {
  color: var(--fond);
  font-size: clamp(1.2rem, 2vw, 1.45rem);
  margin-bottom: 0.7rem;
}
.bandeau-etapes p { color: color-mix(in srgb, var(--fond) 82%, transparent); max-width: 34ch; margin-inline: auto; }

/* Bandeau-photo « Privatisations » de l'accueil : la mise en avant se fait
   en grand, sur la photo du jardin, avec un titre de la taille d'un héros. */
.bandeau-photo { min-height: max(64vh, 26rem); }
.bandeau-photo__titre {
  color: var(--fond);
  font-size: clamp(2.1rem, 4.6vw, 3.4rem);
  line-height: 1.12;
  text-shadow: 0 1px 22px rgb(0 0 0 / 0.35);
  margin-top: 0.4rem;
}

/* Formulaire de devis : rangées alignées même quand un libellé passe sur
   deux lignes ; champs à hauteur constante. */
.formulaire__duo { align-items: end; }
.formulaire input, .formulaire select { min-height: 3.1rem; }
