/* ================================================================
   LES DEUX CHÊNES — booking.css
   Formulaire rapide de demande de disponibilité + encart économies
   Feuille partagée (style.css et conversion.css) : couleurs en dur.
================================================================ */

/* ── Section ── */
.dispo{position:relative;padding:72px 0;background:#eaf1e9;border-top:1px solid rgba(74,122,77,.14);border-bottom:1px solid rgba(74,122,77,.14)}
.dispo-inner{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}
.dispo-head{text-align:center;max-width:620px;margin:0 auto 2.2rem}
.dispo-head .eyebrow{font-size:.67rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#4a7a4d;display:block;margin-bottom:.85em}
.dispo-head h2{font-family:'Playfair Display',serif;font-weight:400;color:#3d2b1a;font-size:clamp(1.55rem,3.5vw,2.3rem);line-height:1.18;margin-bottom:.5rem}
.dispo-head p{font-size:.95rem;color:#5a4a3a;line-height:1.7;margin:0}

/* ── Carte formulaire ── */
.dispo-card{background:#fff;border:1px solid rgba(212,201,184,.7);border-radius:12px;box-shadow:0 12px 48px rgba(61,43,26,.1);padding:2rem;max-width:900px;margin:0 auto}
.dispo-card .form-note{font-size:.78rem;color:#5a4a3a;padding:.7rem 1rem;background:#faf7f2;border-radius:8px;border-left:3px solid #4a7a4d;margin-bottom:1.5rem;line-height:1.6}
.dispo-card .form-note a{color:#4a7a4d;font-weight:700}

.dispo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.dispo-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:.2rem}
.dfield{display:flex;flex-direction:column;margin-bottom:1rem}
.dfield label{font-size:.74rem;font-weight:700;letter-spacing:.06em;color:#5a4a3a;margin-bottom:.42rem}
.dfield .req{color:#b85438}
.dfield input,.dfield select,.dfield textarea{width:100%;padding:.7rem 1rem;border:1.5px solid #e4dcd0;border-radius:8px;font-family:'Lato',sans-serif;font-size:.9rem;color:#2a1f14;background:#faf7f2;transition:border-color .22s,box-shadow .22s;outline:none;appearance:none;-webkit-appearance:none;min-height:46px}
.dfield input:focus,.dfield select:focus,.dfield textarea:focus{border-color:#3a6b3d;box-shadow:0 0 0 3px rgba(74,122,77,.12);background:#fff}
.dfield input:focus-visible,.dfield select:focus-visible,.dfield textarea:focus-visible{outline:2px solid #b85438;outline-offset:3px}
.dfield textarea{resize:vertical;min-height:84px;line-height:1.6}
.dfield select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235a4a3a' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}

/* Récapitulatif nuits */
.dispo-recap{display:none;align-items:center;gap:.55rem;font-size:.83rem;color:#3a6b3d;background:#e8f0e8;border-radius:8px;padding:.6rem .9rem;margin:.2rem 0 1rem}
.dispo-recap.on{display:flex}
.dispo-recap svg{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:#4a7a4d;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dispo-recap b{font-weight:700}
.dispo-error{display:none;font-size:.83rem;color:#b85438;background:#f5e0d8;border-radius:8px;padding:.6rem .9rem;margin:.2rem 0 1rem}
.dispo-error.on{display:block}

/* RGPD + envoi */
.dispo-check{display:flex;align-items:flex-start;gap:.7rem;margin:.4rem 0 1.3rem}
.dispo-check input[type="checkbox"]{width:22px;height:22px;flex:0 0 22px;margin-top:.1em;border:1.5px solid #d4c9b8;border-radius:5px;background:#fff;cursor:pointer;appearance:none;-webkit-appearance:none;background-repeat:no-repeat;background-position:center;background-size:13px 13px;transition:background-color .2s,border-color .2s}
.dispo-check input[type="checkbox"]:checked{background-color:#3a6b3d;border-color:#3a6b3d;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M2.5 7.5l3 3 6-6' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.dispo-check input[type="checkbox"]:focus-visible{outline:2px solid #b85438;outline-offset:3px}
.dispo-check label{font-size:.78rem;color:#5a4a3a;line-height:1.55;font-weight:400}
.dispo-check a{color:#4a7a4d}

.dispo-actions{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}
.dispo-send{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#4a7a4d;color:#fff;border:none;border-radius:8px;padding:1em 2.2em;font-family:'Lato',sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:background .22s,transform .22s;min-height:52px}
.dispo-send:hover{background:#3a6b3d;transform:translateY(-1px)}
.dispo-send:focus-visible{outline:2px solid #b85438;outline-offset:3px}
.dispo-send svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dispo-or{font-size:.84rem;color:#5a4a3a}
.dispo-or a{color:#b85438;font-weight:700;white-space:nowrap}
.dispo-reassure{display:flex;gap:1.4rem;flex-wrap:wrap;justify-content:center;margin-top:1.6rem;font-size:.78rem;color:#5a4a3a}
.dispo-reassure span{display:inline-flex;align-items:center;gap:.4rem}
.dispo-reassure b{color:#3d2b1a}

/* Champ anti-spam */
.hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* ── Encart « ce que vous économisez » ── */
.save-box{background:#e8f0e8;border:1px solid rgba(74,122,77,.24);border-radius:12px;padding:1.4rem 1.5rem;margin-top:1.8rem}
.save-box h3{font-family:'Playfair Display',serif;font-weight:400;font-size:1.12rem;color:#3d2b1a;margin:0 0 .2rem}
.save-box .save-sub{font-size:.8rem;color:#5a4a3a;margin:0 0 1rem}
.save-bar{display:flex;height:34px;border-radius:6px;overflow:hidden;font-size:.72rem;font-weight:700;letter-spacing:.04em}
.save-bar span{display:flex;align-items:center;justify-content:center;color:#fff;white-space:nowrap}
.save-bar .save-host{flex:82;background:#4a7a4d}
.save-bar .save-fee{flex:18;background:#b85438}
.save-legend{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:.8rem;font-size:.78rem;color:#5a4a3a}
.save-legend span{display:inline-flex;align-items:center;gap:.4rem}
.save-legend i{width:10px;height:10px;border-radius:2px;display:inline-block}
.save-legend .li-host{background:#4a7a4d}
.save-legend .li-fee{background:#b85438}
.save-note{font-size:.78rem;color:#3d2b1a;margin:.9rem 0 0;line-height:1.6}
.save-note strong{color:#3a6b3d}

@media(max-width:900px){
  .dispo-grid{grid-template-columns:repeat(2,1fr)}
  .dispo-grid-3{grid-template-columns:1fr}
}
@media(max-width:768px){
  .dispo{padding:52px 0}
  .dispo-inner{padding:0 18px}
  .dispo-card{padding:1.4rem}
  .dispo-send{width:100%}
  .dispo-actions{gap:.8rem}
  .dfield input,.dfield select,.dfield textarea{font-size:16px}
}
@media(max-width:480px){
  .dispo-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .dispo-send:hover{transform:none}
}

/* ── Messages de retour (partagés avec contact.html) ── */
.form-status{border-radius:8px;padding:.95rem 1.25rem;font-size:.86rem;line-height:1.65;margin:0 0 1.25rem}
.form-status[data-status="success"]{background:#e8f0e8;border-left:3px solid #3a6b3d;color:#3d2b1a}
.form-status[data-status="error"]{background:#f5e0d8;border-left:3px solid #b85438;color:#3d2b1a}
