/**
	This file does note generate code.  It is imported by other sass files to include
	variables, mixins, and functions.
	*/
/* Settings
   -------------------------------------------------------------------------- */
/**
	Global variables
*/
/* Site Max Width. Used in 03-base/_template.scss
   -------------------------------------------------------------------------- */
/* Layout Margins (top/bottom)
   -------------------------------------------------------------------------- */
/* Colors
   -------------------------------------------------------------------------- */
/* Filter Colors
   Use https://codepen.io/sosuke/pen/Pjoqqp to generate filters for new colors
   -------------------------------------------------------------------------- */
/* Directories and Misc?
   -------------------------------------------------------------------------- */
/**
 * This file is used to override bootstrap variables.  build/node_modules/bootstrap/scss/_variables.scss
 * Some examples are included below.
 */
/* Grid breakpoints
   Define the minimum dimensions at which your layout will change,
   adapting to different screen sizes, for use in media queries.
   ------------------------------------------------------------------------ */
/* Body
   ------------------------------------------------------------------------ */
/* Gutter width (half is added to each column)
   ------------------------------------------------------------------------ */
/* Default transition.  Used in transition() mixin.
   ------------------------------------------------------------------------ */
/* Tools
   -------------------------------------------------------------------------- */
/**
	General mixins
	Note: Variables are loaded via _core.scss before this file, so no @use needed
*/
/* Variable Size
   Function can be used to make any property value variable
   -------------------------------------------------------------------------- */
/* Basic Transition
   -------------------------------------------------------------------------- */
/* Default Unordered List
   This mixin is used in place of defining base ul styles and then having to
   override them everywhere.  Ex: in a menu.
   This should be included when you output an acf wysiwyg field.
   -------------------------------------------------------------------------- */
/* Default Link Style
   This mixin is used in place of defining base a styles and then having to
   override them everywhere. Ex: text links vs buttons.
   This should be included when you output an acf wysiwyg field.
   -------------------------------------------------------------------------- */
/* Default Table
   -------------------------------------------------------------------------- */
/* Default Gradient
   -------------------------------------------------------------------------- */
/* Button Reset
   -------------------------------------------------------------------------- */
/* List Reset
   -------------------------------------------------------------------------- */
/* 100vh Mixin
   -------------------------------------------------------------------------- */
/* Accessibility Mixins to allow or prevent animations and transitions
   -------------------------------------------------------------------------- */
/* Variable Min Height
   Will scale from $startHeight to $endHeight, from $startWidth to
   $endWidth.
   -------------------------------------------------------------------------- */
/* Variable Image Width
   Will scale from $startWidth to $endWidth, from $startScreenWidth to
   $endScreenWidth.  Must be in proper media query.
   -------------------------------------------------------------------------- */
/**
 * Typography Mixins & Font Declarations
 *
 * Font Families:
 *   - Self Modern: Used for headings (H1-H6) and display text
 *   - Funkis A Springs: Used for body copy, callouts, and eyebrow text
 *
 * Usage:
 *   @include self-modern--book;
 *   @include funkis--light;
 */
/* ==========================================================================
   @font-face Declarations
   ========================================================================== */
