/* stylelint-disable order/order */
/*
* Converts an pixel value into a rem value.
*
* @param string  $values    the pixel value(s) as a number. Can convert multiple values if values separated by a space.
* @param integer $base      the base pixel value.
*
* @return string   a space-separated string of rem values.
*/
/*
* This is an abbreviated wrapper for the responsive-values function.
*/
/*
* Creates a CSS clamp value that sizes between breakpoints.
*
* @param integer $min                    the minimum pixel value.
* @param integer $max                    the maximum pixel value.
* @param string  $smallest-breakpoint    the name of the smallest breakpoint from the $grid-breakpoints variable.
* @param string  $largest-breakpoint     the name of the largest breakpoint from the $grid-breakpoints variable.
* @param string  $screen                 whether to use a horizontal (width) breakpoint or a vertical (height) breakpoint.
*
* @return string   a CSS clamp property value.
*/
/*
* Outputs a font family value from the $fonts variable.
*
* @param string  $key   the font key.
*
* @return string   a font family value.
*/
/*
* Outputs a color value from the $paints or $additional-paints variables.
*
* @param string  $key   the color name.
*
* @return string   a color value.
*/
/*
* Outputs an effect value from the $effects variable.
*
* @param string  $key   the effect name.
*
* @return string   an effect value.
*/
/* stylelint-enable order/order */
/*
* Used to target heading selectors.
*
* @param integer  $start               the first heading element to target. 1 through 6.
* @param integer  $end                 the last heading element to target. 1 through 6.
* @param string   $beforeCombinator    the CSS combinator to include before the heading classes.
* @param string   $afterCombinator     the CSS combinator to include after the heading classes.
* @param boolean  $includeFontClasses  whether or not to include the .has-t-1... classes or just output the standard heading elements.
*
* @return string  The included CSS wrapped with selectors for the specified headings.
*/
/*
* Used to add properties to a for a pseudo element to make an icon based on the iconfont set.
*
* @param string   $content     the content for the icon. Usually uses one of the iconfont variables.
* @param string   $font-size   the font size with unit.
*
* @return string  The CSS properties for the icon.
*/
/*
* Generates CSS to fit an element into the 12-column grid. Only works when used on an element where the parent element is the width of the entire page.
*
* @return string  CSS properties to set the width of the element to the specified column sizes.
*/
/*
* Used to target elements with a background color that has a text color different from the standard color.
*
* @return string  The included CSS wrapped with selectors for the specified background.
*/
/*
* Used to add the CSS Grid properties for the 12-column grid.
*
* @return string  The CSS Grid properties for the 12-column grid.
*/
/*
* Used to detect device type, either hover (mouse) device or pointer (touch) device.
* Adds the style into the media query code.
*/
/*
* Used to add a wavy line icon style to a wavy-line div
*/
/*
* Used to add a double pulsing animation to the element
*/
/*
* Used to add style to the pulsing play button
*/
/****************
 * Fonts
 *
 * The font settings are defined via the gulp figma which task creates variables in the css/__base-includes/figma/_figma-font-styles.scss file based on the Figma file. Additional variables are defined here.
 ****************/
/*
* This array is used to specify the fonts used on the project with the following parameters:
	base - the name for use in the font() mixin.
		css - the output CSS value.
		figma-name: - the 'font-family' name ued in the _figma-font-variable.scss file.
	)
*/
/****************
 * Colors
 *
 * The primary colors are defined via the gulp figma task which creates variables in the css/__base-includes/figma/_figma-color-variables.scss file based on the Figma file. Additional variables are defined here.
 ****************/
/* If additional colors need to be added to the _figma-color-variables.scss, they can be added to this variable: */
/* This variable controls the background colors generated in the ACF background_color field and the background color classes - bg-white, bg-gray-92, etc: */
/* If a background color uses a different font color than the default color, use these variables to specify the alternate colors */
/* Backgrounds specified in this variable will use the alternative text colors: */
/****************
 * Effects
 ****************/
/****************
 * Grid Settings
 ****************/
/****************
 * Block Spacing
 *
 * These variables are based on the "Spacing" rules found in the "Foundations" section in Figma. These control the default spacing between blocks of different colors.
 ****************/
