.stay-page{padding-bottom:0}.stay-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding-top:36px;font-size:12px;font-weight:600;color:var(--muted)}.stay-breadcrumbs a:hover{color:var(--forest)}.stay-breadcrumbs .icon{width:12px;height:12px;transform:rotate(-90deg)}
.stay-heading{display:flex;justify-content:space-between;gap:35px;align-items:flex-end;padding:24px 0 31px}.stay-heading h1{font-size:clamp(54px,6vw,82px);font-weight:800;line-height:1.05;letter-spacing:-.065em}.stay-subtitle{font-size:18px;font-weight:550;line-height:1.75;margin-top:16px;max-width:700px;color:var(--muted)}.stay-location-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:650;line-height:1.7;margin-top:14px;border-bottom:1px solid var(--gold);padding-bottom:4px}.stay-location-link .icon{height:15px;width:15px;color:#9e7a42}.stay-heading-action{border:1px solid var(--line);background:transparent;padding:12px 19px;font-size:13px;white-space:nowrap;min-height:48px;gap:9px}.stay-heading-action .icon{height:17px;width:17px}
.stay-mosaic-shell{position:relative;padding:6px;border-radius:25px;background:#e5eadd;overflow:hidden}.stay-mosaic{display:grid;grid-template-columns:1.55fr 1fr 1fr;grid-template-rows:250px 250px;gap:9px;border-radius:20px;overflow:hidden}.stay-mosaic>a:first-child{grid-row:span 2}.stay-mosaic a{display:block;min-width:0;overflow:hidden;background:#e5eadd}.stay-mosaic img{object-position:center;transition:transform .7s var(--ease)}.stay-mosaic a:hover img{transform:scale(1.025)}.stay-all-photos-button{position:absolute;right:25px;bottom:25px;background:var(--paper);color:var(--forest);font-size:13px;font-weight:750;min-height:46px;padding:12px 18px;gap:9px;box-shadow:0 4px 25px #213c3110}.stay-all-photos-button .icon{height:17px;width:17px}
.stay-subnav{display:flex;align-items:center;gap:30px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:21px 0;font-size:13px;font-weight:700}.stay-subnav a:hover{color:#917141}
.stay-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:65px;align-items:start;margin-top:43px}.stay-content{min-width:0}.stay-facts{display:flex;gap:13px 25px;flex-wrap:wrap;align-items:center;font-size:14px;font-weight:650;padding-bottom:28px;border-bottom:1px solid var(--line)}.stay-facts>span{display:flex;align-items:center;gap:8px}.stay-facts .icon{height:18px;width:18px;color:#9a7c49}
.stay-block{padding:34px 0;border-bottom:1px solid var(--line)}.stay-block h2{font-size:32px;font-weight:750;line-height:1.22;letter-spacing:-.045em;max-width:640px}.stay-block>.body-copy{font-size:16px;line-height:1.9;margin-top:21px;max-width:700px}.stay-block>.body-copy+.body-copy{margin-top:16px}.stay-highlights{display:grid;grid-template-columns:1fr;gap:23px;margin-top:30px}.stay-highlight{display:flex;align-items:flex-start;gap:15px}.stay-highlight>.icon{height:25px;width:25px;color:#8e794e;margin-top:2px}.stay-highlight h3{font-size:15px;font-weight:750;line-height:1.6}.stay-highlight p{font-size:14px;font-weight:500;line-height:1.8;color:var(--muted);margin-top:4px}
.stay-booking{position:sticky;top:calc(var(--header-height) + 22px);padding:6px;border-radius:25px;background:#e5eadd;box-shadow:0 12px 50px #233f2d08}.stay-booking-inner{padding:27px 24px;border-radius:20px;background:var(--paper);box-shadow:inset 0 0 0 1px #253d3508}.stay-booking-eyebrow{font-size:12px;font-weight:700;color:#8b754b;margin-bottom:10px}.stay-booking h2{font-size:29px;font-weight:800;line-height:1.2;letter-spacing:-.05em}.stay-booking-intro{font-size:13px;line-height:1.8;color:var(--muted);margin-top:14px}.stay-reserve-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;margin-top:25px}.stay-reserve-field{min-width:0}.stay-reserve-field.full{grid-column:1/-1}.stay-reserve-field label{display:block;font-size:12px;font-weight:700;line-height:1.5;margin-bottom:8px}.stay-reserve-field input,.stay-reserve-field select{display:block;width:100%;min-width:0;border:1px solid #dce2d3;border-radius:10px;background:#f2f5ec;padding:12px 10px;font-size:16px;line-height:1.5;font-weight:550;color:var(--forest);color-scheme:light}.stay-reserve-field input::-webkit-calendar-picker-indicator{width:14px;opacity:.65;cursor:pointer}.stay-reserve-form>.pill{grid-column:1/-1;justify-content:space-between;font-size:13px;padding-left:16px;gap:9px}.stay-reserve-form .arrow-disc{width:30px;height:30px}.stay-booking-note{font-size:11px;line-height:1.9;color:var(--muted);margin-top:18px;text-align:center}.stay-booking-direct{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:20px;padding-top:19px;border-top:1px solid var(--line);font-size:12px;font-weight:650}.stay-booking-direct .icon{width:15px;height:15px;color:#967746}
.stay-amenity-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 30px;margin-top:29px}.stay-amenity{display:flex;align-items:flex-start;gap:13px;min-width:0}.stay-amenity>.icon{width:24px;height:24px;color:#8e794e;margin-top:2px}.stay-amenity h3{font-size:15px;font-weight:750;line-height:1.6}.stay-amenity p{font-size:13px;font-weight:500;line-height:1.8;color:var(--muted);margin-top:4px}
.stay-photo-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:23px}.stay-photo-count{font-size:12px;font-weight:650;line-height:1.6;color:var(--muted);white-space:nowrap}.stay-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.stay-photo-link{display:block;position:relative;aspect-ratio:1/1.05;padding:4px;min-width:0;background:#e6ebdf;border-radius:14px;overflow:hidden}.stay-photo-link img{border-radius:10px;transition:transform .6s var(--ease)}.stay-photo-link:hover img{transform:scale(1.025)}.stay-photo-index{position:absolute;bottom:12px;left:12px;background:#183d2ac9;color:#fff;border-radius:99px;padding:3px 8px;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.stay-all-photos{margin-top:21px}.stay-all-photos>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--gold);font-size:14px;font-weight:750;list-style:none;cursor:pointer;width:fit-content;max-width:100%}.stay-all-photos>summary::-webkit-details-marker{display:none}.stay-all-photos>summary .icon{height:17px;width:17px;transition:transform .3s var(--ease)}.stay-all-photos[open]>summary .icon{transform:rotate(180deg)}.stay-all-photos>.stay-photo-grid{margin-top:23px}
.stay-location-card{display:flex;gap:17px;align-items:flex-start;padding:23px;background:#edf1e5;border-radius:17px;margin-top:25px}.stay-location-card>.icon{width:24px;height:24px;color:#937645;flex-shrink:0;margin-top:2px}.stay-location-card strong{font-size:15px;font-weight:750;line-height:1.6}.stay-location-card p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:8px}.stay-location-card .text-link{font-size:12px;margin-top:12px}.stay-notes{display:grid;gap:15px;margin-top:24px}.stay-notes p{display:flex;align-items:flex-start;gap:11px;font-size:14px;line-height:1.9;color:var(--muted)}.stay-notes .icon{height:17px;width:17px;color:#8c784e;margin-top:5px;flex-shrink:0}
.stay-other{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center;background:#edf0e5;border-radius:25px;padding:7px;margin-top:67px;margin-bottom:80px}.stay-other-image{height:290px;overflow:hidden;border-radius:19px}.stay-other-image img{object-position:50% 48%}.stay-other-copy{padding:25px 32px 25px 0;min-width:0}.stay-other-copy .eyebrow{font-size:11px;margin-bottom:16px}.stay-other-copy h2{font-size:34px;font-weight:750;line-height:1.15;letter-spacing:-.05em}.stay-other-copy p{font-size:15px;line-height:1.8;color:var(--muted);margin-top:17px}.stay-other-copy .text-link{font-size:14px;margin-top:18px}.stay-mobile-booking{display:none}.stay-photo-close-hint{font-size:11px;color:#becbbb}
@media(max-width:1199px){.stay-layout{grid-template-columns:minmax(0,1fr) 325px;gap:40px}.stay-mosaic{grid-template-rows:215px 215px}.stay-booking-inner{padding:23px 20px}.stay-heading h1{font-size:69px}.stay-subtitle{font-size:17px}.stay-block h2{font-size:30px}.stay-amenity-grid{column-gap:20px}.stay-other-copy h2{font-size:31px}}
@media(max-width:1023px){.stay-page{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.stay-layout{grid-template-columns:1fr;gap:0}.stay-booking{display:none}.stay-mosaic{grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:185px 185px}.stay-mosaic-shell{border-radius:21px}.stay-mosaic{border-radius:16px}.stay-heading h1{font-size:64px}.stay-mobile-booking{position:fixed;display:flex;justify-content:space-between;align-items:center;gap:20px;bottom:0;left:0;right:0;z-index:21;padding:12px 30px max(12px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -5px 30px #203c2c08}.stay-mobile-booking strong{display:block;font-size:17px;font-weight:800;letter-spacing:-.035em;line-height:1.4}.stay-mobile-booking small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:2px}.stay-mobile-booking .pill{font-size:13px;gap:15px;min-height:48px}.stay-mobile-booking .arrow-disc{width:31px;height:31px}.stay-other{gap:32px}.stay-other-copy{padding-right:24px}.stay-subnav{gap:25px}}
@media(max-width:767px){.stay-breadcrumbs{padding-top:25px;font-size:11px;gap:7px}.stay-heading{display:block;padding:22px 0 25px}.stay-heading h1{font-size:57px}.stay-subtitle{font-size:16px;line-height:1.8;margin-top:13px}.stay-location-link{font-size:12px;margin-top:12px}.stay-heading-action{margin-top:22px;font-size:12px;min-height:44px}.stay-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:340px 145px 145px;gap:7px}.stay-mosaic>a:first-child{grid-column:1/-1;grid-row:auto}.stay-mosaic-shell{padding:5px;border-radius:20px}.stay-mosaic{border-radius:15px}.stay-all-photos-button{right:16px;bottom:16px;min-height:43px;font-size:11px;padding:10px 13px;gap:8px}.stay-subnav{gap:12px 22px;font-size:12px;padding-block:20px}.stay-layout{margin-top:29px}.stay-facts{font-size:12px;gap:13px 18px;padding-bottom:25px}.stay-facts .icon{height:17px;width:17px}.stay-block{padding-block:29px}.stay-block h2{font-size:29px;line-height:1.25}.stay-block>.body-copy{font-size:16px;line-height:1.85;margin-top:19px}.stay-highlight{gap:13px}.stay-highlight h3{font-size:15px}.stay-highlight p{font-size:14px}.stay-amenity-grid{grid-template-columns:1fr;gap:24px;margin-top:26px}.stay-amenity{gap:14px}.stay-amenity h3{font-size:15px}.stay-amenity p{font-size:14px;line-height:1.8}.stay-photo-grid{grid-template-columns:1fr 1fr;gap:10px}.stay-photo-heading{display:block}.stay-photo-count{margin-top:11px;display:block}.stay-photo-link{aspect-ratio:1/1.1}.stay-all-photos>summary{font-size:13px}.stay-location-card{padding:20px;gap:12px}.stay-location-card p{font-size:13px}.stay-location-card strong{font-size:14px}.stay-notes p{font-size:14px}.stay-other{grid-template-columns:1fr;gap:0;margin-top:43px;margin-bottom:55px;padding:6px}.stay-other-image{height:285px;border-radius:19px}.stay-other-copy{padding:26px 21px 29px}.stay-other-copy h2{font-size:32px}.stay-other-copy p{font-size:15px}.stay-mobile-booking{padding-inline:20px;gap:14px}.stay-mobile-booking strong{font-size:16px}.stay-mobile-booking .pill{font-size:12px;gap:12px;padding-left:17px}.stay-mobile-booking small{font-size:10px}.stay-page .footer{margin-bottom:12px}}
@media(max-width:379px){.stay-heading h1{font-size:51px}.stay-mosaic{grid-template-rows:300px 125px 125px}.stay-all-photos-button{font-size:10px;padding-inline:11px;gap:7px}.stay-facts{font-size:11px;gap:12px 15px}.stay-mobile-booking{padding-inline:16px;gap:10px}.stay-mobile-booking .pill{font-size:11px;gap:8px;padding-left:14px}.stay-mobile-booking .arrow-disc{height:28px;width:28px}.stay-mobile-booking strong{font-size:15px}.stay-mobile-booking small{font-size:9px}.stay-block h2{font-size:27px}}

.stay-heading > *, .stay-mosaic > *, .stay-layout > *,
.stay-other > *, .stay-location-card > div, .stay-highlight > div,
.stay-amenity > div { min-width: 0; }
.stay-block h2, .stay-highlight h3, .stay-amenity h3,
.stay-location-card, .stay-other-copy { overflow-wrap: anywhere; }
.stay-photo-link img {
  position: absolute;
  inset: 4px;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
}

@media (max-width: 1023px) {
  .stay-mobile-booking { padding-inline: 24px; gap: 16px; }
  .stay-mobile-booking > div { min-width: 0; flex: 1; }
  .stay-mobile-booking .pill { max-width: 65%; flex-shrink: 0; }
  .stay-mobile-booking small { font-size: 11px; line-height: 1.5; }
  .stay-page { padding-bottom: calc(116px + env(safe-area-inset-bottom)); }
  .stay-page .toast { bottom: calc(116px + env(safe-area-inset-bottom)); }
  .stay-page .navigation-shell .mobile-nav {
    max-height: calc(100dvh - var(--header-height) - 140px - env(safe-area-inset-bottom));
  }
}

@media (max-width: 767px) {
  .stay-breadcrumbs { padding-top: 20px; }
  .stay-heading h1 { font-size: clamp(44px, 12vw, 64px); }
  .stay-heading-action { white-space: normal; max-width: 100%; }
  .stay-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: clamp(240px, 70vw, 430px) clamp(110px, 31vw, 180px);
  }
  .stay-mosaic > a:nth-child(n + 4) { display: none; }
  .stay-all-photos-button { min-height: 44px; max-width: calc(100% - 24px); right: 12px; bottom: 12px; }
  .stay-subnav { gap: 6px 20px; padding-block: 12px; }
  .stay-subnav a { display: inline-flex; align-items: center; min-height: 44px; }
  .stay-facts { font-size: 13px; gap: 12px 18px; }
  .stay-block h2 { font-size: clamp(27px, 7.5vw, 34px); }
  .stay-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stay-photo-link { aspect-ratio: 1; }
  .stay-location-card { padding: 18px; }
  .stay-location-card p { font-size: 14px; }
  .stay-other { margin-top: 40px; margin-bottom: 60px; }
  .stay-other-image { height: clamp(220px, 64vw, 360px); }
  .stay-other-copy { padding: 24px 18px; }
  .stay-other-copy h2 { font-size: 30px; }
  .stay-mobile-booking { padding-inline: 16px; gap: 12px; }
  .stay-mobile-booking strong { font-size: 16px; }
  .stay-mobile-booking .pill { font-size: 13px; padding-left: 16px; gap: 10px; }
}
