/* Generators Plus custom overrides — kept minimal on purpose. */

/* Half-opacity nav links that brighten on hover — the transition can't be
   expressed as block attributes. Opacity (not color) sidesteps core's
   `…__content {color:inherit}` rule and works on any background. All other
   header/footer styling is set in the Site Editor on the template parts. */
.wp-block-navigation
  .wp-block-navigation-item
  .wp-block-navigation-item__content {
  opacity: 0.5;
  transition: opacity 0.2s ease;
}
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content {
  opacity: 1;
}

/* --- Readability: anything on a dark band defaults to white text. ---
   (Team-bio <details>, headings without explicit colors, etc.) */
.has-dark-background-color,
.has-primary-background-color,
.has-primary-1-background-color,
.has-brand-blue-background-color {
  color: #ffffff;
}
.has-dark-background-color :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite),
.has-primary-background-color :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite),
.has-primary-1-background-color
  :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite),
.has-brand-blue-background-color
  :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite) {
  color: #ffffff;
}
.has-dark-background-color a:not(.wp-element-button),
.has-primary-background-color a:not(.wp-element-button),
.has-primary-1-background-color a:not(.wp-element-button),
.has-brand-blue-background-color a:not(.wp-element-button) {
  color: var(--wp--preset--color--accent);
}
/* Light cards nested inside dark bands revert to dark text. */
.has-muted-background-color,
.has-base-background-color,
.has-accent-background-color,
.has-muted-background-color :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite),
.has-base-background-color :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite),
.has-accent-background-color :is(h1, h2, h3, h4, h5, h6, p, li, summary, cite) {
  color: var(--wp--preset--color--contrast);
}

/* --- Hero slider (Sliderberg) --- */
/* Butt the slider against the band below it: kill the layout gap on the
   slider's next sibling. */
.entry-content > .wp-block-sliderberg-sliderberg + * {
  margin-block-start: 0;
}

/* Sliderberg centers each slide child via inline `align-items:center`, which
   shrink-wraps and centers the buttons. Full-width children in a 1140px column
   keep headings and buttons left-aligned on a shared edge. */
.wp-block-sliderberg-sliderberg .sliderberg-slide-content > * {
  width: 100%;
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}

/* Dots overlay the image bottom like the original, instead of a strip below. */
.wp-block-sliderberg-sliderberg .swiper-pagination {
  position: absolute;
  bottom: 18px;
  left: 0;
  right: 0;
  z-index: 10;
}

/* --- Brand logo band: seamless against the #28408a logo JPGs --- */
.genplus-brand-boxes {
  margin: 0 auto;
}
.genplus-brand-boxes .wp-block-image {
  margin: 0;
}
/* Hover matches the original Stack theme: navy overlay fades in over the tile. */
.genplus-brand-boxes .wp-block-image a {
  position: relative;
  display: inline-block;
  line-height: 0;
}
.genplus-brand-boxes .wp-block-image a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--dark);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.genplus-brand-boxes .wp-block-image a:hover::after {
  opacity: 0.75;
}

/* Testimonial quote emphasis */
.genplus-testimonial blockquote,
.genplus-testimonial {
  font-style: italic;
  border: none;
}
