/* Page /reserver/ — demande de réservation gratuite. Dépend de editorial.css (hero .edh, .btn--pay/--teal). */

.edh--rsv{background:var(--aec-t);}

.rsvx{max-width:1080px;margin:0 auto;padding:48px 20px 80px;}
.rsvx__grid{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start;}

/* ---- étapes ---- */
.rsv-steps{list-style:none;display:flex;gap:8px;margin:0 0 28px;padding:0;flex-wrap:wrap;}
.rsv-steps li{flex:1;min-width:120px;display:flex;align-items:center;gap:9px;font-family:var(--aec-sans);font-size:.82rem;color:var(--aec-mut);font-weight:500;}
.rsv-steps li span{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--aec-st);color:var(--aec-mut);font-size:.78rem;font-weight:700;}
.rsv-steps li.is-on{color:var(--aec-t);}
.rsv-steps li.is-on span{background:var(--aec-t);color:var(--aec-iv);}

/* ---- alerte ---- */
.rsv-alert{background:#fbeceb;border:1px solid #e7b7b2;color:#8a2b22;border-radius:12px;padding:13px 16px;font-family:var(--aec-sans);font-size:.9rem;margin-bottom:22px;}

/* ---- cartes formulaire ---- */
.rsv-form{display:flex;flex-direction:column;gap:22px;}
.rsv-card{background:#fff;border:1px solid var(--aec-st);border-radius:16px;padding:24px 24px 26px;}
.rsv-card--who{background:var(--aec-iv);border-color:var(--aec-sable);}
.rsv-card__t{font-family:var(--aec-disp);color:var(--aec-t);font-size:1.28rem;font-weight:600;margin:0 0 6px;}
.rsv-card__lead{font-family:var(--aec-sans);color:var(--aec-mut);font-size:.9rem;line-height:1.5;margin:0 0 18px;}
.rsv-card--who .rsv-card__lead{margin-bottom:0;}

/* ---- segmented control (créer / connexion) ---- */
.rsv-seg{display:flex;gap:4px;background:var(--aec-iv);border:1px solid var(--aec-st);border-radius:999px;padding:4px;margin:0 0 20px;}
.rsv-seg__b{flex:1;border:0;background:transparent;cursor:pointer;padding:10px 14px;border-radius:999px;font-family:var(--aec-sans);font-size:.86rem;font-weight:600;color:var(--aec-mut);transition:background .18s,color .18s;}
.rsv-seg__b.is-on{background:#fff;color:var(--aec-t);box-shadow:0 1px 3px rgba(25,71,80,.12);}

/* ---- champs ---- */
.rsv-pane{display:flex;flex-direction:column;gap:14px;}
.rsv-pane[hidden]{display:none!important;} /* l'attribut hidden doit gagner sur display:flex */
.rsv-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.rsv-f{display:flex;flex-direction:column;gap:6px;}
.rsv-f>span{font-family:var(--aec-sans);font-size:.8rem;font-weight:600;color:var(--aec-mut);letter-spacing:.2px;}
.rsv-f>span em{font-style:normal;font-weight:400;color:#a29c92;}
.rsv-f input,.rsv-f textarea{font-family:var(--aec-sans);font-size:.95rem;color:var(--aec-ch);background:#fff;border:1px solid var(--aec-st);border-radius:10px;padding:12px 13px;width:100%;transition:border-color .18s,box-shadow .18s;}
.rsv-f textarea{resize:vertical;min-height:76px;}
.rsv-f input:focus,.rsv-f textarea:focus{outline:0;border-color:var(--aec-t);box-shadow:0 0 0 1px var(--aec-t);}
.rsv-f__hint{margin:2px 0 0;font-family:var(--aec-sans);font-size:.82rem;}
.rsv-f__hint a{color:var(--aec-cop);text-decoration:none;}
.rsv-f__hint a:hover{text-decoration:underline;}
/* Avertissement non bloquant (capacité annoncée dépassée). */
.rsv-f__warn{color:#B98230;font-weight:500;}
.rsv-card>.rsv-row2+.rsv-f,.rsv-card>.rsv-f+.rsv-f,.rsv-card>.rsv-f+.rsv-row2{margin-top:14px;}

/* honeypot */
.rsv-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* ---- submit + réassurance ---- */
.rsv-submit{margin-top:2px;}
.rsv-reassure{display:flex;align-items:center;justify-content:center;gap:7px;margin:14px 0 0;font-family:var(--aec-sans);font-size:.84rem;color:var(--aec-mut);}
.rsv-reassure svg{color:var(--aec-cop);flex:0 0 auto;}

/* ---- récap (aside) ---- */
.rsvx__aside{position:sticky;top:100px;}
.rsv-recap{background:#fff;border:1px solid var(--aec-st);border-radius:16px;overflow:hidden;}
.rsv-recap__media{aspect-ratio:4/3;background:var(--aec-iv);}
.rsv-recap__media img{width:100%;height:100%;object-fit:cover;display:block;}
.rsv-recap__bd{padding:20px 22px 24px;}
.rsv-recap__bd .eye{color:var(--aec-cop);}
.rsv-recap__bien{font-family:var(--aec-disp);color:var(--aec-t);font-size:1.22rem;font-weight:600;line-height:1.25;margin:6px 0 3px;}
.rsv-recap__loc{font-family:var(--aec-sans);color:var(--aec-mut);font-size:.88rem;margin:0 0 16px;}
.rsv-recap__meta{margin:0 0 16px;border-top:1px solid var(--aec-st);border-bottom:1px solid var(--aec-st);padding:12px 0;}
.rsv-recap__meta div{display:flex;justify-content:space-between;gap:12px;}
.rsv-recap__meta dt{font-family:var(--aec-sans);font-size:.85rem;color:var(--aec-mut);margin:0;}
.rsv-recap__meta dd{font-family:var(--aec-sans);font-size:.9rem;color:var(--aec-ch);font-weight:600;margin:0;text-align:right;}
.rsv-recap__pts{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:9px;}
.rsv-recap__pts li{position:relative;padding-left:24px;font-family:var(--aec-sans);font-size:.86rem;color:var(--aec-ch);line-height:1.4;}
.rsv-recap__pts li::before{content:"";position:absolute;left:0;top:2px;width:15px;height:15px;background:var(--aec-cop);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;}
.rsv-recap__back{display:inline-block;font-family:var(--aec-sans);font-size:.85rem;color:var(--aec-cop);text-decoration:none;}
.rsv-recap__back:hover{text-decoration:underline;}

/* ---- confirmation ---- */
.rsv-ok{max-width:620px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--aec-st);border-radius:20px;padding:48px 32px 44px;}
.rsv-ok__check{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 20px;border-radius:50%;background:var(--aec-t);color:var(--aec-iv);font-size:1.9rem;}
.rsv-ok h2{font-family:var(--aec-disp);color:var(--aec-t);font-size:1.7rem;font-weight:600;margin:0 0 12px;line-height:1.2;}
.rsv-ok p{font-family:var(--aec-sans);color:var(--aec-mut);font-size:.98rem;line-height:1.6;margin:0 auto 10px;max-width:52ch;}
.rsv-ok__bien{font-weight:600!important;color:var(--aec-ch)!important;}
.rsv-ok__acts{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px;}
.rsv-ok__acts .btn--ghost{display:inline-block;background:#fff;color:var(--aec-t)!important;border:1.5px solid var(--aec-st);padding:11px 26px;border-radius:999px;font-family:var(--aec-sans);font-weight:600;font-size:.9rem;text-decoration:none;}
.rsv-ok__acts .btn--ghost:hover{border-color:var(--aec-t);background:var(--aec-iv);}

/* ---- responsive ---- */
@media(max-width:860px){
	.rsvx__grid{grid-template-columns:1fr;gap:28px;}
	.rsvx__aside{position:static;order:-1;}
	.rsv-recap__media{aspect-ratio:16/9;}
}
@media(max-width:480px){
	.rsvx{padding:32px 16px 64px;}
	.rsv-row2{grid-template-columns:1fr;}
	.rsv-card{padding:20px 18px 22px;}
	.rsv-ok{padding:36px 22px 34px;}
}
