/* Review revision, 2026-10-09. The original archive remains untouched. */
#our-story.statement { padding:clamp(80px,10vw,150px) 0; }
#our-story .statement-inner { gap:clamp(30px,5vw,80px); }
#our-story .statement-text { min-width:0; }
#our-story .statement-body { font-size:14px; word-break:keep-all; }
#our-story .statement-quote { font-size:clamp(26px,2.8vw,42px); }
#our-story .statement-collage { min-width:0; }
#our-story .collage-photo--a { transition-delay:140ms; }
#our-story .collage-photo--b { transition-delay:280ms; }

#our-features { padding-block:clamp(64px,7vw,100px); }
#our-features .moments-heading { display:grid; grid-template-columns:1.5fr 1fr; align-items:end; column-gap:40px; margin:40px 0 52px; }
#our-features .editorial-kicker { grid-column:1/-1; }
#our-features .moments-heading h2 { font-size:clamp(30px,3.5vw,50px); }
#our-features .moments-heading > p { margin:0 0 10px; justify-self:end; font-size:13px; }
#our-features .moments-composition { grid-template-columns:repeat(3,minmax(0,1fr)); gap:58px 28px; align-items:stretch; }
#our-features .moment { grid-column:auto; margin:0; padding:0; }
#our-features .moment-photo { aspect-ratio:3/2; overflow:hidden; }
#our-features .moment-photo img { width:100%; height:100%; object-fit:cover; transition:transform 1.1s cubic-bezier(.2,.65,.2,1); }
#our-features .moment-copy { max-width:none; margin:0; padding:24px 0 0; }
#our-features .moment-copy h3 { font-size:clamp(23px,2vw,30px); margin:12px 0 14px; }
#our-features .moment-copy p { font-size:13px; line-height:1.95; word-break:keep-all; }
#our-features .moment-photo figcaption { left:14px; bottom:14px; }
@media (hover:hover) {
  #our-features .moment:hover img { transform:scale(1.055); }
}

#stays .stays-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(20px,3vw,46px); align-items:stretch; }
#stays .stay-card:nth-child(n) { grid-column:auto; width:100%; margin:0; min-width:0; }
#stays .stay-card:nth-child(n) .room-card-link { display:flex; height:100%; flex-direction:column; gap:0; }
#stays .stay-card .room-card-img { width:100%; aspect-ratio:3/2; overflow:hidden; }
#stays .stay-card .room-card-img img { width:100%; height:100%; aspect-ratio:auto; object-fit:cover; transition:transform 1.2s cubic-bezier(.16,1,.3,1); }
#stays .stay-card:nth-child(n) .room-card-body { display:flex; flex:1; flex-direction:column; padding:24px 0 0; }
#stays .stay-card .room-card-meta { justify-content:space-between; }
#stays .stay-card .room-card-desc { flex:1; }
#stays .stay-card .room-card-cta { margin-top:16px; padding-bottom:16px; transition:color .3s; }
#stays .stay-card .room-card-cta::after { transition:transform .55s cubic-bezier(.16,1,.3,1); }
.motion-ready #stays .stay-card[data-reveal] { opacity:0; transform:translateY(85px) rotate(1.5deg); transition:opacity .85s ease,transform 1.15s cubic-bezier(.16,1,.3,1); }
.motion-ready #stays .stay-card:nth-child(2) { transition-delay:130ms; }
.motion-ready #stays .stay-card:nth-child(3) { transition-delay:260ms; }
.motion-ready #stays .stay-card[data-reveal] img { transform:scale(1.16); }
.motion-ready #stays .stay-card[data-reveal].is-visible { opacity:1; transform:none; }
.motion-ready #stays .stay-card[data-reveal].is-visible img { transform:scale(1); }
@media (hover:hover) {
  #stays .stay-card .room-card-link:hover img,
  .motion-ready #stays .stay-card.is-visible .room-card-link:hover img { transform:scale(1.075); }
  #stays .room-card-link:hover .room-card-cta::after { transform:translateX(10px); }
}
#stays .room-card-link:focus-visible { outline:2px solid var(--accent); outline-offset:7px; }
@media (max-width:1099px) {
  #our-features .moments-composition { grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px 26px; }
  #our-features .moments-heading { grid-template-columns:1fr; }
  #our-features .moments-heading > p { justify-self:start; margin:20px 0 0; }
  #stays .stay-card .room-card-name { font-size:32px; }
  #stays .stay-card .room-card-meta { flex-direction:column; align-items:flex-start; }
}
@media (max-width:767px) {
  #our-story .statement-inner { grid-template-columns:1fr; }
  #our-story .statement-text { max-width:none; }
  #our-story .statement-collage { width:100%; }
  #stays .stays-grid { grid-template-columns:1fr; gap:46px; }
  #stays .stay-card .room-card-meta { flex-direction:row; }
  .motion-ready #stays .stay-card:nth-child(n) { transition-delay:0ms; transform:translateY(48px); }
  .motion-ready #stays .stay-card.is-visible:nth-child(n) { transform:none; }
}
@media (max-width:639px) {
  #our-features .moments-composition { grid-template-columns:1fr; gap:42px; }
  #our-features .moments-heading { margin-bottom:32px; }
  #our-features .moment-copy h3 { font-size:27px; }
  #our-features .moment-copy { padding-top:20px; }
}
@media (prefers-reduced-motion:reduce) {
  .motion-ready #stays .stay-card[data-reveal],
  .motion-ready #stays .stay-card[data-reveal] img,
  #stays .stay-card .room-card-img img,
  #our-features .moment-photo img { opacity:1; transform:none !important; transition:none; }
}

