/* Alice & Roméo canonical OwnerRez booking shell */
:root{--ar-confirm-pay-logo:url("../assets/v397/ar_logo_wordmark_master_v397.png")}
@font-face{font-family:"AR Haas Text";src:url("../assets/v172/4d715b7ca934de402a12.otf") format("opentype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"AR Haas Text";src:url("../assets/v172/537be7f5e14212874708.otf") format("opentype");font-style:italic;font-weight:400;font-display:swap}

@media(max-width:760px){
  html.ar-ownerrez-date-sheet-open,
  html.ar-ownerrez-date-sheet-open body{height:100%;overflow:hidden!important}
  html.ar-ownerrez-date-sheet-open .booking-heading,
  html.ar-ownerrez-date-sheet-open .booking-guest-record,
  html.ar-ownerrez-date-sheet-open .booking-help{display:none!important}
  html.ar-ownerrez-date-sheet-open .booking-shell,
  html.ar-ownerrez-date-sheet-open .ownerrez-frame,
  html.ar-ownerrez-date-sheet-open [data-ownerrez-widget-mount]{box-sizing:border-box;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
  /* The normal mobile widget has a 1152px minimum height. The ID selector is
     intentional here: it must outrank that baseline while the date sheet is
     open so the sticky Save dates footer stays inside the phone viewport. */
  html.ar-ownerrez-date-sheet-open #ownerrez-widget-mount iframe.ownerrez-widget-iframe{display:block!important;width:100%!important;height:100dvh!important;min-height:0!important;border:0!important}
}
@font-face{font-family:"AR Haas Text";src:url("../assets/v172/b78cb631e2e55c498e00.otf") format("opentype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"AR Haas Display";src:url("../assets/v172/0f011885bfb051907725.otf") format("opentype");font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#29251f;--paper:#e8e1d6;--muted:#6b645b;--line:rgba(41,37,31,.18)}
*{box-sizing:border-box}
html{background:var(--paper);color:var(--ink)}
body{margin:0;font-family:"AR Haas Text","Helvetica Neue",Arial,sans-serif;line-height:1.45}
a{color:inherit;text-underline-offset:.18em}
.booking-shell{width:min(1700px,100%);margin-inline:auto;padding:0 clamp(22px,2vw,34px) clamp(12px,1.5vw,20px)}
.booking-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:clamp(20px,4vw,64px);margin:0 0 3px}
h1{margin:0;font-family:"AR Haas Display","Helvetica Neue",Arial,sans-serif;font-size:clamp(2rem,2.7vw,3rem);font-weight:400;line-height:.96;letter-spacing:-.035em}
.booking-direct-note{display:none;max-width:34rem;margin:0 0 .12rem;color:rgba(41,37,31,.62);font-size:clamp(.74rem,.82vw,.86rem);font-weight:400;line-height:1.35;letter-spacing:.01em;text-align:left}
.booking-direct-note em{font-style:italic}
.booking-guest-record{display:flex;flex-direction:column;align-items:center;justify-content:center;width:fit-content;max-width:100%;margin:clamp(8px,1vw,12px) auto;padding:7px 0 8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:rgba(41,37,31,.72)}
.booking-guest-record__title{margin:0 0 .35rem;color:rgba(41,37,31,.72);font-size:.62rem;font-weight:500;letter-spacing:.14em;line-height:1.2;text-align:center;text-transform:uppercase;white-space:nowrap}
.booking-guest-record ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem clamp(14px,1.7vw,28px);margin:0;padding:0;list-style:none}
.booking-guest-record li{display:inline-flex;align-items:center;color:rgba(41,37,31,.64);font-size:.6rem;font-weight:400;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}
.booking-guest-record li+li::before{margin-right:clamp(14px,1.7vw,28px);color:rgba(41,37,31,.2);font-size:.54rem;line-height:1;content:"★"}
.booking-guest-record__rating{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;text-align:center}
.booking-guest-record__rating-copy{display:none}
.booking-guest-record__score{display:inline-block;color:rgba(41,37,31,.50);font-size:.9rem;font-weight:400;letter-spacing:-.015em;line-height:1}
.booking-guest-record__stars{display:inline-block;color:rgba(41,37,31,.44);font-size:.66rem;letter-spacing:.055em;line-height:1}
.ownerrez-frame{margin-top:2px;padding:0;background:transparent;border:0}
#ownerrez-widget-mount:empty{display:none}
#ownerrez-widget-mount .ownerrez-widget,#ownerrez-widget-mount .ownerrez-widget-iframe{display:block;width:100%;border:0}
#ownerrez-widget-mount,#ownerrez-widget-mount .ownerrez-widget,#ownerrez-widget-mount .ownerrez-widget-iframe{width:100%!important;max-width:100%!important}
/* OwnerRez supplies the live desktop height inline. Keep only a compact
   safety floor so the booking shell does not manufacture empty space before
   FAQ | Practical Notes. Mobile retains its separate full-flow minimum. */
#ownerrez-widget-mount .ownerrez-widget-iframe{min-height:560px!important}
#ownerrez-widget-mount:has(.ownerrez-widget-iframe)+.booking-help{display:none}
.booking-help{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}
.booking-help p{margin:0}
@media(min-width:1101px){
  .booking-shell{display:grid;grid-template-columns:minmax(0,1.95fr) minmax(300px,.8fr);column-gap:clamp(38px,4.7vw,68px)}
  .booking-heading{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.95fr) minmax(300px,.8fr);column-gap:clamp(38px,4.7vw,68px)}
  .booking-heading h1{grid-column:1}
  .booking-direct-note{display:none}
  .booking-guest-record{grid-column:1;justify-self:center}
  .ownerrez-frame{grid-column:1/-1;margin-top:-4px}
  #ownerrez-widget-mount .ownerrez-widget-iframe{min-height:584px!important}
}
@media(max-width:720px){
  html,body{max-width:100%;overflow-x:hidden}
  .booking-shell{width:100%;padding:4px max(14px,4vw) 18px}
  .booking-heading{display:block;margin-bottom:6px}
  h1{font-size:clamp(2rem,10vw,2.75rem)}
  .booking-direct-note{display:block;max-width:28rem;margin:.65rem 0 0;font-size:.78rem;text-align:left;text-wrap:pretty}
  .booking-direct-note{position:static;transform:none}
  .booking-guest-record{width:100%;margin:14px 0 16px;padding:12px 0;text-align:center}
  .booking-guest-record__title{margin-bottom:.65rem}
  .booking-guest-record ul{gap:.5rem .8rem}
  .booking-guest-record li{white-space:normal}
  .booking-guest-record li+li::before{margin-right:.8rem}
  .booking-guest-record__rating{flex:0 0 100%;display:flex!important;flex-direction:column;gap:.2rem;color:inherit;line-height:1}
  .booking-guest-record__rating-copy{display:none}
  .booking-guest-record__score{display:block;font-size:.9rem;font-weight:400;letter-spacing:-.015em;line-height:1}
  .booking-guest-record__stars{display:block;color:rgba(41,37,31,.44);font-size:.66rem;letter-spacing:.055em;line-height:1}
  .ownerrez-frame{margin-top:12px}
  #ownerrez-widget-mount .ownerrez-widget-iframe{min-height:560px!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
