/* Phase 25: small global polish for navigation, section rhythm and search entry. */
html[data-agoversion-phase25="ready"] {
  --ago25-ink: #12251f;
  --ago25-cream: #fff7e2;
  --ago25-line: #ffffff24;
  --ago25-lagoon: #13a38f;
  --ago25-gold: #f5c95c;
  --ago25-coral: #f28a6e;
}

html[data-agoversion-phase25="ready"] :is(.hero, .explore-hero, .rooms-hero, .stays-hero, .gallery-hero, .journal-hero) {
  min-height: min(760px, calc(100svh - 84px)) !important;
}

html[data-agoversion-phase25="ready"] :is(.section, .home-scene, .journal-page > section, .rooms-page > section, .stays-page > section, .gallery-page > section, .explore-page > section) {
  scroll-margin-top: 92px;
}

html[data-agoversion-phase25="ready"] :is(.section, .home-scene):not(.soro-blog-embed) {
  padding-block: clamp(46px, 6vw, 86px);
}

html[data-agoversion-phase25="ready"] :is(.section-heading, .home-dream-gallery__heading, .home-signals__intro) {
  gap: clamp(14px, 2.4vw, 32px);
  margin-bottom: clamp(20px, 3vw, 36px);
}

html[data-agoversion-phase25="ready"] :is(.section-heading h2, .home-dream-gallery__heading h2, .home-signals__intro h2) {
  max-width: 18ch;
  line-height: .96;
}

html[data-agoversion-phase25="ready"] :is(.button, .booking-bar__button, .mobile-menu__search, .search-button, .menu-button, .header-music) {
  text-wrap: balance;
}

html[data-agoversion-phase25="ready"] .site-header .header-music {
  overflow: visible;
  border-color: color-mix(in srgb, var(--ago25-gold) 72%, white 18%) !important;
  background:
    radial-gradient(circle at 72% 30%, #fff1a7 0 7%, transparent 18%),
    linear-gradient(145deg, #132e28, #071b17) !important;
}

html[data-agoversion-phase25="ready"] .site-header .header-music::after {
  content: "";
  position: absolute;
  inset: -7px;
  z-index: -1;
  border-radius: inherit;
  background: radial-gradient(circle, #ffd86a66 0, #ff8e7250 36%, transparent 68%);
  opacity: .38;
  transform: scale(.92);
  animation: ago25-play-glow 2.6s ease-in-out infinite;
}

html[data-agoversion-phase25="ready"] .site-header .header-music[aria-pressed="true"]::after {
  opacity: .72;
}

@keyframes ago25-play-glow {
  0%, 100% {
    opacity: .28;
    transform: scale(.9);
  }
  50% {
    opacity: .78;
    transform: scale(1.12);
  }
}

html[data-agoversion-phase25="ready"] .site-header .search-button {
  border-color: #ffffff45 !important;
  background:
    linear-gradient(145deg, #ffffff10, #ffffff04),
    #071d18d6 !important;
}

html[data-agoversion-phase25="ready"] .site-header .search-button[data-agoversion-phase25-search="ready"] {
  box-shadow: inset 0 1px #ffffff24, 0 0 0 1px #13a38f22, 0 10px 24px #0617132e;
}

html[data-agoversion-phase25="ready"] .ago25-all-pages,
html[data-agoversion-phase25="ready"] .ago25-hero-all-pages {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid #ffe49a8c;
  border-radius: 14px;
  color: var(--ago25-ink);
  background: linear-gradient(105deg, #fff0a6, #ffc95f 48%, #ff9d80);
  box-shadow: inset 0 1px #fff8, 0 14px 30px #07171338;
  font: 900 11px/1 system-ui, sans-serif;
  letter-spacing: .09em;
  text-decoration: none;
  text-transform: uppercase;
}

html[data-agoversion-phase25="ready"] .ago25-all-pages {
  grid-column: 1 / -1;
  margin: 0 0 4px;
  min-height: 42px;
}

html[data-agoversion-phase25="ready"] .ago25-hero-all-pages {
  margin-top: 14px;
  width: fit-content;
  padding-inline: 16px;
}

html[data-agoversion-phase25="ready"] :is(.more-menu__panel, .mobile-menu) a {
  overflow-wrap: anywhere;
}

html[data-agoversion-phase25="ready"] .mobile-menu[data-agoversion-phase20-menu="ready"] {
  max-height: 100svh;
  overflow-y: auto;
}

html[data-agoversion-phase25="ready"] .mobile-menu__primary > a,
html[data-agoversion-phase25="ready"] .mobile-menu__map a,
html[data-agoversion-phase25="ready"] .mobile-menu__actions > :is(a, button) {
  line-height: 1.08;
}

html[data-agoversion-phase25="ready"] :is(.room-card, .stay-card, .experience-card, .gallery-card, .home-signal-card, .ago24-gallery-card) {
  min-width: 0;
}

html[data-agoversion-phase25="ready"] :is(.room-card h2, .room-card h3, .stay-card h2, .stay-card h3, .experience-card h2, .experience-card h3, .gallery-card h2, .gallery-card h3, .ago24-gallery-card strong) {
  overflow-wrap: anywhere;
  text-wrap: balance;
}

@media (min-width: 901px) {
  html[data-agoversion-phase25="ready"] .more-menu__panel {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  html[data-agoversion-phase25="ready"] .more-menu__panel > div {
    min-height: 100%;
  }
}

@media (max-width: 900px) {
  html[data-agoversion-phase25="ready"] :is(.hero, .explore-hero, .rooms-hero, .stays-hero, .gallery-hero, .journal-hero) {
    min-height: min(720px, calc(100svh - 72px)) !important;
  }

  html[data-agoversion-phase25="ready"] :is(.section, .home-scene):not(.soro-blog-embed) {
    padding-block: clamp(34px, 10vw, 58px);
  }

  html[data-agoversion-phase25="ready"] .ago25-hero-all-pages {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-agoversion-phase25="ready"] .site-header .header-music::after {
    animation: none !important;
  }
}
