/* 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.
*/
/****************
 * 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-events-programs {
  position: relative;
  padding: clamp(3.5rem, 0.2142857143rem + 6.8452380952vw, 6.375rem) 0 clamp(3.5rem, 0.7857142857rem + 5.6547619048vw, 5.875rem);
}
.block-hero-events-programs--tribe_programs .block-hero-events-programs__category {
  background-color: #fffdf9;
}
.block-hero-events-programs--tribe_programs .block-hero-events-programs__category::after {
  border-top: 2.1875rem solid #fffdf9;
}
.block-hero-events-programs--tribe_programs .block-hero-events-programs__image-container::before {
  background-color: #f9f2e4;
}
@media (min-width: 48rem) {
  .block-hero-events-programs--tribe_programs .block-hero-events-programs__image-container::after {
    background-color: #f9f2e4;
  }
}
@media (max-width: 47.98rem) {
  .block-hero-events-programs {
    padding-bottom: 0;
  }
}
.block-hero-events-programs__row {
  align-items: center;
}
.block-hero-events-programs__content-col {
  margin-bottom: 3rem;
}
@media (min-width: 48rem) {
  .block-hero-events-programs__content-col {
    margin-bottom: 0;
    padding-right: 1.875rem;
  }
}
.block-hero-events-programs__category {
  font-weight: var(--overline-font-weight);
  font-size: var(--overline-font-size);
  font-family: var(--overline-font-family);
  line-height: var(--overline-line-height);
  letter-spacing: var(--overline-letter-spacing);
  text-transform: var(--overline-text-transform);
  position: relative;
  padding: 0.5rem 0.5rem 0.5rem 1rem;
  color: #001d34;
  background-color: #f9f2e4;
}
.block-hero-events-programs__category::after {
  position: absolute;
  top: 0;
  left: 100%;
  content: "";
  width: 0;
  height: 0;
  border-top: 2.1875rem solid #f9f2e4;
  border-right: 1.25rem solid transparent;
  border-bottom: 0 solid transparent;
  border-left: 0 solid transparent;
}
.block-hero-events-programs__title {
  margin-top: 1.25rem !important;
  margin-bottom: 1.25rem !important;
}
.block-hero-events-programs__age {
  display: block;
  width: 100%;
  margin-top: -0.75rem !important;
  margin-bottom: 1rem;
}
.block-hero-events-programs__content-details {
  margin-bottom: 1rem;
}
.block-hero-events-programs__content-detail {
  margin-bottom: 0.25rem;
}
.block-hero-events-programs__content-detail i[class*=icon-] {
  margin-right: 0.5rem;
  color: #e00000;
  font-size: 1rem;
}
.block-hero-events-programs__content-detail i[class*=icon-]::before {
  position: relative;
  top: 0.125rem;
}
.block-hero-events-programs__excerpt {
  margin-bottom: clamp(1.5rem, 0.6428571429rem + 1.7857142857vw, 2.25rem);
}
.block-hero-events-programs__form {
  display: flex;
  margin-bottom: clamp(1.5rem, -0.2142857143rem + 3.5714285714vw, 3rem);
}
@media (max-width: 35.98rem) {
  .block-hero-events-programs__form .c-btn--primary {
    width: 100%;
  }
}
.block-hero-events-programs__form .form-element {
  width: 100%;
  margin-right: 1rem;
}
.block-hero-events-programs__share {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.block-hero-events-programs__share-prefix {
  margin-top: 0.5rem;
  margin-right: 1.0625rem;
}
.bg-dark .block-hero-events-programs__share-prefix {
  color: #c2b7a3;
}
.bg-cream .block-hero-events-programs__share-prefix {
  color: #817865;
}
.block-hero-events-programs__image-container {
  position: relative;
  z-index: 1;
  width: 100%;
  margin-top: -6.25rem;
  padding-bottom: 120%;
}
@media (min-width: 48rem) {
  .block-hero-events-programs__image-container {
    position: absolute;
    top: 0;
    left: 40%;
    bottom: 0;
    right: 0;
    width: 60%;
    margin-top: 0;
    padding-bottom: 0;
  }
}
.block-hero-events-programs__image-container::before {
  position: absolute;
  top: 0;
  left: -0.0625rem;
  content: "";
  z-index: 1;
  width: 100%;
  padding-bottom: 50%;
  background-color: #001d34;
  -webkit-clip-path: polygon(0 0, 100% 0, 0 100%);
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
@media (min-width: 48rem) {
  .block-hero-events-programs__image-container::before {
    bottom: 0;
    width: 40%;
    padding-bottom: 0;
    -webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
    clip-path: polygon(0 0, 0% 100%, 100% 0);
  }
}
.block-hero-events-programs__image-container::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  padding-bottom: calc(50% + 2.5rem);
  background-color: #f9f2e4;
  backdrop-filter: blur(8px);
  opacity: 0.35;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 40px, 0% 100%);
  clip-path: polygon(0 0, 100% 0, 100% 40px, 0% 100%);
}
@media (min-width: 48rem) {
  .block-hero-events-programs__image-container::after {
    bottom: 0;
    width: calc(40% + 4.75rem);
    padding-bottom: 0;
    background-color: #001d34;
    -webkit-clip-path: polygon(0 0, 100% 0, 76px 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 0, 76px 100%, 0% 100%);
  }
}
.block-hero-events-programs__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 47.98rem) {
  .block-hero-events-programs__image {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
  }
}
.block-hero-events-programs .container {
  position: relative;
  z-index: 2;
}
.block-hero-events-programs .c-btn--back__wrapper {
  margin: clamp(-4.375rem, -0.0892857143rem + -4.7619047619vw, -2.375rem) auto clamp(2.375rem, 0.0892857143rem + 4.7619047619vw, 4.375rem) var(--gutterWidth, 1.25rem);
}
.block-hero-events-programs + p:not(:empty),
.block-hero-events-programs + h1:not(:empty),
.block-hero-events-programs + h2:not(:empty),
.block-hero-events-programs + h3:not(:empty),
.block-hero-events-programs + h4:not(:empty),
.block-hero-events-programs + table:not(:empty) {
  margin-top: clamp(3.5rem, -1.6428571429rem + 10.7142857143vw, 8rem);
}