/**
 * 1. Base styles
 * ---
 * General styles that apply globally across the site.
 *
 */
body {
  background: #f2f2f2 !important;
}

.wp-site-blocks {
  overflow: hidden;
  width: 100vw;
}

.Page {
  overflow: visible !important;
}
.Page:before {
  background: var(--wp--preset--color--base);
  content: "";
  display: block;
  height: 96px;
  left: calc(50% - 50vw);
  position: absolute;
  top: 0;
  width: 100vw;
}

.Page :is([class^=wp-block-], [class*=" wp-block-"]).alignfull {
  left: calc(50% - 50vw);
  position: relative;
  width: 100vw;
}
.Page :is([class^=wp-block-], [class*=" wp-block-"]).alignfull > .alignfull {
  left: 0;
}

.Hero,
.Section {
  overflow: hidden;
}

header.airship-navbar {
  top: var(--header-offset, 0px) !important;
}

/**
 * 2. Block styles
 * ---
 * Styles specific to a single block.
 *
 */
@keyframes wp-button-is-style-arrow-button {
  0%, 100% {
    background-position: 0%;
  }
  50% {
    background-position: 100%;
  }
}
.is-style-arrow-button .wp-block-button__link {
  align-items: center;
  display: inline-grid;
  gap: 0.5em;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  letter-spacing: -1px;
  justify-content: center;
}
.is-style-arrow-button .wp-block-button__link:after {
  background-image: url('data:image/svg+xml,%3Csvg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M10 20C15.5228 20 20 15.5228 20 10C20 4.47715 15.5228 0 10 0C4.47715 0 0 4.47715 0 10C0 15.5228 4.47715 20 10 20ZM9.17048 5.34269C8.77995 4.95217 8.14678 4.95218 7.75626 5.34271C7.36574 5.73324 7.36575 6.3664 7.75628 6.75692L10.9997 10.0003L7.75627 13.2437C7.36575 13.6342 7.36575 14.2674 7.75627 14.6579C8.1468 15.0484 8.77996 15.0484 9.17049 14.6579L13.121 10.7074C13.3086 10.5198 13.4139 10.2655 13.4139 10.0002C13.4139 9.73502 13.3086 9.48067 13.121 9.29313L9.17048 5.34269Z" fill="white"/%3E%3C/svg%3E%0A');
  background-size: cover;
  content: "";
  display: block;
  width: 0.6875em;
  height: 0.6875em;
  transition: 0.3s transform;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.is-style-arrow-button .wp-block-button__link:is(:active, :focus, :hover):after {
  transform: translateX(8px);
}

.wp-block-button__link:is(.has-blueish-purple-gradient-background, .has-purpleish-pink-gradient-background) {
  background: transparent !important;
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.wp-block-button__link:is(.has-blueish-purple-gradient-background, .has-purpleish-pink-gradient-background):before {
  animation: wp-button-is-style-arrow-button 6s linear infinite;
  background-size: 200% 100% !important;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.wp-block-button__link:is(.has-blueish-purple-gradient-background, .has-purpleish-pink-gradient-background):is(.has-blueish-purple-gradient-background):before {
  background: var(--wp--preset--gradient--blueish-purple);
}
.wp-block-button__link:is(.has-blueish-purple-gradient-background, .has-purpleish-pink-gradient-background):is(.has-purpleish-pink-gradient-background):before {
  background: var(--wp--preset--gradient--purpleish-pink);
}

html.js h1.wp-block-heading {
  transition: 0.3s opacity, 0.5s transform;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
html.js h1.wp-block-heading:not(.is-visible) {
  opacity: 0;
  transform: translateY(40px);
}

html.js .wp-block-separator {
  transform-origin: left center;
  transition: 0.3s opacity, 0.5s transform;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
html.js .wp-block-separator:not(.is-visible) {
  opacity: 0;
  transform: scaleX(50%);
}