/* Full-bleed opening and the combined story of six ways to rest. */
.home-page main { padding-top:0; }
.home-page .home-hero { display:block; padding:0; margin:0; height:100svh; min-height:620px; max-height:none; }
.home-page .hero-topline { position:absolute; top:120px; left:var(--gutter); right:var(--gutter); }
.home-page .home-hero-copy { position:absolute; margin:0; right:var(--gutter); top:50%; transform:translateY(-50%); left:var(--gutter); }
.home-page .home-hero h1 { font-size:clamp(76px,10vw,150px); letter-spacing:.08em; line-height:1.25; }
.home-page .home-hero-description { font:300 clamp(17px,1.6vw,24px)/1.9 var(--font-serif); margin-top:24px; }
.home-page #navbar:not(.scrolled) { background:transparent; backdrop-filter:none; border-color:transparent; }
.home-page #navbar:not(.scrolled) .logo,
.home-page #navbar:not(.scrolled) .nav-links:not(.open) a:not(.nav-cta),
.home-page #navbar:not(.scrolled) .nav-links:not(.open) a.active { color:white !important; }
.home-page #navbar:not(.scrolled) .hamburger:not(.open) span { background:white; }
.home-page #navbar:not(.scrolled) .nav-links:not(.open) .nav-cta { background:#ffffff1f !important; border:1px solid #ffffff75; }
#our-features .moment-room-link { display:flex; justify-content:space-between; padding:18px 0 10px; margin-top:8px; border-bottom:1px solid #ffffff40; color:#fff8e7; font-size:12px; }
#our-features .moment-room-link span { display:inline-block; transition:transform .4s; }
#our-features .moment-room-link:hover span { transform:translate(4px,-4px); }
@media (max-width:767px) {
 .home-page .home-hero { min-height:580px; }
 .home-page .hero-topline { top:99px; }
 .home-page .hero-topline > span:last-child { display:none; }
 .home-page .home-hero h1 { font-size:78px; }
 .home-page .home-hero-copy { top:46%; }
 .home-page .hero-eyebrow { font-size:10px; letter-spacing:.03em; }
}

.home-page .hero-bottomline { position:absolute; width:auto; left:var(--gutter); right:var(--gutter); bottom:0; }
