/*  Centering an element within its parent element
*
*   @param {Axis} $axis - x: centers horizontally, y: centers vertically, null: centers both axis
*
*   Example Usage:
*
*   // Center on both x and y axis
*   .container {
*     .link {
*       @include centered;
*     }
*   }
*
*   // Center on the X axis
*   .container {
*     .link {
*       @include centered(x);
*     }
*   }
*
*   // Center on the Y axis
*   .container {
*     .link {
*       @include centered(y);
*     }
*   }
*
*/
/*  Centering within an flex container
*
*   @param {Display} $display - inline: display set to inline-flex, else display set to flex
*
*
*   Example Usage:
*
*   .container {
*     @include vertical-align-flex;
*   }
*
*/
/* Chevron mixin for creating chevrons
*
*  @param {Size} $size - the size of the chevron
*  @param {Thickness} $thickness - thickness
*  @param {Color} $color - color
*  @param {Direction} $direction - direction chevron faces
*
*  Example Usage:
*
*     .chevron {
*       @include chevron(12px, 12px, #000, 'down');
*     }
*
*/
/*  Clearfix for clearing floats within a container
*
*   No Params
*
*   Example Usage:
*
*     .container {
*       @include clearfix;
*
*       .link {
*          float: left;
*       }
*     }
*
*/
/*  Set font-size and optionally leading
*
*   @param {Font Size} $fontSize - Unit-less font size
*   @param {Leading}   $leading  - (default: null) - Optional- Unit-less leading from Photoshop or Sketch
*
*   Example Usage:
*
*     p {
*       @include font-size(12,14);
*     }
*
*/
/**
* Hide Text
*/
/* Hover mixin for hover states
*
*  Note: This mixin has a dependency on what-intent plugin which detects the current input method
*        https://github.com/ten1seven/what-input
*
*  @param {Transition Duration} $transition-duration - the duration of transitions on hover states
*
*  Example Usage:
*
*     a {
*       @include hover() {
*         background-color: red
*       }
*     }
*
*/
/**
 * Returns a percentage width based on the number and total number of columns
 *
 * @param 	int 	$num 	Number of columns (e.g. 4)
 * @param 	int 	$total 	Total number of columns (e.g. 24)
 * @return 	float 			 Total width (%)
 */
