/* ==========================================================================
   CozyStay V61 - Home spacing cleanup
   - remove visual compression toward the bottom of the homepage
   - keep a consistent vertical rhythm
   - V60 journey section remains
   ========================================================================== */

body.v61-home-clean main > section:not(:first-child),
body.v61-home-clean main > .section:not(:first-child) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Standard vertical rhythm for ordinary homepage sections */
body.v61-home-clean main > section:not(:first-child):not(.v61-no-spacing),
body.v61-home-clean main > .section:not(:first-child):not(.v61-no-spacing) {
  padding-top: 74px !important;
  padding-bottom: 74px !important;
}

/* Preserve full-width background blocks while keeping same inner rhythm */
body.v61-home-clean main > section[class*="guest"],
body.v61-home-clean main > section[class*="cta"],
body.v61-home-clean main > section[class*="banner"] {
  padding-top: 64px !important;
  padding-bottom: 64px !important;
}

/* V60 journey section should follow the same vertical rhythm */
body.v61-home-clean #v60-journey {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 74px !important;
  padding-bottom: 74px !important;
}

/* Prevent stacked inner headings from creating inconsistent large/small gaps */
body.v61-home-clean main > section > :first-child {
  margin-top: 0;
}
body.v61-home-clean main > section > :last-child {
  margin-bottom: 0;
}

/* Card grids get a consistent gap */
body.v61-home-clean :is(
  .cards,
  .card-grid,
  .grid,
  .gallery-grid,
  .activity-grid,
  .meeting-grid,
  .host-grid,
  .news-grid
) {
  gap: 18px !important;
}

/* Equal card rhythm */
body.v61-home-clean :is(
  .card,
  .meeting-card,
  .host-card,
  .profile-card,
  .news-card,
  .gallery-card
) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Large desktop */
@media (min-width: 1100px) {
  body.v61-home-clean main > section:not(:first-child):not(.v61-no-spacing),
  body.v61-home-clean main > .section:not(:first-child):not(.v61-no-spacing),
  body.v61-home-clean #v60-journey {
    padding-top: 82px !important;
    padding-bottom: 82px !important;
  }
}

/* Mobile */
@media (max-width: 760px) {
  body.v61-home-clean main > section:not(:first-child):not(.v61-no-spacing),
  body.v61-home-clean main > .section:not(:first-child):not(.v61-no-spacing),
  body.v61-home-clean #v60-journey {
    padding-top: 52px !important;
    padding-bottom: 52px !important;
  }

  body.v61-home-clean :is(
    .cards,
    .card-grid,
    .grid,
    .gallery-grid,
    .activity-grid,
    .meeting-grid,
    .host-grid,
    .news-grid
  ) {
    gap: 14px !important;
  }
}