@font-face {
  font-family: "Self Modern";
  src: url("/content/themes/base/assets/font/self-modern/SelfModern-Book.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Self Modern";
  src: url("/content/themes/base/assets/font/self-modern/SelfModern-Regular.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Self Modern";
  src: url("/content/themes/base/assets/font/self-modern/SelfModern-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Funkis A Springs";
  src: url("/content/themes/base/assets/font/funkis/FunkisASprings-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Funkis A Springs";
  src: url("/content/themes/base/assets/font/funkis/FunkisASprings-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Funkis A Springs";
  src: url("/content/themes/base/assets/font/funkis/FunkisASprings-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Funkis A Springs";
  src: url("/content/themes/base/assets/font/funkis/FunkisASprings-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Funkis A Springs";
  src: url("/content/themes/base/assets/font/funkis/FunkisASprings-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/* ==========================================================================
   Font Family Variables
   ========================================================================== */
/* ==========================================================================
   Self Modern Mixins (Headings & Display)
   ========================================================================== */
/* ==========================================================================
   Funkis A Springs Mixins (Body & UI)
   ========================================================================== */
/* ==========================================================================
   Typography Style Mixins (Composite)
   These combine font, size, line-height, and other properties
   ========================================================================== */
/**
	Form specific mixins
	A set of default styles that can be applied to Gravity Forms and other forms
*/
.basic-video {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  /* Gradient overlay
     ------------------------------------------------------------------------ */
  /* Paused state: show play, hide pause */
  /* Poster overlay
     ------------------------------------------------------------------------ */
}
.basic-video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.basic-video__gradient {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}
.basic-video__gradient--default {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(5, 64, 82, 0.3)), to(rgba(5, 64, 82, 0.1)));
  background: linear-gradient(to bottom, rgba(5, 64, 82, 0.3) 0%, rgba(5, 64, 82, 0.1) 100%);
}
.basic-video__control {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  outline: none;
  border-radius: 50%;
  cursor: pointer;
  position: absolute;
  bottom: 12px;
  right: 12px;
  height: 24px;
  width: 24px;
  z-index: 10;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 768px) {
  .basic-video__control {
    bottom: 20px;
    right: 20px;
  }
}
@media (min-width: 1280px) {
  .basic-video__control {
    bottom: 24px;
    right: 24px;
  }
}
.basic-video__control:hover .basic-video__icon .v-icon__svg, .basic-video__control:focus .basic-video__icon .v-icon__svg {
  color: #FFFFFF;
  fill: #FFFFFF;
  --stroke-0: #FFFFFF;
}
.basic-video__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.basic-video__icon .v-icon__svg {
  width: 18px;
  height: 16px;
  color: #FFFFFF;
  fill: #FFFFFF;
  --stroke-0: #FFFFFF;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.basic-video__icon--play .v-icon__svg {
  width: 14px;
  height: 18px;
}
.basic-video__icon--play {
  display: none;
}
.basic-video__icon--pause {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.basic-video.is-paused .basic-video__icon--play {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.basic-video.is-paused .basic-video__icon--pause {
  display: none;
}
.basic-video__poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  /* Hide poster when video is playing */
}
.basic-video__poster .picture,
.basic-video__poster img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.basic-video:not(.is-paused) .basic-video__poster {
  opacity: 0;
  pointer-events: none;
}
.basic-video__poster-button {
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: 64px;
  width: 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .basic-video__poster-button {
    height: 80px;
    width: 80px;
  }
}
@media screen and (min-width: 1280px) {
  .basic-video__poster-button {
    height: 96px;
    width: 96px;
  }
}
.basic-video__poster-button:hover {
  background: #FFFFFF;
  -webkit-transform: translate(-50%, -50%) scale(1.05);
          transform: translate(-50%, -50%) scale(1.05);
}
.basic-video__poster-button:focus-visible {
  outline: 2px solid #54B9AB;
  outline-offset: 2px;
}
.basic-video__poster-button--hidden {
  display: none;
}
.basic-video__poster-play {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.basic-video__poster-play svg,
.basic-video__poster-play .v-icon__svg {
  width: 24px;
  height: 24px;
  -webkit-filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(42deg) brightness(118%) contrast(118%);
          filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(42deg) brightness(118%) contrast(118%);
}
@media screen and (min-width: 768px) {
  .basic-video__poster-play svg,
  .basic-video__poster-play .v-icon__svg {
    width: 28px;
    height: 28px;
  }
}
@media screen and (min-width: 1280px) {
  .basic-video__poster-play svg,
  .basic-video__poster-play .v-icon__svg {
    width: 32px;
    height: 32px;
  }
}