/*  Unitless line-height
*
*   @param {Font Size} $fontSize - Unit-less font size
*   @param {Leading}   $leading  - Unit-less leading from Photoshop or Sketch
*
*   Example Usage:
*
*     @include line-height(16, 20);
*
*/
/*  Remove List Styles
*
*   No Params
*
*   Example Usage:
*
*     ul {
*       @include no-bullet;
*     }
*
*/
/*
  Maintain ratio mixin.
  @param {List} [$ratio] Ratio the element needs to maintain. A 16:9 ratio would look like this:
    .element { @include maintain-ratio(16 9); }
*/
/*  Media Query Mixin
*
*   @param {Media Query} $mq - Media query in single quotes: eg. 'screen and (min-width: 480px)'
*
*   Example Usage:
*
*     .selector {
*       property: value;
*
*       @include mq($bp768) {
*         property: value;
*       }
*     }
*
*/
/*  Overflow Scroll
*   Allows you to set overflow scrolling on the x and y axis
*
*   @param {axix} $axis - the axis on which to set scroll
*/
/*  Placeholder Mixin
*
*   No Params
*
*   Example Usage:
*
*     input[placeholder] {
*       @include placeholder {
*         color: red;
*       }
*     }
*
*/
/*  PX to REM Conversion
*
*   @param {Pixel} $px - Unitless pixel value to be converted into rems.
*
*   Example Usage:
*
*     margin-bottom: rem(20);
*
*/
/*  Triangle helper mixin
*
*   @param {Direction} $direction - Triangle direction, either `top`, `right`, `bottom` or `left`
*   @param {Color} $color [currentcolor] - Triangle color
*   @param {Length} $size [1em] - Triangle size
*
*/
/*  Visually hide text within an element
*   Used mostly for accessibility reasonse
*
*   No Params
*
*   Example Usage:
*
*     button {
*       span {
*         @include visuallyhidden;
*       }
*     }
*
*/
@font-face {
  font-family: 'lg';
  src: url("https://cdn.jsdelivr.net/npm/lightgallery@2.7.0/fonts/lg.ttf") format("truetype"), url("https://cdn.jsdelivr.net/npm/lightgallery@2.7.0/fonts/lg.woff") format("woff"), url("https://cdn.jsdelivr.net/npm/lightgallery@2.7.0/fonts/lg.svg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

.cc--enhanced-photo-gallery {
  padding-top: 1.8125rem;
  padding-right: 4%;
  padding-bottom: 1.5625rem;
  padding-left: 4%;
  padding-top: 0;
  padding-bottom: 0;
  max-width: 90rem;
  margin: 5rem auto; }
  .cc--enhanced-photo-gallery .enhanced-gallery__header {
    max-width: 54rem;
    margin-left: auto;
    margin-right: auto; }
  .cc--enhanced-photo-gallery .enhanced-gallery__title {
    margin-bottom: 1.875rem;
    color: #000; }
    @media screen and (min-width: 1024px) {
      .cc--enhanced-photo-gallery .enhanced-gallery__title {
        font-weight: 700;
        font-size: 3.125rem;
        line-height: 3.625rem;
        text-align: center;
        margin-bottom: 2.5rem; } }
  .cc--enhanced-photo-gallery .enhanced-gallery__summary {
    margin-bottom: 1.875rem; }
    @media screen and (min-width: 1024px) {
      .cc--enhanced-photo-gallery .enhanced-gallery__summary {
        margin-bottom: 2.5rem; } }
  .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="grid"] {
    display: grid;
    grid-auto-rows: minmax(max-content, 243px);
    column-gap: 0.9375rem;
    row-gap: 0.8125rem; }
    @media screen and (min-width: 500px) {
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="grid"] {
        grid-template-columns: repeat(2, 1fr); } }
    @media screen and (min-width: 768px) {
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="grid"] {
        grid-template-columns: repeat(3, 1fr); } }
    .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="grid"] .grid-item {
      position: relative;
      padding-top: 56.25%; }
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="grid"] .grid-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        object-fit: cover; }
  .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] {
    margin-right: -0.9375rem; }
    @media screen and (min-width: 768px) {
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] {
        margin-right: -1.75rem; } }
    .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"]:after {
      content: '';
      display: block;
      clear: both; }
    .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-sizer,
    .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-item {
      width: calc(50% - 15px);
      margin-bottom: 0.9375rem; }
      @media screen and (min-width: 768px) {
        .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-sizer,
        .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-item {
          width: calc(33% - 15px); } }
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-sizer:nth-child(odd),
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-item:nth-child(odd) {
        height: 11.25rem; }
        @media screen and (min-width: 500px) {
          .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-sizer:nth-child(odd),
          .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-item:nth-child(odd) {
            height: 16.25rem; } }
        @media screen and (min-width: 1024px) {
          .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-sizer:nth-child(odd),
          .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-item:nth-child(odd) {
            height: 22.5rem; } }
    .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="masonry"] .grid-item {
      float: left; }
  .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="slider"] {
    height: 0;
    padding-bottom: 100%;
    max-height: 56.25rem;
    min-height: 31.25rem; }
    @media screen and (min-width: 1024px) {
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="slider"] {
        padding-bottom: 62.5%; } }
    @media screen and (min-width: 1440px) {
      .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="slider"] {
        padding-bottom: 0;
        height: 56.25rem; } }
    .cc--enhanced-photo-gallery .lightgallery[data-gallery-type="slider"] .lightgallery__item {
      display: none; }
  .cc--enhanced-photo-gallery .lightgallery__item {
    cursor: pointer; }
    .cc--enhanced-photo-gallery .lightgallery__item img {
      max-width: 100%;
      height: 100%;
      object-fit: cover; }
    .cc--enhanced-photo-gallery .lightgallery__item.disabled {
      pointer-events: none; }

.enhanced-gallery__lightbox .lg-outer .lg-object {
  width: 100%;
  object-fit: contain; }

.enhanced-gallery__lightbox.masonry .lg-outer .lg-object, .enhanced-gallery__lightbox.grid .lg-outer .lg-object {
  max-width: 1440px; }

