/* --------------------------------------------
/* Gutenberg V4 Base Styles
/* -------------------------------------------- */

.oc__page-template {
  background: white;
}

.wp-block-group.is-layout-constrained:not(.alignfull)
.wp-block-group__inner-container {
  max-width: 1080px;
  margin: 0 auto;
}

/* --------------------------------------------
/* Style iframes in Copy Layouts.
/* -------------------------------------------- */

.oc__block__copy-layout
iframe {
  width: 100%;
}

/* --------------------------------------------
/* Style groups in Copy Layouts.
/* -------------------------------------------- */

.oc__block__copy-layout
.wp-block-group.alignfull {
  width: 100%;
}

/* --------------------------------------------
/* Add additional spacing to floating images in Copy Layouts.
/* -------------------------------------------- */

.oc__block__copy-layout
.wp-block-image
figure.alignleft {
  margin-right: var(--oc--spacing--15);
}

.oc__block__copy-layout
.wp-block-image
figure.alignright {
  margin-left: var(--oc--spacing--15);
}

/* --------------------------------------------
/* Style Cover block.
/* -------------------------------------------- */

.wp-block-cover
.wp-block-cover__inner-container
.oc__block.oc__block__copy-layout--full-page {
  margin-top: unset;
  margin-bottom: unset;
  padding: var(--oc--spacing--20) 0;
}

.wp-block-cover
.media-credit {
  position: absolute;
  bottom: 8px !important;
  right: 6px !important;

  display: grid;
  place-items: center;

  width: 28px;
  height: 28px;

  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 100%;
}

.wp-block-cover
.media-credit:hover {
  cursor: pointer;
}

/* Lift wave sections above Cover block overlays. */
.oc__block.oc__block__wave-layout-section {
  z-index: 1;
}

.oc__block.oc__block__wave-layout-section--before-wave
.oc__block__wave-layout-section__content
> .wp-block-cover
.wp-block-cover__inner-container {
  padding-bottom: calc(var(--oc--wave-layout--wave-height) * 1.25);
}

.oc__block.oc__block__wave-layout-section--before-wave
.oc__block__wave-layout-section__content
> .wp-block-cover
.media-credit {
  bottom: var(--oc--wave-layout--wave-height) !important;
}

/* --------------------------------------------
/* Style figure captions.
/* -------------------------------------------- */

.oc__block__copy-layout
figcaption.wp-element-caption {
  color: var(--oc--color--navy-text);
  font-family: var(--oc--font-family--base);
  font-size: 14px;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 0.28px;
}

/* --------------------------------------------
/* Style image gallery block.
/* -------------------------------------------- */

.page-template-template-v4-page
.wp-block-gallery
figure:hover {
  cursor: pointer;
}

.page-template-template-v4-page
.wp-block-gallery
figure img {
  border-radius: 8px;
}

.page-template-template-v4-page
.wp-block-gallery
figcaption {
  border-radius: 0 0 8px 8px;
}

.page-template-template-v4-page
.wp-block-gallery
.media-credit {
  position: absolute;
  bottom: 6px;
  right: 6px;

  width: 28px;
  height: 28px;

  background-image: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28' fill='none'%3E%3Crect x='11' y='12' width='4' height='1' fill='white' /%3E%3Cg filter='url(%23filter0_b_4193_93)'%3E%3Ccircle cx='14' cy='14' r='14' fill='white' fill-opacity='0.3' /%3E%3C/g%3E%3Cpath d='M13 12H15V20H13V12Z' fill='white' /%3E%3Cpath d='M16 7.5C16 8.32843 15.3284 9 14.5 9C13.6716 9 13 8.32843 13 7.5C13 6.67157 13.6716 6 14.5 6C15.3284 6 16 6.67157 16 7.5Z' fill='white' /%3E%3Cpath d='M11 12H15V13H11V12Z' fill='white' /%3E%3Cdefs%3E%3Cfilter id='filter0_b_4193_93' x='-8' y='-8' width='44' height='44' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix' /%3E%3CfeGaussianBlur in='BackgroundImageFix' stdDeviation='4' /%3E%3CfeComposite in2='SourceAlpha' operator='in' result='effect1_backgroundBlur_4193_93' /%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='effect1_backgroundBlur_4193_93' result='shape' /%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E%0A");
}

.page-template-template-v4-page
.wp-block-gallery
.media-credit:hover {
  cursor: pointer;
}

.page-template-template-v4-page
.wp-block-gallery
.media-credit
svg {
  display: none;
}

.oc__block__side-navigation-layout-content
.wp-block-gallery {
  max-width: 680px;
}

/* --------------------------------------------
/* Style legacy Scroller & Social Shares Shortcode
/* -------------------------------------------- */

.page-template-template-v4-page
.scroller-and-social-share-block
.shares {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}

.page-template-template-v4-page
.scroller-and-social-share-block
.shares
a {
  color: var(--oc--color--navy-blue);
}

.page-template-template-v4-page
.scroller-and-social-share-block
.mouse-container {
  background: #fff;
  margin: 2rem auto;
  padding: 5px;
  width: 50px;
}

.page-template-template-v4-page
.scroller-and-social-share-block
.mouse {
  margin: auto;
  height: 42px;
  width: 24px;
  border-radius: 100px;
  border: 3px solid rgba(40,40,40,.12);
}

.page-template-template-v4-page
.scroller-and-social-share-block
.mouse::after {
  -webkit-animation: scroller-mouse 1.2s ease infinite;
  animation: scroller-mouse 1.2s ease infinite;
  background: #2aa7dd;
  border-radius: 100px;
  content: '';
  display: block;
  height: 10px;
  margin: 7px auto;
  position: relative;
  width: 4px;
}

.page-template-template-v4-page
.scroller-and-social-share-block
.arrow-scroll {
  width: 24px;
  margin: 10px auto auto;
}

.page-template-template-v4-page
.scroller-and-social-share-block
.arrow-scroll
> span {
  -webkit-animation-delay: .2s;
  -webkit-animation: scroller-arrow 1s infinite;
  -webkit-transform: rotate(45deg);
  animation-delay: .2s;
  animation: scroller-arrow 1s infinite;
  border-bottom: 2px solid rgba(40, 40, 40, .12);
  border-right: 2px solid rgba(40, 40, 40, .12);
  display: block;
  font-family: Arial,sans-serif;
  height: 9px;
  margin: 5px auto 3px;
  transform: rotate(45deg);
  width: 9px;
}

@keyframes scroller-mouse {
  0% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(8px);
  }
}

@keyframes scroller-arrow {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 0.5;
  }

  100% {
    opacity: 1;
  }
}

/* --------------------------------------------
/* Utility classes.
/* -------------------------------------------- */

.oc__my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.oc__mb-20 {
  margin-bottom: var(--oc--spacing--20) !important;
}

.oc__mb-30 {
  margin-bottom: var(--oc--spacing--30) !important;
}

.oc__mb-40 {
  margin-bottom: var(--oc--spacing--40) !important;
}

.oc__mt-20 {
  margin-top: var(--oc--spacing--20) !important;
}

.oc__py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.oc__py-10 {
  padding-top: var(--oc--spacing--10) !important;
  padding-bottom: var(--oc--spacing--10) !important;
}

.oc__pb-20 {
  padding-bottom: var(--oc--spacing--20) !important;
}

.oc__pt-20 {
  padding-top: var(--oc--spacing--20) !important;
}

.oc__py-20 {
  padding-top: var(--oc--spacing--20) !important;
  padding-bottom: var(--oc--spacing--20) !important;
}
