#chapter[data-chapter="chambre"] .room-intro{text-align:center;padding:110px 7% 70px;scroll-margin-top:150px}
#chapter .room-intro>p:last-of-type{max-width:560px;margin:28px auto 0!important}
.room-hero-actions,.room-intro-actions{display:flex;gap:30px;justify-content:center;align-items:center;flex-wrap:wrap}
.room-hero-actions{margin-top:35px;animation:chapter-description 1.2s 2s both}.room-hero-actions .text-link{margin:0}.room-intro-actions .text-link{margin-top:30px}
#chapter .room-rate{display:block;color:#b9b9af;margin:0 0 30px}
#chapter[data-chapter="chambre"] .visit-stage{justify-content:flex-start;padding-top:24px;box-sizing:border-box}
#chapter[data-chapter="chambre"] .text-link{position:relative;border:0;transition:transform .4s,color .4s}
#chapter[data-chapter="chambre"] .text-link:after{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s}
#chapter[data-chapter="chambre"] .text-link:is(:hover,:focus-visible){transform:translateX(6px);color:#fff}
#chapter[data-chapter="chambre"] .text-link:is(:hover,:focus-visible):after{transform:scaleX(1)}
#room-dialog{width:min(980px,calc(100% - 32px));max-height:90svh;background:#111210;border:1px solid #ffffff25;padding:65px 6% 45px;color:#f3f1ea}
#room-dialog h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(32px,4vw,56px);font-weight:500;letter-spacing:-.055em;margin:0 0 25px}
#room-dialog h3{font-weight:400;font-size:19px;margin:0}
#room-dialog .eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#b6b5aa;margin-bottom:20px}
.room-close{position:absolute;right:27px;top:20px;font-size:12px;padding:8px}
.room-facts{margin:30px 0}.room-facts details{border-top:1px solid #ffffff25;padding:18px 0}.room-facts summary{cursor:pointer;font-size:16px}.room-facts p{font-size:14px;margin:20px 0 0;max-width:650px}
#room-dialog .calendar-demo{font-size:12px;color:#b7ad92;line-height:1.5}
.calendar-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:45px;margin-top:30px}
.month-nav{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:25px}.month-nav button{font-size:10px;padding:8px 0}.month-nav h3{text-transform:capitalize;font-size:16px!important;white-space:nowrap}
.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekdays{text-align:center;font-size:11px;color:#999;margin-bottom:12px}
.calendar-day{aspect-ratio:1;padding:0;border:1px solid transparent;font-size:14px;transition:background .2s,border-color .2s}.calendar-day:not(:disabled):hover{border-color:#aaa;background:#ffffff10}.calendar-day:disabled{opacity:.25;cursor:default}.calendar-day.is-closed{text-decoration:line-through;color:#8c8c82}.calendar-day.is-selected{background:#e4dfcf;color:#151610}.calendar-day.in-range{background:#ffffff15}
#room-dialog .calendar-legend{font-size:10px;margin:18px 0;color:#92958c}.booking-summary{border-left:1px solid #ffffff25;padding-left:30px}.booking-dates{display:grid;gap:20px;font-size:11px;color:#aaa}.booking-dates strong{display:block;color:#eee;font-size:14px;font-weight:400;margin-top:5px}
#room-dialog .booking-total{font:400 36px 'Space Grotesk';color:#eee;margin:25px 0 10px}.booking-total small{font:12px 'DM Sans';display:block;margin-top:8px}.booking-summary>p{font-size:12px}.booking-summary .chapter-cta{width:100%;margin-top:15px}.booking-summary .text-link{font-size:11px;margin-top:18px}.chapter-cta:disabled{opacity:.3;cursor:not-allowed;transform:none}
#room-dialog .booking-notice{font-size:12px;margin:20px 0 0;color:#d8cfae}.calendar-manage{font-size:10px;color:#888;margin-top:25px;border-bottom:1px solid #ffffff25;padding:4px 0}
#room-request{max-width:540px}#room-request label{display:block;font-size:13px;margin:18px 0}#room-request input,#room-request select{width:100%;background:#1a1b18;border:1px solid #ffffff35;color:#eee;border-radius:0;padding:12px;margin-top:8px}#room-request .calendar-demo{margin-top:25px}
@media(max-width:700px){#chapter[data-chapter="chambre"] .room-intro{padding:65px 7% 45px}.room-hero-actions{gap:20px}.calendar-layout{grid-template-columns:1fr;gap:25px}.booking-summary{border-left:0;border-top:1px solid #ffffff25;padding:25px 0 0}.booking-dates{grid-template-columns:1fr 1fr}#room-dialog{padding:65px 24px 35px}.month-nav h3{font-size:16px!important}.calendar-day{max-height:48px}.room-hero-actions .chapter-cta{font-size:12px}}
@media(prefers-reduced-motion:reduce){#chapter[data-chapter="chambre"] .text-link:is(:hover,:focus-visible){transform:none}}
.calendar-day{max-height:44px}
.calendar-day.is-selected:not(:disabled):hover{background:#e4dfcf;color:#151610}
#chapter[data-chapter="chambre"] .ribbon-photo img{object-position:center 68%}
@media(min-width:701px){#room-dialog{padding-top:50px;padding-bottom:30px}#room-dialog h2{font-size:44px}.calendar-layout{margin-top:20px}.booking-summary .booking-total{margin-top:18px}}
#chapter[data-chapter="chambre"] .chapter-hero-copy>p:not(.eyebrow){max-width:520px;margin:28px auto 0!important;color:#e0e0d7;animation:chapter-description 1.2s 1.65s both}

.room-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}#room-request input,#room-request select{box-sizing:border-box;min-width:0;width:100%;color-scheme:dark}#room-request .fine{font-size:14px;line-height:1.6} @media(max-width:540px){.room-date-fields{grid-template-columns:1fr}}
