html:has(body.sh-home-canvas), .sh-base44-html {
  scroll-behavior: smooth;
  scroll-padding-top: 5rem;
}
body.sh-home-canvas {
  margin: 0;
  background: #f5f1eb;
}
#stay-habitat-home,
.sh-base44-chrome {
  font-family: var(--font-body);
  line-height: 1.5;
}
:is(#stay-habitat-home, .sh-base44-chrome) .header-brand { align-items: center; }
:is(#stay-habitat-home, .sh-base44-chrome) .header-logo {
  width: 112px;
  height: auto;
}
@media (min-width: 768px) {
  :is(#stay-habitat-home, .sh-base44-chrome) .header-logo { width: 136px; }
}
:is(#stay-habitat-home, .sh-base44-chrome) .header-logo-dark,
:is(#stay-habitat-home, .sh-base44-chrome) .site-header.is-solid .header-logo-light {
  display: none;
}
:is(#stay-habitat-home, .sh-base44-chrome) .site-header.is-solid .header-logo-dark,
:is(#stay-habitat-home, .sh-base44-chrome) .mobile-panel .header-logo-dark {
  display: block;
}
:is(#stay-habitat-home, .sh-base44-chrome) .mobile-panel { overflow-y: auto; }
:is(#stay-habitat-home, .sh-base44-chrome) :focus-visible {
  outline: 2px solid hsl(var(--clay));
  outline-offset: 3px;
}
.sh-base44-chrome .site-header { position: sticky; }
:is(#stay-habitat-home, .sh-base44-chrome) .site-header,
:is(#stay-habitat-home, .sh-base44-chrome) .mobile-panel {
  top: var(--wp-admin--admin-bar--height, 0px);
}
:is(#stay-habitat-home, .sh-base44-chrome) .site-header nav { display: none; }
@media (min-width: 1024px) {
  :is(#stay-habitat-home, .sh-base44-chrome) .site-header nav { display: flex; }
}
#stay-habitat-home .sh-base44-skip {
  position: fixed;
  top: 0;
  left: 1rem;
  z-index: 70;
  padding: .75rem 1rem;
  background: hsl(var(--paper));
  color: hsl(var(--ink));
  transform: translateY(-110%);
}
#stay-habitat-home .sh-base44-skip:focus { transform: translateY(0); }

#stay-habitat-home .site-header {
  transition-property: background-color, border-color;
}
#stay-habitat-home .sh-hero-motion {
  position: absolute;
  z-index: 2;
  top: calc(5.5rem + var(--wp-admin--admin-bar--height, 0px));
  right: max(1.125rem, calc((100% - 1320px) / 2));
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: hsl(var(--paper));
  background: hsl(var(--ink) / .48);
  border: 1px solid hsl(var(--paper) / .44);
  border-radius: 50%;
}
#stay-habitat-home .sh-hero-motion[hidden] { display: none; }
#stay-habitat-home .sh-hero-motion:hover { background: hsl(var(--ink) / .85); }
#stay-habitat-home .sh-motion-play,
#stay-habitat-home .sh-hero-motion[data-paused] .sh-motion-pause { display: none; }
#stay-habitat-home .sh-hero-motion[data-paused] .sh-motion-play { display: inline; }

#stay-habitat-home .sh-hero-uttara {
  position: absolute;
  inset: 0;
  display: block;
  opacity: 0;
}
#stay-habitat-home .sh-hero-uttara img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (prefers-reduced-motion: no-preference) {
  #stay-habitat-home #top { --sh-hero-scale: 1.15; }
  #stay-habitat-home #top[data-motion-ready] > .sh-hero-image {
    animation: sh-hero-zoom 9s linear infinite alternate both paused;
    transform-origin: center 55%;
  }
  #stay-habitat-home #top[data-motion-ready][data-motion-multi] .sh-hero-image {
    animation: sh-hero-slide-zoom 16s linear infinite both paused;
  }
  #stay-habitat-home #top[data-motion-ready][data-motion-multi] .sh-hero-uttara {
    animation: sh-hero-crossfade 16s ease-in-out infinite both paused;
  }
  #stay-habitat-home .lightbox.is-open img { animation: sh-photo-in 280ms ease-out both; }
  #stay-habitat-home #top[data-motion-ready][data-motion-multi] .sh-hero-uttara img {
    animation-delay: -8s;
    transform-origin: center 52%;
  }
  #stay-habitat-home #top[data-motion-ready][data-motion-playing] > .sh-hero-image,
  #stay-habitat-home #top[data-motion-ready][data-motion-multi][data-motion-playing] :is(.sh-hero-image, .sh-hero-uttara) {
    animation-play-state: running;
  }
  #stay-habitat-home .faq-item[open] > p { animation: sh-detail-in 240ms ease-out both; }
  #stay-habitat-home .prop-btn:active,
  #stay-habitat-home #bookingForm button[type="submit"]:active { scale: .98; }
  #stay-habitat-home #bookingForm button[type="submit"] { transition-property: background-color, color, scale; }
  @media (max-width: 639px) {
    #stay-habitat-home #top { --sh-hero-scale: 1.11; }
  }
}
@keyframes sh-hero-zoom {
  from { transform: scale(1); }
  to { transform: scale(var(--sh-hero-scale)); }
}
/* Restart each photo's zoom while the other photo is fully visible. */
@keyframes sh-hero-slide-zoom {
  0%, 90%, 100% { transform: scale(1); }
  53%, 58% { transform: scale(var(--sh-hero-scale)); }
}
@keyframes sh-hero-crossfade {
  0%, 44%, 100% { opacity: 0; }
  51%, 94% { opacity: 1; }
}
@keyframes sh-detail-in {
  from { opacity: .65; transform: translateY(4px); }
  to { opacity: 1; transform: none; }
}
@keyframes sh-photo-in {
  from { opacity: .6; transform: scale(.98); }
  to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  html:has(body.sh-home-canvas), .sh-base44-html { scroll-behavior: auto; }
  #stay-habitat-home .sh-hero-motion { display: none; }
  :is(#stay-habitat-home, .sh-base44-chrome) *,
  :is(#stay-habitat-home, .sh-base44-chrome) *::before,
  :is(#stay-habitat-home, .sh-base44-chrome) *::after { transition-duration: 0s !important; }
}
