/* Keep WordPress' automatic block spacing out of card grids. */
.editable-page-content .quick-grid,
.editable-page-content .levels,
.editable-page-content .gallery{
  align-items:stretch;
}

body .editable-page-content .quick-grid > .quick-card,
body .editable-page-content .levels > .level-card,
body .editable-page-content .gallery > .gallery-frame{
  margin-block-start:0 !important;
  margin-block-end:0 !important;
}

body .editable-page-content .quick-grid > .quick-card,
body .editable-page-content .levels > .level-card{
  height:100%;
}

/* Add breathing room between the home hero and the price/information row. */
body .editable-page-content > .quick{
  margin-top:28px !important;
}

@media (max-width:520px){
  body .editable-page-content > .quick{
    margin-top:18px !important;
  }
}

/* Keep editable cover photos above the fallback background colour. */
body .editable-page-content .wp-block-cover.hero > .wp-block-cover__image-background,
body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__image-background{
  z-index:1 !important;
  opacity:1 !important;
}

body .editable-page-content .wp-block-cover.hero > .wp-block-cover__background,
body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__background{
  z-index:2 !important;
}

body .editable-page-content .wp-block-cover.hero > .wp-block-cover__inner-container,
body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__inner-container{
  position:relative;
  z-index:3 !important;
}

/* Lighter photography, while keeping enough contrast for white hero text. */
body .editable-page-content .wp-block-cover.hero > .wp-block-cover__background{
  opacity:.38 !important;
}

body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__background{
  opacity:.44 !important;
}

/* Use one consistent hero height and vertical text position on every page. */
body .editable-page-content .wp-block-cover.hero,
body .editable-page-content .wp-block-cover.page-hero{
  min-height:620px !important;
  height:620px !important;
  padding:120px 0 70px !important;
  align-items:flex-start !important;
}

body .editable-page-content .wp-block-cover.hero > .wp-block-cover__inner-container,
body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__inner-container{
  display:block;
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  margin:0 !important;
}

body .editable-page-content .hero .hero-inner,
body .editable-page-content .page-hero .content{
  width:min(820px,calc(100% - 2rem));
  max-width:820px !important;
  margin-inline:auto !important;
}

/* WordPress constrains only the homepage cover to its narrow content column.
   Centre the homepage text against the viewport and match the other heroes. */
body .editable-page-content .hero .hero-inner{
  position:relative;
  left:50%;
  width:min(820px,calc(100vw - 2rem)) !important;
  max-width:none !important;
  margin-inline:0 !important;
  transform:translateX(-50%);
}

/* Match homepage hero typography to the other page heroes. */
body .editable-page-content .hero h1{
  font-family:ui-rounded,"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif !important;
  font-size:clamp(3rem,5.7vw,5.35rem) !important;
  line-height:.92 !important;
  letter-spacing:-.055em !important;
}

body .editable-page-content .hero .hero-inner > p:not(.eyebrow){
  max-width:760px;
  font-size:1.15rem !important;
  line-height:1.65 !important;
}

/* A livelier Caribbean teal for the gallery instead of the near-navy panel. */
body .editable-page-content .section.dark{
  background:
    radial-gradient(circle at 91% 9%,rgba(255,200,87,.38),transparent 24%),
    radial-gradient(circle at 8% 88%,rgba(244,92,69,.24),transparent 27%),
    linear-gradient(145deg,#087c80,#125c72) !important;
}

body .editable-page-content .section.dark .lead{
  color:#effffb;
}

body .editable-page-content .gallery > .gallery-frame{
  border-color:rgba(255,255,255,.42);
  box-shadow:0 14px 34px rgba(4,47,57,.25);
}

/* Less empty space between the class cards and the following information. */
body .editable-page-content .dance-seo-section{
  padding-top:45px;
}

/* The footer remains a visual anchor, but now reads as rich teal instead of black. */
body .site-footer{
  background:linear-gradient(145deg,#0b4551,#115d6d);
}

@media (max-width:520px){
  body .editable-page-content .wp-block-cover.hero,
  body .editable-page-content .wp-block-cover.page-hero{
    min-height:600px !important;
    height:600px !important;
    padding:105px 0 55px !important;
  }

  body .editable-page-content .wp-block-cover.hero > .wp-block-cover__inner-container,
  body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__inner-container{
    min-height:0 !important;
  }

  body .editable-page-content .hero .hero-inner,
  body .editable-page-content .page-hero .content{
    width:min(100% - 1.25rem,1160px);
  }

  body .editable-page-content .hero .hero-inner{
    width:min(820px,calc(100vw - 1.25rem)) !important;
  }

  body .editable-page-content .hero h1{
    font-size:clamp(2.8rem,14vw,4.2rem) !important;
  }

  body .editable-page-content .wp-block-cover.hero > .wp-block-cover__background{
    opacity:.43 !important;
  }

  body .editable-page-content .wp-block-cover.page-hero > .wp-block-cover__background{
    opacity:.48 !important;
  }

  body .editable-page-content .dance-seo-section{
    padding-top:35px;
  }
}
