/* Compact additions; retain the approved colour, typography and photo layout. */
.sam-calendar-month select{flex:1;max-width:calc(100% - 104px);height:44px;border:0;background:transparent;color:#173f32;text-align:center;font:600 16px/1.2 system-ui,sans-serif;cursor:pointer;text-transform:capitalize}
.sam-dates-dialog .sam-calendar-grid button{min-height:44px}
.sam-date-error{font:500 13px/1.5 system-ui,sans-serif;color:#923f28;padding:10px 12px;border-radius:10px;background:#fff0e8;margin:8px 0}
.sam-date-error[hidden]{display:none}
.sam-calendar-month select:focus-visible,.sam-property-date-button:focus-visible,.sam-guest-stepper button:focus-visible{outline:3px solid #b69240;outline-offset:3px}
.sam-property-booking{margin:0 0 14px;font-family:system-ui,sans-serif}
.sam-property-date-button{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:5px 10px;text-align:left;width:100%;min-height:78px;padding:14px 16px;background:#fffdf8;border:1px solid #cbd8cb;border-radius:14px;color:#173f32;cursor:pointer}
.sam-property-date-button>span:first-child{font-size:12px;grid-column:1}
.sam-property-date-button strong{font-size:15px;line-height:1.5;grid-column:1}
.sam-property-date-button>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:28px}
.sam-property-date-status{font-size:13px;line-height:1.5;margin:10px 0;color:#556a5b}
.sam-property-date-status:empty{display:none}
.sam-calendar-enhanced>.sam-native-date-part{display:none!important}
.sam-calendar-enhanced [data-sam-cal-ok]{width:100%;box-sizing:border-box;min-height:48px;justify-content:center}
.sam-calendar-enhanced [data-sam-cal-ok][hidden]{display:none!important}
.sam-guest-stepper{display:flex;align-items:center;gap:10px;width:100%;max-width:360px}
.sam-guest-stepper button{flex:0 0 46px;width:46px;height:46px;border:1px solid #cbd8cb;border-radius:50%;background:#fff;color:#173f32;font:400 24px/1 system-ui,sans-serif;cursor:pointer}
.sam-guest-stepper button:disabled{opacity:.4;cursor:default}
.sam-guest-stepper select{width:100%!important;min-width:0;min-height:48px;font-size:16px!important;border-radius:12px!important}
.sam-terms-compact{border-top:1px solid #dce2d8;margin:20px 0;padding-top:14px;color:#536858;font:400 13px/1.6 system-ui,sans-serif}
.sam-terms-compact summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600;color:#173f32;list-style:none}
.sam-terms-compact summary::after{content:'+';margin-left:auto;font-size:20px}
.sam-terms-compact[open] summary::after{content:'−'}
.sam-terms-compact p{margin:8px 0}
.sam-property-proof{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}
.sam-property-proof a{display:inline-flex;align-items:center;min-height:44px;border:1px solid #dce2d8;border-radius:24px;padding:6px 13px;color:#173f32;background:#fff;font:600 12px/1.3 system-ui,sans-serif;text-decoration:none}
body.single-sam_logement .sam-map-section,body.single-sam_logement .sam-location-proof{width:100%!important;max-width:1060px}
body.single-sam_logement .sam-property-map{margin:24px 0!important;scroll-margin-top:24px}
body.single-sam_logement .sam-property-map .sam-neighborhood{margin-top:0}
body.single-sam_logement .sam-property-map #sam-neighborhood-map{height:290px}
@media(max-width:760px){body.single-sam_logement .sam-property-map #sam-neighborhood-map{height:260px}body.single-sam_logement .sam-property-map .sam-neighborhood-heading{padding:16px}body.single-sam_logement .sam-property-map .sam-neighborhood-heading h3{font-size:24px}}
@media(max-width:380px){.sam-dates-dialog{padding:12px;width:calc(100% - 16px)}.sam-calendar-grid{gap:2px}.sam-date-tabs button{padding:8px}.sam-date-tabs button strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){.sam-gallery-inline{scroll-behavior:auto!important}}
.sam-search-feedback{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:14px 16px;border-radius:14px;background:#eef3ed;color:#173f32;font:400 13px/1.5 system-ui,sans-serif}
.sam-search-feedback[hidden]{display:none!important}
.sam-search-feedback p{flex:1 1 180px;margin:0}
.sam-search-feedback button,.sam-search-feedback a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid #cbd8cb;border-radius:24px;background:#fff;color:#173f32;font:600 13px/1.3 system-ui,sans-serif;text-decoration:none;cursor:pointer}
.sam-search-feedback button[hidden],.sam-search-feedback a[hidden]{display:none!important}
.sam-search-feedback button:focus-visible,.sam-search-feedback a:focus-visible{outline:3px solid #b69240;outline-offset:3px}
.sam-search-feedback[data-state="loading"] p:before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;background:#b69240;margin-right:8px}
.sam-ac [data-sam-grille]{scroll-margin-top:90px}
@media(max-width:760px){.sam-quicknav a{white-space:normal!important;line-height:1.25!important;text-align:center}.sam-date-dock:not([hidden]){padding-top:max(8px,env(safe-area-inset-top,0px))}}

/* Arrival/departure access and legible booking states, September 2026. */
.sam-calendar-enhanced{padding:12px!important}
.sam-property-booking{margin:0}
.sam-property-date-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.sam-property-date-fields .sam-property-date-button{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:76px;padding:12px;border-radius:12px}
.sam-property-date-fields .sam-property-date-button>span{font-size:12px;color:#556a5b}
.sam-property-date-fields .sam-property-date-button strong{font-size:14px;line-height:1.4}
.sam-property-minimum{display:block;margin:10px 2px 0;color:#556a5b;font-size:12px;line-height:1.5}
.sam-calendar-enhanced [data-sam-cal-ok]:not([hidden]){margin-top:12px}
.sam-dates-dialog[open]{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 24px)}
.sam-dates-dialog .sam-dialog-top{flex-shrink:0;margin-bottom:10px}
.sam-dates-dialog .sam-date-tabs{flex-shrink:0;margin-bottom:10px}
.sam-calendar-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:0 2px 4px;scrollbar-width:thin}
.sam-dates-dialog .sam-calendar-help{margin:0 0 6px;font-size:12px}
.sam-dates-dialog .sam-calendar-grid button{position:relative;opacity:1;min-height:44px;font-size:14px;touch-action:manipulation}
.sam-dates-dialog .sam-calendar-grid button:disabled{color:#9ba79f}
.sam-dates-dialog .sam-calendar-grid button.is-occupied{background:#fde9e8;color:#a52830;border:1px solid #f0bbb9;text-decoration:line-through;text-decoration-thickness:1.5px}
.sam-dates-dialog .sam-calendar-grid button.is-checkout:not(.is-selected){background:linear-gradient(135deg,#eef5ed 50%,#fde9e8 50%);color:#173f32;text-decoration:none;border:1px solid #b7c9b9}
.sam-dates-dialog .sam-calendar-grid button.is-past{background:transparent;color:#abb6ac;border:0}
.sam-dates-dialog .sam-calendar-grid button.is-selected{color:#fff;border-color:#173f32;text-decoration:none}
.sam-calendar-legend{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0 4px;font-size:11px;color:#536858;flex-wrap:wrap}
.sam-calendar-legend[hidden],.sam-calendar-retry[hidden]{display:none}
.sam-calendar-legend span{display:inline-flex;align-items:center;gap:5px}
.sam-calendar-legend i{width:12px;height:12px;border-radius:4px;display:inline-block;border:1px solid #b5c5b8}
.sam-key-free{background:#fffdf8}.sam-calendar-legend .sam-key-busy{background:#fde9e8;border-color:#d78387}.sam-calendar-legend .sam-key-selected{background:#173f32;border-color:#173f32}
.sam-calendar-status{font-size:12px;line-height:1.5;color:#6a5944;margin:8px 0 0}
.sam-calendar-status:empty{display:none}
.sam-calendar-retry{min-height:44px;border:1px solid #cbd8cb;background:#fffdf8;color:#173f32;border-radius:10px;padding:8px 12px;margin-top:8px;font-weight:600;cursor:pointer}
.sam-calendar-footer{flex-shrink:0;border-top:1px solid #e2e7df;padding-top:10px;margin-top:10px;background:#fffdf8}
.sam-calendar-footer .sam-date-summary{min-height:0;margin:0 0 8px;font-size:12px;line-height:1.5;text-align:center}
.sam-calendar-footer .sam-date-error{max-height:72px;overflow-y:auto}
.sam-dates-dialog .sam-calendar-grid button:focus-visible{outline:3px solid #b69240;outline-offset:0}
@media(max-width:520px){.sam-dates-dialog[open]{width:100%;max-width:none;margin:auto 0 0;border-radius:22px 22px 0 0;padding:14px 16px max(14px,env(safe-area-inset-bottom));max-height:94dvh}.sam-dates-dialog .sam-dialog-top h2{font-size:18px}.sam-dates-dialog .sam-date-tabs button{min-height:58px}.sam-dates-dialog .sam-calendar-grid{gap:2px}.sam-dates-dialog .sam-calendar-week{margin-bottom:6px}.sam-calendar-legend{margin-top:8px}.sam-calendar-footer{padding-top:8px;margin-top:8px}}