.enhanced-gallery__lightbox .lg-backdrop.in {
  opacity: .8; }

.enhanced-gallery__lightbox.color-dark-gray .lg-backdrop.in {
  background-color: #222; }

.enhanced-gallery__lightbox.lg-relative-caption .lg-outer .lg-sub-html {
  color: #FFF;
  bottom: 0;
  padding-left: 1.5625rem;
  padding-right: 1.5625rem;
  padding-bottom: 1.875rem;
  max-width: 53.75rem;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 959px) {
    .enhanced-gallery__lightbox.lg-relative-caption .lg-outer .lg-sub-html {
      max-height: 48vh;
      overflow-y: auto; } }

.enhanced-gallery__lightbox--summary, .enhanced-gallery__lightbox--subheading, .enhanced-gallery__lightbox--headline {
  /** @extend %f--rich-text; */
  color: #FFF; }
  .enhanced-gallery__lightbox--summary h2,
  .enhanced-gallery__lightbox--summary h3,
  .enhanced-gallery__lightbox--summary h4,
  .enhanced-gallery__lightbox--summary h5,
  .enhanced-gallery__lightbox--summary h6, .enhanced-gallery__lightbox--subheading h2,
  .enhanced-gallery__lightbox--subheading h3,
  .enhanced-gallery__lightbox--subheading h4,
  .enhanced-gallery__lightbox--subheading h5,
  .enhanced-gallery__lightbox--subheading h6, .enhanced-gallery__lightbox--headline h2,
  .enhanced-gallery__lightbox--headline h3,
  .enhanced-gallery__lightbox--headline h4,
  .enhanced-gallery__lightbox--headline h5,
  .enhanced-gallery__lightbox--headline h6 {
    margin-bottom: 1.25rem; }
  .enhanced-gallery__lightbox--summary h2,
  .enhanced-gallery__lightbox--summary h3,
  .enhanced-gallery__lightbox--summary h4,
  .enhanced-gallery__lightbox--summary h5,
  .enhanced-gallery__lightbox--summary h6,
  .enhanced-gallery__lightbox--summary p,
  .enhanced-gallery__lightbox--summary a,
  .enhanced-gallery__lightbox--summary strong,
  .enhanced-gallery__lightbox--summary em, .enhanced-gallery__lightbox--subheading h2,
  .enhanced-gallery__lightbox--subheading h3,
  .enhanced-gallery__lightbox--subheading h4,
  .enhanced-gallery__lightbox--subheading h5,
  .enhanced-gallery__lightbox--subheading h6,
  .enhanced-gallery__lightbox--subheading p,
  .enhanced-gallery__lightbox--subheading a,
  .enhanced-gallery__lightbox--subheading strong,
  .enhanced-gallery__lightbox--subheading em, .enhanced-gallery__lightbox--headline h2,
  .enhanced-gallery__lightbox--headline h3,
  .enhanced-gallery__lightbox--headline h4,
  .enhanced-gallery__lightbox--headline h5,
  .enhanced-gallery__lightbox--headline h6,
  .enhanced-gallery__lightbox--headline p,
  .enhanced-gallery__lightbox--headline a,
  .enhanced-gallery__lightbox--headline strong,
  .enhanced-gallery__lightbox--headline em {
    color: #FFF; }

.enhanced-gallery__lightbox--summary {
  font-size: 1.125rem;
  line-height: 2rem; }

.enhanced-gallery__lightbox .lg-share::after {
  margin-left: 1.1875rem; }

.enhanced-gallery__lightbox .lg-share::after,
.enhanced-gallery__lightbox .lg-close::after {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.84rem;
  width: 1.4375rem;
  height: 1.4375rem;
  background-color: #CC0033;
  color: #D9D9D9;
  transition: color .3s ease, background-color .3s ease; }

.enhanced-gallery__lightbox .lg-share:hover::after, .enhanced-gallery__lightbox .lg-share:focus::after,
.enhanced-gallery__lightbox .lg-close:hover::after,
.enhanced-gallery__lightbox .lg-close:focus::after {
  background-color: #D9D9D9;
  color: #CC0033; }
