/* Couchages du Hameau — front
 * Titres (h2 / h3) : laissés au thème / Elementor pour garder la charte du site.
 * Personnalisation : variables --hc-* sur .hc-form
 */
.hc-form{
	--hc-accent:#9b73ad;
	--hc-accent-soft:#f3edf6;
	--hc-text:#333;
	--hc-muted:#6b6b6b;
	--hc-border:#c9c9c9;
	--hc-radius:4px;
	--hc-font-display:"DM Serif Display", serif;
	--hc-title-color:var(--e-global-color-primary, #bea3cb);
	color:var(--hc-text);
	/* Textes : typo « Text » globale Elementor (comme les widgets Éditeur de texte) */
	font-family:var(--e-global-typography-text-font-family, sans-serif), sans-serif;
	font-weight:var(--e-global-typography-text-font-weight, 400);
	max-width:1100px;
	margin:0 auto;
}
.hc-form *{box-sizing:border-box}
.hc-form .hc-lead{text-align:center;color:var(--hc-muted);margin:0 auto 2rem;max-width:46rem}

/* ---------- Champs ---------- */
.hc-form .hc-head{
	display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;
	border:1px solid var(--hc-border);border-radius:var(--hc-radius);
	padding:1.5rem;margin:0 0 3rem;background:#fff;min-width:0;
}
.hc-form .hc-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}
.hc-form .hc-field--wide{grid-column:1 / -1}
.hc-form .hc-field > label,.hc-form .hc-label{font-weight:600;font-size:.95rem}
.hc-form input[type="text"],
.hc-form input[type="date"],
.hc-form textarea{
	width:100%;max-width:100%;margin:0;
	border:1px solid var(--hc-border);border-radius:var(--hc-radius);
	padding:.6rem .75rem;font:inherit;font-size:1rem;color:var(--hc-text);background:#fff;
}
.hc-form input:focus-visible,.hc-form textarea:focus-visible{outline:2px solid var(--hc-accent);outline-offset:1px;border-color:var(--hc-accent)}
@media (max-width:600px){.hc-form .hc-head{grid-template-columns:1fr;padding:1rem}}

/* ---------- Pastilles (logement / choix de lits) ---------- */
.hc-form .hc-pills,.hc-form .hc-choices{display:flex;flex-wrap:wrap;gap:.5rem}
.hc-form .hc-pill{position:relative;display:inline-flex;margin:0;cursor:pointer;font-weight:400}
.hc-form .hc-pill input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.hc-form .hc-pill span{
	display:inline-block;padding:.45rem 1rem;border:1px solid var(--hc-border);border-radius:999px;
	background:#fff;color:var(--hc-text);font-size:.95rem;line-height:1.2;transition:background .15s,border-color .15s,color .15s;
}
.hc-form .hc-pill--sm span{padding:.35rem .8rem;font-size:.88rem}
.hc-form .hc-pill:hover span{border-color:var(--hc-accent)}
.hc-form .hc-pill input:checked + span{background:var(--hc-accent);border-color:var(--hc-accent);color:#fff}
.hc-form .hc-pill input:focus-visible + span{outline:2px solid var(--hc-accent);outline-offset:2px}

/* ---------- Logements / bâtisses / chambres ---------- */
.hc-form .hc-section{margin:0 0 3.5rem}
.hc-form .hc-section[hidden]{display:none}
/* Titre du logement : « La Métairie Haute : 12 couchages » */
.hc-form .hc-section-title{
	font-family:var(--hc-font-display);font-size:clamp(2rem,5vw,48px);font-weight:400;font-style:italic;
	color:var(--hc-title-color);line-height:1.15;text-align:center;margin:0 0 .8rem;
}
/* Sous-titre : « 3 bâtisses : … » */
.hc-form .hc-section-desc{
	font-family:var(--hc-font-display);font-size:clamp(1.1rem,2.4vw,22px);font-style:italic;
	text-align:center;margin:0 0 2rem;
}
.hc-form .hc-house{margin:0 0 2.2rem}
.hc-form .hc-house-title{margin:0 0 .6rem}
.hc-form .hc-house-desc{margin:0 0 .6rem;font-style:italic}
.hc-form .hc-room{
	display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:.5rem 1.5rem;align-items:center;
	padding:.8rem 0;border-top:1px solid #e6e6e6;
}
.hc-form .hc-room:last-child{border-bottom:1px solid #e6e6e6}
.hc-form .hc-room-label{margin:0;line-height:1.45}
.hc-form .hc-room-inputs{display:flex;flex-direction:column;gap:.5rem}
@media (max-width:760px){.hc-form .hc-room{grid-template-columns:1fr}}

/* ---------- Actions ---------- */
.hc-form .hc-notes{margin:0 0 1.5rem}
.hc-form .hc-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}
.hc-form .hc-actions button.hc-pdf,
.hc-form .hc-actions button.hc-reset{
	-webkit-appearance:none;appearance:none;margin:0;box-shadow:none;cursor:pointer;
	font:inherit;font-weight:700;text-transform:none;letter-spacing:normal;line-height:1.2;
	border-radius:var(--hc-radius);transition:background .15s,color .15s,border-color .15s;
}
.hc-form .hc-actions button.hc-pdf{background:var(--hc-accent);color:#fff;border:1px solid var(--hc-accent);padding:.9rem 2rem;font-size:1.05rem}
.hc-form .hc-actions button.hc-pdf:hover,
.hc-form .hc-actions button.hc-pdf:focus{background:#7f5892;border-color:#7f5892;color:#fff}
.hc-form .hc-actions button.hc-reset{background:none;color:var(--hc-muted);border:0;padding:.5rem;font-weight:400;text-decoration:underline}
.hc-form .hc-actions button.hc-reset:hover,
.hc-form .hc-actions button.hc-reset:focus{background:none;color:var(--hc-text);border:0}
.hc-form .hc-privacy{text-align:center;color:var(--hc-muted);font-size:.85rem;margin:1rem 0 0}