/*
This file can be used for optional additions to the Figma-generated font style mixins in the figma/_figma-font-styles.scss file.

For example, if you want to add styles to the @overline mixin, just create a mixin here called @overline-custom and that CSS will be added to the primary mixin:

@mixin overline-custom() {
	font-weight: 700;
}
*/
.block-hero-display {
  width: 100%;
  padding-bottom: 1rem;
  padding-top: 0;
}
@media (min-width: 62rem) {
  .block-hero-display {
    padding-bottom: 0;
  }
}
.block-hero-display__wrapper {
  position: relative;
  width: calc(100% - clamp(1.25rem, 0.3928571429rem + 1.7857142857vw, 2rem));
  height: 100%;
  margin: 0 clamp(0.625rem, 0.1964285714rem + 0.8928571429vw, 1rem);
  margin-top: clamp(1rem, 0.4285714286rem + 1.1904761905vw, 1.5rem);
}
.block-hero-display__background {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 0.625rem;
  overflow: hidden;
}
.block-hero-display__background::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: "";
  background: linear-gradient(90deg, rgba(0, 12, 26, 0.55) 0%, rgba(0, 12, 26, 0) 100%);
}
.block-hero-display__image-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.block-hero-display__image {
  display: block;
  width: auto;
  height: auto;
  min-width: 100%;
  max-width: none;
  min-height: 100%;
  object-fit: cover;
}
.block-hero-display__container {
  position: relative;
  padding: clamp(4rem, 1.9285714286rem + 4.3154761905vw, 5.8125rem) clamp(1.25rem, -1.8928571429rem + 6.5476190476vw, 4rem) clamp(4rem, 1.9285714286rem + 4.3154761905vw, 5.8125rem) clamp(1.25rem, -1.8928571429rem + 6.5476190476vw, 4rem);
  background-color: transparent;
  min-height: calc(80vh - 7.75rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (min-width: 48rem) {
  .block-hero-display__container {
    min-height: 40.1875rem;
  }
}
.block-hero-display__container .wavy-line {
  display: inline-block;
  mask-image: url(../../images/wavy-line.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-image: url(../../images/wavy-line.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  background-color: #f9e143;
  width: clamp(3.241875rem, 1.3040178571rem + 4.037202381vw, 4.9375rem);
  height: clamp(1.15625rem, 0.4705357143rem + 1.4285714286vw, 1.75625rem);
  margin-top: clamp(1.75rem, 0.3214285714rem + 2.9761904762vw, 3rem);
  margin-bottom: 0.5rem;
}
.bg-dark .block-hero-display__container .wavy-line {
  background-color: #0368e0;
}
.block-hero-display__container .decorative-title {
  font-weight: var(--disp-alt-font-weight);
  font-size: var(--disp-alt-font-size);
  font-family: var(--disp-alt-font-family);
  line-height: var(--disp-alt-line-height);
}
.block-hero-display__content {
  padding: 0 0 clamp(1.75rem, 0.3214285714rem + 2.9761904762vw, 3rem) 0;
}
@media (min-width: 48rem) {
  .block-hero-display__content {
    max-width: 60%;
  }
}
@media (min-width: 48rem) and (max-width: 74.98rem) {
  .block-hero-display__content {
    max-width: 75%;
  }
}
.block-hero-display__content p {
  margin-bottom: clamp(2rem, 1.7142857143rem + 0.5952380952vw, 2.25rem);
}
@media (min-width: 48rem) {
  .block-hero-display__content p {
    max-width: 70%;
  }
}
.block-hero-display__content .wp-block-button {
  width: auto;
}
.block-hero-display .block-hero-background-video__action {
  padding: 0;
}
.block-hero-display .block-hero-background-video__action .video-link {
  padding: 0;
}
.block-hero-display .block-hero-background-video__action .video-link::before, .block-hero-display .block-hero-background-video__action .video-link::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  background-color: #f2f3f5;
  border-radius: 50%;
  z-index: 0;
}
.block-hero-display .block-hero-background-video__action .video-link::before {
  animation-name: pulse-border-large-animation;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
@keyframes pulse-border-large-animation {
  0% {
    opacity: 0.5;
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(2.5);
  }
}
.block-hero-display .block-hero-background-video__action .video-link::after {
  animation-name: pulse-border-small-animation;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
@keyframes pulse-border-small-animation {
  0% {
    opacity: 0.5;
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.75);
  }
}
.block-hero-display .block-hero-background-video__action .video-link .icon-play {
  display: block;
  width: 100%;
  height: 100%;
}
.block-hero-display .block-hero-background-video__action .video-link .icon-play::before {
  color: #0368e0;
  background-color: #f2f3f5;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 50%;
  position: relative;
  z-index: 10;
}
.block-hero-display .block-hero-background-video__action .video-link:hover {
  background-color: #0368e0;
}
.block-hero-display .block-hero-background-video__action .video-link:hover .icon-play::before {
  background-color: #0368e0;
  color: #f2f3f5;
}
@media (max-width: 47.98rem) {
  .block-hero-display .block-hero-background-video__action .video-link {
    margin-bottom: 1.9375rem;
    margin-right: 1.875rem;
  }
}
@media (min-width: 48rem) {
  .block-hero-display .block-hero-background-video__action .video-link {
    margin-right: 19.78%;
  }
}
.block-hero-display .video-popup {
  margin: 0;
}
.block-hero-display .video-popup__wrapper.active {
  position: fixed;
  z-index: 110;
  width: 100%;
  height: 100vh;
  background-color: #08284d;
}
.block-hero-display .video-popup__close {
  color: #f2f3f5;
}
.block-hero-display .video-popup__frame {
  border-radius: 0.625rem;
}
@media (max-width: 61.98rem) {
  .block-hero-display .video-popup__frame {
    padding-top: 56.25%;
  }
}
.block-hero-display .video-popup__frame iframe {
  border: none;
}