/**
 * @file
 * CSS output file
 *
 * Combine all theme scss into a single CSS file
 */
/**
 * Variables
 * Contains global variables available to the theme.
 */
@import url("https://use.typekit.net/hxd0gox.css");
/**
 * Mixins
 * Contains global SCSS mixins
 */
.homepage-image__cta {
  position: relative;
  font-family: urw-din, sans-serif;
  color: #000000;
  font-style: italic;
  font-weight: 600;
  font-size: 0.9em;
  display: inline-block;
  border: 2px solid #E6E6E6;
  border-radius: 20px;
  padding: 0.4em 1.5em;
}

@media (min-width: 700px) {
  .homepage-image__cta {
    font-size: 0.78rem;
  }
}

@media (min-width: 1025px) {
  .homepage-image__cta {
    font-size: 0.889rem;
    border-radius: 22px;
  }
}

.homepage-image__cta span {
  letter-spacing: 0.23px;
  font-size: inherit;
}

.homepage-image__cta span:after {
  display: block;
  position: absolute;
  width: 9px;
  height: 14px;
  left: calc(46% - 8px);
  background-image: url("../assets/icons/btn-arrow-blue.svg");
  background-repeat: no-repeat;
  background-position: 29% 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  -webkit-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
  content: '';
}

@media (min-width: 700px) {
  .homepage-image__cta span:after {
    bottom: -8px;
  }
}

.homepage-image__cta span:before {
  -webkit-box-shadow: 0px 0px 0px 2px white;
          box-shadow: 0px 0px 0px 2px white;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  position: absolute;
  left: -4px;
  top: -4px;
  opacity: 0;
  content: '';
  border-radius: 20px;
}

@media (min-width: 1025px) {
  .homepage-image__cta span:before {
    border-radius: 22px;
  }
}

.homepage-image__cta:before {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 29%;
  height: calc(100% + 4px);
  border-width: 2px 0 0 2px;
  border-radius: 20px 0 0 20px;
  border-color: #99B4C9 transparent transparent #99B4C9;
  border-style: solid;
  content: '';
}

@media (min-width: 1025px) {
  .homepage-image__cta:before {
    border-radius: 22px 0 0 22px;
  }
}

.homepage-image__cta:after {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 46%;
  height: calc(100% + 4px);
  border-width: 0 0 2px 2px;
  border-radius: 20px 0 0 20px;
  border-color: transparent transparent #99B4C9 #99B4C9;
  border-style: solid;
  -webkit-animation: drawoutCTA 400ms forwards;
          animation: drawoutCTA 400ms forwards;
  content: '';
}

@media (min-width: 1025px) {
  .homepage-image__cta:after {
    border-radius: 22px 0 0 22px;
  }
}

.homepage-image__cta:hover:after {
  -webkit-animation: drawinCTA 400ms forwards;
          animation: drawinCTA 400ms forwards;
}

.homepage-image__cta:hover span:after {
  opacity: 0;
  -webkit-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.homepage-image__cta:focus {
  outline: none;
}

.homepage-image__cta:focus:after,
.homepage-image__cta:focus span:before {
  opacity: 1;
}

/**
 * @file
 * Animations
 *
 * Contains all keyframe animations in use on the site.
 */
@-webkit-keyframes drawDown {
  0% {
    height: 0;
    width: 0;
  }
  35% {
    height: 25%;
    width: 0;
  }
  75% {
    height: 75%;
    width: 0;
  }
  100% {
    height: 100%;
    width: 0;
  }
}
@keyframes drawDown {
  0% {
    height: 0;
    width: 0;
  }
  35% {
    height: 25%;
    width: 0;
  }
  75% {
    height: 75%;
    width: 0;
  }
  100% {
    height: 100%;
    width: 0;
  }
}

@-webkit-keyframes drawinQuoteTopLeft {
  0% {
    visibility: visible;
    width: 0;
    height: 0;
  }
  50% {
    width: 51px;
    height: 0;
  }
  97% {
    visibility: visible;
    width: 51px;
    height: 100%;
  }
  100% {
    visibility: visible;
    width: 51px;
  }
}

@keyframes drawinQuoteTopLeft {
  0% {
    visibility: visible;
    width: 0;
    height: 0;
  }
  50% {
    width: 51px;
    height: 0;
  }
  97% {
    visibility: visible;
    width: 51px;
    height: 100%;
  }
  100% {
    visibility: visible;
    width: 51px;
  }
}

@-webkit-keyframes drawinQuoteBottom {
  0% {
    visibility: visible;
    width: 0;
    height: 0;
  }
  100% {
    visibility: visible;
    width: 46px;
    height: 2px;
  }
}

@keyframes drawinQuoteBottom {
  0% {
    visibility: visible;
    width: 0;
    height: 0;
  }
  100% {
    visibility: visible;
    width: 46px;
    height: 2px;
  }
}

@-webkit-keyframes drawinQuoteBottomLg {
  0% {
    visibility: visible;
    width: 0;
    height: 0;
  }
  50% {
    width: 0;
    height: 0;
  }
  100% {
    visibility: visible;
    width: 143px;
    height: 2px;
  }
}

@keyframes drawinQuoteBottomLg {
  0% {
    visibility: visible;
    width: 0;
    height: 0;
  }
  50% {
    width: 0;
    height: 0;
  }
  100% {
    visibility: visible;
    width: 143px;
    height: 2px;
  }
}

@-webkit-keyframes drawinCTA {
  0% {
    width: 46%;
  }
  15% {
    width: 92%;
    border-width: 0 0 2px 2px;
  }
  30% {
    width: 101.5%;
    border-width: 0 0 2px 2px;
  }
  50% {
    border-width: 0 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #99B4C9;
  }
  65% {
    border-width: 2px 2px 2px 2px;
    border-top-color: #99B4C9;
  }
  100% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #99B4C9;
    width: 101.5%;
  }
}

@keyframes drawinCTA {
  0% {
    width: 46%;
  }
  15% {
    width: 92%;
    border-width: 0 0 2px 2px;
  }
  30% {
    width: 101.5%;
    border-width: 0 0 2px 2px;
  }
  50% {
    border-width: 0 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #99B4C9;
  }
  65% {
    border-width: 2px 2px 2px 2px;
    border-top-color: #99B4C9;
  }
  100% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #99B4C9;
    width: 101.5%;
  }
}

@-webkit-keyframes drawoutCTA {
  0% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #99B4C9;
    width: 101.5%;
  }
  40% {
    border-width: 0 0 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #99B4C9;
    width: 101.5%;
  }
  65% {
    width: 93%;
    border-width: 0 0 2px 2px;
    border-radius: 20px 0 0 20px;
  }
  80% {
    width: 80%;
  }
  100% {
    width: 46%;
  }
}

@keyframes drawoutCTA {
  0% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #99B4C9;
    width: 101.5%;
  }
  40% {
    border-width: 0 0 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #99B4C9;
    width: 101.5%;
  }
  65% {
    width: 93%;
    border-width: 0 0 2px 2px;
    border-radius: 20px 0 0 20px;
  }
  80% {
    width: 80%;
  }
  100% {
    width: 46%;
  }
}

@-webkit-keyframes drawinCTAyellow {
  0% {
    width: 46%;
  }
  15% {
    width: 92%;
    border-width: 0 0 2px 2px;
  }
  30% {
    width: 101.5%;
    border-width: 0 0 2px 2px;
  }
  50% {
    border-width: 0 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #F6D16F;
  }
  65% {
    border-width: 2px 2px 2px 2px;
    border-top-color: #F6D16F;
  }
  100% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #F6D16F;
    width: 101.5%;
  }
}

@keyframes drawinCTAyellow {
  0% {
    width: 46%;
  }
  15% {
    width: 92%;
    border-width: 0 0 2px 2px;
  }
  30% {
    width: 101.5%;
    border-width: 0 0 2px 2px;
  }
  50% {
    border-width: 0 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #F6D16F;
  }
  65% {
    border-width: 2px 2px 2px 2px;
    border-top-color: #F6D16F;
  }
  100% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #F6D16F;
    width: 101.5%;
  }
}

@-webkit-keyframes drawoutCTAyellow {
  0% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #F6D16F;
    width: 101.5%;
  }
  40% {
    border-width: 0 0 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #F6D16F;
    width: 101.5%;
  }
  65% {
    width: 93%;
    border-width: 0 0 2px 2px;
    border-radius: 20px 0 0 20px;
  }
  80% {
    width: 80%;
  }
  100% {
    width: 46%;
  }
}

@keyframes drawoutCTAyellow {
  0% {
    border-width: 2px 2px 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-color: #F6D16F;
    width: 101.5%;
  }
  40% {
    border-width: 0 0 2px 2px;
    border-radius: 20px 20px 20px 20px;
    border-right-color: #F6D16F;
    width: 101.5%;
  }
  65% {
    width: 93%;
    border-width: 0 0 2px 2px;
    border-radius: 20px 0 0 20px;
  }
  80% {
    width: 80%;
  }
  100% {
    width: 46%;
  }
}

@-webkit-keyframes calBorder {
  0% {
    border-width: 2px 0 0 2px;
    height: 0;
    width: 0;
  }
  50% {
    border-top-color: #000000;
    width: 31px;
    height: 0;
  }
  100% {
    border-top-color: #000000;
    border-left-color: #000000;
    width: 31px;
    height: 100%;
  }
}

@keyframes calBorder {
  0% {
    border-width: 2px 0 0 2px;
    height: 0;
    width: 0;
  }
  50% {
    border-top-color: #000000;
    width: 31px;
    height: 0;
  }
  100% {
    border-top-color: #000000;
    border-left-color: #000000;
    width: 31px;
    height: 100%;
  }
}

@-webkit-keyframes calBorderLst {
  0% {
    border-top-color: transparent;
  }
  50% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
    width: 31px;
  }
  100% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
    width: 31px;
  }
}

@keyframes calBorderLst {
  0% {
    border-top-color: transparent;
  }
  50% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
    width: 31px;
  }
  100% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
    width: 31px;
  }
}

@-webkit-keyframes calBorderMd {
  0% {
    border-top-color: transparent;
  }
  50% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
  }
  100% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
    left: 948px;
  }
}

@keyframes calBorderMd {
  0% {
    border-top-color: transparent;
  }
  50% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
  }
  100% {
    border-width: 2px 0 0 0;
    border-top-color: #000000;
    left: 948px;
  }
}

/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption, .image-block__caption, .vid-inline__caption, .story-carousel__caption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
     -moz-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #FFFF00;
  color: #000000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
}

select::-ms-expand {
  display: none;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
  border-radius: 0;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: none;
  /* 2 */
  cursor: pointer;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type='checkbox'],
[type='radio'] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type='search']::-webkit-search-cancel-button,
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

/**
 * @file
 * Typography
 * Base typography for the theme
 */
h1 {
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  font-size: 35px;
  letter-spacing: 0.04em;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 20px;
}

@media (min-width: 700px) {
  h1 {
    font-size: 55px;
  }
}

@media (min-width: 1025px) {
  h1 {
    font-size: 75px;
  }
}

h2 {
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 32px;
  color: #182E44;
}

@media (min-width: 700px) {
  h2 {
    font-size: 38px;
    margin: 0 0 18px;
  }
}

@media (min-width: 1025px) {
  h2 {
    font-size: 45px;
    margin: 0 0 21px;
  }
}

h3 {
  font-family: urw-din, sans-serif;
  font-size: 29px;
  font-weight: 400;
  line-height: 1.2;
  margin: 0 0 29px;
}

@media (min-width: 700px) {
  h3 {
    font-size: 33px;
  }
}

@media (min-width: 1025px) {
  h3 {
    font-size: 36px;
    line-height: 1.3;
    margin: 0 0 23px;
  }
}

h4 {
  font-family: urw-din, sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
  margin: 0 0 18px;
}

@media (min-width: 700px) {
  h4 {
    font-size: 27px;
    margin: 0 0 16px;
  }
}

@media (min-width: 1025px) {
  h4 {
    font-size: 30px;
    margin: 0 0 25px;
  }
}

h5 {
  font-family: urw-din, sans-serif;
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 24px;
}

@media (min-width: 700px) {
  h5 {
    font-size: 22px;
  }
}

@media (min-width: 1025px) {
  h5 {
    font-size: 24px;
    margin-bottom: 25px;
  }
}

h6 {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
  margin: 0 0 20px;
}

p {
  margin: 0 0 16px;
}

@media screen and (min-width: 700px) {
  p {
    margin: 0 0 36px;
  }
}

@media (min-width: 1025px) {
  p {
    margin: 0 0 24px;
  }
}

p:empty {
  display: none;
}

strong {
  font-weight: 700;
}

/**
 * Base theme styles
 * This file contains theme base styles.
 *
 * For example:
 * - WYSIWYG styles and layouts
 * - Images and Videos
 * - Tables
 */
html {
  font-size: 16px;
  overflow-x: hidden;
}

@media (min-width: 700px) {
  html {
    font-size: 18px;
  }
}

@media (min-width: 1025px) {
  html {
    font-size: 18px;
  }
}

html.js-fixed {
  overflow: hidden;
  height: 100vh;
}

body {
  font-family: urw-din, sans-serif;
  line-height: 1.69;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  position: relative;
}

@media (min-width: 1025px) {
  body {
    line-height: 1.67;
  }
}

body.js-fixed {
  overflow: hidden;
  height: 100%;
}

body span {
  font-family: urw-din, sans-serif;
}

main {
  position: relative;
  width: 100vw;
}

main:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: calc((100vw - 1900px) / 2);
  height: 100vh;
  background-color: #fff;
  z-index: 1000;
}

* > p:last-child,
* > ul:last-child,
* > ol:last-child {
  margin-bottom: 0;
}

.visually-hidden {
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

a.skip-link {
  position: absolute;
  left: 0;
  top: 0;
  color: #000000;
}

a.skip-link.visually-hidden {
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

a.skip-link.visually-hidden:active, a.skip-link.visually-hidden:focus {
  position: static !important;
  clip: auto;
  height: auto;
  width: auto;
  overflow: auto;
}

a.skip-link.visually-hidden:focus {
  background-color: #fff;
  padding: 3px 10px;
  position: absolute !important;
  z-index: 10000;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

a {
  color: #BA2319;
  font-weight: 700;
  text-decoration: none;
  -webkit-transition: color .3s;
  -o-transition: color .3s;
  transition: color .3s;
}

a:hover {
  color: #182E44;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

figure {
  margin: 0;
}

figcaption, .image-block__caption, .vid-inline__caption, .story-carousel__caption {
  background: #BA2319 url("../assets/img/tartan-background-home-story.jpg") top left;
  background-size: contain;
  color: #fff;
  padding: 24px 25px 35px;
  font: 1rem/1.45 urw-din, sans-serif;
}

@media (min-width: 700px) {
  figcaption, .image-block__caption, .vid-inline__caption, .story-carousel__caption {
    font-size: 0.835rem;
    line-height: 1.7;
    padding: 21px 19px;
  }
}

@media (min-width: 1025px) {
  figcaption, .image-block__caption, .vid-inline__caption, .story-carousel__caption {
    padding: 35px 32px 45px;
  }
}

figcaption a, .image-block__caption a, .vid-inline__caption a, .story-carousel__caption a {
  color: #fff;
}

.img-inline {
  color: #fff;
}

.img-inline img {
  max-width: 100%;
  height: auto;
}

.img-inline--full {
  margin: 50px auto 51px;
}

@media (min-width: 700px) {
  .img-inline--full {
    position: relative;
    margin: 50px auto 78px -50px;
  }
}

@media (min-width: 1025px) {
  .img-inline--full {
    margin: 54px 0 107px -116px;
  }
}

.img-inline--full .img-inline__wrapper {
  position: relative;
}

@media (min-width: 700px) {
  .img-inline--full .img-inline__wrapper {
    padding-right: 114px;
  }
}

@media (min-width: 1025px) {
  .img-inline--full .img-inline__wrapper {
    padding-right: 0;
  }
}

.img-inline--full .img-inline__wrapper:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
  border: 2px solid #fff;
  z-index: 1;
  content: '';
}

@media (min-width: 700px) {
  .img-inline--full .img-inline__wrapper:after {
    border: 4px solid #fff;
    width: calc(100% - 178px);
    height: calc(100% - 65px);
    top: 30px;
    left: 30px;
    margin: 0;
    max-width: 711px;
  }
}

@media (min-width: 1025px) {
  .img-inline--full .img-inline__wrapper:after {
    width: calc(100% - 205px);
    height: calc(100% - 89px);
    top: 41px;
    left: 41px;
  }
}

.img-inline--float {
  margin: 27px auto 35px;
  max-width: 290px;
}

@media (max-width: 699px) {
  .img-inline--float.float-right, .img-inline--float.float-left {
    float: none;
  }
}

.img-inline--float.float-right figcaption, .img-inline--float.float-right .image-block__caption, .img-inline--float.float-right .vid-inline__caption, .img-inline--float.float-right .story-carousel__caption, .img-inline--float.float-left figcaption, .img-inline--float.float-left .image-block__caption, .img-inline--float.float-left .vid-inline__caption, .img-inline--float.float-left .story-carousel__caption {
  font: 1rem/1.54 urw-din, sans-serif;
  padding: 28px 26px 34px;
}

@media (min-width: 700px) {
  .img-inline--float.float-right figcaption, .img-inline--float.float-right .image-block__caption, .img-inline--float.float-right .vid-inline__caption, .img-inline--float.float-right .story-carousel__caption, .img-inline--float.float-left figcaption, .img-inline--float.float-left .image-block__caption, .img-inline--float.float-left .vid-inline__caption, .img-inline--float.float-left .story-carousel__caption {
    padding: 28px 27px 32px;
    font-size: 0.834rem;
    line-height: 1.6;
  }
}

@media (min-width: 1025px) {
  .img-inline--float.float-right figcaption, .img-inline--float.float-right .image-block__caption, .img-inline--float.float-right .vid-inline__caption, .img-inline--float.float-right .story-carousel__caption, .img-inline--float.float-left figcaption, .img-inline--float.float-left .image-block__caption, .img-inline--float.float-left .vid-inline__caption, .img-inline--float.float-left .story-carousel__caption {
    padding: 33px 26px 33px;
  }
}

.img-inline--float.float-right img, .img-inline--float.float-left img {
  width: 100%;
}

@media (min-width: 700px) {
  .img-inline--float.float-right {
    margin: 3px -50px 20px 50px;
    width: 45.5%;
  }
}

@media (min-width: 1025px) {
  .img-inline--float.float-right {
    margin: 3px 0 20px 50px;
    width: 34.5%;
  }
}

@media (min-width: 700px) {
  .img-inline--float.float-left {
    margin: 3px 50px 20px -50px;
    width: 45.5%;
  }
}

@media (min-width: 1025px) {
  .img-inline--float.float-left {
    margin: 3px 50px 20px 0;
    width: 34.5%;
  }
}

@media (min-width: 700px) {
  .img-inline--full figcaption, .img-inline--full .image-block__caption, .img-inline--full .vid-inline__caption, .img-inline--full .story-carousel__caption {
    position: absolute;
    width: 36%;
    bottom: -33px;
    min-height: 58%;
    right: 0;
    margin-left: auto;
    z-index: 1;
  }
}

@media (min-width: 1025px) {
  .img-inline--full figcaption, .img-inline--full .image-block__caption, .img-inline--full .vid-inline__caption, .img-inline--full .story-carousel__caption {
    bottom: -51px;
    min-height: 46%;
  }
}

@media (min-width: 1025px) {
  .img-inline--full figcaption, .img-inline--full .image-block__caption, .img-inline--full .vid-inline__caption, .img-inline--full .story-carousel__caption {
    width: 33%;
    bottom: -54px;
    right: -104px;
  }
}

table {
  clear: both;
  border-collapse: collapse;
  border-spacing: 0;
}

button:active {
  border: none;
}

.cta--primary {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
  letter-spacing: 0.68px;
  font-size: 15px;
}

.cta--primary:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #99B4C9;
  z-index: 0;
}

.cta--primary:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.cta--primary span {
  position: relative;
  z-index: 2;
}

.cta--primary:hover {
  color: #fff;
}

.cta--primary:hover:before {
  width: 100%;
}

@media (min-width: 700px) {
  .cta--primary {
    font-size: 17px;
    letter-spacing: 0.75px;
  }
}

@media (min-width: 1025px) {
  .cta--primary {
    font-size: 22px;
    letter-spacing: 1px;
  }
}

.cta--primary span {
  font-size: inherit;
  font-family: inherit;
}

.cta--secondary {
  position: relative;
  font-family: urw-din, sans-serif;
  color: #000000;
  font-style: italic;
  font-weight: 600;
  font-size: 0.9em;
  display: inline-block;
  border: 2px solid #E6E6E6;
  border-radius: 20px;
  padding: 0.4em 1.5em;
}

@media (min-width: 700px) {
  .cta--secondary {
    font-size: 0.78rem;
  }
}

@media (min-width: 1025px) {
  .cta--secondary {
    font-size: 0.889rem;
    border-radius: 22px;
  }
}

.cta--secondary span {
  letter-spacing: 0.23px;
  font-size: inherit;
}

.cta--secondary span:after {
  display: block;
  position: absolute;
  width: 9px;
  height: 14px;
  left: calc(46% - 8px);
  background-image: url("../assets/icons/btn-arrow-blue.svg");
  background-repeat: no-repeat;
  background-position: 29% 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  -webkit-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
  content: '';
}

@media (min-width: 700px) {
  .cta--secondary span:after {
    bottom: -8px;
  }
}

.cta--secondary span:before {
  -webkit-box-shadow: 0px 0px 0px 2px white;
          box-shadow: 0px 0px 0px 2px white;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  position: absolute;
  left: -4px;
  top: -4px;
  opacity: 0;
  content: '';
  border-radius: 20px;
}

@media (min-width: 1025px) {
  .cta--secondary span:before {
    border-radius: 22px;
  }
}

.cta--secondary:before {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 29%;
  height: calc(100% + 4px);
  border-width: 2px 0 0 2px;
  border-radius: 20px 0 0 20px;
  border-color: #99B4C9 transparent transparent #99B4C9;
  border-style: solid;
  content: '';
}

@media (min-width: 1025px) {
  .cta--secondary:before {
    border-radius: 22px 0 0 22px;
  }
}

.cta--secondary:after {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 46%;
  height: calc(100% + 4px);
  border-width: 0 0 2px 2px;
  border-radius: 20px 0 0 20px;
  border-color: transparent transparent #99B4C9 #99B4C9;
  border-style: solid;
  -webkit-animation: drawoutCTA 400ms forwards;
          animation: drawoutCTA 400ms forwards;
  content: '';
}

@media (min-width: 1025px) {
  .cta--secondary:after {
    border-radius: 22px 0 0 22px;
  }
}

.cta--secondary:hover:after {
  -webkit-animation: drawinCTA 400ms forwards;
          animation: drawinCTA 400ms forwards;
}

.cta--secondary:hover span:after {
  opacity: 0;
  -webkit-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.cta--secondary:focus {
  outline: none;
}

.cta--secondary:focus:after,
.cta--secondary:focus span:before {
  opacity: 1;
}

.cta--secondary span:before {
  -webkit-box-shadow: 0px 0px 0px 2px #182e44;
          box-shadow: 0px 0px 0px 2px #182e44;
}

.cta--link {
  position: relative;
}

.cta--link .last-word {
  padding-right: 50px;
  display: inline-block;
  position: relative;
}

.cta--link .arrow {
  position: absolute;
  top: 57%;
  right: 0;
  width: 40px;
  height: 100%;
  background-image: url("../assets/icons/arrow-red.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

.cta--link:hover .arrow {
  right: -12px;
}

.cta--link {
  display: inline-block;
  vertical-align: top;
  color: #000000;
  font: 800 18px/1.2 urw-din, sans-serif;
  position: relative;
}

.cta--link:after {
  content: "";
  position: absolute;
  top: -3px;
  right: -39px;
  width: 26px;
  height: 26px;
  background-size: 100% 100%;
  -webkit-transition: right .3s;
  -o-transition: right .3s;
  transition: right .3s;
}

@media (min-width: 1025px) {
  .cta--link:after {
    top: 7px;
  }
}

.cta--link:hover {
  color: #BA2319;
}

.cta--link:hover:after {
  right: -44px;
}

@media (min-width: 1025px) {
  .cta--link {
    font-size: 30px;
  }
}

.hr {
  border-top: 2px dotted #182E44;
}

/**
 * @file
 * Print specific styliing
 */
@media print {
  .header,
  .footer {
    display: none;
  }
}

/**
 * @file
 * Page
 *
 * Contains styles for page wrapper layout.
 */
.container {
  padding-left: 15px;
  padding-right: 15px;
}

@media screen and (min-width: 700px) {
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .container {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (min-width: 700px) {
  .container {
    margin-left: 20px;
    margin-right: 20px;
  }
}

@media screen and (min-width: 1025px) {
  .container {
    max-width: 880px;
    margin: 0 auto;
  }
}

/**
 * @file
 * Columns
 *
 * Base styles for all column layouts.
 */
@media (min-width: 1025px) {
  .column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.column__col {
  margin: 0 0 1.6rem;
}

@media (min-width: 700px) {
  .column__col {
    margin: 0;
    -webkit-box-flex: 0;
    -webkit-flex: 0;
       -moz-box-flex: 0;
        -ms-flex: 0;
            flex: 0;
  }
}

.column__img {
  margin: 0 0 1.4rem;
}

@media (min-width: 700px) {
  .column__img {
    margin: 0 0 1.1rem;
  }
}

.column__img img {
  width: 100%;
}

.column__title {
  margin: 0 0 1.15rem;
}

@media (min-width: 1025px) {
  .column__title {
    margin: 0 0 0.6rem;
  }
}

.column__title h3 {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 600;
}

@media (min-width: 700px) {
  .column__title h3 {
    font-size: 1.39rem;
  }
}

@media (min-width: 1025px) {
  .column__title h3 {
    font-size: 1.67rem;
  }
}

.column__title h3 a {
  position: relative;
  font-weight: 600;
  border-bottom: 2px dotted #6F98B3;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.column__title h3 a:hover, .column__title h3 a:focus {
  border-color: transparent;
}

.column__subtitle {
  margin: 0 0 0.8rem;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.4;
}

@media (min-width: 700px) {
  .column__subtitle {
    font-size: 1rem;
    margin: 0 0 0.7rem;
  }
}

@media (min-width: 700px) {
  .column__body {
    font-size: 0.834rem;
  }
}

@media (min-width: 1025px) {
  .column__body {
    font-size: 1rem;
  }
}

@media (min-width: 700px) {
  .column--two {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (min-width: 700px) {
  .column--two .column__col {
    -webkit-flex-basis: calc(50% - 10px);
        -ms-flex-preferred-size: calc(50% - 10px);
            flex-basis: calc(50% - 10px);
  }
}

@media (min-width: 1025px) {
  .column--two .column__col {
    -webkit-flex-basis: calc(50% - 11px);
        -ms-flex-preferred-size: calc(50% - 11px);
            flex-basis: calc(50% - 11px);
  }
}

@media (min-width: 700px) {
  .column--three {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (min-width: 1025px) {
  .column--three .column__col {
    -webkit-flex-basis: calc((100% / 3) - (50px / 3));
        -ms-flex-preferred-size: calc((100% / 3) - (50px / 3));
            flex-basis: calc((100% / 3) - (50px / 3));
  }
}

.column--three.slick-slider {
  display: block;
}

/**
 * @file
 * Section
 *
 * Base styles for all section content.
 */
.section {
  margin: 2rem 0;
}

@media (min-width: 1025px) {
  .section {
    margin: 3rem 0;
  }
}

.section__header {
  margin-bottom: 0.9em;
}

.section__header h2 {
  margin: 0;
  line-height: 1;
}

.section__intro {
  margin: 0 0 2.1rem;
  font-size: 1rem;
}

@media (min-width: 1025px) {
  .section__intro {
    margin: 0 0 1rem;
  }
}

.section__cta {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
  text-align: center;
}

.section__cta:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #99B4C9;
  z-index: 0;
}

.section__cta:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.section__cta span {
  position: relative;
  z-index: 2;
}

.section__cta:hover {
  color: #fff;
}

.section__cta:hover:before {
  width: 100%;
}

.footer {
  font-family: urw-din, sans-serif;
  width: 100vw;
  max-width: 1900px;
}

@media (min-width: 1900px) {
  .footer {
    position: relative;
    display: block;
    left: 50vw;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1900px;
  }
}

.footer__inner {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 15px;
}

@media screen and (min-width: 700px) {
  .footer__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .footer__inner {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media screen and (min-width: 700px) {
  .footer__inner {
    padding-top: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .footer__inner {
    padding-top: 45px;
  }
}

@media screen and (min-width: 700px) {
  .footer__top {
    position: relative;
    margin-bottom: 1.4em;
  }
}

@media screen and (min-width: 1025px) {
  .footer__top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (max-width: 699px) {
  .footer__left {
    margin-bottom: 1.45em;
  }
}

@media screen and (min-width: 700px) {
  .footer__left {
    width: 50%;
    margin-bottom: 1.2em;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .footer__left {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 600px;
  }
}

@media screen and (max-width: 699px) {
  .footer__right {
    margin-bottom: 1.65em;
  }
}

@media screen and (min-width: 1025px) {
  .footer__right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    text-align: right;
    margin-top: 1em;
  }
}

.footer__bottom {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
  margin: 0 -15px;
  font-size: 0.88em;
  line-height: 1.2;
  color: #fff;
  background-color: #182E44;
}

@media screen and (min-width: 700px) {
  .footer__bottom {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .footer__bottom {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media screen and (min-width: 700px) {
  .footer__bottom {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: 0.9em;
    margin: 0 -30px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

@media screen and (min-width: 1025px) {
  .footer__bottom {
    margin: 0 -50px;
  }
}

.footer__logo {
  display: block;
  margin-bottom: 1.2em;
}

@media screen and (min-width: 700px) {
  .footer__logo {
    margin-bottom: 1.6em;
  }
}

@media screen and (min-width: 1025px) {
  .footer__logo {
    margin-right: 30px;
  }
}

.footer__logo img {
  width: 160px;
}

@media screen and (min-width: 700px) {
  .footer__logo img {
    width: 200px;
  }
}

@media screen and (min-width: 1025px) {
  .footer__info {
    margin-top: 0.37em;
  }
}

.footer__info address {
  font-style: normal;
  margin-bottom: 1.3em;
}

@media screen and (min-width: 700px) {
  .footer__info address {
    margin-bottom: 1.1em;
  }
}

@media screen and (max-width: 699px) {
  .footer__contact {
    font-size: 0.93em;
  }
}

.footer__contact .num {
  white-space: nowrap;
  color: #000000;
}

.footer__contact .num:nth-child(1):after {
  content: '|';
  margin: 0 7px;
  font-weight: 500;
}

.footer__contact .contact {
  display: block;
}

@media screen and (min-width: 700px) {
  .footer__contact .contact {
    font-size: 0.89em;
  }
}

.footer__social {
  margin-bottom: 0.7em;
}

@media screen and (min-width: 700px) and (max-width: 1024px) {
  .footer__social {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 50%;
  }
}

@media screen and (min-width: 1025px) {
  .footer__social {
    margin-bottom: 2em;
  }
}

.footer__social li {
  display: inline-block;
}

.footer__social li:not(:last-of-type) {
  margin-right: 0.85em;
}

@media screen and (min-width: 700px) {
  .footer__social li:not(:last-of-type) {
    margin-right: 0.9em;
  }
}

.footer__social a {
  position: relative;
  display: block;
  width: 38px;
  height: 38px;
  background-color: #182E44;
  border-radius: 100%;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

@media screen and (min-width: 700px) {
  .footer__social a {
    width: 48px;
    height: 48px;
  }
}

.footer__social a:hover {
  background-color: #BA2319;
}

.footer__social a:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.footer__social a.footer-facebook:after {
  width: 58%;
  height: 58%;
  background-image: url("../assets/icons/facebook.svg");
}

.footer__social a.footer-instagram:after {
  width: 58%;
  height: 58%;
  background-image: url("../assets/icons/instagram.svg");
}

.footer__social a.footer-twitter:after {
  width: 55%;
  height: 55%;
  background-image: url("../assets/icons/twitter.svg");
}

.footer__social a.footer-youtube:after {
  width: 58%;
  height: 58%;
  background-image: url("../assets/icons/youtube.svg");
}

.footer__social a.footer-linkedin:after {
  width: 38%;
  height: 38%;
  background-image: url("../assets/icons/linkedin.svg");
}

.footer__social span {
  color: #fff;
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

.footer__ancillary {
  font-size: 0.93em;
}

@media screen and (min-width: 700px) {
  .footer__ancillary {
    font-size: 0.889em;
  }
}

.footer__ancillary li {
  display: inline-block;
}

.footer__ancillary li:not(:last-of-type) {
  margin-right: 0.7em;
}

.footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer span {
  display: block;
  font-family: inherit;
  line-height: 1.4;
}

@media screen and (min-width: 700px) {
  .footer span {
    font-size: 0.9em;
  }
}

@media screen and (min-width: 1025px) {
  .footer span {
    font-size: 1em;
  }
}

.footer copyright {
  display: block;
  margin-bottom: 0.4em;
}

@media screen and (max-width: 699px) {
  .footer .ifactory {
    margin-top: 0.4em;
  }
}

.footer .ifactory a {
  color: #F6D16F;
}

.footer .ifactory a:hover {
  color: #fff;
}

.footer-sock {
  position: relative;
  color: #fff;
  background-color: #000000;
}

@media screen and (min-width: 1025px) {
  .footer-sock {
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.footer-sock__content {
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  padding-top: 89%;
  padding-bottom: 40px;
  z-index: 1;
}

@media screen and (min-width: 700px) {
  .footer-sock__content {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .footer-sock__content {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (min-width: 450px) {
  .footer-sock__content {
    padding-top: 30%;
  }
}

@media screen and (min-width: 700px) {
  .footer-sock__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 22%;
    padding-bottom: 35px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-right: 50px;
    padding-left: 50px;
  }
}

@media screen and (min-width: 1025px) {
  .footer-sock__content {
    padding-top: 26.5%;
    padding-bottom: 75px;
    padding-right: 80px;
    padding-left: 80px;
  }
}

.footer-sock__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.footer-sock__img:after {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 192px;
  width: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  content: '';
}

@media (min-width: 1025px) {
  .footer-sock__img:after {
    height: 329px;
  }
}

.footer-sock__img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.footer-sock h2 {
  font-size: 32px;
  line-height: 1;
  margin-bottom: 0.9em;
  color: #fff;
}

@media screen and (min-width: 700px) {
  .footer-sock h2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 48%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
    font-size: 42px;
    padding-right: 30px;
    line-height: 0.95;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1025px) {
  .footer-sock h2 {
    font-size: 75px;
    line-height: 0.9;
    padding-right: 20px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 51%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 51%;
            flex: 0 0 51%;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.3s;
    -o-transition: opacity 0.3s ease 0.3s;
    transition: opacity 0.3s ease 0.3s;
  }
}

.footer-sock .ctas {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 700px) {
  .footer-sock .ctas {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end;
  }
}

@media screen and (min-width: 1025px) {
  .footer-sock .ctas {
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.6s;
    -o-transition: opacity 0.3s ease 0.6s;
    transition: opacity 0.3s ease 0.6s;
  }
}

.footer-sock .ctas a {
  letter-spacing: 1px;
}

.footer-sock .ctas a:nth-child(1) {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
}

.footer-sock .ctas a:nth-child(1):after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F6D16F;
  z-index: 0;
}

.footer-sock .ctas a:nth-child(1):before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.footer-sock .ctas a:nth-child(1) span {
  position: relative;
  z-index: 2;
}

.footer-sock .ctas a:nth-child(1):hover {
  color: #fff;
}

.footer-sock .ctas a:nth-child(1):hover:before {
  width: 100%;
}

.footer-sock .ctas a:nth-child(3) {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #fff;
  padding: 0.8em 1.05em;
  background-color: #000000;
}

.footer-sock .ctas a:nth-child(3):after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #182E44;
  z-index: 0;
}

.footer-sock .ctas a:nth-child(3):before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.footer-sock .ctas a:nth-child(3) span {
  position: relative;
  z-index: 2;
}

.footer-sock .ctas a:nth-child(3):hover {
  color: #fff;
}

.footer-sock .ctas a:nth-child(3):hover:before {
  width: 100%;
}

.footer-sock .ctas a span {
  line-height: 1.69;
  font-size: 15px;
}

@media (min-width: 700px) {
  .footer-sock .ctas a span {
    font-size: 17px;
  }
}

@media (min-width: 1025px) {
  .footer-sock .ctas a span {
    line-height: 1.67;
    font-size: 22px;
  }
}

.footer-sock.js-active, .footer-sock.js-active h2, .footer-sock.js-active .ctas {
  opacity: 1;
}

header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  padding: 1em;
  z-index: 300;
  font-family: urw-din, sans-serif;
}

@media screen and (min-width: 700px) {
  header {
    padding: 1.8em 1.4em 0.97em;
  }
}

@media screen and (min-width: 1025px) {
  header {
    padding: 1.65em 1.7em;
  }
}

@media screen and (min-width: 1900px) {
  header {
    width: 1900px;
    left: calc((100vw - 1900px) / 2);
  }
}

header:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(24, 46, 68, 0.6);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  z-index: 0;
  visibility: hidden;
}

@media screen and (min-width: 700px) {
  header:before {
    background-color: transparent;
  }
}

header:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 1;
  -webkit-transition: visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: visibility 0.3s ease, -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease, visibility 0.3s ease;
  transition: transform 0.3s ease, visibility 0.3s ease;
  transition: transform 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  visibility: hidden;
}

@media screen and (min-width: 700px) {
  header:after {
    width: 387px;
  }
}

@media screen and (min-width: 1025px) {
  header:after {
    width: 600px;
  }
}

.header__underline {
  position: absolute;
  bottom: 0;
  right: -100%;
  width: calc(100% - 30px);
  height: 2px;
  border-top: 2px dotted #000000;
  z-index: 10;
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

@media screen and (min-width: 700px) {
  .header__underline {
    width: 337px;
  }
}

@media screen and (min-width: 1025px) {
  .header__underline {
    width: calc(600px - 3.4em);
  }
}

.header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.header__ctas {
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.085em;
  position: absolute;
  top: 23px;
  left: 15px;
  height: 43px;
  width: 150px;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  transition: opacity 0.3s ease, visibility 0s ease 0.3s;
}

@media screen and (min-width: 700px) {
  .header__ctas {
    top: 36px;
    right: 186px;
    width: auto;
    left: auto;
  }
}

@media screen and (min-width: 1025px) {
  .header__ctas {
    top: 35px;
    right: 235px;
    font-size: 22px;
    visibility: visible;
    opacity: 1;
  }
}

.header__ctas a {
  color: #182E44;
  letter-spacing: 0.82px;
}

@media screen and (max-width: 699px) {
  .header__ctas a {
    font-size: 18px;
  }
}

@media screen and (min-width: 1025px) {
  .header__ctas a {
    color: #fff;
  }
}

.header__ctas a:nth-child(2) {
  margin: 0 10px;
}

@media screen and (min-width: 700px) {
  .header__ctas a:nth-child(2) {
    margin: 0 7px;
  }
}

@media screen and (min-width: 1025px) {
  .header__ctas a:nth-child(2) {
    margin: 0 30px;
  }
}

@media screen and (min-width: 1025px) {
  .header__ctas a.link--mobile {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .header__ctas a.link--desktop {
    display: none;
  }
}

.header__logo {
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0.3s ease 0s;
  transition: opacity 0.3s ease, visibility 0.3s ease 0s;
  visibility: visible;
  margin-right: auto;
  margin-top: -2px;
}

@media screen and (min-width: 700px) {
  .header__logo {
    margin: -0.7em auto -50px 0;
  }
}

@media screen and (min-width: 1025px) {
  .header__logo {
    margin: -0.25em auto -50px 0;
  }
}

.header__logo img {
  width: 114px;
}

@media screen and (min-width: 700px) {
  .header__logo img {
    width: 166px;
  }
}

@media screen and (min-width: 1025px) {
  .header__logo img {
    width: 208px;
  }
}

.header__search {
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

@media screen and (min-width: 700px) {
  .header__search {
    position: relative;
  }
}

.header__search .search-icon {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 50%;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transition: background-image 0.3s ease, opacity 0.3s ease;
  -o-transition: background-image 0.3s ease, opacity 0.3s ease;
  transition: background-image 0.3s ease, opacity 0.3s ease;
  opacity: 1;
  pointer-events: none;
}

.header__search .search-icon--default {
  background-image: url("../assets/icons/search-black.svg");
}

.header__search .search-icon--hover {
  background-image: url("../assets/icons/search-white.svg");
  opacity: 0;
}

.header__search .search__button {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
  display: block;
  position: relative;
  width: 40px;
  height: 40px;
  border: none;
  z-index: 2;
}

.header__search .search__button:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F6D16F;
  z-index: 0;
}

.header__search .search__button:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.header__search .search__button span {
  position: relative;
  z-index: 2;
}

.header__search .search__button:hover {
  color: #fff;
}

.header__search .search__button:hover:before {
  width: 100%;
}

@media screen and (min-width: 1025px) {
  .header__search .search__button {
    width: 50px;
    height: 50px;
  }
}

.header__search .search__button:hover {
  background-color: #fff;
}

.header__search .search__button:hover .search-icon--default {
  opacity: 0;
}

.header__search .search__button:hover .search-icon--hover {
  opacity: 1;
}

.header__search .search__button:hover .close-icon span {
  background-color: #fff;
}

.header__search .search__button[aria-expanded="true"] {
  background-image: none;
}

.header__search .search__button[aria-expanded="true"] .search-icon {
  opacity: 0;
}

.header__search .search__button[aria-expanded="true"] .close-icon {
  display: block;
}

.header__search .search__button .close-icon {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
      -ms-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  width: 26px;
  height: 26px;
  pointer-events: none;
}

@media screen and (min-width: 1025px) {
  .header__search .search__button .close-icon {
    width: 22px;
    height: 22px;
  }
}

.header__search .search__button .close-icon span {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 65%;
  height: 2px;
  background-color: #182E44;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .header__search .search__button .close-icon span {
    width: 100%;
    height: 3px;
  }
}

.header__search .search__button .close-icon span:nth-child(2) {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}

.header__search .search-form {
  position: absolute;
  top: 100%;
  right: 15px;
  width: calc(100vw - 30px);
  overflow: hidden;
  z-index: 0;
  visibility: hidden;
  -webkit-transition: width 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: width 0.3s ease, visibility 0s ease 0.3s;
  transition: width 0.3s ease, visibility 0s ease 0.3s;
  display: none;
  background-color: #fff;
}

@media screen and (min-width: 700px) {
  .header__search .search-form {
    top: calc(100% + 16px);
    right: -13px;
    width: 350px;
  }
}

@media screen and (min-width: 1025px) {
  .header__search .search-form {
    width: 446px;
  }
}

.header__search .search-form #ousearchq {
  font-family: urw-din, sans-serif;
  position: relative;
  border: none;
  border-radius: 0;
  margin: 0;
  height: 65px;
  padding: 0 40px 0 20px;
  width: 100%;
  font-style: italic;
  font-size: 17px;
  font-weight: 300;
  background-color: #fff;
  color: #000000;
}

@media screen and (min-width: 1025px) {
  .header__search .search-form #ousearchq {
    height: 80px;
    padding: 0 66px 0 35px;
  }
}

.header__search .search-form__button {
  position: absolute;
  top: 50%;
  right: 5px;
  background-color: #fff;
  border-radius: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-size: 50%;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("../assets/icons/search-black.svg");
  width: 40px;
  height: 40px;
  border: none;
  z-index: 1;
}

@media screen and (min-width: 1025px) {
  .header__search .search-form__button {
    width: 50px;
    height: 50px;
  }
}

@media screen and (min-width: 700px) {
  .header__search .search-form__button {
    right: 14px;
  }
}

.header__menu {
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0.3s ease 0s;
  transition: opacity 0.3s ease, visibility 0.3s ease 0s;
  visibility: visible;
}

.header__fab {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 0;
}

@media screen and (min-width: 700px) {
  .header__fab {
    top: calc(50% + 22vh);
    bottom: auto;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

@media screen and (min-width: 1900px) {
  .header__fab {
    right: calc((100vw - 1900px) / 2 + 15px);
  }
}

.header__fab .fab__button {
  position: relative;
  top: 2px;
  left: 0;
  width: 36px;
  height: 36px;
  border: none;
  border-radius: 100%;
  background-color: #F6D16F;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

@media screen and (min-width: 700px) {
  .header__fab .fab__button {
    display: none;
  }
}

.header__fab .fab__button[aria-expanded="true"] .plus-minus span:nth-child(2) {
  display: none;
}

.header__fab .fab__button .plus-minus {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
  pointer-events: none;
}

.header__fab .fab__button .plus-minus span {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 65%;
  height: 2px;
  background-color: #000000;
}

.header__fab .fab__button .plus-minus span:nth-child(2) {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}

.header__fab .fab__ctas {
  position: absolute;
  bottom: 54px;
  right: -300px;
  border-radius: 16px 0 0 16px;
  visibility: hidden;
  -webkit-transition: right 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: right 0.3s ease, visibility 0s ease 0.3s;
  transition: right 0.3s ease, visibility 0s ease 0.3s;
  overflow: hidden;
}

@media screen and (min-width: 700px) {
  .header__fab .fab__ctas {
    display: block !important;
    visibility: visible;
    bottom: 0;
    right: -15px;
  }
}

.header__fab .fab__ctas[aria-hidden="false"] {
  right: -15px;
  visibility: visible;
  -webkit-transition: right 0.3s ease, visibility 0s ease 0s;
  -o-transition: right 0.3s ease, visibility 0s ease 0s;
  transition: right 0.3s ease, visibility 0s ease 0s;
}

.header__fab .fab__ctas ul {
  padding: 0;
  margin: 0;
}

.header__fab .fab__ctas li {
  list-style: none;
}

.header__fab .fab__ctas li:not(:last-of-type) {
  border-bottom: 1px solid #E6E6E6;
}

.header__fab .fab__ctas a {
  display: block;
  color: #000000;
  text-align: center;
  font-size: 0.91em;
  padding: 0.45em 0.84em;
  background-color: #F6D16F;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.header__fab .fab__ctas a:hover {
  background-color: #fff;
}

.main-menu__button {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-transform: uppercase;
  width: auto;
  height: 40px;
  border: none;
  padding: 0 0.8em;
  position: relative;
  z-index: 2;
}

.main-menu__button:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #99B4C9;
  z-index: 0;
}

.main-menu__button:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.main-menu__button span {
  position: relative;
  z-index: 2;
}

.main-menu__button:hover {
  color: #fff;
}

.main-menu__button:hover:before {
  width: 100%;
}

@media screen and (min-width: 700px) {
  .main-menu__button {
    padding: 0 0.76em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__button {
    padding: 0 1em;
    height: 50px;
  }
}

.main-menu__button[aria-expanded="true"] .main-menu__button__icon span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
      -ms-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.main-menu__button[aria-expanded="true"] .main-menu__button__icon span:nth-child(2) {
  display: none;
}

.main-menu__button[aria-expanded="true"] .main-menu__button__icon span:nth-child(1) {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.main-menu__button__icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 16px;
  height: 14px;
  pointer-events: none;
}

@media screen and (min-width: 1025px) {
  .main-menu__button__icon {
    width: 20px;
    height: 19px;
  }
}

.main-menu__button__icon span {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #182E44;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .main-menu__button__icon span {
    height: 3px;
  }
}

.main-menu__button__title {
  font-family: urw-din-condensed, sans-serif;
  padding-left: 0.58em;
  font-size: 18px;
  font-weight: 700;
  color: #182E44;
  letter-spacing: 0.82px;
  pointer-events: none;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .main-menu__button__title {
    font-size: 22px;
  }
}

.main-menu__button:hover span {
  color: #fff;
}

.main-menu__button:hover .main-menu__button__icon span {
  background-color: #fff;
}

.main-menu__dropdown {
  position: absolute;
  right: -100vw;
  top: 100%;
  width: 100%;
  height: calc(100vh - 100%);
  background-color: #fff;
  overflow-x: hidden;
  overflow-y: auto;
  visibility: hidden;
  -webkit-transition: right 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: right 0.3s ease, visibility 0s ease 0.3s;
  transition: right 0.3s ease, visibility 0s ease 0.3s;
  z-index: 1;
  -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
          box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

@media screen and (min-width: 700px) {
  .main-menu__dropdown {
    right: -387px;
    width: 387px;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__dropdown {
    width: 600px;
    right: -600px;
  }
}

.main-menu__dropdown[aria-hidden="false"] {
  -webkit-transition: right 0.3s ease, visibility 0s ease 0s;
  -o-transition: right 0.3s ease, visibility 0s ease 0s;
  transition: right 0.3s ease, visibility 0s ease 0s;
  right: 0;
  visibility: visible;
}

.main-menu__dropdown a {
  color: #182E44;
  font-size: 1.16em;
  font-weight: 400;
  color: #000000;
}

@media screen and (min-width: 700px) {
  .main-menu__dropdown a {
    font-size: 1em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__dropdown a {
    font-size: 1.22em;
  }
}

.main-menu__dropdown a:hover {
  color: #BA2319;
}

.main-menu__dropdown li {
  list-style: none;
}

.main-menu__inner {
  padding: 0.9em 15px;
}

@media screen and (min-width: 700px) {
  .main-menu__inner {
    padding: 0em 25px 0;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__inner {
    padding: 0.1em 1.7em;
  }
}

.main-menu__inner .inner-nav {
  border-bottom: 2px dotted #000000;
  margin: 0;
  padding: 1.2em 0 1.8em;
}

@media screen and (min-width: 700px) {
  .main-menu__inner .inner-nav {
    padding: 1.2em 0 1.5em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav {
    padding: 1.6em 0px 2.8em;
  }
}

.main-menu__inner .inner-nav__dropdown {
  padding: 0;
}

.main-menu__inner .inner-nav__dropdown > li:first-of-type {
  margin-top: 0.37em;
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav__dropdown > li:first-of-type {
    margin-top: 0;
  }
}

.main-menu__inner .inner-nav__link {
  position: relative;
  padding-left: 3.75em;
}

@media screen and (min-width: 700px) {
  .main-menu__inner .inner-nav__link {
    padding-left: 3.15em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav__link {
    padding-left: 4.75em;
  }
}

.main-menu__inner .inner-nav__link:not(:last-of-type) {
  margin-bottom: 1.3em;
}

@media screen and (min-width: 700px) {
  .main-menu__inner .inner-nav__link:not(:last-of-type) {
    margin-bottom: 1.1em;
  }
}

.main-menu__inner .inner-nav__link > a {
  font-size: 1.5em;
  font-weight: 700;
  color: #182E44;
}

@media screen and (min-width: 700px) {
  .main-menu__inner .inner-nav__link > a {
    font-size: 1.35em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav__link > a {
    font-size: 1.8em;
  }
}

.main-menu__inner .inner-nav__link > a:hover {
  color: #BA2319;
}

.main-menu__inner .inner-nav__link.info-for > span {
  font-size: 1.5em;
  color: #182E44;
}

@media screen and (min-width: 700px) {
  .main-menu__inner .inner-nav__link.info-for > span {
    font-size: 1.35em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav__link.info-for > span {
    font-size: 1.8em;
  }
}

.main-menu__inner .inner-nav__button {
  position: absolute;
  top: 6px;
  left: 0;
  width: 35px;
  height: 35px;
  border: 0;
  background-color: #99B4C9;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav__button {
    width: 44px;
    height: 44px;
    top: 8px;
  }
}

.main-menu__inner .inner-nav__button:focus {
  outline: 2px solid #182E44;
  border: 2px solid #fff;
}

.main-menu__inner .inner-nav__button:before {
  content: '';
  position: absolute;
  top: -4px;
  left: -4px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border: 2px solid transparent;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.main-menu__inner .inner-nav__button .arrow {
  position: absolute;
  top: calc(50% - 2px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(135deg);
      -ms-transform: translate(-50%, -50%) rotate(135deg);
          transform: translate(-50%, -50%) rotate(135deg);
  width: 8px;
  height: 8px;
  background-color: transparent;
  border-top: 2px solid #182E44;
  border-right: 2px solid #182E44;
  -webkit-transition: border-top 0.3s ease, border-right 0.3s ease, top 0.3s ease, -webkit-transform 0.3s ease;
  transition: border-top 0.3s ease, border-right 0.3s ease, top 0.3s ease, -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease, border-top 0.3s ease, border-right 0.3s ease, top 0.3s ease;
  transition: transform 0.3s ease, border-top 0.3s ease, border-right 0.3s ease, top 0.3s ease;
  transition: transform 0.3s ease, border-top 0.3s ease, border-right 0.3s ease, top 0.3s ease, -webkit-transform 0.3s ease;
  pointer-events: none;
}

@media screen and (min-width: 1025px) {
  .main-menu__inner .inner-nav__button .arrow {
    width: 11px;
    height: 11px;
  }
}

.main-menu__inner .inner-nav__button[aria-expanded='true'] {
  background-color: #F6D16F;
}

.main-menu__inner .inner-nav__button[aria-expanded='true']:before {
  opacity: 1;
}

.main-menu__inner .inner-nav__button[aria-expanded='true'] .arrow {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.main-menu__inner .inner-nav__button:hover {
  background-color: #BA2319;
}

.main-menu__inner .inner-nav__button:hover .arrow {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.main-menu__inner .inner-nav__dropdown {
  display: none;
}

.main-menu__ancillary {
  padding: 0 0 20vh;
  margin: 0;
  margin-top: 1em;
  font-family: urw-din, sans-serif;
  font-size: 1.3em;
}

@media screen and (min-width: 700px) {
  .main-menu__ancillary {
    margin-top: 1.15em;
    font-size: 1.1em;
    padding-bottom: 1.2em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__ancillary {
    margin-top: 2em;
    padding-bottom: 1.6em;
  }
}

.main-menu__ancillary li:not(:last-of-type) {
  margin-bottom: 0;
}

@media screen and (min-width: 700px) {
  .main-menu__ancillary li:not(:last-of-type) {
    margin-bottom: 0.2em;
  }
}

@media screen and (min-width: 1025px) {
  .main-menu__ancillary li:not(:last-of-type) {
    margin-bottom: 0.43em;
  }
}

.main-menu__ancillary a {
  font-size: 0.88em;
  font-weight: 700;
}

@media screen and (min-width: 1025px) {
  .main-menu__ancillary a {
    font-size: 22px;
  }
}

.main-menu__ancillary a:hover {
  color: #BA2319;
}

body.js-open-main header:before {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0s;
  transition: opacity 0.3s ease, visibility 0s ease 0s;
}

body.js-open-main header:after {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  visibility: visible;
  -webkit-transition: visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: visibility 0.3s ease, -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease, visibility 0.3s ease;
  transition: transform 0.3s ease, visibility 0.3s ease;
  transition: transform 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
}

@media screen and (max-width: 699px) {
  body.js-open-main .header__logo {
    opacity: 0;
    visibility: hidden;
  }
}

body.js-open-main .header__ctas {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.3s ease 0.3s, visibility 0s ease 0.3s;
  -o-transition: opacity 0.3s ease 0.3s, visibility 0s ease 0.3s;
  transition: opacity 0.3s ease 0.3s, visibility 0s ease 0.3s;
  z-index: 2;
}

@media screen and (min-width: 1025px) {
  body.js-open-main .header__ctas a {
    color: #182E44;
  }
}

body.js-open-main .header__ctas a:hover {
  color: #BA2319 !important;
}

body.js-open-main .header__underline {
  right: 15px;
}

@media screen and (min-width: 700px) {
  body.js-open-main .header__underline {
    right: 25px;
  }
}

@media screen and (min-width: 1025px) {
  body.js-open-main .header__underline {
    right: 1.7em;
  }
}

body.js-open-search header:before {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0s;
  transition: opacity 0.3s ease, visibility 0s ease 0s;
}

body.js-open-search header .header__search .search-form {
  -webkit-transition: visibility 0s ease 0s, -webkit-transform 0.3s ease;
  transition: visibility 0s ease 0s, -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease, visibility 0s ease 0s;
  transition: transform 0.3s ease, visibility 0s ease 0s;
  transition: transform 0.3s ease, visibility 0s ease 0s, -webkit-transform 0.3s ease;
  visibility: visible;
  -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
          transform: scale(1, 1);
}

.interior-nav {
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  position: relative;
  margin-bottom: 5.1em;
  z-index: 98;
}

@media screen and (min-width: 700px) {
  .interior-nav {
    margin-bottom: 5.3em;
  }
}

@media screen and (min-width: 1025px) {
  .interior-nav {
    margin-bottom: 6.4em;
  }
}

.interior-nav a {
  color: #000000;
  font-weight: 300;
}

@media (min-width: 1025px) {
  .interior-nav .item--primary > a {
    font-weight: 500;
  }
}

.interior-nav .item--current-page a {
  font-weight: 700;
}

.interior-nav li:before {
  content: none;
}

.interior-nav--desktop {
  position: absolute;
  width: 100vw;
  background-color: #182E44;
  display: none;
  padding: 0 26px;
}

@media screen and (min-width: 1025px) {
  .interior-nav--desktop {
    display: block;
  }
}

@media screen and (min-width: 1900px) {
  .interior-nav--desktop {
    display: block;
    left: 50vw;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1900px;
  }
}

.interior-nav--desktop a {
  color: #fff;
}

.interior-nav--desktop .interior-nav__trail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  max-width: 1200px;
  margin: 0 auto;
  list-style: none;
}

.interior-nav--desktop .interior-nav__dropdown--inner {
  position: absolute;
  top: 100%;
  left: calc(50% + 47px);
  width: 316px;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility;
  -o-transition: opacity 0.3s ease, visibility;
  transition: opacity 0.3s ease, visibility;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.3));
          filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.3));
  overflow-x: scroll;
  height: 500px;
}

.interior-nav--desktop .interior-nav__dropdown--inner.js-visible {
  opacity: 1;
  visibility: visible;
}

.interior-nav--desktop .interior-nav__dropdown--inner ul {
  position: relative;
  margin: 0;
  background-color: #fff;
  padding: 0.65em 1.2em 1.85em;
  list-style: none;
  z-index: 1;
}

.interior-nav--desktop .interior-nav__dropdown--inner li {
  line-height: 1.3;
}

.interior-nav--desktop .interior-nav__dropdown--inner li:not(:last-of-type) {
  margin-bottom: 0.6em;
}

.interior-nav--desktop .interior-nav__dropdown--inner a {
  color: #000000;
}

.interior-nav--desktop .item {
  line-height: 1.2;
}

.interior-nav--desktop .item > a {
  font-size: 0.82em;
  display: block;
}

.interior-nav--desktop .item--primary {
  position: relative;
  padding: 1em 0;
}

.interior-nav--desktop .item--primary:not(:last-of-type) {
  margin-right: 30px;
}

.interior-nav--desktop .item--primary > a {
  font-size: 0.85em;
}

.interior-nav--desktop .item--primary:before {
  background: 0;
  left: calc(100% + 30px);
  top: 0;
  margin: 18px 0;
  width: 1px;
  height: calc(100% - 36px);
  content: '';
}

.interior-nav--desktop .item--has-children {
  position: relative;
  padding: 1em 1em 1em 0;
}

.interior-nav--desktop .item--has-children:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 5px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #F6D16F;
  border-right: 1px solid #F6D16F;
  -webkit-transform: translateY(-50%) rotate(135deg);
      -ms-transform: translateY(-50%) rotate(135deg);
          transform: translateY(-50%) rotate(135deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.interior-nav--desktop .item--has-children:hover:after, .interior-nav--desktop .item--has-children:focus:after {
  -webkit-transform: translateY(calc(-50% + 3px)) rotate(-45deg);
      -ms-transform: translateY(calc(-50% + 3px)) rotate(-45deg);
          transform: translateY(calc(-50% + 3px)) rotate(-45deg);
}

.interior-nav--desktop .item--has-children:hover .interior-nav__dropdown--inner, .interior-nav--desktop .item--has-children:focus .interior-nav__dropdown--inner {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.interior-nav--desktop .item--active-trail a {
  font-weight: 700;
  padding-bottom: 3px;
  background-image: -webkit-gradient(linear, right top, left top, from(#F6D16F), to(#F6D16F));
  background-image: -o-linear-gradient(right, #F6D16F, #F6D16F);
  background-image: linear-gradient(to left, #F6D16F, #F6D16F);
  background-position: 0% 100%;
  background-repeat: no-repeat;
  background-size: 100% 2px;
}

.interior-nav--desktop .item .menu__toggle {
  display: none;
}

.interior-nav--mobile {
  position: absolute;
  width: 100%;
  background: #fff;
  display: block;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile {
    width: 320px;
    -webkit-filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.3));
            filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.3));
  }
}

.interior-nav--mobile .item {
  line-height: 2;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .item {
    line-height: 1.88;
  }
}

.interior-nav--mobile .item a {
  font-size: 0.96em;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .item a {
    font-size: 0.84em;
  }
}

.interior-nav--mobile .item--primary {
  display: block;
}

.interior-nav--mobile .item--current-page {
  display: none;
}

.interior-nav--mobile .item--has-children {
  position: relative;
}

.interior-nav--mobile .item .menu__toggle {
  position: absolute;
  display: inline-block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  width: 16px;
  height: 16px;
  top: 10px;
  margin-left: 8px;
}

.interior-nav--mobile .item .menu__toggle:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  background: none;
  -webkit-transform: translate(-50%, -50%) rotate(135deg);
      -ms-transform: translate(-50%, -50%) rotate(135deg);
          transform: translate(-50%, -50%) rotate(135deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.interior-nav--mobile .item .menu__toggle:hover {
  cursor: pointer;
}

.interior-nav--mobile .item .menu__toggle.js-expanded:after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.interior-nav--mobile .interior-nav__button {
  position: relative;
  width: 100%;
  text-align: left;
  padding: 0.75em 15px 0.75em 15px;
  border: 0;
  font-size: 0.98em;
  background: transparent;
  color: #fff;
  background-color: #182E44;
  cursor: pointer;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .interior-nav__button {
    font-size: 0.87em;
  }
}

.interior-nav--mobile .interior-nav__button .plus {
  position: absolute;
  top: 50%;
  left: 126px;
  width: 22px;
  height: 20px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.interior-nav--mobile .interior-nav__button .plus span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  background-color: #F6D16F;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: top 0.3s ease;
  -o-transition: top 0.3s ease;
  transition: top 0.3s ease;
}

.interior-nav--mobile .interior-nav__button .plus span:nth-child(2) {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}

.interior-nav--mobile .interior-nav__button[aria-expanded='true'] .plus span:nth-child(2) {
  display: none;
}

.interior-nav--mobile .interior-nav__dropdown {
  position: relative;
  display: none;
}

.interior-nav--mobile .interior-nav__dropdown:after {
  content: '';
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
  height: 20px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.3)), to(transparent));
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0.3), transparent);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), transparent);
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .interior-nav__dropdown:after {
    display: none;
  }
}

.interior-nav--mobile .interior-nav__dropdown ul {
  margin: 0;
  padding: 1.2em 20px 1.2em;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .interior-nav__dropdown ul {
    padding: 1em 20px;
  }
}

.interior-nav--mobile .interior-nav__dropdown .interior-nav__dropdown--inner {
  display: none;
  overflow-y: scroll;
  height: 500px;
}

.interior-nav--mobile .interior-nav__dropdown .interior-nav__dropdown--inner ul {
  list-style: none;
  padding: 0.5em 0 0 1.1em;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .interior-nav__dropdown .interior-nav__dropdown--inner ul {
    padding: 0.5em 0 0 0.95em;
  }
}

.interior-nav--mobile .interior-nav__dropdown .interior-nav__dropdown--inner ul li {
  margin-bottom: 0.9em;
  line-height: 1.2;
}

@media screen and (min-width: 700px) {
  .interior-nav--mobile .interior-nav__dropdown .interior-nav__dropdown--inner ul li {
    line-height: 1;
  }
}

@media screen and (min-width: 1025px) {
  .interior-nav--mobile {
    display: none;
  }
}

.interior-nav.js-fixed .interior-nav--desktop, .interior-nav.js-fixed .interior-nav--mobile {
  position: fixed;
  top: 0;
}

/**
 * @file
 * Pager
 *
 * Styles for sitewide pagination.
 */
.pagination,
.dataTables_paginate {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  line-height: 1;
  margin-left: 0;
}

.pagination > span,
.dataTables_paginate > span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.pagination > span a,
.dataTables_paginate > span a {
  color: #000000;
  font-family: urw-din, sans-serif;
  font-size: 18px;
  font-weight: 400;
  padding: 4px 5px;
  margin: 4px 2px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.pagination > span a.current,
.dataTables_paginate > span a.current {
  font-weight: 600;
  background: #F6D16F;
}

.pagination > span a:hover,
.dataTables_paginate > span a:hover {
  color: #BA2319;
  cursor: pointer;
}

.pagination > .paginate__button.previous, .pagination > .paginate__button.next,
.dataTables_paginate > .paginate__button.previous,
.dataTables_paginate > .paginate__button.next {
  position: relative;
  display: block;
  width: 10px;
  height: 20px;
  line-height: 1;
}

.pagination > .paginate__button.previous:before, .pagination > .paginate__button.next:before,
.dataTables_paginate > .paginate__button.previous:before,
.dataTables_paginate > .paginate__button.next:before {
  position: absolute;
  left: 1px;
  top: 7px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #182E44;
  border-left: 2px solid #182E44;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  content: '';
}

.pagination > .paginate__button.previous,
.dataTables_paginate > .paginate__button.previous {
  margin: 0 3px 0 0;
}

.pagination > .paginate__button.next,
.dataTables_paginate > .paginate__button.next {
  margin: 0 0 0 5px;
}

.pagination > .paginate__button.next:before,
.dataTables_paginate > .paginate__button.next:before {
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
}

/**
 * @file
 * Page introduction
 *
 * Contains styles for accordion content object.
 */
.page-intro {
  line-height: 1.5;
  margin: 2rem 0 1.7rem;
  font-size: 20px;
  padding: 0 0 2rem;
  border-bottom: 2px dotted #182E44;
}

@media screen and (min-width: 700px) {
  .page-intro {
    font-size: 25px;
    margin: 2rem 0 1.9rem;
  }
}

@media (min-width: 1025px) {
  .page-intro {
    margin: 2rem 0 2.6rem;
    padding: 0 0 3.4rem;
  }
}

.alert {
  display: block;
  top: 0;
  padding: 2rem;
  color: #182E44;
}

@media (min-width: 700px) {
  .alert {
    padding: 2rem 2rem 1.5rem;
  }
}

@media (min-width: 1025px) {
  .alert {
    padding: 2.4rem 0 1.5rem;
  }
}

.alert-display {
  padding: 0;
  background-color: #F6D16F;
  width: 100vw;
}

@media screen and (min-width: 1900px) {
  .alert-display {
    display: block;
    left: 50vw;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1900px;
    position: relative;
  }
}

.alert-display.js-active + header {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease 0.5s;
  -o-transition: opacity 0.3s ease 0.5s;
  transition: opacity 0.3s ease 0.5s;
}

.alert-display + header {
  opacity: 0;
}

.alert-display__content {
  padding: 0 15px;
}

@media (min-width: 700px) {
  .alert-display__content {
    padding: 0 20px;
  }
}

.alert-display__content {
  margin: 0 0 5rem 0;
}

.alert__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  margin: 0 auto;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  max-width: 740px;
}

@media (min-width: 700px) {
  .alert__content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    padding-left: 47px;
  }
}

@media (min-width: 700px) {
  .alert__message {
    padding-right: 1.4rem;
    padding-left: 30px;
  }
}

.alert__icon:before {
  position: absolute;
  display: inline-block;
  top: 0;
  left: -16px;
  width: 36px;
  height: 36px;
  background: url("../assets/icons/error.svg") no-repeat center left;
  background-size: contain;
  content: '';
}

@media (min-width: 700px) {
  .alert__icon:before {
    top: 2px;
    left: -76px;
    width: 50px;
    height: 50px;
  }
}

.alert__title {
  position: relative;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 0.6rem;
  padding-left: 30px;
}

@media (min-width: 700px) {
  .alert__title {
    line-height: 1;
    padding-left: 0;
    margin-bottom: 0.3rem;
  }
}

.alert__title span {
  font-family: urw-din-condensed, sans-serif;
}

.alert__description {
  margin-bottom: 1rem;
  line-height: 1.69;
}

.alert__cta {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #fff;
  padding: 0.8em 1.05em;
  background-color: #000000;
  color: #fff !important;
  white-space: nowrap;
  color: #fff;
  letter-spacing: 1px;
  font-size: 15px;
}

.alert__cta:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #182E44;
  z-index: 0;
}

.alert__cta:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.alert__cta span {
  position: relative;
  z-index: 2;
}

.alert__cta:hover {
  color: #fff;
}

.alert__cta:hover:before {
  width: 100%;
}

@media (min-width: 700px) {
  .alert__cta {
    margin: 0 0 0 1rem;
    top: 3px;
    font-size: 17px;
  }
}

@media (min-width: 1025px) {
  .alert__cta {
    font-size: 22px;
  }
}

.alert__cta span {
  font-size: inherit;
  font-family: inherit;
  color: #fff !important;
}

/**
 * @file
 * Accordion
 *
 * Contains styles for accordion content object.
 */
.accordion {
  margin: 0.5rem 0;
}

@media (min-width: 1025px) {
  .accordion {
    margin: 3.5rem 0 4.9rem;
  }
}

.accordion__header {
  margin: 0 0 1.4rem;
}

@media (min-width: 1025px) {
  .accordion__header {
    margin: 0 0 1rem;
  }
}

.accordion__header h2 {
  line-height: 1;
}

.accordion__intro {
  margin: 0 0 2.1rem;
  font-size: 1rem;
}

@media (min-width: 700px) {
  .accordion__intro {
    margin: 0 0 1.5rem;
  }
}

@media (min-width: 1025px) {
  .accordion__intro {
    margin: 0 0 1rem;
  }
}

.accordion__all {
  padding: 0 1em 0 0;
  margin: 0.5em 0;
  text-align: left;
}

@media (min-width: 700px) {
  .accordion__all {
    margin: 1.7em 0 2em;
  }
}

@media (min-width: 1025px) {
  .accordion__all {
    margin: 2em 0 2.2em;
  }
}

.accordion__all button {
  position: relative;
  padding: 0;
  background-color: transparent;
  border: 0;
  color: #BA2319;
  font-size: 1.125rem;
  font-weight: 600;
  font-family: urw-din, sans-serif;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

@media (min-width: 700px) {
  .accordion__all button {
    font-size: 1rem;
  }
}

.accordion__all button.js-disabled {
  opacity: 0.4;
  pointer-events: none;
}

.accordion__expand-all {
  margin-right: 1.2em;
  cursor: pointer;
}

@media (min-width: 1025px) {
  .accordion__expand-all {
    margin-right: 1em;
  }
}

.accordion__collapse-all {
  cursor: pointer;
}

.accordion__item {
  margin: 0 0 1.3em;
  border-bottom: 2px dotted #182E44;
}

@media (min-width: 1025px) {
  .accordion__item {
    margin: 0 0 1.5em;
  }
}

.accordion__item:last-child {
  margin: 0;
}

.accordion__toggle {
  display: block;
  position: relative;
  padding: 0.15em 1em 1em 2.7em;
  width: 100%;
  min-height: 54px;
  background: transparent;
  border: 0;
  color: #182E44;
  cursor: pointer;
  font-weight: 700;
  font-size: 1.125rem;
  font-family: urw-din, sans-serif;
  line-height: 1.23;
  text-align: left;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

@media (min-width: 700px) {
  .accordion__toggle {
    font-size: 1.33rem;
    padding: 0 1em 1.6em 2.7em;
  }
}

@media (min-width: 1025px) {
  .accordion__toggle {
    min-height: 70px;
    padding: 0 1em 1em 2.8em;
  }
}

.accordion__toggle:focus {
  outline: none;
}

.accordion__toggle:focus .accordion__icon {
  border: 2px solid #fff;
  outline: 2px solid #182E44;
}

.accordion__toggle.js-expanded .accordion__icon {
  background-color: #F6D16F;
}

.accordion__toggle.js-expanded .accordion__icon:before {
  -webkit-transform: translate(-50%, -50%) rotate(-225deg);
      -ms-transform: translate(-50%, -50%) rotate(-225deg);
          transform: translate(-50%, -50%) rotate(-225deg);
}

.accordion__icon {
  position: absolute;
  height: 34px;
  width: 34px;
  background: #99B4C9;
  left: 0;
  top: 0;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media (min-width: 700px) {
  .accordion__icon {
    height: 42px;
    width: 42px;
  }
}

@media (min-width: 1025px) {
  .accordion__icon {
    height: 43px;
    width: 43px;
  }
}

.accordion__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-bottom: 2px solid #182E44;
  border-left: 2px solid #182E44;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
  content: '';
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

@media (min-width: 700px) {
  .accordion__icon:before {
    width: 9px;
    height: 9px;
  }
}

.accordion__content {
  display: none;
  padding: 0 0 1.8em;
}

@media (min-width: 700px) {
  .accordion__content {
    padding: 0 0 2em 3.7em;
  }
}

@media (min-width: 1025px) {
  .accordion__content {
    padding: 0 3em 1.6em 3.7em;
  }
}

@media (min-width: 700px) {
  .accordion__content p:last-of-type {
    margin: 0;
  }
}

.accordion__content .views-element-container {
  width: 100%;
}

.accordion__copy {
  width: 100%;
}

.accordion__copy .table--wysiwyg {
  margin: 0;
  width: 100%;
}

@media (max-width: 699px) {
  .accordion__copy .table--wysiwyg {
    margin: 0 1em;
    width: calc(100% + 2em);
  }
}

.accordion__top {
  position: relative;
  margin: 0.74rem 0 0;
  padding: 0;
  background: transparent;
  border: 0;
  font-weight: 600;
  font-size: 1.125rem;
  color: #BA2319;
  -webkit-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  font-family: urw-din, sans-serif;
}

@media (min-width: 700px) {
  .accordion__top {
    font-size: 1rem;
    margin: 1.64rem 0 0;
  }
}

@media (min-width: 1025px) {
  .accordion__top {
    margin: 1.34rem 0 0;
  }
}

.accordion__top:hover {
  color: #000000;
}

/**
 * @file
 * Award
 *
 * Contains styles for Awards in WYSIWYG region.
 */
.award {
  clear: both;
}

.award__item {
  margin: 0 0 1em;
}

.award__title {
  font-weight: 700;
  margin: 0;
}

/**
 * @file
 * Form
 *
 * Contains styles for forms in main content region.
 */
.main .form {
  margin: 2rem 0;
}

.main .form__item {
  font-family: urw-din, sans-serif;
  margin-bottom: 2.2em;
}

@media screen and (min-width: 700px) {
  .main .form__item {
    margin-bottom: 1.67em;
  }
}

.main .form__item label,
.main .form__item legend {
  margin-bottom: 0.5em;
  font-weight: 600;
}

@media screen and (min-width: 700px) {
  .main .form__item label,
  .main .form__item legend {
    margin-bottom: 0.3em;
  }
}

.main .form__item:not(.form--fieldset) label {
  display: block;
}

.main .form__checkbox, .main .form__radio {
  position: relative;
}

.main .form__checkbox:not(:last-of-type), .main .form__radio:not(:last-of-type) {
  margin-bottom: 0.935em;
}

@media screen and (min-width: 700px) {
  .main .form__checkbox:not(:last-of-type), .main .form__radio:not(:last-of-type) {
    margin-bottom: 0.59em;
  }
}

.main .form__checkbox input, .main .form__radio input {
  position: absolute;
  left: -7px;
  top: 3px;
  width: 25px;
  height: 25px;
  cursor: pointer;
  z-index: 1;
  border: 0;
}

@media (min-width: 700px) {
  .main .form__checkbox input, .main .form__radio input {
    left: -3px;
  }
}

.main .form__checkbox input:focus, .main .form__radio input:focus {
  outline: none;
  border: 2px solid #182E44;
}

.main .form__checkbox input:checked + label:before, .main .form__radio input:checked + label:before {
  background-color: #182E44;
}

.main .form__checkbox input:checked + label:after, .main .form__radio input:checked + label:after {
  display: block;
}

.main .form__checkbox input::-ms-check, .main .form__radio input::-ms-check {
  display: none;
}

.main .form__radio input:focus {
  border-radius: 100%;
}

.main .form--text input,
.main .form--text select, .main .form--email input,
.main .form--email select, .main .form--tel input,
.main .form--tel select, .main .form--select input,
.main .form--select select {
  font-family: urw-din, sans-serif;
  color: #000000;
  font-size: 0.93rem;
  width: 223px;
  height: 30px;
  border: 0;
  border-bottom: 1px solid #000000;
}

@media screen and (min-width: 700px) {
  .main .form--text input,
  .main .form--text select, .main .form--email input,
  .main .form--email select, .main .form--tel input,
  .main .form--tel select, .main .form--select input,
  .main .form--select select {
    font-size: 0.82em;
  }
}

.main .form--text input::-webkit-input-placeholder, .main .form--email input::-webkit-input-placeholder, .main .form--tel input::-webkit-input-placeholder, .main .form--select input::-webkit-input-placeholder {
  color: #000000;
}

.main .form--text input::-moz-placeholder, .main .form--email input::-moz-placeholder, .main .form--tel input::-moz-placeholder, .main .form--select input::-moz-placeholder {
  color: #000000;
}

.main .form--text input:-ms-input-placeholder, .main .form--email input:-ms-input-placeholder, .main .form--tel input:-ms-input-placeholder, .main .form--select input:-ms-input-placeholder {
  color: #000000;
}

.main .form--text input::-ms-input-placeholder, .main .form--email input::-ms-input-placeholder, .main .form--tel input::-ms-input-placeholder, .main .form--select input::-ms-input-placeholder {
  color: #000000;
}

.main .form--text input::placeholder, .main .form--email input::placeholder, .main .form--tel input::placeholder, .main .form--select input::placeholder {
  color: #000000;
}

.main .form--textarea textarea {
  font-family: urw-din, sans-serif;
  font-size: 0.93rem;
  width: 100%;
  max-width: 570px;
  min-height: 144px;
  border: 1px solid #000000;
  padding: 0.3em;
}

@media screen and (min-width: 700px) {
  .main .form--textarea textarea {
    font-size: 0.82rem;
  }
}

.main .form--fieldset {
  padding: 0;
  border: 0;
}

.main .form--fieldset label {
  position: relative;
  font-size: 0.9em;
  font-weight: 300;
  padding-left: 1.8em;
}

@media screen and (min-width: 700px) {
  .main .form--fieldset label {
    font-size: 0.83em;
    padding-left: 2.2em;
  }
}

.main .form--fieldset label:before {
  content: '';
  position: absolute;
  top: 1px;
  left: -4px;
  width: 17px;
  height: 17px;
  border: 1px solid #000000;
}

@media screen and (min-width: 700px) {
  .main .form--fieldset label:before {
    top: 0;
    left: 0;
  }
}

.main .form--fieldset label:after {
  content: '';
  display: none;
  position: absolute;
  top: 5px;
  left: 3px;
  width: 3px;
  height: 7px;
  border-bottom: 2px solid #F6D16F;
  border-right: 2px solid #F6D16F;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (min-width: 700px) {
  .main .form--fieldset label:after {
    top: 4px;
    left: 7px;
  }
}

.main .form--select {
  position: relative;
  display: inline-block;
}

.main .form--select select {
  background-color: #fff;
}

.main .form--select:after {
  content: '';
  position: absolute;
  bottom: 13px;
  right: 6px;
  width: 4px;
  height: 4px;
  border-right: 1px solid #000000;
  border-bottom: 1px solid #000000;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.main .form--actions input {
  position: relative;
  font-family: urw-din, sans-serif;
  color: #000000;
  font-style: italic;
  font-weight: 600;
  font-size: 0.9em;
  display: inline-block;
  border: 2px solid #E6E6E6;
  border-radius: 20px;
  padding: 0.4em 1.5em;
  background: none;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media (min-width: 700px) {
  .main .form--actions input {
    font-size: 0.78rem;
  }
}

@media (min-width: 1025px) {
  .main .form--actions input {
    font-size: 0.889rem;
    border-radius: 22px;
  }
}

.main .form--actions input span {
  letter-spacing: 0.23px;
  font-size: inherit;
}

.main .form--actions input span:after {
  display: block;
  position: absolute;
  width: 9px;
  height: 14px;
  left: calc(46% - 8px);
  background-image: url("../assets/icons/btn-arrow-blue.svg");
  background-repeat: no-repeat;
  background-position: 29% 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  -webkit-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
  content: '';
}

@media (min-width: 700px) {
  .main .form--actions input span:after {
    bottom: -8px;
  }
}

.main .form--actions input span:before {
  -webkit-box-shadow: 0px 0px 0px 2px white;
          box-shadow: 0px 0px 0px 2px white;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  position: absolute;
  left: -4px;
  top: -4px;
  opacity: 0;
  content: '';
  border-radius: 20px;
}

@media (min-width: 1025px) {
  .main .form--actions input span:before {
    border-radius: 22px;
  }
}

.main .form--actions input:before {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 29%;
  height: calc(100% + 4px);
  border-width: 2px 0 0 2px;
  border-radius: 20px 0 0 20px;
  border-color: #99B4C9 transparent transparent #99B4C9;
  border-style: solid;
  content: '';
}

@media (min-width: 1025px) {
  .main .form--actions input:before {
    border-radius: 22px 0 0 22px;
  }
}

.main .form--actions input:after {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 46%;
  height: calc(100% + 4px);
  border-width: 0 0 2px 2px;
  border-radius: 20px 0 0 20px;
  border-color: transparent transparent #99B4C9 #99B4C9;
  border-style: solid;
  -webkit-animation: drawoutCTA 400ms forwards;
          animation: drawoutCTA 400ms forwards;
  content: '';
}

@media (min-width: 1025px) {
  .main .form--actions input:after {
    border-radius: 22px 0 0 22px;
  }
}

.main .form--actions input:hover:after {
  -webkit-animation: drawinCTA 400ms forwards;
          animation: drawinCTA 400ms forwards;
}

.main .form--actions input:hover span:after {
  opacity: 0;
  -webkit-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.main .form--actions input:focus {
  outline: none;
}

.main .form--actions input:focus:after,
.main .form--actions input:focus span:before {
  opacity: 1;
}

.main .form--actions input:before, .main .form--actions input:after {
  content: none;
}

.main .form--actions input:hover {
  border: 2px solid #99B4C9;
}

.main .form__radio label:before {
  border-radius: 100%;
}

.main .form__radio label:after {
  top: 7px;
  left: 3px;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  border: 0;
  background-color: #F6D16F;
}

@media screen and (min-width: 700px) {
  .main .form__radio label:after {
    left: 7px;
  }
}

/**
 * @file
 * Generic Block: 2 Column
 *
 * Styles for Generic Block: 2 Column object.
 */
.gen2col {
  margin: 2rem 0 2.5rem;
}

@media (min-width: 700px) {
  .gen2col {
    margin: 2rem 0 3.25rem;
  }
}

@media (min-width: 1025px) {
  .gen2col {
    margin: 2rem 0 4.4rem;
  }
}

.gen2col__header {
  margin: 0 0 1.3rem;
}

@media (min-width: 1025px) {
  .gen2col__header {
    margin: 0 0 0.8rem;
  }
}

.gen2col__intro {
  font-size: 1rem;
  margin: 0 0 1.3rem;
}

@media (min-width: 700px) {
  .gen2col__intro {
    margin: 0 0 1.5rem;
  }
}

@media (min-width: 1025px) {
  .gen2col__intro {
    margin: 0 0 2.1rem;
  }
}

@media (min-width: 700px) {
  .gen2col .column--two {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

/**
 * @file
 * Generic Block: 3 Column
 *
 * Styles for Generic Block: 3 Column object.
 */
.gen3col {
  margin: 2rem 0 2.5rem;
}

@media (min-width: 700px) {
  .gen3col {
    margin: 2rem 0 3.25rem;
  }
}

@media (min-width: 1025px) {
  .gen3col {
    margin: 2rem 0 4.4rem;
  }
}

.gen3col__header {
  margin: 0 0 1.3rem;
}

@media (min-width: 1025px) {
  .gen3col__header {
    margin: 0 0 0.8rem;
  }
}

.gen3col__intro {
  font-size: 1rem;
  margin: 0 0 1.3rem;
}

@media (min-width: 700px) {
  .gen3col__intro {
    margin: 0 0 2.2rem;
  }
}

@media (min-width: 700px) {
  .gen3col .column--three .column__col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 1.6em;
  }
}

@media (min-width: 1025px) {
  .gen3col .column--three .column__col {
    display: block;
    margin: 0;
  }
}

@media (min-width: 700px) {
  .gen3col .column--three .column__title {
    margin: 0 0 0.5rem;
  }
}

@media (min-width: 1025px) {
  .gen3col .column--three .column__title h3 {
    font-size: 1.33rem;
  }
}

@media (min-width: 700px) {
  .gen3col .column--three .column__subtitle {
    margin: 0 0 0.6rem;
  }
}

@media (min-width: 1025px) {
  .gen3col .column--three .column__subtitle {
    margin: 0 0 1rem;
  }
}

@media (min-width: 700px) {
  .gen3col .column--three .column__body {
    line-height: 1.4;
  }
}

@media (min-width: 1025px) {
  .gen3col .column--three .column__body {
    line-height: 1.6;
  }
}

@media (min-width: 700px) {
  .gen3col .column--three .column__content {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 1;
        -ms-flex-negative: 1;
            flex-shrink: 1;
    -webkit-flex-basis: 60%;
        -ms-flex-preferred-size: 60%;
            flex-basis: 60%;
  }
}

@media (min-width: 700px) {
  .gen3col .column--three .column__img {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: 40%;
        -ms-flex-preferred-size: 40%;
            flex-basis: 40%;
    margin-right: 1.2em;
    margin-bottom: 0;
  }
}

@media (min-width: 1025px) {
  .gen3col .column--three .column__img {
    margin: 0 0 1.2rem;
  }
}

/**
 * @file
 * Generic Block: Image list
 *
 * Styles for Generic Block: Image list object.
 */
/**
 * @file
 * Generic Block: 3 Column
 *
 * Styles for Generic Block: 3 Column object.
 */
.genimglist {
  margin: 2rem 0 2.5rem;
}

@media (min-width: 700px) {
  .genimglist {
    margin: 2rem 0 3.25rem;
  }
}

@media (min-width: 1025px) {
  .genimglist {
    margin: 2rem 0 4.4rem;
  }
}

.genimglist__header {
  margin: 0 0 1.3rem;
}

@media screen and (min-width: 700px) {
  .genimglist__header {
    margin: 0 0 0.8rem;
  }
}

@media (min-width: 1025px) {
  .genimglist__header {
    margin: 0 0 0.8rem;
  }
}

.genimglist__intro {
  font-size: 1rem;
  margin: 0 0 1.3rem;
}

@media (min-width: 700px) {
  .genimglist__intro {
    margin: 0 0 2.2rem;
  }
}

@media screen and (min-width: 1025px) {
  .genimglist__intro {
    margin: 0 0 2.7rem;
  }
}

@media screen and (min-width: 700px) {
  .genimglist__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.genimglist__item:not(:last-of-type) {
  margin-bottom: 1.8rem;
}

@media screen and (min-width: 700px) {
  .genimglist__item:not(:last-of-type) {
    margin-bottom: 1.4rem;
  }
}

@media screen and (min-width: 1025px) {
  .genimglist__item:not(:last-of-type) {
    margin-bottom: 1.1rem;
  }
}

.genimglist__title {
  margin: 0 0 1.15rem;
}

@media (min-width: 700px) {
  .genimglist__title {
    margin: 0 0 0.5rem;
  }
}

@media (min-width: 1025px) {
  .genimglist__title {
    margin: 0 0 0.5rem;
  }
}

.genimglist__title h3 {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 600;
}

@media (min-width: 700px) {
  .genimglist__title h3 {
    font-size: 1.33rem;
  }
}

@media (min-width: 1025px) {
  .genimglist__title h3 {
    font-size: 1.66rem;
  }
}

.genimglist__title h3 a {
  position: relative;
  font-weight: 600;
  border-bottom: 2px dotted #6F98B3;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.genimglist__title h3 a:hover, .genimglist__title h3 a:focus {
  border-color: transparent;
}

.genimglist__subtitle {
  margin: 0 0 0.8rem;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.4;
}

@media (min-width: 700px) {
  .genimglist__subtitle {
    font-size: 1rem;
    margin: 0 0 0.6rem;
  }
}

@media (min-width: 1025px) {
  .genimglist__subtitle {
    margin: 0 0 1rem;
  }
}

@media (min-width: 700px) {
  .genimglist__body {
    line-height: 1.4;
    font-size: 16px;
  }
}

@media (min-width: 1025px) {
  .genimglist__body {
    line-height: 1.6;
    font-size: 18px;
  }
}

@media (min-width: 700px) {
  .genimglist__content {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 1;
        -ms-flex-negative: 1;
            flex-shrink: 1;
    -webkit-flex-basis: 60%;
        -ms-flex-preferred-size: 60%;
            flex-basis: 60%;
  }
}

@media screen and (min-width: 1025px) {
  .genimglist__content {
    margin: -0.5em 0 0 30px;
  }
}

.genimglist__img {
  margin: 0 0 1.4rem;
}

@media (min-width: 700px) {
  .genimglist__img {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: 40%;
        -ms-flex-preferred-size: 40%;
            flex-basis: 40%;
    margin-right: 1.2em;
    margin-bottom: 0;
  }
}

@media (min-width: 1025px) {
  .genimglist__img {
    margin: 0 0 1.2rem;
    -webkit-flex-basis: 48.7%;
        -ms-flex-preferred-size: 48.7%;
            flex-basis: 48.7%;
  }
}

.genimglist__img img {
  width: 100%;
}

/**
 * @file
 * Hero
 *
 * Contains styles for hero object.
 */
.hero {
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  display: block;
  position: relative;
  background-size: cover;
}

.hero__inner {
  position: relative;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 133px;
  padding-bottom: 25px;
  background-color: #182E44;
  border-bottom: 4px solid #fff;
  left: 50%;
  max-width: 1900px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (min-width: 700px) {
  .hero__inner {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .hero__inner {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media screen and (min-width: 700px) {
  .hero__inner {
    padding-top: 16.8%;
    padding-bottom: 20px;
  }
}

@media screen and (min-width: 1025px) {
  .hero__inner {
    padding-top: 16.8%;
    padding-bottom: 57px;
  }
}

.hero__content {
  color: #fff;
}

@media screen and (min-width: 1025px) {
  .hero__content {
    max-width: 1000px;
    margin: 0 auto;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.hero__title {
  color: #fff;
  margin: 0 0 0 -15px;
  padding: 0 0 0 15px;
}

@media (min-width: 700px) {
  .hero__title {
    margin: 0 0 0 -20px;
    padding: 0 0 0 20px;
  }
}

.hero__text {
  color: #fff;
  font-size: 1.125rem;
  margin-top: 0.8rem;
  line-height: 1.64;
}

@media (min-width: 700px) {
  .hero__text {
    font-size: 1.38rem;
    margin-top: 0.2rem;
    line-height: 1.58;
  }
}

@media (min-width: 1025px) {
  .hero__text {
    margin-top: 0.8rem;
  }
}

.hero--img .hero__inner {
  padding-top: 143px;
  padding-bottom: 46px;
  -o-object-fit: cover;
     object-fit: cover;
  border-bottom: 0;
}

@media screen and (min-width: 700px) {
  .hero--img .hero__inner {
    padding-top: 16.8%;
    padding-bottom: 21px;
  }
}

@media screen and (min-width: 1025px) {
  .hero--img .hero__inner {
    padding-bottom: 58px;
  }
}

.hero--img .hero__inner:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(24, 46, 68, 0.31);
  z-index: 0;
}

.hero--img .hero__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

.hero--img .hero__content {
  position: relative;
  z-index: 1;
}

.hero--lg .hero__inner {
  padding-top: 64vh;
}

@media screen and (min-width: 700px) {
  .hero--lg .hero__inner {
    padding-top: 50vh;
    padding-bottom: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .hero--lg .hero__inner {
    padding-top: 62vh;
    padding-bottom: 60px;
  }
}

.hero.js-active .hero__content {
  opacity: 1;
}

.hero.hero--home.js-active .hero__image,
.hero.hero--home.js-active .hero__video {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.hero.hero--home.js-active .hero__video + .hero__image {
  -webkit-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

@media (max-width: 699px) {
  .hero.hero--home.hero--lg .hero__inner {
    padding-bottom: 13px;
    height: 80vh;
  }
}

@media (max-width: 1024px) {
  .hero.hero--home.hero--lg .hero__inner {
    pointer-events: none;
  }
}

.hero.hero--home.hero--lg .hero__image img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
  font-family: 'object-position: top; object-fit: cover;';
}

@media (max-width: 699px) {
  .hero.hero--home.hero--lg .hero__title--tartan {
    margin-bottom: 0;
  }
}

@media (max-width: 699px) {
  .hero.hero--home.hero--lg .hero__title--tartan h1 {
    margin-bottom: 0;
  }
}

.hero.hero--home .hero__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  padding-bottom: 6px;
  padding-top: 0;
}

@media (max-width: 699px) {
  .hero.hero--home .hero__inner {
    height: 41.5vh;
  }
}

@media (min-width: 700px) {
  .hero.hero--home .hero__inner {
    padding: 55% 50px 0;
  }
}

@media (min-width: 1025px) {
  .hero.hero--home .hero__inner {
    padding: 55% 125px 0;
  }
}

.hero.hero--home .hero__inner:after {
  content: '';
  position: absolute;
  bottom: 0;
  top: auto;
  left: 0;
  width: 100%;
  height: 80%;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.49)), to(transparent));
  background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.49), transparent);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.49), transparent);
  z-index: 0;
}

.hero.hero--home .hero__inner:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 31%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(transparent));
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), transparent);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
  z-index: 1;
}

.hero.hero--home .hero__inner:after {
  z-index: 2;
}

.hero.hero--home .hero__image {
  opacity: 0;
}

.hero.hero--home .hero__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: -1;
}

.hero.hero--home .hero__video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  opacity: 0;
}

@media (max-width: 1024px) {
  .hero.hero--home .hero__video {
    display: none;
  }
}

.hero.hero--home .hero__video:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80%;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.49)), to(transparent));
  background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.49), transparent);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.49), transparent);
  z-index: 4;
}

.hero.hero--home .hero__video:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 31%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(transparent));
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), transparent);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
  z-index: 4;
}

.hero.hero--home .hero__video #homeVideo {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
}

.hero.hero--home .hero__video #videoBtn {
  position: absolute;
  right: 40px;
  bottom: 40px;
  width: 54px;
  height: 54px;
  background: none;
  border: none;
  border-radius: 50%;
  font-size: 0;
  line-height: 0;
  z-index: 10;
  color: #fff;
}

.hero.hero--home .hero__video #videoBtn span {
  width: 50px;
  height: 50px;
  display: block;
  border: 2px solid #F6D16F;
  border-radius: 50%;
  left: 2px;
  top: 2px;
  position: absolute;
}

.hero.hero--home .hero__video #videoBtn:focus {
  -webkit-box-shadow: 0 0 0 2px #fff;
          box-shadow: 0 0 0 2px #fff;
  outline: none;
}

.hero.hero--home .hero__video #videoBtn:before {
  content: '';
  position: absolute;
  display: block;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 5px;
  height: 16px;
  border-width: 0 5px 0 5px;
  border-color: #F6D16F;
  border-style: solid;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.hero.hero--home .hero__video #videoBtn:after {
  content: '';
  position: absolute;
  display: block;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  margin-left: 3px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 16px solid #F6D16F;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0;
}

.hero.hero--home .hero__video #videoBtn.paused:before {
  opacity: 0;
}

.hero.hero--home .hero__video #videoBtn.paused:after {
  opacity: 1;
}

.hero.hero--home .hero__content {
  position: relative;
  width: 100%;
  max-width: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  z-index: 5;
  -webkit-transition-delay: 0.2s;
       -o-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

@media (min-width: 700px) {
  .hero.hero--home .hero__content {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0 51px 20px;
  }
}

@media (min-width: 1025px) {
  .hero.hero--home .hero__content {
    padding: 0 0 46px;
    margin: 0 124px 0;
    width: calc(100% - 248px);
  }
}

.hero.hero--home .hero__title h1 {
  font-size: 1.837rem;
  letter-spacing: 1.21px;
  margin-bottom: 0;
  line-height: 1;
}

@media (min-width: 700px) {
  .hero.hero--home .hero__title h1 {
    font-size: 2.33rem;
    margin: 0;
    padding: 0;
  }
}

@media (min-width: 1025px) {
  .hero.hero--home .hero__title h1 {
    font-size: 3.88rem;
    letter-spacing: 3px;
  }
}

.hero.hero--home .hero__title--tartan {
  display: block;
  margin-top: -0.4rem;
  margin-left: -0.2rem;
  margin-bottom: 0rem;
}

@media (min-width: 700px) {
  .hero.hero--home .hero__title--tartan {
    margin-top: -0.6rem;
  }
}

@media (min-width: 1025px) {
  .hero.hero--home .hero__title--tartan {
    margin-top: -0.8rem;
    margin-left: -0.6rem;
    margin-bottom: 0;
  }
}

.hero.hero--home .hero__title--tartan h1 {
  color: #BA2319;
  font-size: 4.5rem;
  line-height: 1;
  letter-spacing: 1.8px;
}

@media (min-width: 700px) {
  .hero.hero--home .hero__title--tartan h1 {
    font-size: 6.6rem;
    letter-spacing: 3.8px;
  }
}

@media (min-width: 1025px) {
  .hero.hero--home .hero__title--tartan h1 {
    font-size: 11rem;
    letter-spacing: 7.8px;
  }
}

@supports (-webkit-background-clip: text) {
  .hero.hero--home .hero__title--tartan h1 {
    display: block;
    background: url("../assets/img/tartan-background-hero-headline.jpg") no-repeat center center;
    background-size: cover;
    color: #fff;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
  }
}

/**
 * @file
 * Instagram
 *
 * Contains styles for instagram object.
 */
@media screen and (min-width: 1025px) {
  .instagram {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    margin-top: 4.2em;
  }
}

.instagram__account {
  text-align: center;
  margin-bottom: 0.9em;
}

@media screen and (min-width: 700px) {
  .instagram__account {
    margin-bottom: 1.6em;
  }
}

@media screen and (min-width: 1025px) {
  .instagram__account {
    max-width: 1000px;
    margin: 0 auto 2.7em;
  }
}

.instagram__account h2 {
  margin: 0;
}

.instagram__account a {
  display: inline-block;
  border-bottom: 2px dotted #6F98B3;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.instagram__account a:hover, .instagram__account a:focus {
  border-color: transparent;
}

.instagram__tile {
  position: relative;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
     -moz-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  padding-top: 50%;
  margin-bottom: 0;
}

@media screen and (min-width: 700px) {
  .instagram__tile {
    padding-top: calc(100% / 3);
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: calc(100% / 3);
        -ms-flex-preferred-size: calc(100% / 3);
            flex-basis: calc(100% / 3);
  }
}

@media screen and (min-width: 1025px) {
  .instagram__tile {
    padding-top: calc(100% / 4);
    -webkit-flex-basis: calc(100% / 4);
        -ms-flex-preferred-size: calc(100% / 4);
            flex-basis: calc(100% / 4);
  }
}

@media screen and (min-width: 700px) and (max-width: 1024px) {
  .instagram__tile:nth-child(4) {
    display: none;
  }
}

.instagram__link {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border: 0;
  font: 0/0 a;
  text-shadow: none;
  color: transparent;
  background-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-size: cover;
}

.instagram__link:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(186, 35, 25, 0.5);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.instagram__link:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% - 24px);
  height: calc(100% - 24px);
  border: 2px solid #fff;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  background-image: url("../assets/icons/instagram.svg");
  background-size: 30px;
  background-repeat: no-repeat;
  background-position: 10% 90%;
}

@media screen and (min-width: 1025px) {
  .instagram__link:after {
    width: calc(100% - 54px);
    height: calc(100% - 54px);
    border: 4px solid #fff;
    background-position: 6% 94%;
  }
}

.instagram__link:hover:before, .instagram__link:hover:after {
  opacity: 1;
}

.instagram__feed {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0 -15px;
  max-width: 1900px;
}

@media screen and (min-width: 700px) {
  .instagram__feed {
    margin: 0 -50px;
    -webkit-flex-wrap: unset;
        -ms-flex-wrap: unset;
            flex-wrap: unset;
  }
}

@media screen and (min-width: 1025px) {
  .instagram__feed {
    margin: 0 auto;
  }
}

.instagram--home {
  margin-bottom: 3em;
}

@media screen and (min-width: 700px) {
  .instagram--home {
    margin-bottom: 2.6em;
  }
}

@media screen and (min-width: 1025px) {
  .instagram--home {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    margin-bottom: 5em;
  }
}

.instagram--home .instagram__account {
  margin-bottom: 1.4em;
}

@media screen and (min-width: 700px) {
  .instagram--home .instagram__account {
    margin-bottom: 1.9em;
  }
}

@media screen and (min-width: 1025px) {
  .instagram--home .instagram__account {
    margin-bottom: 2.9em;
  }
}

.instagram--home .instagram__account h2 {
  font-size: 25px;
}

@media screen and (min-width: 700px) {
  .instagram--home .instagram__account h2 {
    font-size: 33px;
  }
}

@media screen and (min-width: 1025px) {
  .instagram--home .instagram__account h2 {
    font-size: 45px;
  }
}

/**
 * @file
 * Image Block
 *
 * Contains styles for image block content object.
 */
.image-block {
  position: relative;
  margin: 0 -15px 3.78rem;
}

@media (min-width: 700px) {
  .image-block {
    margin: 0 0 7rem;
  }
}

@media (min-width: 1025px) {
  .image-block {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    max-width: 1200px;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    left: 0;
    margin-right: 0;
  }
}

.image-block.js-active .image-block__caption {
  opacity: 1;
  -webkit-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.image-block.js-active .image-block__img {
  opacity: 1;
}

@media (min-width: 700px) {
  .image-block__wrapper {
    margin-right: -50px;
  }
}

@media (min-width: 1025px) {
  .image-block__wrapper {
    margin-right: 0;
  }
}

.image-block__img {
  position: relative;
  display: block;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 700px) {
  .image-block__img {
    margin-left: 110px;
  }
}

@media (min-width: 1025px) {
  .image-block__img {
    margin-left: 256px;
  }
}

.image-block__img:after {
  display: block;
  position: absolute;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
  top: 0;
  left: 0;
  border: 2px solid #fff;
  z-index: 1;
  content: '';
}

@media (min-width: 700px) {
  .image-block__img:after {
    border: 4px solid #fff;
    width: calc(100% - 64px);
    height: calc(100% - 64px);
    margin: 28px;
  }
}

@media (min-width: 1025px) {
  .image-block__img:after {
    width: calc(100% - 108px);
    height: calc(100% - 108px);
    margin: 50px;
  }
}

@media (min-width: 700px) {
  .image-block__img:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 150px;
    left: 0;
    right: 0;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  }
}

@media (min-width: 1025px) {
  .image-block__img:before {
    height: 260px;
  }
}

.image-block__caption {
  background: #BA2319 url(../assets/img/tartan-background-home-story.jpg) top left;
  padding: 18px 20px 30px;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  background-size: contain;
}

@media (min-width: 700px) {
  .image-block__caption {
    position: absolute;
    max-width: 234px;
    padding: 18px 24px 24px;
    bottom: -30px;
  }
}

@media (min-width: 1025px) {
  .image-block__caption {
    position: absolute;
    max-width: 409px;
    padding: 41px 40px 45px;
    bottom: -38px;
    left: 60px;
  }
}

.image-block__caption .caption-text {
  font-size: 1rem;
  margin: 0 0 1rem;
}

@media (min-width: 700px) {
  .image-block__caption .caption-text {
    margin: 0 0 0.5rem;
    font-size: 0.88rem;
    line-height: 1.5;
  }
}

@media (min-width: 1025px) {
  .image-block__caption .caption-text {
    font-size: 1rem;
    line-height: 1.62;
  }
}

.image-block h2 {
  color: #fff;
  font-size: 2.188rem;
  line-height: 0.9;
  margin: 0 0 1rem;
}

@media (min-width: 700px) {
  .image-block h2 {
    width: calc(100vw - 120px);
    font-size: 2.388rem;
    margin: 0.7rem 0 0.8rem;
  }
}

@media (min-width: 1025px) {
  .image-block h2 {
    font-size: 3.88rem;
    margin: 1rem 0 1.3rem;
    padding-right: 0;
    width: calc(100vw - 165px);
    max-width: 1000px;
  }
}

.image-block .cta {
  background-color: rgba(130, 22, 15, 0.5);
  border: 2px solid #CB746F;
  text-align: center;
  line-height: 1;
  padding: 0.7em 1.5em;
}

@media (min-width: 1025px) {
  .image-block .cta {
    padding: 0.8em 1.5em;
  }
}

.image-block .cta:before {
  border-color: #F6D16F transparent transparent #F6D16F;
}

.image-block .cta:after {
  border-color: transparent transparent #F6D16F #F6D16F;
  -webkit-animation: drawoutCTAyellow 400ms forwards;
          animation: drawoutCTAyellow 400ms forwards;
}

.image-block .cta:hover {
  cursor: pointer;
}

.image-block .cta:hover:after {
  -webkit-animation: drawinCTAyellow 400ms forwards;
          animation: drawinCTAyellow 400ms forwards;
}

.image-block .cta span:after {
  background-image: url(../assets/icons/btn-arrow-yellow.svg);
  bottom: -8px;
}

.image-block .cta span:before {
  -webkit-box-shadow: 0px 0px 0px 2px white;
          box-shadow: 0px 0px 0px 2px white;
}

.image-block + .schools-colleges {
  margin-top: -1.5em;
}

@media (min-width: 1025px) {
  .image-block + .schools-colleges {
    margin-top: -0.55em;
  }
}

/**
 * @file
 * Program List
 *
 * Styles for Program List display object.
 */
@media screen and (min-width: 700px) {
  .program-list {
    margin: 4.2em 0 3.7em;
  }
}

@media screen and (min-width: 1025px) {
  .program-list {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    margin-top: 7.2em;
    margin-bottom: 5.4em;
  }
}

.program-list__inner {
  margin: 0 -15px;
}

@media screen and (min-width: 700px) {
  .program-list__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -50px;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__inner {
    padding: 0 50px;
    margin: 0 auto;
    max-width: 1180px;
  }
}

.program-list__left {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 1.4em;
  padding-bottom: 1.4em;
  color: #fff;
  background: #BA2319 url("../assets/img/tartan-background-home-story.jpg") left center;
  background-size: contain;
}

@media screen and (min-width: 700px) {
  .program-list__left {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__left {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media screen and (min-width: 700px) {
  .program-list__left {
    padding-top: 2.5em;
    padding-bottom: 2.5em;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 44.5%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 44.5%;
            flex: 0 0 44.5%;
    background-size: 100%;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__left {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 33%;
            flex: 0 0 33%;
    padding-left: 42px;
    padding-right: 42px;
  }
}

.program-list__left h2 {
  color: #fff;
}

.program-list__right {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 0.7em;
  padding-bottom: 1.4em;
}

@media screen and (min-width: 700px) {
  .program-list__right {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__right {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media screen and (min-width: 700px) {
  .program-list__right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 52.5%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 52.5%;
            flex: 0 0 52.5%;
    padding-top: 0em;
    padding-left: 24px;
    padding-bottom: 1.4em;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__right {
    padding-top: 2.5em;
    padding-left: 45px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 66%;
            flex: 0 0 66%;
  }
}

.program-list__intro {
  margin-bottom: 0;
}

@media screen and (min-width: 700px) {
  .program-list__intro {
    font-size: 0.84rem;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__intro {
    font-size: 0.99rem;
    margin-top: 1.55em;
  }
}

.program-list__item {
  border-bottom: 1px solid #000000;
  padding-bottom: 0.6em;
}

@media screen and (min-width: 1025px) {
  .program-list__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 0.9em;
  }
}

.program-list__item:not(:last-of-type) {
  margin-bottom: 0.24em;
}

@media screen and (min-width: 1025px) {
  .program-list__item:not(:last-of-type) {
    margin-bottom: 0.655em;
  }
}

.program-list__program {
  font-size: 1.24em;
  -webkit-flex-basis: 60%;
      -ms-flex-preferred-size: 60%;
          flex-basis: 60%;
}

@media screen and (min-width: 700px) {
  .program-list__program {
    font-size: 1.1em;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__program {
    font-size: 1.37em;
    -webkit-flex-basis: 61.5%;
        -ms-flex-preferred-size: 61.5%;
            flex-basis: 61.5%;
  }
}

.program-list__program a {
  position: relative;
  color: #000000;
}

.program-list__program a .last-word {
  padding-right: 50px;
  display: inline-block;
  position: relative;
}

.program-list__program a .arrow {
  position: absolute;
  top: 57%;
  right: 0;
  width: 40px;
  height: 100%;
  background-image: url("../assets/icons/arrow-red.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

.program-list__program a:hover .arrow {
  right: -12px;
}

.program-list__program a .arrow {
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

.program-list__program a:hover {
  color: #BA2319;
}

.program-list__program a:hover .arrow {
  right: -12px;
}

.program-list__type {
  font-size: 0.91em;
}

@media screen and (min-width: 700px) {
  .program-list__type {
    font-size: 0.86em;
    margin-top: -0.18em;
    padding-left: 15px;
  }
}

@media screen and (min-width: 1025px) {
  .program-list__type {
    font-size: 1em;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 38%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 38%;
            flex: 0 0 38%;
  }
}

/**
 * @file
 * Statistic: 3 up feature
 *
 * Styles for Statistick: 3 up feature object.
 */
@media screen and (max-width: 699px) {
  .stat3up {
    text-align: center;
  }
}

@media screen and (min-width: 1025px) {
  .stat3up {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
  }
}

@media screen and (min-width: 1025px) {
  .stat3up__header {
    max-width: 780px;
    margin: 0 auto 0.9em;
  }
}

@media screen and (min-width: 1025px) {
  .stat3up__intro {
    max-width: 780px;
    margin: 0 auto 3em;
  }
}

.stat3up__items {
  margin: 0 0 2.3em;
}

@media screen and (min-width: 700px) {
  .stat3up__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 0 1.5em;
  }
}

@media screen and (min-width: 1025px) {
  .stat3up__items {
    max-width: 1000px;
    margin: 0 auto 2em;
  }
}

.stat3up__item {
  text-align: center;
}

@media screen and (min-width: 700px) {
  .stat3up__item {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 30%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 30%;
            flex: 0 0 30%;
  }
}

@media screen and (min-width: 1025px) {
  .stat3up__item {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 26.5%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 26.5%;
            flex: 0 0 26.5%;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.stat3up__item:nth-child(2) {
  -webkit-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.stat3up__item:nth-child(3) {
  -webkit-transition-delay: 0.6s;
       -o-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

@media screen and (max-width: 699px) {
  .stat3up__item:not(:last-of-type) {
    margin-bottom: 2.95em;
  }
}

.stat3up__number {
  position: relative;
  display: inline-block;
  font-family: urw-din, sans-serif;
  font-weight: 700;
  color: #BA2319;
  font-size: 4.2rem;
  letter-spacing: -1.57px;
  font-weight: 700;
  margin-top: -0.5em;
  margin-bottom: -0.05em;
}

@media (min-width: 700px) {
  .stat3up__number {
    font-size: 4.5rem;
    letter-spacing: -1.07px;
  }
}

@media (min-width: 1025px) {
  .stat3up__number {
    font-size: 6.76rem;
    letter-spacing: -2.81px;
  }
}

.stat3up__number span {
  position: absolute;
  color: transparent;
  -webkit-text-stroke: 1px #182E44;
  left: -4px;
  bottom: -3px;
  letter-spacing: -1.57px;
  font-size: 4.2rem;
}

@media (min-width: 700px) {
  .stat3up__number span {
    left: -7px;
    bottom: -7px;
    letter-spacing: -1.07px;
    font-size: 4.5rem;
  }
}

@media (min-width: 1025px) {
  .stat3up__number span {
    -webkit-text-stroke: 2px #182E44;
    letter-spacing: -2.81px;
    font-size: 6.76rem;
  }
}

@media screen and (min-width: 700px) {
  .stat3up__number {
    margin-bottom: -0.16em;
  }
}

.stat3up__caption {
  width: 220px;
  line-height: 1.3;
  margin: 0 auto 0.6em;
}

@media screen and (min-width: 700px) {
  .stat3up__caption {
    font-size: 0.9em;
    width: auto;
  }
}

@media screen and (min-width: 1025px) {
  .stat3up__caption {
    font-size: 0.99em;
    margin: 0 auto 0.9em;
  }
}

.stat3up__cta {
  font-size: 1.1em;
}

@media screen and (min-width: 700px) {
  .stat3up__cta {
    font-size: 1em;
  }
}

@media screen and (min-width: 700px) {
  .stat3up__section-cta {
    text-align: center;
  }
}

.stat3up__section-cta a {
  position: relative;
  font-family: urw-din, sans-serif;
  color: #000000;
  font-style: italic;
  font-weight: 600;
  font-size: 0.9em;
  display: inline-block;
  border: 2px solid #E6E6E6;
  border-radius: 20px;
  padding: 0.4em 1.5em;
  color: #000000;
}

@media (min-width: 700px) {
  .stat3up__section-cta a {
    font-size: 0.78rem;
  }
}

@media (min-width: 1025px) {
  .stat3up__section-cta a {
    font-size: 0.889rem;
    border-radius: 22px;
  }
}

.stat3up__section-cta a span {
  letter-spacing: 0.23px;
  font-size: inherit;
}

.stat3up__section-cta a span:after {
  display: block;
  position: absolute;
  width: 9px;
  height: 14px;
  left: calc(46% - 8px);
  background-image: url("../assets/icons/btn-arrow-blue.svg");
  background-repeat: no-repeat;
  background-position: 29% 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  -webkit-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
  content: '';
}

@media (min-width: 700px) {
  .stat3up__section-cta a span:after {
    bottom: -8px;
  }
}

.stat3up__section-cta a span:before {
  -webkit-box-shadow: 0px 0px 0px 2px white;
          box-shadow: 0px 0px 0px 2px white;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  position: absolute;
  left: -4px;
  top: -4px;
  opacity: 0;
  content: '';
  border-radius: 20px;
}

@media (min-width: 1025px) {
  .stat3up__section-cta a span:before {
    border-radius: 22px;
  }
}

.stat3up__section-cta a:before {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 29%;
  height: calc(100% + 4px);
  border-width: 2px 0 0 2px;
  border-radius: 20px 0 0 20px;
  border-color: #99B4C9 transparent transparent #99B4C9;
  border-style: solid;
  content: '';
}

@media (min-width: 1025px) {
  .stat3up__section-cta a:before {
    border-radius: 22px 0 0 22px;
  }
}

.stat3up__section-cta a:after {
  position: absolute;
  left: -1px;
  top: -2px;
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
  width: 46%;
  height: calc(100% + 4px);
  border-width: 0 0 2px 2px;
  border-radius: 20px 0 0 20px;
  border-color: transparent transparent #99B4C9 #99B4C9;
  border-style: solid;
  -webkit-animation: drawoutCTA 400ms forwards;
          animation: drawoutCTA 400ms forwards;
  content: '';
}

@media (min-width: 1025px) {
  .stat3up__section-cta a:after {
    border-radius: 22px 0 0 22px;
  }
}

.stat3up__section-cta a:hover:after {
  -webkit-animation: drawinCTA 400ms forwards;
          animation: drawinCTA 400ms forwards;
}

.stat3up__section-cta a:hover span:after {
  opacity: 0;
  -webkit-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.stat3up__section-cta a:focus {
  outline: none;
}

.stat3up__section-cta a:focus:after,
.stat3up__section-cta a:focus span:before {
  opacity: 1;
}

.stat3up.js-active .stat3up__item {
  opacity: 1;
}

/**
 * @file
 * Events 3 Up Feature
 *
 * Contains styles for Events 3 Up content object.
 */
@media (min-width: 700px) {
  .cal3up {
    margin: 2rem 0 2.9em;
  }
}

@media (min-width: 1025px) {
  .cal3up {
    margin: 2rem 0 4.2em;
  }
}

.cal3up__header {
  margin: 0 0 1rem;
}

@media (min-width: 700px) {
  .cal3up__header {
    margin: 0 0 1.4rem;
  }
}

@media (min-width: 1025px) {
  .cal3up__header {
    margin: 0 0 1rem;
  }
}

.cal3up__header h2 {
  line-height: 1;
}

.cal3up__section-cta {
  margin: 0 0 3rem;
}

.cal3up__section-cta:after, .cal3up__section-cta:before {
  content: none;
}

@media (min-width: 700px) {
  .cal3up__section-cta {
    margin: 0 0 1.8rem;
  }
}

@media (min-width: 1025px) {
  .cal3up__section-cta {
    margin: 0 0 3.3rem;
  }
}

.cal3up__section-cta a {
  padding: 0.4em 2.25em;
}

@media (min-width: 1025px) {
  .cal3up__section-cta a {
    padding: 0.4em 2.55em;
  }
}

.cal3up .column--three {
  margin: 0 0 0 2.6em;
  position: relative;
}

@media (min-width: 700px) {
  .cal3up .column--three {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
       -moz-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0;
  }
}

@media (min-width: 700px) {
  .cal3up .column--three:after {
    position: absolute;
    width: 100vw;
    max-width: 1900px;
    margin-left: calc((100% - 1900px) / 2);
    margin-right: calc((100% - 1900px) / 2);
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    left: 0;
    border-top: 2px dotted transparent;
    z-index: -1;
    top: 28px;
    content: '';
  }
}

.cal3up.js-active .cal3up__item:before {
  -webkit-animation: calBorder 500ms 0s forwards;
          animation: calBorder 500ms 0s forwards;
}

@media (max-width: 699px) {
  .cal3up.js-active .cal3up__item:last-child:before {
    -webkit-animation: calBorderLst 500ms 1s forwards;
            animation: calBorderLst 500ms 1s forwards;
  }
}

@media (min-width: 700px) {
  .cal3up.js-active .column--three:after {
    -webkit-animation: calBorderMd 500ms 0s forwards;
            animation: calBorderMd 500ms 0s forwards;
  }
}

.cal3up__item,
.cal3up .column__col {
  position: relative;
  margin: 0;
}

@media (min-width: 700px) {
  .cal3up__item,
  .cal3up .column__col {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: calc((100% / 3) + 7px);
        -ms-flex-preferred-size: calc((100% / 3) + 7px);
            flex-basis: calc((100% / 3) + 7px);
  }
}

@media (min-width: 1025px) {
  .cal3up__item,
  .cal3up .column__col {
    -webkit-flex-basis: calc((100% / 3) + 17px);
        -ms-flex-preferred-size: calc((100% / 3) + 17px);
            flex-basis: calc((100% / 3) + 17px);
  }
}

@media (max-width: 699px) {
  .cal3up__item:before,
  .cal3up .column__col:before {
    position: absolute;
    right: calc(100% + 2px);
    top: 12px;
    height: 0;
    width: 0;
    z-index: -1;
    border-width: 2px 0 0 2px;
    border-top-color: transparent;
    border-left-color: transparent;
    border-style: dotted;
    content: '';
  }
}

.cal3up__item:nth-child(2) .cal3up__date,
.cal3up .column__col:nth-child(2) .cal3up__date {
  background-color: #99B4C9;
}

.cal3up__item:nth-child(2):before,
.cal3up .column__col:nth-child(2):before {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.cal3up__item:last-child .cal3up__date,
.cal3up .column__col:last-child .cal3up__date {
  background-color: #182E44;
  color: #fff;
}

.cal3up__text {
  padding: 10px 12px 27px 0;
}

@media (min-width: 700px) {
  .cal3up__text {
    padding: 10px 20px 27px 0;
  }
}

@media (min-width: 1025px) {
  .cal3up__text {
    padding: 13px 30px 39px 0;
  }
}

.cal3up__text h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  text-transform: none;
  letter-spacing: normal;
}

@media (min-width: 700px) {
  .cal3up__text h3 {
    font-size: 1.11rem;
    margin-bottom: 0.5rem;
  }
}

@media (min-width: 1025px) {
  .cal3up__text h3 {
    margin-bottom: 0.6rem;
  }
}

.cal3up__text h3 .cta--link {
  font-size: 1rem;
  font-weight: 700;
}

@media (min-width: 700px) {
  .cal3up__text h3 .cta--link {
    font-size: 1.11rem;
  }
}

@media (min-width: 1025px) {
  .cal3up__text h3 .cta--link {
    font-size: 1.39rem;
  }
}

.cal3up__text h3 .cta--link .arrow {
  width: 27px;
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

@media (min-width: 700px) {
  .cal3up__text h3 .cta--link .arrow {
    width: 36px;
  }
}

@media (min-width: 1025px) {
  .cal3up__text h3 .cta--link .arrow {
    width: 44px;
  }
}

.cal3up__text h3 .cta--link .last-word {
  padding-right: 37px;
}

@media (min-width: 700px) {
  .cal3up__text h3 .cta--link .last-word {
    padding-right: 40px;
  }
}

@media (min-width: 1025px) {
  .cal3up__text h3 .cta--link .last-word {
    padding-right: 60px;
  }
}

.cal3up__text h3 .cta--link:after {
  content: none;
}

.cal3up__text h3 .cta--link:hover .arrow {
  right: -12px;
}

.cal3up__time, .cal3up__location {
  display: inline;
  font-size: 0.94rem;
}

@media (min-width: 700px) {
  .cal3up__time, .cal3up__location {
    display: block;
    font-size: 1rem;
    line-height: 1.3;
  }
}

.cal3up__time {
  padding-right: 5px;
}

@media (min-width: 700px) {
  .cal3up__time {
    padding-bottom: 0.2rem;
  }
}

.cal3up__date {
  text-align: center;
  min-width: 89px;
  padding: 10px;
  line-height: 1.1;
  display: inline-block;
  background-color: #F6D16F;
  font-size: 1rem;
  color: #182E44;
  font-weight: 700;
  text-transform: uppercase;
}

@media (min-width: 700px) {
  .cal3up__date {
    min-width: 139px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    font-size: 1.38rem;
    padding: 8px 10px;
    margin: 0 0 0.7rem;
  }
}

@media (min-width: 1025px) {
  .cal3up__date {
    padding: 14px 10px;
  }
}

/**
 * @file
 * Events 3 Up Feature
 *
 * Contains styles for Events 3 Up content object.
 */
.event-home {
  margin: 0 0 1.4em;
}

@media (min-width: 700px) {
  .event-home {
    margin: 2rem -24px 2.9em;
  }
}

@media (min-width: 1025px) {
  .event-home {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    margin-top: 0;
    margin-bottom: 3.1em;
    max-width: 1200px;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    left: 0;
  }
}

.event-home__header {
  margin: 0 0 1.4rem;
}

@media (min-width: 700px) {
  .event-home__header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 2.1rem;
  }
}

@media (min-width: 1025px) {
  .event-home__header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
       -moz-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 1000px;
    margin: 0 auto 3.6rem;
  }
}

.event-home__header h2 {
  line-height: 1;
  margin-bottom: 0.75em;
  font-size: 1.56rem;
}

@media screen and (min-width: 700px) {
  .event-home__header h2 {
    display: inline-block;
    margin-bottom: 0;
    font-size: 1.83rem;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__header h2 {
    font-size: 2.5rem;
  }
}

@media screen and (min-width: 450px) {
  .event-home__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1900px;
    margin: 0 -26px;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__content {
    margin: 0 auto;
  }
}

.event-home__section-cta {
  margin: 0;
}

.event-home__section-cta:after, .event-home__section-cta:before {
  content: none;
}

@media (min-width: 700px) {
  .event-home__section-cta {
    display: inline-block;
    margin: 0 0 0 1.8em;
  }
}

@media (min-width: 1025px) {
  .event-home__section-cta {
    margin: auto 0 auto 3.3rem;
  }
}

.event-home__img {
  width: 50%;
  margin-bottom: 1.7em;
}

@media screen and (min-width: 450px) {
  .event-home__img {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 45%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
    margin-right: 1.2rem;
    width: auto;
  }
}

@media (min-width: 700px) {
  .event-home__img {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 28%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 28%;
            flex: 0 0 28%;
    margin-right: 0;
    width: auto;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__img {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 29%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 29%;
            flex: 0 0 29%;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__img img {
    width: 100%;
  }
}

.event-home__info {
  position: relative;
}

@media screen and (min-width: 1025px) {
  .event-home__info {
    margin: 1.2em 0 0 4.3em;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 61.5%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 61.5%;
            flex: 0 0 61.5%;
    padding-right: 50px;
  }
}

.event-home .column--three {
  margin: 0 0 0 2.6em;
  position: relative;
}

@media screen and (min-width: 1025px) {
  .event-home .column--three {
    display: block;
    width: 100%;
    max-width: 670px;
  }
}

.event-home.js-active .event-home__item:before {
  -webkit-animation: calBorder 500ms 0s forwards;
          animation: calBorder 500ms 0s forwards;
}

@media (max-width: 699px) {
  .event-home.js-active .event-home__item:last-child:before {
    -webkit-animation: calBorderLst 500ms 1s forwards;
            animation: calBorderLst 500ms 1s forwards;
  }
}

@media (min-width: 700px) {
  .event-home.js-active .column--three:after {
    -webkit-animation: calBorderMd 500ms 0s forwards;
            animation: calBorderMd 500ms 0s forwards;
  }
}

.event-home__item,
.event-home .column__col {
  position: relative;
  margin: 0;
}

@media (min-width: 450px) {
  .event-home__item,
  .event-home .column__col {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-flex-basis: calc((100% / 3) + 7px);
        -ms-flex-preferred-size: calc((100% / 3) + 7px);
            flex-basis: calc((100% / 3) + 7px);
  }
}

@media (min-width: 1025px) {
  .event-home__item,
  .event-home .column__col {
    -webkit-flex-basis: calc((100% / 3) + 17px);
        -ms-flex-preferred-size: calc((100% / 3) + 17px);
            flex-basis: calc((100% / 3) + 17px);
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.event-home__item:nth-child(2),
.event-home .column__col:nth-child(2) {
  -webkit-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.event-home__item:nth-child(3),
.event-home .column__col:nth-child(3) {
  -webkit-transition-delay: 0.6s;
       -o-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.event-home__item:nth-child(4),
.event-home .column__col:nth-child(4) {
  -webkit-transition-delay: 0.9s;
       -o-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

@media (max-width: 699px) {
  .event-home__item:before,
  .event-home .column__col:before {
    position: absolute;
    right: calc(100% + 2px);
    top: 12px;
    height: 0;
    width: 0;
    z-index: -1;
    border-width: 2px 0 0 2px;
    border-top-color: transparent;
    border-left-color: transparent;
    border-style: dotted;
    content: '';
  }
}

.event-home__item:nth-child(2):before,
.event-home .column__col:nth-child(2):before {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.event-home__item:nth-child(3) .event-home__date,
.event-home .column__col:nth-child(3) .event-home__date {
  background-color: #99B4C9;
}

.event-home__item:last-child .event-home__date,
.event-home .column__col:last-child .event-home__date {
  background-color: #182E44;
  color: #fff;
}

.event-home__text {
  padding: 10px 12px 27px 0;
}

@media (min-width: 700px) {
  .event-home__text {
    padding: 0;
  }
}

@media (min-width: 1025px) {
  .event-home__text {
    padding: 0 30px 39px 0;
  }
}

.event-home__text h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  text-transform: none;
  letter-spacing: normal;
}

@media (min-width: 700px) {
  .event-home__text h3 {
    font-size: 1.11rem;
    margin-bottom: 0.2rem;
  }
}

@media (min-width: 1025px) {
  .event-home__text h3 {
    margin-bottom: 0.1rem;
  }
}

.event-home__text h3 .cta--link {
  font-size: 1rem;
  font-weight: 700;
}

@media (min-width: 700px) {
  .event-home__text h3 .cta--link {
    font-size: 1.11rem;
  }
}

@media (min-width: 1025px) {
  .event-home__text h3 .cta--link {
    font-size: 1.39rem;
  }
}

.event-home__text h3 .cta--link .arrow {
  width: 27px;
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

@media (min-width: 700px) {
  .event-home__text h3 .cta--link .arrow {
    width: 36px;
  }
}

@media (min-width: 1025px) {
  .event-home__text h3 .cta--link .arrow {
    width: 44px;
  }
}

.event-home__text h3 .cta--link .last-word {
  padding-right: 37px;
}

@media (min-width: 700px) {
  .event-home__text h3 .cta--link .last-word {
    padding-right: 40px;
  }
}

@media (min-width: 1025px) {
  .event-home__text h3 .cta--link .last-word {
    padding-right: 60px;
  }
}

.event-home__text h3 .cta--link:after {
  content: none;
}

.event-home__text h3 .cta--link:hover .arrow {
  right: -12px;
}

.event-home__time, .event-home__location {
  display: inline;
  font-size: 0.94rem;
}

@media (min-width: 700px) {
  .event-home__time, .event-home__location {
    display: block;
    font-size: 0.8rem;
    line-height: 1.3;
  }
}

.event-home__time {
  padding-right: 5px;
}

@media (min-width: 700px) {
  .event-home__time {
    padding-bottom: 0.2rem;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__time {
    font-size: 0.95rem;
  }
}

.event-home__date {
  text-align: center;
  min-width: 89px;
  padding: 10px;
  line-height: 1.1;
  display: inline-block;
  background-color: #F6D16F;
  font-size: 1rem;
  color: #182E44;
  font-weight: 700;
  text-transform: uppercase;
}

@media (min-width: 700px) {
  .event-home__date {
    min-width: 112px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0 1.1em auto 0;
    font-size: 1.1rem;
    padding: 10px;
  }
}

@media (min-width: 1025px) {
  .event-home__date {
    padding: 14px 18px;
    font-size: 1.4rem;
    margin: 0 1.2em auto 0;
  }
}

@media screen and (min-width: 700px) {
  .event-home__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 700px) {
  .event-home__item:nth-child(3) {
    margin-left: 40px;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__item:nth-child(3) {
    margin-left: 31%;
  }
}

@media screen and (min-width: 700px) {
  .event-home__item:not(:last-of-type) {
    margin-bottom: 3.5em;
  }
}

@media screen and (min-width: 1025px) {
  .event-home__item:not(:last-of-type) {
    margin-bottom: 5.5em;
  }
}

.event-home .line {
  position: absolute;
  top: 0;
  left: -1em;
  width: 136px;
  height: 100%;
}

@media screen and (max-width: 699px) {
  .event-home .line {
    display: none;
  }
}

@media screen and (min-width: 1025px) {
  .event-home .line {
    left: -3.8em;
    width: 51%;
    max-width: 390px;
  }
}

.event-home .line span:nth-child(1) {
  position: absolute;
  top: 20.5px;
  right: 51%;
  width: 0;
  height: 2px;
  border-bottom: 2px dotted #000000;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
  -webkit-transition-delay: 1.2s;
       -o-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

@media screen and (min-width: 1025px) {
  .event-home .line span:nth-child(1) {
    top: 24.5px;
    right: 50%;
  }
}

.event-home .line span:nth-child(2) {
  position: absolute;
  top: 20.5px;
  left: 0;
  width: 2px;
  height: 0;
  border-right: 2px dotted #000000;
  -webkit-transition: height 0.3s ease;
  -o-transition: height 0.3s ease;
  transition: height 0.3s ease;
  -webkit-transition-delay: 1.5s;
       -o-transition-delay: 1.5s;
          transition-delay: 1.5s;
}

@media screen and (min-width: 1025px) {
  .event-home .line span:nth-child(2) {
    top: 24.5px;
  }
}

.event-home .line span:nth-child(3) {
  position: absolute;
  top: calc(22% + 19.5px);
  width: 0;
  height: 2px;
  border-bottom: 2px dotted #000000;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
  -webkit-transition-delay: 1.8s;
       -o-transition-delay: 1.8s;
          transition-delay: 1.8s;
  left: -2px;
}

@media screen and (min-width: 1025px) {
  .event-home .line span:nth-child(3) {
    top: calc(22% + 24.5px);
  }
}

.event-home .line span:nth-child(4) {
  position: absolute;
  top: calc(22% + 19.5px);
  right: 0;
  width: 2px;
  height: 0;
  border-right: 2px dotted #000000;
  -webkit-transition: height 0.3s ease;
  -o-transition: height 0.3s ease;
  transition: height 0.3s ease;
  -webkit-transition-delay: 2.1s;
       -o-transition-delay: 2.1s;
          transition-delay: 2.1s;
}

@media screen and (min-width: 1025px) {
  .event-home .line span:nth-child(4) {
    top: calc(22% + 24.5px);
  }
}

.event-home .line span:nth-child(5) {
  position: absolute;
  top: calc(60% + 19.5px);
  width: 0;
  height: 2px;
  border-bottom: 2px dotted #000000;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
  -webkit-transition-delay: 2.3s;
       -o-transition-delay: 2.3s;
          transition-delay: 2.3s;
  right: -1px;
}

@media screen and (min-width: 1025px) {
  .event-home .line span:nth-child(5) {
    top: calc(60% + 24.5px);
  }
}

.event-home .line span:nth-child(6) {
  position: absolute;
  top: calc(60% + 19.5px);
  right: 51.55%;
  width: 2px;
  height: 0;
  border-right: 2px dotted #000000;
  -webkit-transition: height 0.3s ease;
  -o-transition: height 0.3s ease;
  transition: height 0.3s ease;
  -webkit-transition-delay: 2.5s;
       -o-transition-delay: 2.5s;
          transition-delay: 2.5s;
}

@media screen and (min-width: 1025px) {
  .event-home .line span:nth-child(6) {
    right: 61.5%;
    top: calc(60% + 24.5px);
  }
}

.event-home.js-active .event-home__img,
.event-home.js-active .column__col {
  opacity: 1;
}

.event-home.js-active .line {
  overflow: hidden;
}

.event-home.js-active .line span:nth-child(1) {
  width: 50.5%;
}

.event-home.js-active .line span:nth-child(2) {
  height: 22.3%;
}

.event-home.js-active .line span:nth-child(3) {
  width: calc(100% + 4px);
}

.event-home.js-active .line span:nth-child(4) {
  height: 38%;
}

.event-home.js-active .line span:nth-child(5) {
  width: 55.2%;
}

@media screen and (min-width: 1025px) {
  .event-home.js-active .line span:nth-child(5) {
    width: 62.4%;
  }
}

.event-home.js-active .line span:nth-child(6) {
  height: calc(100% - (60% + 30.5px));
}

@media screen and (min-width: 1025px) {
  .event-home.js-active .line span:nth-child(6) {
    height: calc(100% - (60% + 70.5px));
  }
}

/**
 * @file
 * Story Display
 *
 * Contains styles for Story Display object.
 */
@media (min-width: 700px) {
  .story-display__wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__wrap {
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.story-display__img {
  position: relative;
}

@media (min-width: 700px) {
  .story-display__img {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 52%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 52%;
            flex: 0 0 52%;
  }
}

.story-display__img:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
  border: 2px solid #fff;
}

@media screen and (min-width: 700px) {
  .story-display__img:after {
    top: 30px;
    left: 30px;
    margin: 0;
    width: calc(100% - 65px);
    height: calc(100% - 65px);
    border: 3px solid #fff;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__img:after {
    top: 40px;
    left: 40px;
    width: calc(100% - 88px);
    height: calc(100% - 88px);
    border: 5px solid #fff;
  }
}

.story-display__img img {
  width: 100%;
}

@media screen and (min-width: 700px) {
  .story-display__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    font-family: 'object-fit: cover;';
  }
}

@media screen and (min-width: 700px) {
  .story-display__intro {
    margin: 0 0 1.5rem;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__intro {
    margin: 0 0 2.1rem;
  }
}

.story-display__content {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 5.2em;
  padding-bottom: 2.7em;
  background-color: #182E44;
  color: #fff;
}

@media screen and (min-width: 700px) {
  .story-display__content {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__content {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (min-width: 700px) {
  .story-display__content {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 48%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
    padding-top: 4.8em;
    padding-bottom: 1.8em;
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__content {
    padding: 6.5em 60px 3.3em;
  }
}

.story-display__content a {
  color: #F6D16F;
}

.story-display__content a:hover {
  color: #fff;
}

.story-display__quote {
  position: relative;
  margin: 0 0 1.9rem;
  font-size: 1.25em;
  line-height: 1.35;
}

@media screen and (min-width: 700px) {
  .story-display__quote {
    font-size: 1.11em;
    margin: 0 0 1.2rem;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__quote {
    font-size: 1.51em;
    line-height: 1.38;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.3s;
    -o-transition: opacity 0.3s ease 0.3s;
    transition: opacity 0.3s ease 0.3s;
  }
}

.story-display__quote:before {
  content: '';
  position: absolute;
  top: -1.85em;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 2px dotted #fff;
}

@media screen and (min-width: 700px) {
  .story-display__quote:before {
    top: -1.85em;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__quote:before {
    top: -1.75em;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.3s;
    -o-transition: opacity 0.3s ease 0.3s;
    transition: opacity 0.3s ease 0.3s;
  }
}

.story-display__quote:after {
  content: '';
  position: absolute;
  top: -2.8em;
  left: 0;
  width: 44px;
  height: 44px;
  background: transparent url("../assets/icons/story-quote.svg") no-repeat center center;
  background-size: auto;
  background-size: contain;
  z-index: 1;
}

@media screen and (min-width: 1025px) {
  .story-display__quote:after {
    top: -2.8em;
    width: 56px;
    height: 56px;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.3s;
    -o-transition: opacity 0.3s ease 0.3s;
    transition: opacity 0.3s ease 0.3s;
  }
}

.story-display__title {
  display: inline-block;
  margin: 0 0 1.25rem;
  font-size: 1.025rem;
  margin-right: 0.1em;
}

@media screen and (min-width: 700px) {
  .story-display__title {
    font-size: 0.825rem;
    margin: 0;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__title {
    font-size: 0.925rem;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.6s;
    -o-transition: opacity 0.3s ease 0.6s;
    transition: opacity 0.3s ease 0.6s;
  }
}

.story-display__title a {
  color: #F6D16F;
}

.story-display__subtitle {
  display: inline-block;
  margin: 0 0 1.25rem;
  font-size: 0.975rem;
}

@media screen and (min-width: 700px) {
  .story-display__subtitle {
    display: block;
    margin: 0;
    font-size: 0.825rem;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__subtitle {
    font-size: 0.9rem;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.6s;
    -o-transition: opacity 0.3s ease 0.6s;
    transition: opacity 0.3s ease 0.6s;
  }
}

.story-display__caption {
  font-size: 0.94em;
}

@media screen and (min-width: 700px) {
  .story-display__caption {
    font-size: 0.84em;
    margin-top: 1.2em;
  }
}

@media screen and (min-width: 1025px) {
  .story-display__caption {
    margin-top: 1.8em;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.6s;
    -o-transition: opacity 0.3s ease 0.6s;
    transition: opacity 0.3s ease 0.6s;
  }
}

.story-display.js-active .story-display__wrap, .story-display.js-active .story-display__quote:before, .story-display.js-active .story-display__quote:after, .story-display.js-active .story-display__quote, .story-display.js-active .story-display__title, .story-display.js-active .story-display__subtitle, .story-display.js-active .story-display__caption {
  opacity: 1;
}

.story-display--student {
  margin-top: 0;
  margin-bottom: 3rem;
}

@media (min-width: 700px) {
  .story-display--student {
    margin-bottom: 4.5rem;
  }
}

@media (min-width: 1025px) {
  .story-display--student {
    margin-bottom: 4.25rem;
  }
}

.story-display--student .story-display__header {
  display: none;
}

@media (min-width: 1025px) {
  .story-display--student .story-display__header {
    display: block;
    text-align: center;
    margin-bottom: 2.5rem;
  }
}

.story-display--student .story-display__content {
  padding-bottom: 2em;
}

.story-display--student .story-display__quote {
  margin: 0 0 1.5rem;
}

@media (min-width: 700px) {
  .story-display--student .story-display__quote {
    line-height: 1.5;
    margin: 0 0 3rem;
  }
}

@media (min-width: 1025px) {
  .story-display--student .story-display__quote {
    line-height: 1.37;
    margin: 0 0 2.1rem;
  }
}

.story-display--student .story-display__title {
  display: block;
  margin: 0;
}

@media (min-width: 700px) {
  .story-display--student .story-display__title {
    font-size: 0.833rem;
  }
}

.story-display--student .story-display__subtitle {
  margin: 0;
  font-size: 0.9375rem;
}

@media (min-width: 700px) {
  .story-display--student .story-display__subtitle {
    font-size: 0.833rem;
  }
}

/**
 * @file
 * Twitter
 *
 * Contains styles for twitter object.
 */
.section.twitter {
  font-size: 0.95em;
  margin-bottom: 2.2rem;
}

.section.twitter.js-active .twitter__item {
  opacity: 1;
}

@media (min-width: 700px) {
  .section.twitter {
    font-size: 0.85em;
    margin: 4rem 0;
  }
}

@media (min-width: 1025px) {
  .section.twitter {
    margin: 5.2rem 0;
  }
}

.twitter__account {
  margin-bottom: 20px;
}

@media (min-width: 700px) {
  .twitter__account {
    margin-bottom: 45px;
  }
}

@media (min-width: 1025px) {
  .twitter__account {
    margin-bottom: 38px;
  }
}

.twitter__account a {
  border-bottom: 2px dotted #6F98B3;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.twitter__account a:hover, .twitter__account a:focus {
  border-color: transparent;
}

@media (min-width: 700px) {
  .twitter__feed {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -15px;
  }
}

@media (min-width: 1025px) {
  .twitter__feed {
    margin: 0 -30px;
  }
}

.twitter__item {
  padding: 0 0 20px;
  margin: 0 0 1.1rem;
  opacity: 0;
  -webkit-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}

.twitter__item:nth-child(2) {
  -webkit-transition-delay: 150ms;
       -o-transition-delay: 150ms;
          transition-delay: 150ms;
}

.twitter__item:nth-child(3) {
  -webkit-transition-delay: 300ms;
       -o-transition-delay: 300ms;
          transition-delay: 300ms;
}

@media (min-width: 700px) {
  .twitter__item {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 20px 15px 0;
    border-left: 0.5px solid #182E44;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media (min-width: 1025px) {
  .twitter__item {
    padding: 30px 30px 0;
  }
}

.twitter__item:first-child {
  border-bottom: 0.5px solid #182E44;
}

@media (min-width: 700px) {
  .twitter__item:first-child {
    border: 0;
  }
}

.twitter__item:last-child {
  display: none;
}

@media (min-width: 700px) {
  .twitter__item:last-child {
    display: block;
  }
}

.twitter__time {
  margin-top: 20px;
  display: block;
}

@media (min-width: 700px) {
  .twitter__time {
    margin-top: auto;
  }
}

.twitter__icon {
  width: 23px;
  height: 19px;
  display: inline-block;
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 9px;
  background: url(../assets/icons/twitter-blue.svg) no-repeat center/100%;
}

@media (min-width: 1025px) {
  .twitter__icon {
    width: 29px;
    height: 24px;
    margin-right: 11px;
  }
}

@media (min-width: 700px) {
  .twitter__body {
    margin-bottom: 0.6rem;
  }
}

@media (min-width: 1025px) {
  .twitter__body {
    margin-bottom: 2.3rem;
  }
}

/**
 * @file
 * Video
 *
 * Contains styles for inline video objects.
 */
.vid-inline {
  margin: 50px auto 51px;
}

@media (min-width: 700px) {
  .vid-inline {
    position: relative;
    margin: 50px auto 78px -50px;
  }
}

@media (min-width: 1025px) {
  .vid-inline {
    margin: 54px 0 107px -116px;
  }
}

.vid-inline__container {
  position: relative;
}

.vid-inline__container:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
  border: 2px solid #fff;
  z-index: 3;
  pointer-events: none;
  content: '';
}

@media (min-width: 700px) {
  .vid-inline__container:before {
    border: 4px solid #fff;
    width: calc(100% - 178px);
    height: calc(100% - 65px);
    top: 30px;
    left: 30px;
    max-width: 711px;
    margin: 0;
  }
}

@media (min-width: 1025px) {
  .vid-inline__container:before {
    width: calc(100% - 205px);
    height: calc(100% - 89px);
    top: 41px;
    left: 41px;
  }
}

.vid-inline__cover {
  position: relative;
  z-index: 2;
  cursor: pointer;
  opacity: 1;
  -webkit-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
}

@media (min-width: 700px) {
  .vid-inline__cover {
    padding-right: 114px;
  }
}

@media (min-width: 1025px) {
  .vid-inline__cover {
    padding-right: 0;
  }
}

.vid-inline__cover:focus {
  outline-offset: -4px;
}

.vid-inline__cover:before {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  content: '';
  opacity: 0;
  margin: 0;
  height: 60px;
  width: 60px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns:svg='http://www.w3.org/2000/svg' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.0' width='60px' height='60px' viewBox='0 0 128 128' xml:space='preserve'%3e%3cg%3e%3cpath d='M78.75 16.18V1.56a64.1 64.1 0 0 1 47.7 47.7H111.8a49.98 49.98 0 0 0-33.07-33.08zM16.43 49.25H1.8a64.1 64.1 0 0 1 47.7-47.7V16.2a49.98 49.98 0 0 0-33.07 33.07zm33.07 62.32v14.62A64.1 64.1 0 0 1 1.8 78.5h14.63a49.98 49.98 0 0 0 33.07 33.07zm62.32-33.07h14.62a64.1 64.1 0 0 1-47.7 47.7v-14.63a49.98 49.98 0 0 0 33.08-33.07z' fill='%23FFFFFF' fill-opacity='1'/%3e%3canimateTransform attributeName='transform' type='rotate' from='0 64 64' to='-90 64 64' dur='800ms' repeatCount='indefinite'%3e%3c/animateTransform%3e%3c/g%3e%3c/svg%3e");
  background-position: center;
  background-size: contain;
  border: 0;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (min-width: 700px) {
  .vid-inline__cover:before {
    border-width: 6px 0 6px 10.4px;
    left: calc(50% - (114px /2));
    margin-top: -4px;
    margin-left: -2px;
  }
}

@media screen and (min-width: 1025px) {
  .vid-inline__cover:before {
    border-width: 8px 0 8px 13.9px;
    margin-top: -7px;
    margin-left: -4px;
  }
}

.vid-inline__embed {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  height: 100%;
  width: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.vid-inline iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  border: 0;
}

@media (min-width: 700px) {
  .vid-inline iframe {
    padding-right: 114px;
  }
}

.vid-inline__caption {
  padding: 24px 25px 49px;
}

@media (min-width: 700px) {
  .vid-inline__caption {
    position: absolute;
    padding: 28px 20px 49px;
    width: 36%;
    bottom: -33px;
    min-height: 58%;
    right: 0;
    margin-left: auto;
    z-index: 3;
  }
}

@media (min-width: 1025px) {
  .vid-inline__caption {
    width: 33.6%;
    padding: 37px 35px 49px;
    min-height: 48.5%;
    bottom: -52px;
    right: -107px;
  }
}

.vid-inline .vid-control {
  display: block;
  position: relative;
  height: 53px;
}

@media (min-width: 700px) {
  .vid-inline .vid-control {
    height: 57px;
  }
}

@media (min-width: 1025px) {
  .vid-inline .vid-control {
    height: 76px;
  }
}

.vid-inline .vid-control .cta {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  padding: 0.7em 1.5em;
  font-size: 0.875rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: rgba(130, 22, 15, 0.5);
  border: 2px solid #CB746F;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media (min-width: 700px) {
  .vid-inline .vid-control .cta {
    font-size: 0.778rem;
  }
}

@media (min-width: 1025px) {
  .vid-inline .vid-control .cta {
    font-size: 0.889rem;
  }
}

.vid-inline .vid-control .cta:before {
  border-color: #F6D16F transparent transparent #F6D16F;
}

.vid-inline .vid-control .cta:after {
  border-color: transparent transparent #F6D16F #F6D16F;
  -webkit-animation: drawoutCTAyellow 400ms forwards;
          animation: drawoutCTAyellow 400ms forwards;
}

.vid-inline .vid-control .cta:hover {
  cursor: pointer;
}

.vid-inline .vid-control .cta:hover:after {
  -webkit-animation: drawinCTAyellow 400ms forwards;
          animation: drawinCTAyellow 400ms forwards;
}

.vid-inline .vid-control .cta.pause {
  visibility: hidden;
  opacity: 0;
}

.vid-inline .vid-control .cta.pause span:before {
  display: inline-block;
  float: right;
  width: 4px;
  height: 9px;
  margin-top: 4px;
  margin-left: 0.6em;
  margin-right: 0.6em;
  border-top: 0;
  border-bottom: 0;
  border-left: 2px solid #fff;
  border-right: 2px solid #fff;
  content: '';
}

@media (min-width: 1025px) {
  .vid-inline .vid-control .cta.pause span:before {
    margin-top: 5px;
    margin-left: 1em;
    margin-right: 0.2em;
  }
}

.vid-inline .vid-control .cta.play span:before {
  -webkit-box-shadow: 0px 0px 0px 2px #fff;
          box-shadow: 0px 0px 0px 2px #fff;
}

.vid-inline .vid-control .cta span {
  display: inline-block;
  color: #fff;
}

.vid-inline .vid-control .cta span:after {
  background-image: url(../assets/icons/btn-arrow-yellow.svg);
  bottom: -8px;
}

.vid-inline.js-loading .vid-inline__cover:hover:before {
  opacity: 1;
}

.vid-inline.js-loading .vid-inline__cover:before {
  opacity: 1;
}

.vid-inline.js-hide .vid-inline__cover {
  display: block;
  z-index: 1;
  opacity: 0;
}

.vid-inline.is-playing .vid-inline__embed {
  z-index: 501;
  opacity: 1;
  position: relative;
  width: 100%;
  max-width: 96vh;
  overflow: auto;
  margin: 0 auto;
  height: auto;
  top: calc(50% - 2.35em);
  -webkit-transform: translatey(-50%);
      -ms-transform: translatey(-50%);
          transform: translatey(-50%);
}

@media (max-aspect-ratio: 16 / 10) {
  .vid-inline.is-playing .vid-inline__embed {
    max-width: inherit;
  }
}

@media (min-width: 700px) {
  .vid-inline.is-playing .vid-inline__embed {
    max-width: 125vh;
  }
}

@media (min-width: 1025px) {
  .vid-inline.is-playing .vid-inline__embed {
    max-width: 160vh;
  }
}

.vid-inline.is-playing .vid-inline__embed:before {
  padding-top: 56.25%;
  content: "";
  float: left;
  width: 100%;
}

@media (min-width: 1025px) {
  .vid-inline.is-playing .vid-inline__embed {
    top: calc(50% - 2.8em);
  }
}

@media (min-width: 1200px) {
  .vid-inline.is-playing .vid-inline__embed {
    padding-top: 0;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1600px) {
  .vid-inline.is-playing .vid-inline__embed {
    max-width: 1000px;
  }
}

.vid-inline.is-playing .vid-inline__embed iframe {
  padding: 0;
}

.vid-inline.is-playing .vid-inline__caption {
  z-index: 0;
}

.vid-inline.is-playing .pause {
  opacity: 1 !important;
  visibility: visible !important;
}

.vid-inline.is-playing .play {
  opacity: 0;
  visibility: hidden;
}

.vid-inline__modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  padding: 4.7em 15px 0;
  background-color: rgba(24, 46, 68, 0.6);
  z-index: 500;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  overflow-y: auto;
}

@media (min-width: 700px) {
  .vid-inline__modal {
    padding: 4.7em 30px 0;
  }
}

@media screen and (min-width: 1025px) {
  .vid-inline__modal {
    padding: 5.6em 81px 0;
  }
}

.vid-inline__modal[aria-hidden='false'] {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0s;
  transition: opacity 0.3s ease, visibility 0s ease 0s;
}

.vid-inline__modal-close {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
  position: absolute;
  top: 20px;
  right: 15px;
  width: 40px;
  height: 40px;
  background-color: #F6D16F;
  border: 0;
  z-index: 501;
}

.vid-inline__modal-close:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F6D16F;
  z-index: 0;
}

.vid-inline__modal-close:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.vid-inline__modal-close span {
  position: relative;
  z-index: 2;
}

.vid-inline__modal-close:hover {
  color: #fff;
}

.vid-inline__modal-close:hover:before {
  width: 100%;
}

@media screen and (min-width: 1025px) {
  .vid-inline__modal-close {
    top: 44px;
    right: 30px;
    width: 50px;
    height: 50px;
  }
}

@media (min-width: 1900px) {
  .vid-inline__modal-close {
    right: calc((100vw - 1900px) / 2);
  }
}

.vid-inline__modal-close span + span {
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

.vid-inline__modal-close .close {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.vid-inline__modal-close .close:before,
.vid-inline__modal-close .close:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 16px;
  background-color: #000000;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
      -ms-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  z-index: 1;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.vid-inline__modal-close .close:after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.vid-inline__modal-close:hover .close:before,
.vid-inline__modal-close:hover .close:after {
  background-color: #fff;
}

.video-container {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  padding-top: 35px;
  overflow: hidden;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/**
 * @file
 * Pager
 *
 * Contains styles for the pager on listing pages.
 */
.pager__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
}

.pager__list .pager__item {
  margin: 0 5px;
}

.pager__list .icon-arrow-left,
.pager__list .icon-arrow-right {
  display: block;
  position: relative;
  width: 40px;
  top: 50%;
}

.pager__list .icon-arrow-left:after,
.pager__list .icon-arrow-right:after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  height: 0.75rem;
  width: 0.75rem;
  background: #000000;
  border: 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/**
 * @file
 * Carousel
 *
 * Contains styles for carousel object.
 */
@media screen and (min-width: 1025px) {
  .carousel {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
  }
}

.carousel.js-active .carousel__img {
  opacity: 1;
}

.carousel.js-active .carousel__caption {
  opacity: 1;
}

@media screen and (min-width: 1025px) {
  .carousel__header {
    max-width: 780px;
    margin: 0 auto 1.2em;
  }
}

@media screen and (min-width: 1025px) {
  .carousel__intro {
    max-width: 780px;
    margin: 0 auto 2.7em;
  }
}

.carousel__item {
  position: relative;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -moz-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100vw;
  height: 100%;
}

@media screen and (min-width: 700px) {
  .carousel__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-left: 15px;
  }
}

@media screen and (min-width: 1025px) {
  .carousel__item {
    padding-left: 0;
  }
}

.carousel__caption {
  position: relative;
  width: 100%;
  bottom: 0;
  margin: 0 auto;
  padding: 1.35rem 22px 5.8em;
  line-height: 1.4;
  color: #fff;
  background: #BA2319 url("../assets/img/tartan-background-home-story.jpg") top left;
  background-size: contain;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease 0.3s;
  -o-transition: opacity 0.3s ease 0.3s;
  transition: opacity 0.3s ease 0.3s;
}

@media (min-width: 700px) {
  .carousel__caption {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin: 0 -122px 0 0;
    padding: 1.4em 1.4em 6.7em;
    font-size: 0.83em;
    line-height: 1.65;
    min-height: 312px;
    height: auto;
    z-index: 2;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 35.8%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 35.8%;
            flex: 0 0 35.8%;
  }
}

@media screen and (min-width: 1025px) {
  .carousel__caption {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 26.2%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 26.2%;
            flex: 0 0 26.2%;
    margin: 0 -104px 0 0;
    padding: 2.7em 2.4em 6.7em;
  }
}

.carousel__img {
  position: relative;
  height: 0;
  padding-top: 70%;
  opacity: 0;
  -webkit-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
}

@media screen and (min-width: 700px) {
  .carousel__img {
    width: 100%;
    height: auto;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    z-index: 1;
  }
}

@media screen and (min-width: 1025px) {
  .carousel__img {
    padding-top: 63%;
  }
}

.carousel__img a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 700px) {
  .carousel__img a {
    height: calc(100% - 82px);
  }
}

@media screen and (min-width: 1025px) {
  .carousel__img a {
    height: calc(100% - 30px);
  }
}

.carousel__img a:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  border: 2px solid #fff;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
}

@media (min-width: 700px) {
  .carousel__img a:after {
    border: 4px solid #fff;
    width: calc(100% - 64px);
    height: calc(100% - 64px);
    margin: 28px;
  }
}

@media (min-width: 1025px) {
  .carousel__img a:after {
    width: calc(100% - 108px);
    height: calc(100% - 108px);
    margin: 50px;
  }
}

.carousel__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.carousel__wrapper {
  margin: 0 -15px;
}

@media screen and (min-width: 1025px) {
  .carousel__wrapper {
    position: relative;
    left: 30px;
    width: calc(100% - 60px);
    max-width: 1180px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1025px) {
  .carousel .slick-list {
    margin-right: 0;
  }
}

@media (max-width: 699px) {
  .carousel .slick-dots {
    margin-top: 0.2em !important;
  }
}

@media screen and (min-width: 700px) {
  .carousel .slick-dots {
    position: absolute;
    left: 8px;
    top: -37px;
    margin-top: 10em;
  }
}

@media screen and (min-width: 1025px) {
  .carousel .slick-dots {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 14.4%;
    top: -50px;
    margin-top: 17em;
    left: 0;
  }
}

.carousel .slick-dots button {
  width: 30px;
  height: 30px;
}

@media (min-width: 700px) {
  .carousel .slick-dots button {
    width: 28px;
    height: 28px;
  }
}

.carousel .slick-dots button:hover:after {
  background: #BA2319;
}

.carousel .slick-dots button:focus {
  border: 2px solid #182E44;
  border-radius: 100%;
  width: 22px;
  height: 22px;
}

@media (min-width: 700px) {
  .carousel .slick-dots button:focus {
    width: 24px;
    height: 24px;
  }
}

@media (min-width: 1025px) {
  .carousel .slick-dots button:focus {
    width: 30px;
    height: 30px;
  }
}

.carousel .slick-dots button:before, .carousel .slick-dots button:after {
  pointer-events: none;
}

.carousel .slick-dots button:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  border: 1px solid #182E44;
  border-radius: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .carousel .slick-dots button:before {
    width: 20px;
    height: 20px;
    border: 2px solid #182E44;
  }
}

.carousel .slick-dots button:after {
  width: 10px;
  height: 10px;
  background: #99B4C9;
  -webkit-transition: background 0.3s ease;
  -o-transition: background 0.3s ease;
  transition: background 0.3s ease;
}

@media (min-width: 1025px) {
  .carousel .slick-dots button:after {
    width: 16px;
    height: 16px;
  }
}

.carousel .slick-dots .slick-active button:before {
  opacity: 1;
}

.carousel .slick-dots .slick-active button:after {
  background: #F6D16F;
}

.carousel .slick-arrow {
  top: auto;
  bottom: 46px;
  width: 64px;
  height: 38px;
  border: 2px solid #F6D16F;
  -webkit-transition: border 0.3s ease;
  -o-transition: border 0.3s ease;
  transition: border 0.3s ease;
  border-radius: 20px;
  overflow: visible;
}

.carousel .slick-arrow:hover {
  border: 2px solid #fff;
}

.carousel .slick-arrow:focus {
  outline: none;
}

.carousel .slick-arrow:focus:before {
  opacity: 1;
}

@media screen and (min-width: 700px) {
  .carousel .slick-arrow {
    bottom: 5px;
  }
}

@media screen and (min-width: 1025px) {
  .carousel .slick-arrow {
    width: 77px;
    height: 42px;
    bottom: 12px;
  }
}

.carousel .slick-arrow:after {
  width: 34px;
  height: 12px;
  background: transparent;
  background-image: url("../assets/icons/arrow-white.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

@media screen and (min-width: 1025px) {
  .carousel .slick-arrow:after {
    width: 44px;
    height: 18px;
  }
}

.carousel .slick-arrow:before {
  display: block;
  position: absolute;
  top: -6px;
  left: -6px;
  width: 100%;
  height: 100%;
  padding: 4px;
  border: 2px solid #fff;
  border-radius: 24px;
  opacity: 0;
  content: '';
}

.carousel .slick-arrow.slick-next {
  right: 20px;
}

@media screen and (min-width: 700px) {
  .carousel .slick-arrow.slick-next {
    right: auto;
    left: calc(36% - 67px);
  }
}

@media screen and (min-width: 1025px) {
  .carousel .slick-arrow.slick-next {
    left: calc(26.2% - 112px);
  }
}

.carousel .slick-arrow.slick-prev {
  left: 20px;
}

@media screen and (min-width: 700px) {
  .carousel .slick-arrow.slick-prev {
    left: 35px;
  }
}

.carousel .slick-arrow.slick-prev:after {
  -webkit-transform: translate(-50%, -50%) rotate(180deg);
      -ms-transform: translate(-50%, -50%) rotate(180deg);
          transform: translate(-50%, -50%) rotate(180deg);
}

.slick-dots button:focus {
  outline: none;
}

/**
 * @file
 * Story Carousel
 *
 * Contains styles for homepage story carousel object.
 */
.story-carousel {
  position: relative;
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
}

@media (min-width: 700px) {
  .story-carousel {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    left: auto;
    margin-bottom: 5.5rem;
  }
}

@media (min-width: 1025px) {
  .story-carousel {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    margin-top: 3.7rem;
    margin-bottom: 6.4rem;
  }
}

@media (min-width: 1201px) {
  .story-carousel {
    margin-left: -600px;
    max-width: 1200px;
  }
}

.story-carousel.js-active .story-carousel__caption {
  opacity: 1;
}

.story-carousel.js-active .slick-dots {
  opacity: 1;
}

.story-carousel.js-active .story-carousel__img {
  opacity: 1;
}

.story-carousel.js-active .slick-current .caption-text__quote,
.story-carousel.js-active .slick-current .caption-text__subtitle,
.story-carousel.js-active .slick-current .cta,
.story-carousel.js-active .slick-current h2 {
  opacity: 1;
}

.story-carousel.js-active .slick-current img {
  right: 0;
}

.story-carousel.js-active .slick-current .story-carousel__caption {
  opacity: 1;
}

.story-carousel__item {
  position: relative;
}

@media (min-width: 700px) {
  .story-carousel__item {
    right: -50px;
  }
}

@media (min-width: 1025px) {
  .story-carousel__item {
    right: 0;
  }
}

.story-carousel__wrapper {
  position: relative;
  z-index: 1;
}

.story-carousel__caption {
  padding: 18px 20px 30px;
  font-size: 1rem;
  z-index: 1;
  opacity: 0;
  overflow: hidden;
  background: #BA2319 url(../assets/img/tartan-background-home-story.jpg) top left;
  background-size: contain;
  -webkit-transition: opacity 0.3s ease 0.3s;
  -o-transition: opacity 0.3s ease 0.3s;
  transition: opacity 0.3s ease 0.3s;
  height: auto;
}

@media (min-width: 700px) {
  .story-carousel__caption {
    position: absolute;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    overflow: visible !important;
    max-width: 234px;
    min-height: 272px;
    padding: 13px 24px 23px;
    bottom: -30px;
    left: -50px;
    font-size: 0.88rem;
    line-height: 1.5;
  }
}

@media (min-width: 1025px) {
  .story-carousel__caption {
    position: absolute;
    max-width: 409px;
    min-height: 400px;
    padding: 38px 40px 45px;
    bottom: -38px;
    left: 61px;
    font-size: 1rem;
    line-height: 1.62;
  }
}

.story-carousel__caption .caption-text__quote {
  position: relative;
  margin: 0 0 0.6rem;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 1025px) {
  .story-carousel__caption .caption-text__quote {
    margin: 0 0 0.9rem;
  }
}

.story-carousel__caption .caption-text__subtitle {
  margin: 0 0 1rem;
  font-weight: 700;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 700px) {
  .story-carousel__caption .caption-text__subtitle {
    margin: 0 0 0.6rem;
  }
}

.story-carousel__caption h2 {
  color: #fff;
  font-size: 2.188rem;
  line-height: 0.9;
  margin: 0 0 1rem;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  -webkit-transform: translate3d(0, 0, 0);
}

@media (min-width: 700px) {
  .story-carousel__caption h2 {
    width: calc(100vw - 120px);
    font-size: 2.388rem;
    margin: 0.7rem 0 0.8rem;
  }
}

@media (min-width: 1025px) {
  .story-carousel__caption h2 {
    font-size: 3.88rem;
    margin: 1rem 0 1.3rem;
    width: calc(100vw - 165px);
    max-width: 1000px;
  }
}

.story-carousel__caption .cta {
  background-color: rgba(130, 22, 15, 0.5);
  border: 2px solid #CB746F;
  text-align: center;
  line-height: 1;
  max-width: 210px;
  padding: 0.7em 1.5em;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

@media (min-width: 700px) {
  .story-carousel__caption .cta {
    max-width: none;
  }
}

@media (min-width: 1025px) {
  .story-carousel__caption .cta {
    font-size: 0.9rem;
  }
}

.story-carousel__caption .cta:before {
  border-color: #F6D16F transparent transparent #F6D16F;
}

.story-carousel__caption .cta:after {
  border-color: transparent transparent #F6D16F #F6D16F;
  -webkit-animation: drawoutCTAyellow 400ms forwards;
          animation: drawoutCTAyellow 400ms forwards;
}

.story-carousel__caption .cta:hover {
  cursor: pointer;
}

.story-carousel__caption .cta:hover:after {
  -webkit-animation: drawinCTAyellow 400ms forwards;
          animation: drawinCTAyellow 400ms forwards;
}

.story-carousel__caption .cta span:after {
  background-image: url(../assets/icons/btn-arrow-yellow.svg);
  bottom: -8px;
}

.story-carousel__caption .cta span:before {
  -webkit-box-shadow: 0px 0px 0px 2px #fff;
          box-shadow: 0px 0px 0px 2px #fff;
}

.story-carousel__img {
  display: block;
  position: relative;
  height: 0;
  padding-top: 70%;
  width: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  overflow: hidden;
}

@media (min-width: 700px) {
  .story-carousel__img {
    padding-top: 62%;
    margin-left: 60px;
    width: calc(100% - 60px);
  }
}

@media (min-width: 1025px) {
  .story-carousel__img {
    padding-top: 55%;
    margin-left: 255px;
    width: calc(100% - 255px);
  }
}

@media (min-width: 700px) {
  .story-carousel__img:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 150px;
    left: auto;
    width: 100%;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
    -webkit-transition: right 0.6s ease;
    -o-transition: right 0.6s ease;
    transition: right 0.6s ease;
    z-index: 1;
  }
}

@media (min-width: 1025px) {
  .story-carousel__img:before {
    height: 260px;
  }
}

.story-carousel__img:after {
  display: block;
  position: absolute;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
  top: 0;
  left: 0;
  border: 2px solid #fff;
  z-index: 1;
  content: '';
}

@media (min-width: 700px) {
  .story-carousel__img:after {
    border: 4px solid #fff;
    width: calc(100% - 64px);
    height: calc(100% - 64px);
    margin: 28px;
  }
}

@media (min-width: 1025px) {
  .story-carousel__img:after {
    width: calc(100% - 108px);
    height: calc(100% - 108px);
    margin: 50px;
  }
}

.story-carousel__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  top: 0;
  -webkit-transition: right 0.6s ease;
  -o-transition: right 0.6s ease;
  transition: right 0.6s ease;
}

.story-carousel .slick-list {
  overflow: visible;
}

.story-carousel .slick-slide {
  top: 0;
}

@media (max-width: 699px) {
  .story-carousel .slick-dots {
    margin-top: 0.2em !important;
    position: relative;
  }
}

@media screen and (min-width: 700px) {
  .story-carousel .slick-dots {
    position: absolute;
    top: -15px;
    left: -7px;
    margin-top: 5.5em;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease 0.3s;
    -o-transition: opacity 0.3s ease 0.3s;
    transition: opacity 0.3s ease 0.3s;
  }
}

@media screen and (min-width: 1025px) {
  .story-carousel .slick-dots {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 14.4%;
    margin-top: 14.3em;
    left: 59px;
    top: -21px;
  }
}

.story-carousel .slick-dots button {
  width: 30px;
  height: 30px;
}

@media (min-width: 700px) {
  .story-carousel .slick-dots button {
    width: 28px;
    height: 28px;
  }
}

.story-carousel .slick-dots button:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  border: 1px solid #182E44;
  border-radius: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .story-carousel .slick-dots button:before {
    width: 20px;
    height: 20px;
    border: 2px solid #182E44;
  }
}

.story-carousel .slick-dots button:after {
  width: 10px;
  height: 10px;
  background: #6F98B3;
  -webkit-transition: background 0.3s ease;
  -o-transition: background 0.3s ease;
  transition: background 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .story-carousel .slick-dots button:after {
    width: 16px;
    height: 16px;
  }
}

.story-carousel .slick-dots button:focus {
  border: 2px solid #182E44;
  border-radius: 100%;
  width: 22px;
  height: 22px;
}

@media (min-width: 700px) {
  .story-carousel .slick-dots button:focus {
    width: 24px;
    height: 24px;
  }
}

@media (min-width: 1025px) {
  .story-carousel .slick-dots button:focus {
    width: 30px;
    height: 30px;
  }
}

.story-carousel .slick-dots button:hover:after {
  background: #BA2319;
}

.story-carousel .slick-dots .slick-active button:before {
  opacity: 1;
}

.story-carousel .slick-dots .slick-active button:after {
  background: #F6D16F;
}

.wysiwyg ol li:not(:last-of-type) {
  margin-bottom: 1em;
}

@media screen and (min-width: 700px) {
  .wysiwyg ol li:not(:last-of-type) {
    margin-bottom: 0.45em;
  }
}

.wysiwyg > ol {
  padding: 0 0 0 1.1em;
  margin: 1.5em 0 2.6em;
}

@media screen and (min-width: 700px) {
  .wysiwyg > ol {
    padding: 0 0 0 2.8em;
    margin: 1.5em 0 4em;
  }
}

.wysiwyg ul {
  list-style: none;
}

.wysiwyg ul li {
  position: relative;
}

.wysiwyg ul li:before {
  content: '';
  position: absolute;
  top: 10px;
  left: -20px;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: #BA2319;
}

@media screen and (min-width: 700px) {
  .wysiwyg ul li:before {
    left: -32px;
  }
}

.wysiwyg ul li:not(:last-of-type) {
  margin-bottom: 0.6em;
}

@media screen and (min-width: 700px) {
  .wysiwyg ul li:not(:last-of-type) {
    margin-bottom: 0.3em;
  }
}

.wysiwyg > ul {
  padding: 0 0 0 1.2em;
  margin: 1.2em 0 2em;
}

@media screen and (min-width: 700px) {
  .wysiwyg > ul {
    padding: 0 0 0 4em;
    margin: 1.2em 0 2.7em;
  }
}

@media screen and (min-width: 1025px) {
  .wysiwyg > ul {
    margin: 1.2em 0 1.8em;
  }
}

.wysiwyg > ul ul {
  padding: 0 0 0 1em;
  margin: 0.5em 0 0;
}

@media screen and (min-width: 700px) {
  .wysiwyg > ul ul {
    padding: 0 0 0 1.3em;
    margin: 0.1em 0 0;
  }
}

.wysiwyg > ul ul li:before {
  left: -12px;
  width: 3px;
  height: 3px;
}

@media screen and (min-width: 700px) {
  .wysiwyg > ul ul li:before {
    top: 13px;
    left: -20px;
  }
}

.quote {
  position: relative;
  margin: 3.3em -15px 3em;
  background-color: #182E44;
  color: #fff;
  font-family: urw-din, sans-serif;
  padding: 38px 18px 22px;
}

@media (min-width: 700px) {
  .quote {
    margin: 3.8em -50px 3.5em;
    padding: 65px 49px 38px;
  }
}

@media (min-width: 1025px) {
  .quote {
    margin: 4.7em -6.1em 4em;
    padding: 65px 160px 38px;
  }
}

.quote:before, .quote:after {
  position: absolute;
  background-color: #99B4C9;
  display: block;
  width: 44px;
  height: 44px;
  top: 16px;
  left: 61px;
  z-index: 1;
  content: '';
}

@media (min-width: 700px) {
  .quote:before, .quote:after {
    width: 55px;
    height: 55px;
    top: 38px;
    left: 101px;
  }
}

@media (min-width: 1025px) {
  .quote:before, .quote:after {
    left: 213px;
  }
}

.quote:after {
  z-index: 1;
  background: transparent url("../assets/icons/quote.svg") no-repeat center center;
  background-size: contain;
}

.quote.js-active .quote__copy:before {
  -webkit-animation: drawinQuoteTopLeft 400ms 0.5s forwards;
          animation: drawinQuoteTopLeft 400ms 0.5s forwards;
}

.quote.js-active .quote__footer:before {
  -webkit-animation: drawinQuoteBottom 300ms 1s forwards;
          animation: drawinQuoteBottom 300ms 1s forwards;
}

@media (min-width: 700px) {
  .quote.js-active .quote__footer:before {
    -webkit-animation: drawinQuoteBottomLg 300ms 0.8s forwards;
            animation: drawinQuoteBottomLg 300ms 0.8s forwards;
  }
}

.quote__copy {
  position: relative;
  font-size: 1.438rem;
  padding: 38px 21px 30px;
  line-height: 1.56;
}

@media (min-width: 700px) {
  .quote__copy {
    padding: 47px 51px 34px;
    font-size: 1.5rem;
  }
}

@media (min-width: 1025px) {
  .quote__copy {
    padding: 38px 54px 36px;
    font-size: 1.67rem;
    line-height: 1.5;
  }
}

.quote__copy:before {
  position: absolute;
  visibility: hidden;
  right: calc(100% - 50px);
  top: 0;
  height: 100%;
  width: 42px;
  border-width: 2px 0 0 2px;
  border-style: dotted;
  border-color: #fff;
  content: '';
}

@media (min-width: 700px) {
  .quote__copy:before {
    width: 49px;
  }
}

.quote__copy a {
  color: #fff;
  font-weight: 350;
  text-decoration: underline;
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
}

.quote__copy a:hover {
  color: #BA2319;
  text-decoration: none;
}

.quote__footer {
  position: relative;
  padding-left: 51px;
  margin-top: -12px;
}

@media (min-width: 700px) {
  .quote__footer {
    padding-left: 153px;
    margin-top: -13px;
  }
}

.quote__footer:before {
  position: absolute;
  visibility: hidden;
  width: 46px;
  height: 2px;
  top: 12px;
  left: 1px;
  border-top: 2px dotted #fff;
  content: '';
}

@media (min-width: 700px) {
  .quote__footer:before {
    width: 139px;
    top: 13px;
    left: 2px;
  }
}

@media (min-width: 1025px) {
  .quote__footer:before {
    width: 142px;
    top: 14px;
  }
}

.quote__attr, .quote__info {
  display: inline;
  font-size: 1rem;
}

@media (min-width: 700px) {
  .quote__attr, .quote__info {
    font-size: 0.888rem;
  }
}

@media (min-width: 1025px) {
  .quote__attr, .quote__info {
    font-size: 1rem;
  }
}

.quote__attr {
  font-weight: 700;
  margin-right: 4px;
}

.quote a:hover {
  color: #fff;
}

.quote2 {
  position: relative;
  margin: 1em -15px 3em;
  padding: 38px 18px 22px;
  background-color: #182E44;
  color: #fff;
  font-family: urw-din, sans-serif;
}

@media (min-width: 700px) {
  .quote2 {
    margin: 1em -50px 3.5em;
    padding: 65px 49px 38px;
  }
}

@media (min-width: 1025px) {
  .quote2 {
    margin: 1em -6.1em 4em;
    padding: 65px 160px 38px;
  }
}

.quote2:before, .quote2:after {
  content: '';
  display: none;
  position: absolute;
  top: 16px;
  left: 61px;
  height: 44px;
  width: 44px;
  background-color: #99B4C9;
  z-index: 1;
}

@media (min-width: 700px) {
  .quote2:before, .quote2:after {
    top: 38px;
    left: 101px;
    width: 55px;
    height: 55px;
  }
}

@media (min-width: 1025px) {
  .quote2:before, .quote2:after {
    left: 213px;
  }
}

.quote2 ul li:before {
  background-color: #fff;
}

.quote2.js-active .quote__copy:before {
  -webkit-animation: drawinQuoteTopLeft 400ms 0.5s forwards;
          animation: drawinQuoteTopLeft 400ms 0.5s forwards;
}

.quote2.js-active .quote__footer:before {
  -webkit-animation: drawinQuoteBottom 300ms 1s forwards;
          animation: drawinQuoteBottom 300ms 1s forwards;
}

@media (min-width: 700px) {
  .quote2.js-active .quote__footer:before {
    -webkit-animation: drawinQuoteBottomLg 300ms 0.8s forwards;
            animation: drawinQuoteBottomLg 300ms 0.8s forwards;
  }
}

.table {
  position: relative;
}

.table--scroll {
  overflow-x: auto;
  margin-right: -15px;
  margin-bottom: 4.8em;
}

@media screen and (min-width: 700px) {
  .table--scroll {
    margin: 2em 0 4.2em;
  }
}

@media screen and (min-width: 1025px) {
  .table--scroll {
    margin: 1.2em 0 3.6em;
  }
}

.table--scroll__btn {
  position: absolute;
  -webkit-appearance: none;
  background: none;
  border: 0;
  right: 0;
  bottom: -33px;
  z-index: 1;
}

.table--scroll__btn > span {
  position: relative;
  font-size: 0.95em;
  font-weight: 600;
}

.table--scroll__btn > span .last-word {
  padding-right: 50px;
  display: inline-block;
  position: relative;
}

.table--scroll__btn > span .arrow {
  position: absolute;
  top: 57%;
  right: 0;
  width: 40px;
  height: 100%;
  background-image: url("../assets/icons/arrow-red.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

.table--scroll__btn > span:hover .arrow {
  right: -12px;
}

.table--scroll__btn > span .last-word {
  padding-right: 45px;
}

.table--scroll__btn.left {
  left: 0;
  display: none;
}

.table--scroll__btn.left:before {
  left: -20px;
}

.table--scroll__btn.left:after {
  -webkit-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
          transform: rotate(-135deg);
  left: -8px;
}

.table--scroll__btn.left .last-word {
  padding-right: 0;
  padding-left: 45px;
}

.table--scroll__btn.left .last-word .arrow {
  left: 0;
  right: auto;
  -webkit-transform: translateY(-50%) rotate(180deg);
      -ms-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  -webkit-transition: left 0.3s ease;
  -o-transition: left 0.3s ease;
  transition: left 0.3s ease;
}

.table--scroll__btn.left:hover .arrow {
  left: -12px;
}

.table--scroll__btn:hover {
  cursor: pointer;
}

@media (min-width: 700px) {
  .table--scroll__btn {
    display: none;
  }
}

.table--scroll.js-scroll-left {
  margin-right: -20px;
}

.table--scroll.js-scroll-left .left {
  display: none;
}

.table--scroll.js-scroll-left .right {
  display: block;
}

.table--scroll.js-scroll-right {
  margin-left: -20px;
}

.table--scroll.js-scroll-right .right {
  display: none;
}

.table--scroll.js-scroll-right .left {
  display: block;
}

@media (min-width: 700px) {
  .table--scroll.js-scroll-right .right,
  .table--scroll.js-scroll-right .left, .table--scroll.js-scroll-left .right,
  .table--scroll.js-scroll-left .left {
    display: none;
  }
}

table:not(.mini-cal__dates):not(.dataTable) {
  position: relative;
}

table:not(.mini-cal__dates):not(.dataTable) tr th, table:not(.mini-cal__dates):not(.dataTable) tr td {
  min-width: 200px;
  vertical-align: top;
}

table:not(.mini-cal__dates):not(.dataTable) tr td {
  border-bottom: 1px solid #000000;
}

table:not(.mini-cal__dates):not(.dataTable) thead:after {
  position: absolute;
  display: block;
  left: 0;
  border-bottom: 2px dotted #000000;
  content: '';
  height: 2px;
  width: 100%;
}

table:not(.mini-cal__dates):not(.dataTable) thead th {
  text-align: left;
  font-size: 1.1em;
  font-weight: 600;
  font-family: urw-din, sans-serif;
  text-transform: uppercase;
  padding: 0.52em 0.52em 0.2em 0;
}

@media screen and (min-width: 700px) {
  table:not(.mini-cal__dates):not(.dataTable) thead th {
    font-size: 0.95em;
    padding: 0.63em 0.63em 0.26em 0;
  }
}

table:not(.mini-cal__dates):not(.dataTable) tbody th, table:not(.mini-cal__dates):not(.dataTable) tbody td {
  text-align: left;
  padding: 0.52em;
  padding-left: 0;
  font-size: 1.1em;
}

@media screen and (min-width: 700px) {
  table:not(.mini-cal__dates):not(.dataTable) tbody th, table:not(.mini-cal__dates):not(.dataTable) tbody td {
    font-size: 0.95em;
    padding: 0.57em;
    padding-left: 0;
  }
}

@media screen and (min-width: 1025px) {
  table:not(.mini-cal__dates):not(.dataTable) tbody th, table:not(.mini-cal__dates):not(.dataTable) tbody td {
    font-size: 1em;
    padding: 0.63em;
    padding-left: 0;
  }
}

/**
 * @file
 * Academic Programs
 *
 * Contains styles for academic programs object.
 */
.academics-programs {
  text-align: center;
  margin: 2rem 0 3.2rem;
  padding: 0.4em 0 0;
}

@media (min-width: 1025px) {
  .academics-programs {
    margin: 2rem 0 4.2rem;
  }
}

.academics-programs__header {
  margin-bottom: 1.2rem;
}

.academics-programs__header h2 {
  line-height: 1;
}

.academics-programs__intro {
  font-size: 1rem;
  line-height: 1.67;
  margin: 0 0 1.85rem;
}

@media (min-width: 700px) {
  .academics-programs__intro {
    margin: 0 0 1.35rem;
  }
}

@media (min-width: 1025px) {
  .academics-programs__intro {
    margin: 0 0 1.65rem;
  }
}

.academics-programs__ctas {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  padding: 0 40px;
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}

@media (min-width: 700px) {
  .academics-programs__ctas {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    max-width: none;
    padding: 0;
  }
}

@media (min-width: 1025px) {
  .academics-programs__ctas {
    width: calc(100% + 20px);
  }
}

@media (min-width: 700px) {
  .academics-programs__ctas .cta {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 1;
        -ms-flex-negative: 1;
            flex-shrink: 1;
  }
}

.academics-programs__ctas .cta:after {
  background-color: #F6D16F;
}

.academics-programs__ctas .cta:nth-child(2):after {
  background-color: #99B4C9;
}

.academics-programs__ctas .cta:nth-child(3) {
  background-color: #182E44;
  color: #fff;
}

.academics-programs__ctas .cta:nth-child(3):after {
  background-color: #182E44;
}

/**
 * @file
 * 3 Col text Block
 *
 * Styles for 3 col text block object.
 */
.text3col {
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  background-color: #182E44;
  color: #fff;
}

@media (min-width: 1025px) {
  .text3col {
    margin-bottom: 3.6rem;
  }
}

@media (min-width: 1900px) {
  .text3col {
    width: 1900px;
    margin-left: 50%;
    left: auto;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.text3col__wrapper {
  padding: 31px 15px 55px;
}

@media (min-width: 700px) {
  .text3col__wrapper {
    padding: 50px 52px 68px;
  }
}

@media (min-width: 1025px) {
  .text3col__wrapper {
    max-width: 1014px;
    margin: 0 auto;
    padding: 50px 0 54px;
  }
}

.text3col .section__header {
  margin: 0 0 1.8rem;
  text-align: center;
}

@media (min-width: 700px) {
  .text3col .section__header {
    margin: 0 0 2.7rem;
  }
}

@media (min-width: 1025px) {
  .text3col .section__header {
    margin: 0 0 2.6rem;
  }
}

.text3col h2 {
  color: #fff;
}

@media (min-width: 1025px) {
  .text3col .gen3col .column--three {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.text3col .gen3col .column__col {
  margin: 0 0 2.2rem;
}

@media (min-width: 700px) {
  .text3col .gen3col .column__col {
    display: block;
    margin: 0 4.4em 1.7em;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
       -moz-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-shrink: 1;
        -ms-flex-negative: 1;
            flex-shrink: 1;
  }
}

@media (min-width: 1025px) {
  .text3col .gen3col .column__col {
    margin: 0 2.8em 1.6em 0;
  }
}

.text3col .gen3col .column__col:last-child {
  margin-bottom: 0;
}

@media (min-width: 1025px) {
  .text3col .gen3col .column__col:last-child {
    margin-right: 0;
  }
}

.text3col .gen3col .column__title {
  margin: 0 0 0.6rem;
}

@media (min-width: 700px) {
  .text3col .gen3col .column__title {
    margin: 0 0 0.65rem;
  }
}

@media (min-width: 1025px) {
  .text3col .gen3col .column__title {
    margin: 0 0 0.5rem;
  }
}

.text3col .gen3col .column__title h3 {
  color: #F6D16F;
  font-size: 1.25rem;
  font-weight: 700;
}

@media (min-width: 700px) {
  .text3col .gen3col .column__title h3 {
    font-size: 1.1rem;
  }
}

@media (min-width: 1025px) {
  .text3col .gen3col .column__title h3 {
    font-size: 1.38rem;
  }
}

.text3col .gen3col .column__title a {
  color: #F6D16F;
  border: none;
  font-size: 1.25rem;
  font-weight: 700;
}

@media (min-width: 700px) {
  .text3col .gen3col .column__title a {
    font-size: 1.1rem;
  }
}

@media (min-width: 1025px) {
  .text3col .gen3col .column__title a {
    font-size: 1.38rem;
  }
}

.text3col .gen3col .column__title a .arrow {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-image: url("../assets/icons/arrow-yellow.svg");
}

.text3col .gen3col .column__title a:hover {
  color: #fff;
}

.text3col .gen3col .column__title a:hover .arrow {
  right: -12px;
}

@media (min-width: 700px) {
  .text3col .gen3col .column__body {
    line-height: 1.65;
    font-size: 1rem;
  }
}

@media (min-width: 1025px) {
  .text3col.two-items {
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    left: 0;
  }
}

.text3col.two-items .text3col__wrapper {
  padding: 31px 15px 47px;
}

@media (min-width: 700px) {
  .text3col.two-items .text3col__wrapper {
    padding: 50px 52px 28px;
  }
}

@media (min-width: 1025px) {
  .text3col.two-items .text3col__wrapper {
    max-width: 1014px;
    margin: 0 auto;
    padding: 55px 0 30px;
  }
}

@media (min-width: 1025px) {
  .text3col.two-items .text3col__wrapper .section__header {
    margin: 0 0 3.2rem;
  }
}

@media (min-width: 700px) {
  .text3col.two-items .column--three {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (min-width: 700px) {
  .text3col.two-items .column__col {
    display: block;
    margin: 0 1.5em 1.6em 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
       -moz-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-shrink: 1;
        -ms-flex-negative: 1;
            flex-shrink: 1;
  }
}

@media (min-width: 1025px) {
  .text3col.two-items .column__col {
    max-width: 355px;
    margin: 0 4em 1.6em 0;
  }
}

@media (min-width: 700px) {
  .text3col.two-items .column__col:last-child {
    margin-right: 0;
  }
}

.text3col.two-items .column__title {
  margin: 0 0 0.43rem;
}

@media (min-width: 700px) {
  .text3col.two-items .column__title {
    margin: 0 0 0.8rem;
  }
}

@media (min-width: 1025px) {
  .text3col.two-items .column__title {
    margin: 0 0 0.4rem;
  }
}

.text3col.no-margin.section {
  margin-bottom: 0;
}

.text3col.no-margin .gen3col {
  margin-bottom: 0;
}

.schools-colleges {
  margin-bottom: 0.5rem;
}

@media (min-width: 700px) {
  .schools-colleges {
    margin-bottom: 2.2rem;
  }
}

@media (min-width: 1025px) {
  .schools-colleges {
    margin: -0.4rem auto 3rem;
    padding-left: 50px;
    padding-right: 50px;
    max-width: 1183px;
    width: 100vw;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.schools-colleges.js-active .schools-colleges__item {
  opacity: 1;
}

.schools-colleges__header {
  text-align: center;
  margin: 0 0 1.3em;
}

@media (min-width: 700px) {
  .schools-colleges__header {
    margin: 0 0 2.1em;
  }
}

@media (min-width: 1025px) {
  .schools-colleges__header {
    margin: 0 0 2.7em;
  }
}

.schools-colleges__wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
     -moz-box-orient: horizontal;
     -moz-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

@media (min-width: 1025px) {
  .schools-colleges__wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
  }
}

.schools-colleges__item {
  position: relative;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
     -moz-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-flex-basis: calc(100% / 2);
      -ms-flex-preferred-size: calc(100% / 2);
          flex-basis: calc(100% / 2);
  min-height: 161px;
  margin: 0 0 1.3rem;
  line-height: 1.27;
  text-align: center;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 700px) {
  .schools-colleges__item {
    margin: 0 0 1.6rem;
  }
}

@media (min-width: 1025px) {
  .schools-colleges__item {
    min-height: 204px;
  }
}

@media (min-width: 700px) {
  .schools-colleges__item {
    -webkit-flex-basis: calc(100% / 3);
        -ms-flex-preferred-size: calc(100% / 3);
            flex-basis: calc(100% / 3);
    line-height: 1.2;
  }
}

@media (min-width: 1025px) {
  .schools-colleges__item {
    -webkit-flex-basis: calc(100% / 6 - 1px);
        -ms-flex-preferred-size: calc(100% / 6 - 1px);
            flex-basis: calc(100% / 6 - 1px);
    line-height: 1.44;
  }
}

.schools-colleges__item:before {
  position: absolute;
  top: 0;
  left: 0;
  height: 162px;
  width: 1px;
  background: #182E44;
  content: '';
}

@media (min-width: 1025px) {
  .schools-colleges__item:before {
    height: 200px;
  }
}

.schools-colleges__item:after {
  position: absolute;
  top: 0;
  left: 100%;
  right: 0;
  height: 162px;
  width: 1px;
  background: #182E44;
  content: '';
}

@media (min-width: 1025px) {
  .schools-colleges__item:after {
    height: 200px;
  }
}

.schools-colleges__item:nth-of-type(6n + 1) {
  -webkit-transition-delay: 0.2s;
       -o-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.schools-colleges__item:nth-of-type(6n + 2) {
  -webkit-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.schools-colleges__item:nth-of-type(6n + 3) {
  -webkit-transition-delay: 0.6s;
       -o-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.schools-colleges__item:nth-of-type(6n + 4) {
  -webkit-transition-delay: 0.8s;
       -o-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.schools-colleges__item:nth-of-type(6n + 5) {
  -webkit-transition-delay: 1s;
       -o-transition-delay: 1s;
          transition-delay: 1s;
}

.schools-colleges__item:nth-of-type(6n + 6) {
  -webkit-transition-delay: 1.2s;
       -o-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.schools-colleges a {
  display: block;
  height: 100%;
  padding: 12px 16px 0;
}

@media (min-width: 1025px) {
  .schools-colleges a {
    padding: 12px 16px 0;
  }
}

.schools-colleges a:hover span {
  color: #BA2319;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.schools-colleges__image {
  display: block;
  margin: 0 auto 0.7rem;
  width: 40%;
  height: 44px;
  max-width: 45px;
}

@media (min-width: 700px) {
  .schools-colleges__image {
    margin: 0 auto 0.5rem;
    width: 26%;
  }
}

@media (min-width: 1025px) {
  .schools-colleges__image {
    width: 40%;
    margin: 0 auto 0.8rem;
    height: 55px;
  }
}

.schools-colleges span {
  color: #000000;
  font-size: 0.937rem;
}

@media (min-width: 700px) {
  .schools-colleges span {
    display: block;
    width: 80%;
    margin: 0 auto;
    font-size: 1rem;
  }
}

@media (min-width: 1025px) {
  .schools-colleges span {
    width: 87%;
  }
}

.faculty--listing {
  margin: -0.75rem 0 0;
}

@media (min-width: 1024px) {
  .faculty--listing {
    margin-left: calc((100% - 100vw) / 2);
    margin-right: calc((100% - 100vw) / 2);
  }
}

@media (min-width: 1201px) {
  .faculty--listing {
    margin-left: calc((880px - 1300px) / 2);
    margin-right: calc((880px - 1300px) / 2);
  }
}

.faculty--listing .faculty__list {
  padding: 0 0 2.5em;
}

@media (min-width: 700px) {
  .faculty--listing .faculty__list {
    padding: 0 0 0.4em;
  }
}

.faculty--listing .faculty__list .container {
  padding: 0;
  margin: 0;
  max-width: none;
}

@media (min-width: 1025px) {
  .faculty--listing .faculty__list .container {
    padding: 20px 50px 0;
  }
}

.faculty--listing .faculty__list .filter-btn-drop {
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #F6D16F;
  padding: 24px 21px;
  margin: 0 0 15px;
  border: none;
  width: 100%;
  max-width: 290px;
  text-align: left;
  font-weight: 600;
  color: #000000;
}

@media (min-width: 1025px) {
  .faculty--listing .faculty__list .filter-btn-drop {
    display: none;
  }
}

.faculty--listing .faculty__list .filter-btn-drop.expanded span:after {
  -webkit-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
          transform: rotate(-135deg);
}

.faculty--listing .faculty__list .filter-btn-drop span {
  position: relative;
  display: block;
  font-weight: 700;
  font-size: 0.937rem;
}

.faculty--listing .faculty__list .filter-btn-drop span:after {
  position: absolute;
  display: block;
  top: calc(50% - 4px);
  right: 0;
  width: 3px;
  height: 3px;
  border-width: 0 2px 2px 0;
  border-style: solid;
  border-color: #000000;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  content: '';
}

.heading-table {
  margin: 0 0 3.1rem;
}

@media (min-width: 700px) {
  .heading-table {
    margin: 0 0 46px;
  }
}

.heading-table .toolbar {
  padding: 22px 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media (min-width: 1025px) {
  .heading-table .toolbar {
    position: relative;
    padding: 0;
  }
}

.heading-table .clear-table {
  position: absolute;
  display: block;
  opacity: 0;
  bottom: 51px;
  left: 15px;
  background: none;
  border: none;
  padding: 0;
  font-size: 0;
  line-height: 0;
  -webkit-transition: opacity 0.3s 0.25s ease;
  -o-transition: opacity 0.3s 0.25s ease;
  transition: opacity 0.3s 0.25s ease;
}

@media (min-width: 700px) {
  .heading-table .clear-table {
    left: 50px;
  }
}

@media (min-width: 1025px) {
  .heading-table .clear-table {
    bottom: auto;
    left: auto;
    top: calc(50% - 4px);
    right: 41px;
    opacity: 1;
  }
}

.heading-table .clear-table:before, .heading-table .clear-table:after {
  position: absolute;
  width: 34px;
  height: 28px;
  left: 0;
  top: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  content: '';
}

@media (min-width: 1025px) {
  .heading-table .clear-table:before, .heading-table .clear-table:after {
    width: 43px;
    height: 45px;
  }
}

.heading-table .clear-table:before {
  background: url("../assets/icons/refresh-red.svg") no-repeat center center;
  background-size: contain;
}

.heading-table .clear-table:after {
  background: url("../assets/icons/refresh.svg") no-repeat center center;
  background-size: contain;
}

.heading-table .clear-table:hover:after {
  opacity: 0;
}

.heading-table .filter-box {
  line-height: 1;
  position: relative;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  margin: 0 0 19px;
}

@media (min-width: 1025px) {
  .heading-table .filter-box {
    -webkit-flex-basis: 17.5%;
        -ms-flex-preferred-size: 17.5%;
            flex-basis: 17.5%;
    margin: 0;
  }
}

.heading-table .filter-box:nth-child(2) select {
  background-color: #99B4C9;
}

.heading-table .filter-box:nth-child(3), .heading-table .filter-box:nth-child(4) {
  display: none;
}

.heading-table .form__label {
  position: relative;
  font: 600 1rem/1.2 urw-din, sans-serif;
  display: block;
  margin: 0 0 12px;
  text-transform: capitalize;
}

.heading-table .form__label:after {
  position: absolute;
  left: 20px;
  bottom: -57px;
  width: calc(100% - 40px);
  height: 1px;
  background: #000000;
  content: '';
}

@media (min-width: 1025px) {
  .heading-table .form__label:after {
    left: 23px;
    bottom: -60px;
  }
}

.heading-table select {
  width: 100%;
  padding: 23px 34px 23px 21px;
  background: #F6D16F;
  font-family: urw-din, sans-serif;
  border: 0;
  background: #F6D16F url("../assets/icons/filter-chevron.svg") no-repeat 87.5% center;
  background-size: 8px;
}

.heading-table .dataTables_filter {
  position: relative;
  margin: 1px 0 0;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
     -moz-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

@media (max-width: 1024px) {
  .heading-table .dataTables_filter {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

@media (min-width: 1025px) {
  .heading-table .dataTables_filter {
    max-width: 441.5px;
    margin: -6px 59px 0 22px;
  }
}

.heading-table .dataTables_filter label:after {
  position: absolute;
  left: 16px;
  bottom: 18px;
  width: calc(100% - 61px);
  height: 1px;
  background: #000000;
  content: '';
}

@media (min-width: 1025px) {
  .heading-table .dataTables_filter label:after {
    left: 23px;
    width: calc(100% - 48px);
  }
}

.heading-table input[type="search"] {
  padding: 22px 25px 25px 15px;
  margin: 10px 0 0;
  display: block;
  width: 100%;
  border: 1px solid #000000;
  height: 65px;
}

@media (min-width: 1025px) {
  .heading-table input[type="search"] {
    padding: 23px 25px 25px 21px;
  }
}

.heading-table input[type="search"]::-webkit-input-placeholder {
  color: #000000;
  font: 400 15px/1.2 urw-din, sans-serif;
}

.heading-table input[type="search"]:-moz-placeholder {
  color: #000000;
  font: 400 15px/1.2 urw-din, sans-serif;
}

.heading-table input[type="search"]::-moz-placeholder {
  color: #000000;
  font: 400 15px/1.2 urw-din, sans-serif;
}

.heading-table input[type="search"]:-ms-input-placeholder {
  color: #000000;
  font: 400 15px/1.2 urw-din, sans-serif;
}

.wrapper-table {
  font-size: 0.937rem;
  line-height: 1.2;
  margin: 0 0 18px;
}

@media (min-width: 700px) {
  .wrapper-table {
    font-size: 1rem;
  }
}

@media (min-width: 1025px) {
  .wrapper-table {
    margin: 0 0 26px;
  }
  .wrapper-table:after {
    display: none;
  }
}

@media (min-width: 1025px) {
  .wrapper-table .table-holder {
    overflow: hidden;
    margin-right: 0;
  }
}

.wrapper-table .table--scroll {
  margin-top: 0;
  margin-bottom: 1.8rem;
  margin-right: 0;
  overflow: hidden;
}

@media (min-width: 700px) {
  .wrapper-table .table--scroll {
    margin-right: -50px;
    margin-left: auto;
    overflow-x: auto;
  }
}

@media (min-width: 1025px) {
  .wrapper-table .table--scroll {
    margin-right: 0;
    overflow: hidden;
  }
}

@media (max-width: 699px) {
  .wrapper-table .table--scroll button {
    display: none !important;
  }
}

.wrapper-table .table--scroll.js-scroll-left .right {
  display: block;
}

@media (min-width: 1025px) {
  .wrapper-table .table--scroll.js-scroll-left .right {
    display: none;
  }
}

.wrapper-table .table--scroll.js-scroll-right .left {
  display: block;
  right: calc(100% - 140px);
  left: -26px;
}

@media (min-width: 1025px) {
  .wrapper-table .table--scroll.js-scroll-right .left {
    display: none;
  }
}

.wrapper-table table {
  width: 100% !important;
  border-collapse: collapse;
  border-spacing: 0;
  display: block;
}

@media (min-width: 700px) {
  .wrapper-table table {
    display: table;
    min-width: 100%;
  }
}

@media (min-width: 1025px) {
  .wrapper-table table {
    min-width: 0;
  }
}

@media (min-width: 700px) {
  .wrapper-table th {
    padding: 0 0 18px;
    text-align: left;
    font: 600 1rem/1.2 urw-din, sans-serif;
  }
}

.wrapper-table td {
  padding: 0;
  display: block;
  margin: 0 0 13px;
}

@media (min-width: 700px) {
  .wrapper-table td {
    padding: 24px 21px 24px 0;
  }
}

@media (min-width: 700px) {
  .wrapper-table td:not(:first-of-type) {
    vertical-align: bottom;
    padding-top: 24px;
    padding-bottom: 24px;
    padding-right: 21px;
  }
}

.wrapper-table td:last-of-type {
  margin: 0;
}

@media (min-width: 700px) {
  .wrapper-table td:last-of-type {
    padding-right: 15px;
  }
}

@media (min-width: 700px) {
  .wrapper-table td:nth-child(3), .wrapper-table td:nth-child(4) {
    white-space: nowrap;
  }
}

@media (min-width: 700px) {
  .wrapper-table td {
    display: table-cell;
    margin: 0;
  }
}

.wrapper-table td:first-of-type {
  margin: 0 0 21px;
}

@media (min-width: 700px) {
  .wrapper-table td:last-of-type {
    min-width: 165px;
  }
}

.wrapper-table tbody {
  display: block;
}

@media (min-width: 700px) {
  .wrapper-table tbody {
    display: table-row-group;
  }
}

@media (max-width: 699px) {
  .wrapper-table tbody tr:first-child td {
    padding: 0;
  }
}

.wrapper-table thead {
  display: none;
}

@media (min-width: 700px) {
  .wrapper-table thead {
    display: table-header-group;
  }
}

@media (min-width: 700px) {
  .wrapper-table thead tr {
    border-bottom: 1px solid #979797;
  }
}

.wrapper-table tr {
  border-bottom: 1px solid #979797;
  display: block;
  padding: 0 0 22px;
  margin: 0 0 32px;
}

.wrapper-table tr:last-child {
  margin: 0;
}

@media (min-width: 700px) {
  .wrapper-table tr {
    display: table-row;
    padding: 0;
    margin: 0;
  }
}

.wrapper-table .row-section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 700px) {
  .wrapper-table .row-section {
    display: block;
  }
}

.wrapper-table .row-label {
  display: block;
  font: 700 15px/1.2 urw-din, sans-serif;
  margin: 0 0 3px;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
     -moz-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-flex-basis: 41%;
      -ms-flex-preferred-size: 41%;
          flex-basis: 41%;
  max-width: 120px;
}

@media (min-width: 700px) {
  .wrapper-table .row-label {
    display: none;
  }
}

.wrapper-table .email {
  word-break: break-all;
}

.wrapper-table .email,
.wrapper-table .link-name {
  font-weight: 600;
  position: relative;
  display: block;
  vertical-align: top;
}

.wrapper-table .link-name {
  font-size: 1.25rem;
  line-height: 1;
  margin: 0 0 9px;
}

@media (min-width: 700px) {
  .wrapper-table .link-name {
    font-size: 1.67rem;
    margin: 0 0 10px;
  }
}

.wrapper-table a.link-name {
  border-bottom: 2px dotted #6F98B3;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: inline;
}

@media (min-width: 700px) {
  .wrapper-table a.link-name {
    line-height: 1.4;
  }
}

.wrapper-table a.link-name:hover {
  border-color: transparent;
}

.wrapper-table a + .title {
  padding-top: 12px;
}

@media (min-width: 700px) {
  .wrapper-table a + .title {
    padding-top: 14px;
  }
}

.wrapper-table .type {
  display: none;
}

.wrapper-table .title {
  display: block;
  font-weight: 600;
}

.wrapper-table .tel {
  font-weight: 400;
  color: #000000;
}

@media (min-width: 700px) {
  .footer-table {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 60px 0 0;
  }
}

@media (min-width: 1025px) {
  .footer-table {
    padding: 0;
  }
}

.footer-table .table-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: 1.125rem;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
     -moz-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: #182E44;
}

@media (min-width: 700px) {
  .footer-table .table-info {
    font-size: 1rem;
    padding: 3px 3px 0 0;
  }
}

.footer-table .dataTables_info {
  margin: 0 0 0 25px;
}

.footer-table select {
  background-color: #F6D16F;
  font-family: urw-din, sans-serif;
  padding: 0 13px 0 0;
  border: 0;
  font-weight: 700;
  height: 24px;
}

@media (min-width: 700px) {
  .footer-table select {
    height: 28px;
  }
}

.footer-table .dataTables_length {
  position: relative;
}

.footer-table .table-length-wrap span:first-child {
  position: relative;
  background-color: #F6D16F;
  padding: 0 0 0 4px;
}

@media (min-width: 700px) {
  .footer-table .table-length-wrap span:first-child {
    padding: 2px 2px 2px 5px;
  }
}

.footer-table .table-length-wrap span:first-child:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 92px;
  height: 100%;
  background-color: #F6D16F;
  z-index: -1;
  content: '';
}

@media (min-width: 700px) {
  .footer-table .table-length-wrap span:first-child:before {
    width: 95px;
  }
}

.footer-table .table-length-wrap span:first-child:after {
  position: absolute;
  right: -37px;
  top: 50%;
  width: 3px;
  height: 3px;
  margin-top: -2px;
  border-top: 2px solid #182E44;
  border-right: 2px solid #182E44;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
  z-index: 2;
  pointer-events: none;
  content: '';
}

.footer-table .table-length-wrap span:last-child {
  position: relative;
  padding-left: 9px;
}

.footer-table .table-length-wrap span:last-child:after {
  position: absolute;
  top: 4px;
  right: -13px;
  height: 17px;
  width: 2px;
  background-color: #182E44;
  content: '';
}

.heading-table-filter {
  display: none;
}

@media (max-width: 1024px) {
  .heading-table-filter {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    padding: 0 15px 41px;
    -webkit-box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.16);
            box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.16);
  }
}

@media (min-width: 700px) {
  .heading-table-filter {
    padding: 0 50px 41px;
  }
}

@media (min-width: 1025px) {
  .heading-table-filter {
    display: block !important;
    padding: 0;
  }
}

.heading-table-filter[aria-hidden="false"] .clear-table {
  opacity: 1;
}

.mobile-filter-drop {
  padding: 31px 0;
}

@media (min-width: 1025px) {
  .mobile-filter-drop {
    padding: 0;
  }
}

.dataTables_paginate {
  margin-bottom: 1em;
}

.dataTables_paginate .ellipsis {
  margin: 8px 9px 4px 5px;
}

.dataTables_paginate > span a {
  margin: 4px 9px 4px 5px;
}

@media (min-width: 700px) {
  .dataTables_paginate > span a {
    margin: 4px 8px 4px -4px;
  }
}

.dataTables_paginate .previous,
.dataTables_paginate .next {
  font-size: 0;
  line-height: 0;
  position: relative;
  display: block;
  width: 10px;
  height: 20px;
}

.dataTables_paginate .previous:before,
.dataTables_paginate .next:before {
  position: absolute;
  left: 1px;
  top: 7px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #182E44;
  border-left: 2px solid #182E44;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  content: '';
}

.dataTables_paginate .previous.previous,
.dataTables_paginate .next.previous {
  margin: 0 11px 0 0;
}

.dataTables_paginate .previous.next,
.dataTables_paginate .next.next {
  margin: 0 0 0 5px;
}

@media (min-width: 700px) {
  .dataTables_paginate .previous.next,
  .dataTables_paginate .next.next {
    margin: 0;
  }
}

.dataTables_paginate .previous.next:before,
.dataTables_paginate .next.next:before {
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media (min-width: 700px) {
  .dataTables_paginate .previous.next:before,
  .dataTables_paginate .next.next:before {
    left: -2px;
  }
}

.dataTables_paginate .previous:hover,
.dataTables_paginate .next:hover {
  cursor: pointer;
}

/**
 * @file
 * Collage
 *
 * Contains styles for collage object.
 */
.collage {
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
}

@media (min-width: 1025px) {
  .collage {
    left: auto;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    max-width: 1900px;
  }
}

.collage__header {
  text-align: center;
}

.collage__header h2 {
  font-size: 1.56rem;
}

@media (min-width: 700px) {
  .collage__header h2 {
    font-size: 1.83rem;
  }
}

@media (min-width: 1025px) {
  .collage__header h2 {
    font-size: 2.5rem;
  }
}

.collage__wrap {
  text-align: center;
  overflow: hidden;
}

@media (min-width: 1025px) {
  .collage__wrap {
    max-width: 1900px;
    margin: 0 auto;
  }
}

.collage__statistic-number {
  position: relative;
  display: inline-block;
  font-family: urw-din, sans-serif;
  font-weight: 700;
  color: #BA2319;
  font-size: 5.45rem;
  letter-spacing: -1.57px;
  line-height: 1.1;
  margin: 0 0 0.6rem;
}

@media (min-width: 700px) {
  .collage__statistic-number {
    font-size: 5.8rem;
    letter-spacing: -1.97px;
  }
}

@media (min-width: 1025px) {
  .collage__statistic-number {
    font-size: 8.66rem;
    letter-spacing: -2.81px;
  }
}

.collage__statistic-number span {
  position: absolute;
  color: transparent;
  -webkit-text-stroke: 1px #182E44;
  left: -4px;
  bottom: -3px;
  letter-spacing: -1.57px;
  font-size: 5.45rem;
}

@media (min-width: 700px) {
  .collage__statistic-number span {
    left: -7px;
    bottom: -7px;
    letter-spacing: -1.97px;
    font-size: 5.8rem;
  }
}

@media (min-width: 1025px) {
  .collage__statistic-number span {
    -webkit-text-stroke: 2px #182E44;
    letter-spacing: -2.81px;
    font-size: 8.66rem;
  }
}

@media (min-width: 700px) {
  .collage__statistic-number {
    line-height: 1;
    margin: 0 0 0.9rem;
  }
}

@media (min-width: 1025px) {
  .collage__statistic-number {
    margin: 0 0 0.6rem;
  }
}

@media (min-width: 700px) {
  .collage__statistic-number span {
    left: -5px;
    bottom: -6px;
  }
}

@media (min-width: 1025px) {
  .collage__statistic-number span {
    left: -6px;
    bottom: -6px;
  }
}

.collage__statistic-caption {
  font-size: 1rem;
  margin: 0 auto 1.4rem;
  line-height: 1.6rem;
  max-width: 261px;
}

@media (min-width: 700px) {
  .collage__statistic-caption {
    font-size: 0.88rem;
    line-height: 1.4rem;
    margin: 0 auto 1.3rem;
  }
}

@media (min-width: 1025px) {
  .collage__statistic-caption {
    font-size: 1rem;
    margin: 0 auto 1.8rem;
  }
}

.collage .cta--primary {
  font-family: urw-din-condensed, sans-serif;
  margin: 0 0 2.8rem;
}

@media (min-width: 700px) {
  .collage .cta--primary {
    margin: 0 0 0.6rem;
  }
}

.collage .cta--primary span {
  font-family: urw-din-condensed, sans-serif;
}

.collage .cta--primary:after {
  background: #F6D16F;
  font-size: 1.22rem;
}

.collage__images {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row nowrap;
     -moz-box-orient: horizontal;
     -moz-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
     -moz-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  background: url("../assets/img/collage-background-image.png") no-repeat bottom center;
  background-size: contain;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: -1;
  -webkit-transition-delay: 1.9s;
       -o-transition-delay: 1.9s;
          transition-delay: 1.9s;
}

@media (min-width: 1025px) {
  .collage__images {
    margin-top: -5rem;
  }
}

.collage__image {
  position: relative;
  bottom: -20px;
  opacity: 0;
  min-width: 1px;
  -webkit-transition: all 0.3s ease 2.1s;
  -o-transition: all 0.3s ease 2.1s;
  transition: all 0.3s ease 2.1s;
  -webkit-transform: translate3d(0, 0, 0);
}

.collage__image--left {
  -webkit-transition-delay: 2.1s;
       -o-transition-delay: 2.1s;
          transition-delay: 2.1s;
}

.collage__image--center {
  -webkit-transition-delay: 2.7s;
       -o-transition-delay: 2.7s;
          transition-delay: 2.7s;
}

.collage__image--right {
  -webkit-transition-delay: 2.4s;
       -o-transition-delay: 2.4s;
          transition-delay: 2.4s;
}

.collage__icon {
  display: block;
  position: absolute;
  z-index: 1;
  border-color: transparent;
}

.collage__icon img {
  width: auto;
  height: 100%;
}

.collage__icon .icon {
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  opacity: 0;
}

@media (min-width: 700px) {
  .collage__icon .icon {
    width: 50px;
    height: 50px;
  }
}

@media (min-width: 1025px) {
  .collage__icon .icon {
    width: 73px;
    height: 73px;
  }
}

.collage__icon .icon img {
  -o-object-fit: contain;
     object-fit: contain;
  font-family: "object-fit: contain;";
  width: 100%;
}

.collage.js-active .collage__image {
  bottom: 0;
}

.collage.js-active .collage__image, .collage.js-active .collage__images {
  opacity: 1;
}

.collage--life {
  margin-top: 2.4rem;
}

@media (min-width: 700px) {
  .collage--life {
    margin-top: 2.9rem;
  }
}

@media (min-width: 1025px) {
  .collage--life {
    margin-top: 4rem;
    margin-bottom: 5rem;
  }
}

.collage--life .cta--primary {
  margin: 0 0 0.8rem;
}

@media (min-width: 700px) {
  .collage--life .collage__images {
    margin-top: -2.6rem;
  }
}

@media (min-width: 1025px) {
  .collage--life, .collage--academics {
    max-height: none;
  }
}

@media (min-width: 700px) {
  .collage--life .collage__header, .collage--academics .collage__header {
    margin-bottom: 1rem;
  }
}

@media (min-width: 1025px) {
  .collage--life .collage__header, .collage--academics .collage__header {
    margin-bottom: 1.4rem;
  }
}

@media (min-width: 700px) {
  .collage--life .collage__statistic-number, .collage--academics .collage__statistic-number {
    margin: 0 0 1.6rem;
  }
}

@media (min-width: 1025px) {
  .collage--life .collage__statistic-number, .collage--academics .collage__statistic-number {
    margin: 0 0 0.9rem;
  }
}

@media (min-width: 700px) {
  .collage--life .collage__statistic-caption, .collage--academics .collage__statistic-caption {
    margin: 0 auto 0.9rem;
  }
}

@media (min-width: 1025px) {
  .collage--life .collage__statistic-caption, .collage--academics .collage__statistic-caption {
    margin: 0 auto 1.2rem;
  }
}

.collage--homepage .icon-one, .collage--academics .icon-one {
  right: 73%;
  bottom: 21%;
  border-width: 0 0 2px 2px;
  border-style: dotted;
  width: 0;
  height: 0;
  -webkit-transition: width 0.2s 0.8s ease, border-left-color 0.2s 0.8s ease, height 0.2s 0.9s ease, border-bottom-color 0.2s 0.9s ease;
  -o-transition: width 0.2s 0.8s ease, border-left-color 0.2s 0.8s ease, height 0.2s 0.9s ease, border-bottom-color 0.2s 0.9s ease;
  transition: width 0.2s 0.8s ease, border-left-color 0.2s 0.8s ease, height 0.2s 0.9s ease, border-bottom-color 0.2s 0.9s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-one, .collage--academics .icon-one {
    left: 16.3%;
    bottom: 35%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-one, .collage--academics .icon-one {
    bottom: 46.6%;
  }
}

.collage--homepage .icon-one .icon, .collage--academics .icon-one .icon {
  left: -15px;
  top: -34px;
  -webkit-transition-delay: 1.1s;
       -o-transition-delay: 1.1s;
          transition-delay: 1.1s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-one .icon, .collage--academics .icon-one .icon {
    left: -24px;
    top: -57px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-one .icon, .collage--academics .icon-one .icon {
    left: -35px;
    top: -80px;
  }
}

.collage--homepage .icon-two, .collage--academics .icon-two {
  left: 27.5%;
  bottom: 13%;
  border-width: 0 0 0 2px;
  border-style: dotted;
  width: 0;
  height: 0;
  -webkit-transition: height 0.2s 0.6s ease, width 0.2s 0.7s ease;
  -o-transition: height 0.2s 0.6s ease, width 0.2s 0.7s ease;
  transition: height 0.2s 0.6s ease, width 0.2s 0.7s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-two, .collage--academics .icon-two {
    bottom: 20%;
    left: 28.2%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-two, .collage--academics .icon-two {
    bottom: 27.75%;
  }
}

.collage--homepage .icon-two .icon, .collage--academics .icon-two .icon {
  top: -14px;
  left: 6px;
  -webkit-transition-delay: 1.3s;
       -o-transition-delay: 1.3s;
          transition-delay: 1.3s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-two .icon, .collage--academics .icon-two .icon {
    top: -23px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-two .icon, .collage--academics .icon-two .icon {
    top: -41px;
  }
}

.collage--homepage .icon-three, .collage--academics .icon-three {
  right: 57%;
  bottom: 12%;
  border-width: 2px 0 0 0;
  border-style: dotted;
  width: 0;
  height: 0;
  -webkit-transition: width 0.2s 0.4s ease;
  -o-transition: width 0.2s 0.4s ease;
  transition: width 0.2s 0.4s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-three, .collage--academics .icon-three {
    bottom: 19.5%;
    right: 55%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-three, .collage--academics .icon-three {
    bottom: 27%;
  }
}

.collage--homepage .icon-three .icon, .collage--academics .icon-three .icon {
  left: -30px;
  bottom: -10px;
  -webkit-transition-delay: 1.5s;
       -o-transition-delay: 1.5s;
          transition-delay: 1.5s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-three .icon, .collage--academics .icon-three .icon {
    bottom: -17px;
    left: -50px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-three .icon, .collage--academics .icon-three .icon {
    bottom: -29px;
    left: -75px;
  }
}

.collage--homepage .icon-four, .collage--academics .icon-four {
  bottom: 13%;
  left: 43%;
  width: 0;
  height: 0;
  border-width: 2px 0 0 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.2s ease, border-top-color 0.2s 0.2s ease, width 0.2s 0.3s ease, border-left-color 0.2s 0.3s ease;
  -o-transition: height 0.2s 0.2s ease, border-top-color 0.2s 0.2s ease, width 0.2s 0.3s ease, border-left-color 0.2s 0.3s ease;
  transition: height 0.2s 0.2s ease, border-top-color 0.2s 0.2s ease, width 0.2s 0.3s ease, border-left-color 0.2s 0.3s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-four, .collage--academics .icon-four {
    bottom: 19.8%;
    left: 45%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-four, .collage--academics .icon-four {
    bottom: 27.5%;
  }
}

.collage--homepage .icon-four .icon, .collage--academics .icon-four .icon {
  bottom: -27px;
  -webkit-transition-delay: 1.7s;
       -o-transition-delay: 1.7s;
          transition-delay: 1.7s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-four .icon, .collage--academics .icon-four .icon {
    bottom: -41px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-four .icon, .collage--academics .icon-four .icon {
    bottom: -61px;
    left: -5px;
  }
}

.collage--homepage .icon-five, .collage--academics .icon-five {
  left: 67%;
  bottom: 9%;
  width: 0;
  height: 0;
  border-width: 0 0 2px 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.4s ease, border-bottom-color 0.2s 0.4s ease, width 0.2s 0.5s ease, border-left-color 0.2s 0.5s ease;
  -o-transition: height 0.2s 0.4s ease, border-bottom-color 0.2s 0.4s ease, width 0.2s 0.5s ease, border-left-color 0.2s 0.5s ease;
  transition: height 0.2s 0.4s ease, border-bottom-color 0.2s 0.4s ease, width 0.2s 0.5s ease, border-left-color 0.2s 0.5s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-five, .collage--academics .icon-five {
    left: 67.4%;
    bottom: 16%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-five, .collage--academics .icon-five {
    bottom: 22%;
  }
}

.collage--homepage .icon-five .icon, .collage--academics .icon-five .icon {
  top: -32px;
  left: -16px;
  -webkit-transition-delay: 1.8s;
       -o-transition-delay: 1.8s;
          transition-delay: 1.8s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-five .icon, .collage--academics .icon-five .icon {
    top: -51px;
    left: -27px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-five .icon, .collage--academics .icon-five .icon {
    top: -76px;
    left: -37px;
  }
}

.collage--homepage .icon-six, .collage--academics .icon-six {
  left: 75%;
  bottom: 9%;
  width: 0;
  height: 0;
  border-width: 2px 0 0 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.6s ease, border-left-color 0.2s 0.6s ease, border-top-color 0.2s 0.7s ease, width 0.2s 0.7s ease;
  -o-transition: height 0.2s 0.6s ease, border-left-color 0.2s 0.6s ease, border-top-color 0.2s 0.7s ease, width 0.2s 0.7s ease;
  transition: height 0.2s 0.6s ease, border-left-color 0.2s 0.6s ease, border-top-color 0.2s 0.7s ease, width 0.2s 0.7s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-six, .collage--academics .icon-six {
    bottom: 16.3%;
    left: 75.2%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-six, .collage--academics .icon-six {
    bottom: 22.3%;
  }
}

.collage--homepage .icon-six .icon, .collage--academics .icon-six .icon {
  bottom: -27px;
  left: -3px;
  -webkit-transition-delay: 1.4s;
       -o-transition-delay: 1.4s;
          transition-delay: 1.4s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-six .icon, .collage--academics .icon-six .icon {
    bottom: -45px;
    left: -6px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-six .icon, .collage--academics .icon-six .icon {
    bottom: -64px;
    left: -12px;
  }
}

.collage--homepage .icon-seven, .collage--academics .icon-seven {
  left: 79%;
  bottom: 30%;
  width: 0;
  height: 0;
  border-width: 0 0 0 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.8s ease, border-top-color 0.2s 0.8s ease, width 0.2s 0.9s ease, border-left-color 0.2s 0.9s ease;
  -o-transition: height 0.2s 0.8s ease, border-top-color 0.2s 0.8s ease, width 0.2s 0.9s ease, border-left-color 0.2s 0.9s ease;
  transition: height 0.2s 0.8s ease, border-top-color 0.2s 0.8s ease, width 0.2s 0.9s ease, border-left-color 0.2s 0.9s ease;
}

@media (min-width: 700px) {
  .collage--homepage .icon-seven, .collage--academics .icon-seven {
    bottom: 43.7%;
    left: 79.5%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-seven, .collage--academics .icon-seven {
    bottom: 58.7%;
  }
}

.collage--homepage .icon-seven .icon, .collage--academics .icon-seven .icon {
  top: -33px;
  left: -13px;
  -webkit-transition-delay: 1.6s;
       -o-transition-delay: 1.6s;
          transition-delay: 1.6s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-seven .icon, .collage--academics .icon-seven .icon {
    top: -56px;
    left: -22px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-seven .icon, .collage--academics .icon-seven .icon {
    top: -80px;
    left: -36px;
  }
}

.collage--homepage .icon-eight, .collage--academics .icon-eight {
  left: 88%;
  bottom: 26.4%;
}

@media (min-width: 700px) {
  .collage--homepage .icon-eight, .collage--academics .icon-eight {
    left: 87%;
    bottom: 43.8%;
  }
}

.collage--homepage .icon-eight .icon, .collage--academics .icon-eight .icon {
  top: -28px;
  left: -12px;
  -webkit-transition-delay: 1.2s;
       -o-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

@media (min-width: 700px) {
  .collage--homepage .icon-eight .icon, .collage--academics .icon-eight .icon {
    top: -18px;
    left: -2px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-eight .icon, .collage--academics .icon-eight .icon {
    top: -134px;
    left: -1px;
  }
}

.collage--homepage.js-active .icon, .collage--academics.js-active .icon {
  opacity: 1;
}

.collage--homepage.js-active .icon-one, .collage--academics.js-active .icon-one {
  width: 10%;
  height: 8%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-one, .collage--academics.js-active .icon-one {
    height: 14%;
    width: 12%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-one, .collage--academics.js-active .icon-one {
    height: 15.5%;
  }
}

.collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
  width: 10%;
  height: 8%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
    height: 15%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
    height: 19%;
  }
}

.collage--homepage.js-active .icon-three, .collage--academics.js-active .icon-three {
  height: 3px;
  width: 21.5%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-three, .collage--academics.js-active .icon-three {
    width: 23%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-three, .collage--academics.js-active .icon-three {
    width: 23.3%;
  }
}

.collage--homepage.js-active .icon-four, .collage--academics.js-active .icon-four {
  height: 16px;
  width: 23.5%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-four, .collage--academics.js-active .icon-four {
    height: 8%;
    width: 22.5%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-four, .collage--academics.js-active .icon-four {
    height: 10%;
  }
}

.collage--homepage.js-active .icon-five, .collage--academics.js-active .icon-five {
  width: 7.5%;
  height: 12%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-five, .collage--academics.js-active .icon-five {
    height: 19%;
    width: 7.6%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-five, .collage--academics.js-active .icon-five {
    height: 25%;
    width: 8%;
  }
}

.collage--homepage.js-active .icon-six, .collage--academics.js-active .icon-six {
  width: 10%;
  height: 20.4%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-six, .collage--academics.js-active .icon-six {
    height: 31.4%;
    width: 13%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-six, .collage--academics.js-active .icon-six {
    width: 11%;
    height: 36.4%;
  }
}

.collage--homepage.js-active .icon-seven, .collage--academics.js-active .icon-seven {
  width: 10%;
  height: 7%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-seven, .collage--academics.js-active .icon-seven {
    height: 13%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-seven, .collage--academics.js-active .icon-seven {
    height: 17%;
  }
}

@media (min-width: 400px) {
  .collage--homepage .collage__images, .collage--academics .collage__images {
    margin-top: -2rem;
  }
}

@media (min-width: 500px) {
  .collage--homepage .collage__images, .collage--academics .collage__images {
    margin-top: -1.5rem;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-one, .collage--academics .icon-one {
    bottom: 32%;
  }
}

@media (min-width: 700px) {
  .collage--homepage .icon-one, .collage--academics .icon-one {
    bottom: 39%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-one, .collage--academics .icon-one {
    bottom: 43.2%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-two, .collage--academics .icon-two {
    bottom: 23%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-two, .collage--academics .icon-two {
    bottom: 22.6%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-three, .collage--academics .icon-three {
    bottom: 22%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-four, .collage--academics .icon-four {
    bottom: 22.5%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-five, .collage--academics .icon-five {
    bottom: 21%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-six, .collage--academics .icon-six {
    bottom: 21%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-seven, .collage--academics .icon-seven {
    bottom: 42%;
  }
}

@media (min-width: 700px) {
  .collage--homepage .icon-seven, .collage--academics .icon-seven {
    bottom: 52.5%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-seven, .collage--academics .icon-seven {
    bottom: 57.5%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-eight, .collage--academics .icon-eight {
    bottom: 34.4%;
  }
}

@media (min-width: 700px) {
  .collage--homepage .icon-eight, .collage--academics .icon-eight {
    bottom: 43.8%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-eight, .collage--academics .icon-eight {
    bottom: 57.5%;
  }
}

@media (min-width: 500px) {
  .collage--homepage .icon-eight .icon, .collage--academics .icon-eight .icon {
    top: -49px;
    left: -19px;
  }
}

@media (min-width: 700px) {
  .collage--homepage .icon-eight .icon, .collage--academics .icon-eight .icon {
    top: -74px;
    left: 10px;
  }
}

@media (min-width: 1025px) {
  .collage--homepage .icon-eight .icon, .collage--academics .icon-eight .icon {
    top: -36px;
    left: 0;
  }
}

.collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
  height: 8.4%;
}

@media (min-width: 500px) {
  .collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
    height: 9.4%;
  }
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
    height: 16%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-two, .collage--academics.js-active .icon-two {
    height: 20.5%;
  }
}

@media (min-width: 500px) {
  .collage--homepage.js-active .icon-four, .collage--academics.js-active .icon-four {
    height: 20px;
  }
}

@media (min-width: 700px) {
  .collage--homepage.js-active .icon-four, .collage--academics.js-active .icon-four {
    height: 8%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-four, .collage--academics.js-active .icon-four {
    height: 10%;
  }
}

@media (min-width: 500px) {
  .collage--homepage.js-active .icon-five, .collage--academics.js-active .icon-five {
    width: 7.7%;
  }
}

@media (min-width: 1025px) {
  .collage--homepage.js-active .icon-six, .collage--academics.js-active .icon-six {
    width: 12%;
  }
}

@media (min-width: 700px) {
  .collage--academics .collage__images {
    margin-top: -2rem;
  }
}

@media (min-width: 700px) {
  .collage--academics .collage__images {
    margin-top: -5rem;
  }
}

@media (min-width: 1025px) {
  .collage--academics .collage__header {
    margin-bottom: 0;
  }
}

@media (min-width: 700px) {
  .collage--academics .collage__header h2 {
    font-size: 2.11rem;
  }
}

@media (min-width: 1025px) {
  .collage--academics .collage__header h2 {
    font-size: 2.5rem;
  }
}

.collage--life .icon-one {
  right: 71%;
  bottom: 22%;
  border-width: 0 0 2px 2px;
  border-style: dotted;
  width: 0;
  height: 0;
  -webkit-transition: width 0.2s 0.8s ease, border-left-color 0.2s 0.8s ease, height 0.2s 0.9s ease, border-bottom-color 0.2s 0.9s ease;
  -o-transition: width 0.2s 0.8s ease, border-left-color 0.2s 0.8s ease, height 0.2s 0.9s ease, border-bottom-color 0.2s 0.9s ease;
  transition: width 0.2s 0.8s ease, border-left-color 0.2s 0.8s ease, height 0.2s 0.9s ease, border-bottom-color 0.2s 0.9s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-one {
    bottom: 30%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-one {
    right: 71.4%;
    bottom: 39%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-one {
    bottom: 38%;
    right: 68.6%;
  }
}

.collage--life .icon-one .icon {
  left: -8px;
  top: -33px;
  -webkit-transition-delay: 1.1s;
       -o-transition-delay: 1.1s;
          transition-delay: 1.1s;
}

@media (min-width: 700px) {
  .collage--life .icon-one .icon {
    left: -23px;
    top: -53px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-one .icon {
    left: -36px;
    top: -79px;
  }
}

.collage--life .icon-two {
  left: 28.5%;
  bottom: 11%;
  border-width: 0 0 0 2px;
  border-style: dotted;
  width: 0;
  height: 0;
  -webkit-transition: height 0.2s 0.6s ease, width 0.2s 0.7s ease;
  -o-transition: height 0.2s 0.6s ease, width 0.2s 0.7s ease;
  transition: height 0.2s 0.6s ease, width 0.2s 0.7s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-two {
    bottom: 18%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-two {
    bottom: 22%;
    left: 31.3%;
  }
}

.collage--life .icon-two .icon {
  top: -37px;
  left: -8px;
  -webkit-transition-delay: 1.3s;
       -o-transition-delay: 1.3s;
          transition-delay: 1.3s;
}

@media (min-width: 700px) {
  .collage--life .icon-two .icon {
    top: -57px;
    left: -19px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-two .icon {
    top: -86px;
    left: -34px;
  }
}

.collage--life .icon-three {
  right: 54.5%;
  bottom: 13%;
  border-width: 2px 0 0 0;
  border-style: dotted;
  width: 0;
  height: 0;
  -webkit-transition: width 0.2s 0.4s ease;
  -o-transition: width 0.2s 0.4s ease;
  transition: width 0.2s 0.4s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-three {
    bottom: 21.5%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-three {
    bottom: 23%;
    right: 55%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-three {
    bottom: 24%;
  }
}

.collage--life .icon-three .icon {
  left: -10px;
  bottom: -38px;
  -webkit-transition-delay: 1.5s;
       -o-transition-delay: 1.5s;
          transition-delay: 1.5s;
}

@media (min-width: 500px) {
  .collage--life .icon-three .icon {
    bottom: -49px;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-three .icon {
    left: -18px;
    bottom: -81px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-three .icon {
    left: -43px;
    bottom: -96px;
  }
}

.collage--life .icon-four {
  bottom: 13.5%;
  left: 45%;
  width: 0;
  height: 0;
  border-width: 2px 0 0 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.2s ease, border-top-color 0.2s 0.2s ease, width 0.2s 0.3s ease, border-left-color 0.2s 0.3s ease;
  -o-transition: height 0.2s 0.2s ease, border-top-color 0.2s 0.2s ease, width 0.2s 0.3s ease, border-left-color 0.2s 0.3s ease;
  transition: height 0.2s 0.2s ease, border-top-color 0.2s 0.2s ease, width 0.2s 0.3s ease, border-left-color 0.2s 0.3s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-four {
    bottom: 22.3%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-four {
    bottom: 23.5%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-four {
    bottom: 24.1%;
  }
}

.collage--life .icon-four .icon {
  left: -37px;
  bottom: 7px;
  -webkit-transition-delay: 1.7s;
       -o-transition-delay: 1.7s;
          transition-delay: 1.7s;
}

@media (min-width: 700px) {
  .collage--life .icon-four .icon {
    left: -57px;
    bottom: 24px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-four .icon {
    left: -87px;
    bottom: 31px;
  }
}

.collage--life .icon-five {
  left: 67%;
  bottom: 11.4%;
  width: 0;
  height: 0;
  border-width: 0 0 2px 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.4s ease, border-bottom-color 0.2s 0.4s ease, width 0.2s 0.5s ease, border-left-color 0.2s 0.5s ease;
  -o-transition: height 0.2s 0.4s ease, border-bottom-color 0.2s 0.4s ease, width 0.2s 0.5s ease, border-left-color 0.2s 0.5s ease;
  transition: height 0.2s 0.4s ease, border-bottom-color 0.2s 0.4s ease, width 0.2s 0.5s ease, border-left-color 0.2s 0.5s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-five {
    bottom: 20%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-five {
    bottom: 15.4%;
    left: 67.5%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-five {
    bottom: 19.4%;
  }
}

.collage--life .icon-five .icon {
  bottom: 105%;
  left: -58%;
  -webkit-transition-delay: 1.8s;
       -o-transition-delay: 1.8s;
          transition-delay: 1.8s;
}

@media (min-width: 500px) {
  .collage--life .icon-five .icon {
    left: -18px;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-five .icon {
    bottom: 101%;
    left: -31px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-five .icon {
    left: -45px;
    bottom: 102%;
  }
}

.collage--life .icon-six {
  left: 75%;
  bottom: 11.5%;
  width: 0;
  height: 0;
  border-width: 2px 0 0 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.6s ease, border-left-color 0.2s 0.6s ease, border-top-color 0.2s 0.7s ease, width 0.2s 0.7s ease;
  -o-transition: height 0.2s 0.6s ease, border-left-color 0.2s 0.6s ease, border-top-color 0.2s 0.7s ease, width 0.2s 0.7s ease;
  transition: height 0.2s 0.6s ease, border-left-color 0.2s 0.6s ease, border-top-color 0.2s 0.7s ease, width 0.2s 0.7s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-six {
    bottom: 20%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-six {
    bottom: 16%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-six {
    bottom: 20%;
    left: 75.3%;
  }
}

.collage--life .icon-six .icon {
  right: 153%;
  bottom: -23px;
  -webkit-transition-delay: 1.4s;
       -o-transition-delay: 1.4s;
          transition-delay: 1.4s;
}

@media (min-width: 700px) {
  .collage--life .icon-six .icon {
    right: 148%;
    bottom: -34px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-six .icon {
    right: 150%;
    bottom: -56px;
  }
}

.collage--life .icon-seven {
  left: 83%;
  top: 79%;
  width: 0;
  height: 0;
  border-width: 0 0 2px 2px;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.8s ease, border-bottom-color 0.2s 0.8s ease, width 0.2s 0.9s ease, border-left-color 0.2s 0.9s ease;
  -o-transition: height 0.2s 0.8s ease, border-bottom-color 0.2s 0.8s ease, width 0.2s 0.9s ease, border-left-color 0.2s 0.9s ease;
  transition: height 0.2s 0.8s ease, border-bottom-color 0.2s 0.8s ease, width 0.2s 0.9s ease, border-left-color 0.2s 0.9s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-seven {
    top: 70%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-seven {
    top: 67%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-seven {
    top: 66%;
    left: 83.2%;
  }
}

.collage--life .icon-seven .icon {
  bottom: -15px;
  right: -21px;
  -webkit-transition-delay: 1.6s;
       -o-transition-delay: 1.6s;
          transition-delay: 1.6s;
}

@media (min-width: 700px) {
  .collage--life .icon-seven .icon {
    bottom: -21px;
    right: -36px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-seven .icon {
    bottom: -34px;
    right: -53px;
  }
}

.collage--life .icon-eight {
  left: 91.4%;
  bottom: 22.4%;
  width: 0;
  height: 0;
  border-width: 0 2px 0 0;
  border-style: dotted;
  -webkit-transition: height 0.2s 0.8s ease, border-bottom-color 0.2s 0.8s ease;
  -o-transition: height 0.2s 0.8s ease, border-bottom-color 0.2s 0.8s ease;
  transition: height 0.2s 0.8s ease, border-bottom-color 0.2s 0.8s ease;
}

@media (min-width: 500px) {
  .collage--life .icon-eight {
    bottom: 30.4%;
  }
}

@media (min-width: 700px) {
  .collage--life .icon-eight {
    bottom: 33.4%;
    left: 92%;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-eight {
    bottom: 34.4%;
    left: 92.2%;
  }
}

.collage--life .icon-eight .icon {
  top: -32px;
  left: -12px;
  -webkit-transition-delay: 1.2s;
       -o-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

@media (min-width: 700px) {
  .collage--life .icon-eight .icon {
    top: -52px;
    left: -22px;
  }
}

@media (min-width: 1025px) {
  .collage--life .icon-eight .icon {
    top: -78px;
    left: -35px;
  }
}

.collage--life.js-active .icon {
  opacity: 1;
}

.collage--life.js-active .icon-one {
  width: 22%;
  height: 11%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-one {
    height: 16%;
    width: 21%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-one {
    height: 22%;
    width: 21.3%;
  }
}

.collage--life.js-active .icon-two {
  width: 10%;
  height: 11.3%;
  border-color: #000000;
}

@media (min-width: 500px) {
  .collage--life.js-active .icon-two {
    height: 12%;
  }
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-two {
    height: 21%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-two {
    height: 16%;
  }
}

.collage--life.js-active .icon-three {
  height: 3px;
  width: 17%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-three {
    width: 16.5%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-three {
    width: 13.4%;
  }
}

.collage--life.js-active .icon-four {
  height: 16px;
  width: 22.5%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-four {
    height: 7.7%;
    width: 22.2%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-four {
    height: 9.7%;
  }
}

.collage--life.js-active .icon-five {
  width: 8.4%;
  height: 11%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-five {
    height: 29%;
    width: 7.6%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-five {
    height: 25%;
    width: 8%;
  }
}

.collage--life.js-active .icon-six {
  width: 17%;
  height: 10.4%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-six {
    height: 17.2%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-six {
    height: 14%;
  }
}

.collage--life.js-active .icon-seven {
  width: 4%;
  height: 12%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-seven {
    height: 21%;
    width: 5%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-seven {
    height: 25%;
  }
}

.collage--life.js-active .icon-eight {
  height: 14%;
  border-color: #000000;
}

@media (min-width: 700px) {
  .collage--life.js-active .icon-eight {
    height: 22%;
  }
}

@media (min-width: 1025px) {
  .collage--life.js-active .icon-eight {
    height: 31%;
  }
}

@media (min-width: 700px) {
  .image-block.homepage-image {
    margin-left: -50px;
  }
}

@media (min-width: 1025px) {
  .image-block.homepage-image {
    margin-left: 50%;
  }
}

@media (min-width: 700px) {
  .image-block.homepage-image .image-block__img {
    margin-right: 110px;
    margin-left: 0;
    padding-left: 0;
  }
}

@media (min-width: 700px) {
  .image-block.homepage-image .image-block__img:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 150px;
    left: 0;
    right: 0;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  }
}

@media (min-width: 1025px) {
  .image-block.homepage-image .image-block__img:before {
    height: 260px;
    right: 0;
  }
}

@media (min-width: 1025px) {
  .image-block.homepage-image .image-block__img {
    margin-right: 256px;
  }
  .image-block.homepage-image .image-block__img img {
    width: 100%;
  }
}

@media (min-width: 700px) {
  .image-block.homepage-image .image-block__caption {
    right: 0;
  }
}

@media (min-width: 1025px) {
  .image-block.homepage-image .image-block__caption {
    left: auto;
    right: 60px;
    max-width: 410px;
    bottom: -38px;
  }
}

@media (min-width: 700px) {
  .image-block.homepage-image h2 {
    width: calc(100vw - 120px);
    right: 0;
    left: calc(-100vw + (120px + 100%));
    text-align: right;
    padding-right: 0;
    position: relative;
  }
}

@media (min-width: 1025px) {
  .image-block.homepage-image h2 {
    width: calc(100vw - 165px);
    left: calc(-100vw + (165px + 100%));
  }
}

@media (min-width: 1161px) {
  .image-block.homepage-image h2 {
    left: auto;
    right: calc(100% + 337px);
  }
}

@media (min-width: 1025px) {
  .image-block.homepage-image .cta--secondary {
    padding: 0.7em 1.5em;
  }
}

/**
 * @file
 * Living and Commuting Image Block
 *
 * Contains styles for living and commuting content object.
 */
.life-image-block {
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  margin-bottom: 2.5rem;
}

@media (min-width: 700px) {
  .life-image-block {
    margin-bottom: 2.75rem;
    margin-top: 2.75rem;
  }
}

@media (min-width: 1025px) {
  .life-image-block {
    margin-bottom: 5rem;
    margin-top: 3rem;
  }
}

@media (min-width: 1201px) {
  .life-image-block {
    width: 1200px;
    left: 0;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-left: 50%;
  }
}

.life-image-block.js-active .life-image-block__item {
  opacity: 1;
}

@media (min-width: 700px) {
  .life-image-block__wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.life-image-block__item {
  margin: 0 0 1.8rem;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 700px) {
  .life-image-block__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: calc(50% - 0.88rem);
        -ms-flex-preferred-size: calc(50% - 0.88rem);
            flex-basis: calc(50% - 0.88rem);
    margin: 0 0.88rem 0 0;
  }
}

@media (min-width: 1025px) {
  .life-image-block__item {
    -webkit-flex-basis: calc(50% - 1.11rem);
        -ms-flex-preferred-size: calc(50% - 1.11rem);
            flex-basis: calc(50% - 1.11rem);
    margin: 0 1.11rem 0 0;
  }
}

.life-image-block__item:nth-child(2) {
  -webkit-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

@media (min-width: 700px) {
  .life-image-block__item:nth-child(2) {
    margin: 0 0 0 0.88rem;
  }
}

@media (min-width: 1025px) {
  .life-image-block__item:nth-child(2) {
    margin: 0 0 0 1.11rem;
  }
}

.life-image-block__item:nth-child(2) .life-image-block__caption {
  background: #F6D16F;
}

@media (min-width: 1025px) {
  .life-image-block__item:nth-child(2) .life-image-block__caption {
    padding: 32px 30px 34px 49px;
  }
}

.life-image-block__img {
  position: relative;
  display: block;
}

.life-image-block__img:after {
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: calc(100% - 34px);
  height: calc(100% - 34px);
  margin: 15px;
  border: 2px solid #fff;
  content: '';
}

@media (min-width: 700px) {
  .life-image-block__img:after {
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    left: 17px;
    top: 17px;
    margin: 0;
  }
}

@media (min-width: 1025px) {
  .life-image-block__img:after {
    border: 4px solid #fff;
    width: calc(100% - 90px);
    height: calc(100% - 90px);
    left: 40px;
    top: 40px;
  }
}

.life-image-block__img img {
  width: 100%;
  height: calc(100% + 2px);
  margin-top: -1px;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;';
}

.life-image-block__caption {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  background: #99B4C9;
  padding: 24px 30px;
}

@media (min-width: 700px) {
  .life-image-block__caption {
    padding: 24px 30px;
    line-height: 1.7;
    margin-bottom: auto;
    font-size: 0.88rem;
  }
}

@media (min-width: 1025px) {
  .life-image-block__caption {
    padding: 24px 30px 37px 49px;
    font-size: 0.94rem;
    line-height: 1.5;
  }
}

.life-image-block .cta--link {
  display: block;
  margin-bottom: 0.5rem;
}

@media (min-width: 700px) {
  .life-image-block .cta--link {
    margin-bottom: 0.6rem;
  }
}

@media (min-width: 1025px) {
  .life-image-block .cta--link {
    font-size: 1.32rem;
  }
}

.life-image-block .cta--link span {
  font-size: inherit;
}

.life-image-block .cta--link .arrow {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.life-image-block .cta--link:hover .arrow {
  right: -12px;
}

@media (min-width: 1025px) {
  .life-happening {
    margin-left: calc((100% - 100vw) / 2);
    margin-right: calc((100% - 100vw) / 2);
  }
}

@media (min-width: 1201px) {
  .life-happening {
    margin-left: calc((100% - 1200px) / 2);
    margin-right: calc((100% - 1200px) / 2);
  }
}

.life-happening.js-active .life-happening__item {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease 0s;
  -o-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s;
}

.life-happening__header {
  text-align: center;
  margin-bottom: 1.7rem;
}

@media (min-width: 700px) {
  .life-happening__header {
    margin-bottom: 1.4rem;
  }
}

@media (min-width: 1025px) {
  .life-happening__header {
    margin-bottom: 3rem;
  }
}

.life-happening__header h2 {
  font-size: 1.56rem;
}

@media (min-width: 700px) {
  .life-happening__header h2 {
    font-size: 2.11rem;
  }
}

@media (min-width: 1025px) {
  .life-happening__header h2 {
    font-size: 2.5rem;
  }
}

.life-happening__item {
  margin-bottom: 4rem;
  opacity: 0;
}

@media (min-width: 700px) {
  .life-happening__item {
    margin-bottom: 3rem;
  }
}

@media (min-width: 1025px) {
  .life-happening__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-basis: 42%;
        -ms-flex-preferred-size: 42%;
            flex-basis: 42%;
    margin-bottom: 1rem;
  }
}

.life-happening__item.cal3up {
  margin-bottom: 3rem;
  -webkit-transition-delay: 1s !important;
       -o-transition-delay: 1s !important;
          transition-delay: 1s !important;
}

@media (min-width: 1025px) {
  .life-happening__item.cal3up {
    -webkit-flex-basis: calc(50% + 100px);
        -ms-flex-preferred-size: calc(50% + 100px);
            flex-basis: calc(50% + 100px);
    margin-bottom: 1rem;
  }
}

.life-happening__item.cal3up .cta--secondary {
  margin-top: 0;
}

@media (min-width: 700px) {
  .life-happening__item.cal3up .cta--secondary {
    margin-left: -66px;
  }
}

@media (min-width: 1025px) {
  .life-happening__item.cal3up .cta--secondary {
    margin-top: 1.3rem;
  }
}

@media (min-width: 1025px) {
  .life-happening__wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
  }
}

.life-happening .cta--secondary {
  margin-top: 1.4rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media (min-width: 700px) {
  .life-happening .cta--secondary {
    margin-top: 2.4rem;
  }
}

@media (min-width: 1025px) {
  .life-happening .cta--secondary {
    margin-top: 1.3rem;
    margin-bottom: 0;
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start;
  }
}

@media (min-width: 700px) {
  .life-happening .instagram__feed {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
  }
}

@media (min-width: 1025px) {
  .life-happening .instagram__feed {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
}

.life-happening .instagram__tile {
  padding-top: 51%;
}

@media (min-width: 700px) {
  .life-happening .instagram__tile {
    -webkit-flex-basis: calc(100% / 3);
        -ms-flex-preferred-size: calc(100% / 3);
            flex-basis: calc(100% / 3);
    padding-top: 34.6%;
  }
}

@media (min-width: 1025px) {
  .life-happening .instagram__tile {
    -webkit-flex-basis: calc(100% / 2);
        -ms-flex-preferred-size: calc(100% / 2);
            flex-basis: calc(100% / 2);
    padding-top: 51.6%;
  }
}

@media (min-width: 1025px) {
  .life-happening .instagram__tile:nth-child(4) {
    display: block;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up {
    margin-top: 0;
    padding: 0 0 0 108px;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up {
    padding: 39px 50px 0 114px;
  }
}

.life-happening .cal3up.js-active .cal3up__date {
  opacity: 1;
  -webkit-transition: 0.3s ease 0.6s;
  -o-transition: 0.3s ease 0.6s;
  transition: 0.3s ease 0.6s;
}

@media (min-width: 700px) {
  .life-happening .cal3up.js-active .cal3up__date:before {
    width: 26px;
    height: calc(100% - 0.75rem);
    border-color: #000000;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up.js-active .cal3up__date:before {
    width: 39px;
    height: calc(100% - 2.7rem);
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(2) .cal3up__date:before {
    height: calc(50%);
    width: 131px;
    border-color: #000000;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(2) .cal3up__date:before {
    width: 154px;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(2) .cal3up__date:after {
    height: 100%;
    width: 72px;
    border-color: #000000;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(2) .cal3up__date:after {
    height: 78%;
    width: 58px;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(3) {
    min-height: 0;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(3) .cal3up__date:before {
    height: 100%;
    border-color: #000000;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up.js-active .cal3up__item:nth-child(3) .cal3up__date:before {
    height: 88%;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 2.2rem;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__item {
    min-height: 154px;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__item:nth-child(2) {
    margin-left: 2.3rem;
    margin-bottom: 2.4rem;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__item:nth-child(2) {
    margin-left: 3.3rem;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__item:nth-child(2) .cal3up__date:before {
    height: 0;
    width: 0;
    left: -56px;
    top: -34px;
    border-width: 2px 2px 0 0;
    border-style: dotted;
    border-color: transparent;
    -webkit-transition: width 0.2s ease 1.1s, height 0.2s 1.2s ease, border-top-color 0.2s ease 1.1s, border-right-color 0.2s ease 1.1s;
    -o-transition: width 0.2s ease 1.1s, height 0.2s 1.2s ease, border-top-color 0.2s ease 1.1s, border-right-color 0.2s ease 1.1s;
    transition: width 0.2s ease 1.1s, height 0.2s 1.2s ease, border-top-color 0.2s ease 1.1s, border-right-color 0.2s ease 1.1s;
    z-index: -1;
    content: '';
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__item:nth-child(2) .cal3up__date:before {
    left: -88px;
    top: -65px;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__item:nth-child(2) .cal3up__date:after {
    display: block;
    position: absolute;
    height: 0;
    width: 0;
    right: calc(100% - 78px);
    top: 0;
    border-width: 0 2px 2px 0;
    border-style: dotted;
    border-color: transparent;
    -webkit-transition: width 0.2s ease 1.3s, height 0.2s 1.2s ease, border-right-color 0.2s ease 1.2s, border-bottom-color 0.2s ease 1.3s;
    -o-transition: width 0.2s ease 1.3s, height 0.2s 1.2s ease, border-right-color 0.2s ease 1.2s, border-bottom-color 0.2s ease 1.3s;
    transition: width 0.2s ease 1.3s, height 0.2s 1.2s ease, border-right-color 0.2s ease 1.2s, border-bottom-color 0.2s ease 1.3s;
    z-index: -1;
    content: '';
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__item:nth-child(2) .cal3up__date:after {
    right: calc(100% - 69px);
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__item:nth-child(3) {
    margin-bottom: 1rem;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__item:nth-child(3) .cal3up__date:before {
    height: 0;
    width: 0;
    top: -43px;
    left: 45px;
    border-width: 0 0 0 2px;
    border-style: dotted;
    border-color: transparent;
    -webkit-transition: height 0.2s 1.3s ease, border-left-color 0.2s ease 1.3s;
    -o-transition: height 0.2s 1.3s ease, border-left-color 0.2s ease 1.3s;
    transition: height 0.2s 1.3s ease, border-left-color 0.2s ease 1.3s;
    z-index: -1;
    content: '';
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__item:nth-child(3) .cal3up__date:before {
    left: 68px;
    top: -77px;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__date {
    font-size: 1.11rem;
    padding: 11px 10px;
    min-width: 112px;
    margin-right: 1rem;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__date {
    font-size: 1.38rem;
    padding: 14px 19px;
    min-width: 138px;
    margin-right: 1.7rem;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__date:before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    right: calc(100% - 9px);
    top: 19px;
    border-width: 2px 0 0 2px;
    border-style: dotted;
    border-color: transparent;
    -webkit-transition: width 0.2s ease 1s, height 0.2s 1.1s ease, border-top-color 0.2s ease 1s, border-left-color 0.2s ease 1s;
    -o-transition: width 0.2s ease 1s, height 0.2s 1.1s ease, border-top-color 0.2s ease 1s, border-left-color 0.2s ease 1s;
    transition: width 0.2s ease 1s, height 0.2s 1.1s ease, border-top-color 0.2s ease 1s, border-left-color 0.2s ease 1s;
    z-index: -1;
    content: '';
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__date:before {
    top: 23px;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__time, .life-happening .cal3up__location {
    font-size: 0.833rem;
    display: inline-block;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__time, .life-happening .cal3up__location {
    font-size: 1rem;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__text {
    padding: 0 20px 27px 0;
    line-height: 1.2;
  }
}

@media (min-width: 700px) {
  .life-happening .cal3up__text h3 {
    margin-bottom: 0;
  }
}

@media (min-width: 1025px) {
  .life-happening .cal3up__text h3 {
    margin-bottom: 0.2rem;
  }
}

@media (min-width: 700px) {
  .life-happening .column--three {
    display: block;
  }
}

.life-happening .column--three:after {
  content: none;
}

.image-block + .life-happening {
  margin-top: -1.9rem;
}

@media (min-width: 700px) {
  .image-block + .life-happening {
    margin-top: -0.9rem;
  }
}

@media (min-width: 1025px) {
  .image-block + .life-happening {
    margin-top: 7.2rem;
    margin-bottom: 2.3rem;
  }
}

/**
 * @file
 * Statistic: Homepage 2 up feature
 *
 * Styles for Homepage statistic: 2 up feature object.
 */
.stat2up {
  margin: 2rem -15px 3.6rem;
}

@media (min-width: 700px) {
  .stat2up {
    margin: 3.7rem -50px 3.7rem;
  }
}

@media (min-width: 1025px) {
  .stat2up {
    margin: 4.8rem 0 4.7rem;
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
  }
}

.stat2up.js-active .column__col {
  opacity: 1;
}

.stat2up__header {
  display: block;
  background: #BA2319 url(../assets/img/tartan-background-home-story.jpg) top left;
  background-size: contain;
  padding: 26px 30px 29px 36px;
}

@media (min-width: 700px) {
  .stat2up__header {
    padding: 30px 41px 29px 23px;
  }
}

@media (min-width: 1025px) {
  .stat2up__header {
    padding: 36px 41px 29px 41px;
  }
}

.stat2up__header h2 {
  color: #fff;
  font-size: 2.18rem;
  letter-spacing: 1.44px;
  line-height: 1.14;
}

@media (min-width: 700px) {
  .stat2up__header h2 {
    font-size: 2.38rem;
    letter-spacing: 1.77px;
    line-height: 1;
  }
}

@media (min-width: 1025px) {
  .stat2up__header h2 {
    font-size: 3.8rem;
    letter-spacing: 3.7px;
  }
}

.stat2up__item {
  padding-left: 40px;
  padding-right: 40px;
  text-align: center;
}

@media (min-width: 700px) {
  .stat2up__item {
    padding-left: 0;
    padding-right: 0;
  }
}

.stat2up__number {
  position: relative;
  display: inline-block;
  font-family: urw-din, sans-serif;
  font-weight: 700;
  color: #BA2319;
  font-size: 64.86px;
  letter-spacing: -1.17px;
  line-height: 1.2;
  margin-bottom: 0.6rem;
}

@media (min-width: 700px) {
  .stat2up__number {
    font-size: 81.08px;
    letter-spacing: -1.46px;
  }
}

@media (min-width: 1025px) {
  .stat2up__number {
    font-size: 124.74px;
    letter-spacing: -2.25px;
  }
}

.stat2up__number span {
  position: absolute;
  color: transparent;
  -webkit-text-stroke: 1px #182E44;
  left: -4px;
  bottom: -3px;
  letter-spacing: -1.17px;
  font-size: 64.86px;
}

@media (min-width: 700px) {
  .stat2up__number span {
    left: -7px;
    bottom: -7px;
    letter-spacing: -1.46px;
    font-size: 81.08px;
  }
}

@media (min-width: 1025px) {
  .stat2up__number span {
    -webkit-text-stroke: 2px #182E44;
    letter-spacing: -2.25px;
    font-size: 124.74px;
  }
}

@media (min-width: 700px) {
  .stat2up__number {
    line-height: 1;
    margin-bottom: 0.5rem;
  }
}

.stat2up__number span {
  left: -3px;
}

@media (min-width: 700px) {
  .stat2up__number span {
    left: -3px;
    bottom: -3px;
  }
}

@media (min-width: 1025px) {
  .stat2up__number span {
    left: -6px;
    bottom: -6px;
  }
}

.stat2up__caption {
  line-height: 1.6;
  margin: 0 0 1rem;
}

@media (min-width: 700px) {
  .stat2up__caption {
    font-size: 0.88rem;
    line-height: 1.5;
  }
}

@media (min-width: 1025px) {
  .stat2up__caption {
    font-size: 1rem;
    padding: 5px 31px 0;
    margin: 0 0 1.5rem;
  }
}

@media (min-width: 1025px) {
  .stat2up__cta span {
    font-size: 0.889rem;
  }
}

@media (min-width: 700px) {
  .stat2up .column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media (min-width: 1025px) {
  .stat2up .column {
    max-width: 1076px;
    margin: 0 auto;
  }
}

.stat2up .column__col {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 700px) {
  .stat2up .column__col {
    -webkit-flex-basis: calc(100% / 3);
        -ms-flex-preferred-size: calc(100% / 3);
            flex-basis: calc(100% / 3);
    margin-right: 29px;
    min-height: 196px;
  }
}

@media (min-width: 1025px) {
  .stat2up .column__col {
    min-height: 300px;
    margin-right: 0;
  }
}

.stat2up .column__col:nth-child(2) {
  -webkit-transition-delay: 0.2s;
       -o-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.stat2up .column__col:nth-child(3) {
  -webkit-transition-delay: 0.4s;
       -o-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

@media (min-width: 1025px) {
  .stat2up .column__col:nth-child(3) {
    padding-left: 25px;
  }
}

/**
 * @file
 * Catalog
 *
 * Contains styles for catalog program detail and view modes.
 */
@media (min-width: 700px) {
  .catalog__faculty-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.catalog__faculty-info img {
  margin: 0 0 1rem 0;
}

@media (min-width: 700px) {
  .catalog__faculty-info img {
    margin: 0 1rem 2rem 0;
  }
}

.catalog .faculty-info__title {
  font-weight: 700;
  margin: 0 0 0.5rem 0;
}

.catalog .faculty-info__email {
  margin: 0 0 0.5rem 0;
}

.catalog .faculty-info__office {
  margin: 0 0 1rem 0;
}

.catalog-course-list__table,
.catalog-program-list__table {
  border-collapse: collapse;
  width: 100%;
}

.catalog-course-list__table thead,
.catalog-program-list__table thead {
  display: none;
}

.catalog-course-list__table tr,
.catalog-program-list__table tr {
  border-bottom: 1px solid;
}

.catalog-course-list__table th,
.catalog-course-list__table td,
.catalog-program-list__table th,
.catalog-program-list__table td {
  text-align: left;
  padding: 20px 10px;
}

.catalog-course-list__table h2,
.catalog-program-list__table h2 {
  margin-top: 0;
}

.catalog-course-list__credit,
.catalog-program-list__credit {
  font-weight: 700;
}

.catalog-course-list__select,
.catalog-program-list__select {
  margin-right: 20px;
}

.catalog-course-list .dataTables_info,
.catalog-program-list .dataTables_info {
  display: none;
}

.catalog-course-list .dataTables_filter,
.catalog-program-list .dataTables_filter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
     -moz-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.catalog-course-list .dataTables_filter label,
.catalog-program-list .dataTables_filter label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.catalog-course-list .dataTables_filter input[type='search'],
.catalog-program-list .dataTables_filter input[type='search'] {
  display: block;
}

.catalog-course-list .dataTables_info,
.catalog-program-list .dataTables_info {
  display: none;
}

/**
 * @file
 * Faculty
 *
 * Contains styles for faculty detail and view modes.
 */
.faculty-detail .hero__inner {
  padding-bottom: 30px;
}

@media (min-width: 700px) {
  .faculty-detail .hero__inner {
    padding-top: 17.8%;
  }
}

@media (min-width: 1025px) {
  .faculty-detail .hero__inner {
    padding-bottom: 22px;
  }
}

@media (min-width: 1201px) {
  .faculty-detail .hero__inner {
    padding-top: 14.2%;
  }
}

.faculty-detail .hero__title {
  margin-bottom: 0.4rem;
  font-family: urw-din, sans-serif;
  font-size: 1.875rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

@media (min-width: 700px) {
  .faculty-detail .hero__title {
    padding: 0 0 2px 20px;
  }
}

@media (min-width: 1025px) {
  .faculty-detail .hero__title {
    margin-bottom: 0.7rem;
    padding: 0 190px 0 20px;
    font-size: 2.23rem;
    line-height: 1.1;
  }
}

.faculty-detail .faculty-detail__title {
  color: #fff;
  font-weight: 600;
}

@media (min-width: 1025px) {
  .faculty-detail .faculty-detail__title {
    font-size: 1.27rem;
  }
}

.faculty--full {
  margin-top: -0.3rem;
}

@media (min-width: 700px) {
  .faculty--full {
    position: relative;
    margin-top: -0.7em;
    padding-bottom: 1rem;
  }
}

@media (min-width: 1025px) {
  .faculty--full {
    padding: 2.1rem 0 1rem;
  }
}

.faculty--full .faculty__info {
  margin: 0 0 1.2em;
}

@media (min-width: 700px) {
  .faculty--full .faculty__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 1.5em;
  }
}

.faculty--full .faculty__info span {
  display: block;
  font-weight: 600;
  line-height: 1;
}

@media (min-width: 700px) {
  .faculty--full .faculty__info span {
    line-height: 1.35;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__info span {
    line-height: 1.4;
  }
}

.faculty--full .faculty__header {
  margin: 0 0 1.3rem;
}

@media (min-width: 700px) {
  .faculty--full .faculty__header {
    margin: 0 0 1rem;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__header {
    margin: 0 0 1.7rem;
  }
}

.faculty--full .faculty__header h2 {
  line-height: 1;
  margin: 0;
}

.faculty--full .faculty__image, .faculty--full .faculty__contact {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1rem;
}

.faculty--full .faculty__contact {
  margin: 0 0 1.8rem;
}

@media (min-width: 700px) {
  .faculty--full .faculty__contact {
    margin: 0;
    padding: 2.8rem 0 0 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
       -moz-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__contact {
    padding: 2.3rem 0 0;
  }
}

.faculty--full .faculty__image {
  margin: 0 0 1.3rem;
}

@media (min-width: 700px) {
  .faculty--full .faculty__image {
    margin: 0;
    -webkit-flex-basis: 46%;
        -ms-flex-preferred-size: 46%;
            flex-basis: 46%;
    max-width: 278px;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__image {
    -webkit-flex-basis: 39%;
        -ms-flex-preferred-size: 39%;
            flex-basis: 39%;
    max-width: 305px;
  }
}

@media (min-width: 700px) {
  .faculty--full .faculty__image + .faculty__contact {
    padding-left: 1.3rem;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__image + .faculty__contact {
    padding-left: 0;
  }
}

.faculty--full .faculty__email, .faculty--full .faculty__office {
  margin: 0 0 1.3rem;
}

@media (min-width: 700px) {
  .faculty--full .faculty__email, .faculty--full .faculty__office {
    margin: 0 0 1.2rem;
  }
}

.faculty--full .faculty__department {
  margin: 0 0 1rem;
}

@media (min-width: 700px) {
  .faculty--full .faculty__department {
    margin: 0;
  }
}

.faculty--full .faculty__phone {
  margin: 0 0 1.4rem;
}

@media (min-width: 700px) {
  .faculty--full .faculty__phone {
    margin: 0 0 1.2rem;
  }
}

.faculty--full .faculty__phone a {
  font-weight: 400;
  color: #000000;
}

@media (min-width: 700px) {
  .faculty--full .faculty__resume {
    margin: 0 0 1.8rem;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__resume {
    margin: 0 0 1.5rem;
  }
}

.faculty--full .faculty__resume-cta {
  display: none;
}

@media (min-width: 700px) {
  .faculty--full .faculty__resume {
    display: inline-block;
  }
}

.faculty--full .faculty__resume.mobile-only {
  display: inline-block;
}

@media (min-width: 700px) {
  .faculty--full .faculty__resume.mobile-only {
    display: none;
  }
}

.faculty--full .faculty__resume:after {
  background-color: #F6D16F;
}

.faculty--full .faculty__resume a:after {
  background-color: #F6D16F;
}

.faculty--full .faculty__resume a:before {
  background-color: #BA2319;
}

.faculty--full .faculty__resume a:hover span:before {
  opacity: 0;
}

.faculty--full .faculty__resume a:hover span:after {
  opacity: 1;
}

.faculty--full .faculty__resume a span {
  padding-left: 28px;
}

@media (min-width: 700px) {
  .faculty--full .faculty__resume a span {
    padding-left: 32px;
  }
}

.faculty--full .faculty__resume a span:before, .faculty--full .faculty__resume a span:after {
  position: absolute;
  display: inline-block;
  top: -6px;
  left: 0;
  width: 18px;
  height: 28px;
  -webkit-transition: opactiy 0.3s ease;
  -o-transition: opactiy 0.3s ease;
  transition: opactiy 0.3s ease;
  z-index: 1;
  content: '';
}

@media (min-width: 700px) {
  .faculty--full .faculty__resume a span:before, .faculty--full .faculty__resume a span:after {
    width: 25px;
    height: 38px;
  }
}

@media (min-width: 1025px) {
  .faculty--full .faculty__resume a span:before, .faculty--full .faculty__resume a span:after {
    top: -3px;
  }
}

.faculty--full .faculty__resume a span:before {
  background: url("../assets/icons/resume.svg") no-repeat center center;
  background-size: contain;
}

.faculty--full .faculty__resume a span:after {
  background: url("../assets/icons/resume-white.svg") no-repeat center center;
  background-size: contain;
  opacity: 0;
}

.faculty__image img {
  width: 274px;
}

/**
 * @file
 * News
 *
 * Contains styles for news and news view modes.
 */
@media (min-width: 1025px) {
  .news-detail .hero__inner {
    padding-bottom: 22px;
  }
}

.news-detail .hero__title {
  margin-bottom: 0.4rem;
  font-family: urw-din, sans-serif;
  font-size: 1.875rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

@media (min-width: 1025px) {
  .news-detail .hero__title {
    margin-bottom: 0.7rem;
    padding: 0 190px 0 20px;
    font-size: 2.23rem;
    line-height: 1.1;
  }
}

.news-detail__date {
  color: #fff;
  font-weight: 600;
}

@media (min-width: 1025px) {
  .news-detail__date {
    font-size: 1.27rem;
  }
}

.news--full {
  margin: 2rem 0 3.6rem;
}

@media (min-width: 1025px) {
  .news--full {
    margin: 7.8rem 0 3.6rem;
  }
}

.news--full .news__image {
  margin: 0 0 1rem;
}

@media (min-width: 1025px) {
  .news--full .news__image {
    margin: 4.4rem 0 6.35rem;
  }
}

.news--listing {
  margin: 2rem 0;
}

@media (min-width: 1025px) {
  .news--listing {
    margin: 2.6rem -4.5rem 2.6rem;
  }
}

.news--listing .news__item {
  margin: 0 0 1.6rem;
}

@media (min-width: 700px) {
  .news--listing .news__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 0 1.6rem;
    -webkit-box-flex: 0;
    -webkit-flex: 0;
       -moz-box-flex: 0;
        -ms-flex: 0;
            flex: 0;
  }
}

@media (min-width: 1025px) {
  .news--listing .news__item {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin: 0 0 2.7em;
  }
}

.news--listing .news__image {
  margin: 0 0 1.4rem;
}

@media (min-width: 700px) {
  .news--listing .news__image {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: 40%;
        -ms-flex-preferred-size: 40%;
            flex-basis: 40%;
    margin: 0 1.2em 0 0;
  }
}

@media (min-width: 1025px) {
  .news--listing .news__image {
    margin: 0 1.8em 0 0;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 40.5%;
       -moz-box-flex: 1;
        -ms-flex: 1 0 40.5%;
            flex: 1 0 40.5%;
  }
}

.news--listing .news__image img {
  width: 100%;
}

@media (min-width: 700px) {
  .news--listing .news__body {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 1;
        -ms-flex-negative: 1;
            flex-shrink: 1;
  }
}

@media (min-width: 1025px) {
  .news--listing .news__body {
    margin: -0.58em 0 0;
  }
}

.news--listing .news__title {
  margin: 0 0 1.15rem;
}

@media (min-width: 1025px) {
  .news--listing .news__title {
    margin: 0 0 0.9rem;
  }
}

.news--listing .news__title h2 {
  font-family: urw-din, sans-serif;
  letter-spacing: normal;
  text-transform: none;
  margin: 0;
  font-size: 1.5rem;
}

.news--listing .news__title h2 a {
  font-weight: 600;
}

@media (min-width: 700px) {
  .news--listing .news__title h2 {
    font-size: 1.39rem;
  }
}

@media (min-width: 1025px) {
  .news--listing .news__title h2 {
    font-size: 1.66rem;
    margin: 0 0 0.5em;
  }
}

.news--listing .news__date {
  margin: 0 0 0.8rem;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.4;
}

@media (min-width: 700px) {
  .news--listing .news__date {
    font-size: 1rem;
    margin: 0 0 0.7rem;
  }
}

@media (min-width: 1025px) {
  .news--listing .news__date {
    margin: 0 0 0.6em;
  }
}

.news--listing .news__pagination {
  margin-top: -7px;
}

/**
 * @file
 * Program
 *
 * Contains styles for programs and program view modes.
 */
@media screen and (min-width: 1025px) {
  #program-list {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
  }
}

@media (min-width: 1025px) {
  .program-finder {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    max-width: 1900px;
    padding: 0.3em 50px 0;
    margin: 0 auto;
  }
}

.program__filters__open {
  position: relative;
  font-family: urw-din, sans-serif;
  font-weight: 700;
  width: 100%;
  background-color: #F6D16F;
  border: 0;
  padding: 1.7em 1.4em;
  font-size: 0.94em;
  text-align: left;
  margin-bottom: 1.0em;
}

.program__filters__open:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1.4em;
  width: 4px;
  height: 4px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  -webkit-transform: translateY(-50%) rotate(135deg);
      -ms-transform: translateY(-50%) rotate(135deg);
          transform: translateY(-50%) rotate(135deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

@media (min-width: 1025px) {
  .program__filters__open {
    display: none;
  }
}

.program__filters__open[aria-expanded="true"]:after {
  -webkit-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

.program__filters__dropdown {
  display: none;
  padding: 1.6rem 1rem;
  margin: 0 -15px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
}

@media screen and (min-width: 700px) {
  .program__filters__dropdown {
    margin: 0 -50px;
  }
}

@media (min-width: 1025px) {
  .program__filters__dropdown {
    position: relative;
    display: block;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 24.3%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 24.3%;
            flex: 0 0 24.3%;
    margin: 0.95em 40px 0 0;
    padding: 0.1em 0 3.7em 0;
    border-right: 1px solid #979797;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

@media screen and (min-width: 1025px) {
  .program__filters__dropdown > .program--list__sort {
    display: none;
  }
}

.program__filters__fieldset {
  border: 0;
  padding: 0;
  margin-bottom: 1.7rem;
}

.program__filters__fieldset legend {
  font-size: 0.95em;
  font-weight: 700;
  margin-bottom: 0.8em;
}

@media screen and (min-width: 1025px) {
  .program__filters__fieldset legend {
    margin-bottom: 0.6em;
  }
}

.program__filters__field {
  padding: 0 0 0 25px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 1025px) {
  .program__filters__field {
    padding: 4px 0 0 31px;
  }
}

.program__filters__field:not(:last-of-type) {
  margin-bottom: 0.55em;
}

@media (min-width: 1025px) {
  .program__filters__field:not(:last-of-type) {
    margin-bottom: 0.45em;
  }
}

.program__filters__field label {
  font-size: 0.94em;
}

@media screen and (min-width: 1025px) {
  .program__filters__field label {
    font-size: 0.84em;
  }
}

.program__filters__field label:before {
  content: "";
  position: absolute;
  left: -4px;
  top: 5px;
  width: 16px;
  height: 16px;
  border-radius: 100px;
  border: 1px solid #182E44;
  display: inline-block;
  vertical-align: middle;
}

@media (min-width: 1025px) {
  .program__filters__field label:before {
    top: 7px;
    width: 18px;
    height: 18px;
  }
}

.program__filters__field input {
  position: absolute;
  left: -7px;
  top: 2px;
  width: 24px;
  height: 24px;
  border-radius: 100px;
  background: transparent;
}

@media (min-width: 1025px) {
  .program__filters__field input {
    left: -7px;
    top: 4px;
    width: 26px;
    height: 26px;
  }
}

.program__filters__field input:focus {
  outline: none;
  border: 2px solid #182E44;
}

.program__filters__field input::-ms-check {
  display: none;
}

.program__filters__field input[type="radio"]:checked + label:before {
  background-color: #182E44;
}

.program__filters__field input[type="radio"]:checked + label:after {
  content: "";
  width: 6px;
  height: 6px;
  background: #F6D16F;
  position: absolute;
  left: 2px;
  top: 11px;
  border-radius: 100px;
}

@media (min-width: 1025px) {
  .program__filters__field input[type="radio"]:checked + label:after {
    top: 14px;
    left: 3px;
  }
}

.program--list {
  margin-top: 0.5rem;
}

@media screen and (min-width: 1025px) {
  .program--list {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 70%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 70%;
            flex: 0 0 70%;
  }
}

.program--list__sort, .program--list__sort--desktop {
  margin-bottom: 2.2em;
}

.program--list__sort label, .program--list__sort--desktop label {
  font-family: urw-din, sans-serif;
  font-size: 1.06em;
  font-weight: 600;
  margin-right: 0.8em;
}

@media screen and (min-width: 1025px) {
  .program--list__sort label, .program--list__sort--desktop label {
    font-size: 1.0em;
    margin-right: 0.6em;
  }
}

.program--list__sort .select, .program--list__sort--desktop .select {
  position: relative;
  display: inline-block;
  background-color: #F6D16F;
}

.program--list__sort .select:before, .program--list__sort--desktop .select:before {
  content: '';
  position: absolute;
  top: 73%;
  width: calc(100% - 40px);
  left: 18px;
  height: 1px;
  background-color: #000000;
}

.program--list__sort .select:after, .program--list__sort--desktop .select:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1.4em;
  width: 4px;
  height: 4px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  -webkit-transform: translateY(-50%) rotate(135deg);
      -ms-transform: translateY(-50%) rotate(135deg);
          transform: translateY(-50%) rotate(135deg);
}

.program--list__sort #sort-by,
.program--list__sort #sort-by-desktop, .program--list__sort--desktop #sort-by,
.program--list__sort--desktop #sort-by-desktop {
  font-family: urw-din, sans-serif;
  padding: 1.65em 1.2em;
  border: 0;
  font-size: 0.9em;
  width: 193px;
  background-color: transparent;
}

@media screen and (min-width: 700px) {
  .program--list__sort #sort-by,
  .program--list__sort #sort-by-desktop, .program--list__sort--desktop #sort-by,
  .program--list__sort--desktop #sort-by-desktop {
    width: 194px;
    font-size: 0.8em;
  }
}

.program--list__sort--desktop {
  float: right;
}

@media screen and (max-width: 1024px) {
  .program--list__sort--desktop {
    display: none;
  }
}

.program--list__items {
  padding: 0;
  margin: 0;
}

.program--list__item {
  margin-bottom: 16px;
  list-style: none;
}

@media screen and (min-width: 1025px) {
  .program--list__item {
    margin-bottom: 18px;
  }
}

.program--list__item h3 {
  font-size: 1.35em;
  margin-bottom: 0;
}

@media screen and (min-width: 1025px) {
  .program--list__item h3 {
    font-size: 1.36em;
  }
}

.program--list h2 {
  margin: 0 0 0.4em;
}

@media screen and (min-width: 1025px) {
  .program--list h2 {
    margin: 0 0 0.3em;
  }
}

.program--list__block {
  margin-bottom: 2.5rem;
}

@media screen and (min-width: 1025px) {
  .program--list__block {
    margin-bottom: 2.7em;
  }
}

@media (min-width: 1025px) {
  .program--full .wysiwyg h2 {
    margin-top: 50px;
  }
}

@media (min-width: 1025px) {
  .program--full .wysiwyg h2 + h3 {
    margin-bottom: 0.3rem;
    margin-top: 1.6rem;
  }
}

.program--full .wysiwyg .cta--primary {
  margin: 0 0 2.4rem;
}

@media (min-width: 1025px) {
  .program--full .img-inline--full {
    margin: 54px 0 123px -116px;
  }
}

/**
 * @file
 * Calendar
 *
 * Contains styles for the Calendar Detail Page
 */
@media (min-width: 1025px) {
  .calendar-detail .hero__inner {
    padding-top: 14.2%;
    padding-bottom: 22px;
  }
}

.calendar-detail .hero__title {
  margin-bottom: 0.4rem;
  font-family: urw-din, sans-serif;
  font-size: 1.875rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

@media (min-width: 1025px) {
  .calendar-detail .hero__title {
    margin-bottom: 0.7rem;
    padding: 0 190px 0 20px;
    font-size: 2.23rem;
    line-height: 1.1;
  }
}

.calendar-detail.js-active .calendar-detail__date:before {
  width: 100vw;
}

.calendar-detail__date {
  position: relative;
  display: inline-block;
  background-color: #F6D16F;
  font-size: 1rem;
  color: #182E44;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  padding: 4px 14px;
  margin: 0 0 0.6em;
}

.calendar-detail__date:before {
  display: block;
  position: absolute;
  width: 0;
  height: 1px;
  top: 50%;
  border-bottom: 2px dotted #fff;
  left: -100vw;
  -webkit-transition: width 0.3s 0.2s ease;
  -o-transition: width 0.3s 0.2s ease;
  transition: width 0.3s 0.2s ease;
  content: '';
}

@media (min-width: 1025px) {
  .calendar-detail__date {
    padding: 8px 28px;
    margin: 0 0 0.8em;
    font-size: 1.38rem;
  }
}

.calendar-detail__data {
  color: #fff;
  font-weight: 600;
}

@media (min-width: 1025px) {
  .calendar-detail__data {
    font-size: 1.27rem;
  }
}

.calendar-detail__time, .calendar-detail__location {
  display: inline-block;
}

.calendar-detail__time {
  margin-right: 1rem;
}

.calendar-detail__location {
  font-style: italic;
}

.calendar-detail__wrapper {
  margin: 2rem 0 3.6rem;
}

@media (min-width: 700px) {
  .calendar-detail__wrapper {
    margin: 2rem 0 0;
  }
}

@media (min-width: 1025px) {
  .calendar-detail__wrapper {
    margin: 3.3rem 0 0;
  }
}

.calendar-detail__wrapper > div {
  margin-bottom: 1.6rem;
  line-height: 1.66;
}

.calendar-detail__contact, .calendar-detail__tags, .calendar-detail__save {
  font-weight: 600;
}

.calendar-detail__contact {
  font-style: normal;
  padding: 0 0 1.7rem;
  border-bottom: 1px solid #182E44;
}

.calendar-detail__prefooter {
  margin: 1.8rem 0 0;
}

@media (min-width: 1025px) {
  .calendar-detail__prefooter {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
       -moz-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 1.8rem 0 1.1rem;
  }
}

.calendar-detail__save {
  margin-bottom: 0.6rem;
}

@media (min-width: 700px) {
  .calendar-detail__save {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
       -moz-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: 39%;
        -ms-flex-preferred-size: 39%;
            flex-basis: 39%;
  }
}

.calendar-detail__save-label {
  margin: 0.15rem 0 0.8rem;
}

.calendar-detail__save .icon {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  margin-right: 0.7rem;
}

.calendar-detail__save .icon:before, .calendar-detail__save .icon:after {
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  content: '';
}

.calendar-detail__save .icon:before {
  opacity: 0;
}

.calendar-detail__save .icon:after {
  opacity: 1;
}

.calendar-detail__save .icon:hover:after {
  opacity: 0;
}

.calendar-detail__save .icon:hover:before {
  opacity: 1;
}

.calendar-detail__save .icon span {
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

.calendar-detail__save .icon--ical:after {
  background-image: url(../assets/icons/save-mac.svg);
}

.calendar-detail__save .icon--ical:before {
  background-image: url(../assets/icons/save-mac-rd.svg);
}

.calendar-detail__save .icon--google:after {
  background-image: url(../assets/icons/save-google.svg);
}

.calendar-detail__save .icon--google:before {
  background-image: url(../assets/icons/save-google-rd.svg);
}

.calendar-detail__save .icon--windows:after {
  background-image: url(../assets/icons/save-windows.svg);
}

.calendar-detail__save .icon--windows:before {
  background-image: url(../assets/icons/save-windows-rd.svg);
}

.calendar-detail__save .icon--yahoo:after {
  background-image: url(../assets/icons/save-yahoo.svg);
}

.calendar-detail__save .icon--yahoo:before {
  background-image: url(../assets/icons/save-yahoo-rd.svg);
}

.calendar-detail__name {
  font-weight: 400;
}

.calendar-detail__email, .calendar-detail__phone {
  display: block;
}

.calendar-detail__phone {
  font-weight: 400;
  color: #000000;
}

.calendar-detail__tags {
  margin: 1rem 0 0;
}

@media (min-width: 1025px) {
  .calendar-detail__tags {
    margin: 0;
  }
}

.calendar-detail__tags .cta--secondary {
  margin-right: 0.7rem;
  margin-bottom: 0.6rem;
}

.calendar-detail__tags-label {
  margin: 0.15rem 0 0.8rem;
}

.calendar-detail__body:after {
  display: table;
  content: '';
  clear: both;
}

.calendar-detail__body figure.align-right {
  margin: 2rem -15px;
}

@media (min-width: 700px) {
  .calendar-detail__body figure.align-right {
    float: right;
    margin: 0 0 2rem 2rem;
  }
}

.calendar-detail__body figure.align-right img {
  width: 100%;
}

.calendar-detail__month {
  text-transform: uppercase;
}

/**
 * @file
 * Events
 *
 * Contains styles for Event list.
 */
.event-list__items {
  padding: 0;
  list-style: none;
}

.event-list__item {
  margin: 0 0 2rem;
}

.event-list__date {
  width: 80px;
  height: 80px;
  border: 1px solid;
  float: left;
  margin-right: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.event-list__data {
  overflow: hidden;
}

.event-list__time {
  font-weight: 700;
}

.event-list__title {
  margin-top: 0;
}

.event-list__location {
  font-style: italic;
}

/**
 * @file
 * Calendar List
 *
 * Contains styles for the Calendar List
 */
.calendar {
  margin-bottom: 10px;
}

@media (min-width: 1025px) {
  .calendar {
    margin-bottom: 0;
  }
}

.calendar__expand-filters {
  margin: 0 0 1em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #F6D16F;
  padding: 24px 21px;
  border: none;
  width: 100%;
  max-width: 290px;
  text-align: left;
}

@media (min-width: 1025px) {
  .calendar__expand-filters {
    display: none;
  }
}

.calendar__expand-filters[aria-expanded="true"] span:after {
  -webkit-transform: rotate(-130deg);
      -ms-transform: rotate(-130deg);
          transform: rotate(-130deg);
}

.calendar__expand-filters span {
  position: relative;
  display: block;
  font-weight: 700;
  font-size: 0.937rem;
}

.calendar__expand-filters span:after {
  position: absolute;
  display: block;
  top: calc(50% - 4px);
  right: 0;
  width: 3px;
  height: 3px;
  border-width: 0 2px 2px 0;
  border-style: solid;
  border-color: #000000;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  content: '';
}

.calendar__wrapper {
  padding: 24px 0 0;
}

@media (min-width: 1025px) {
  .calendar__wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    padding: 20px 50px 0;
  }
}

@media (min-width: 1201px) {
  .calendar__wrapper {
    max-width: 1080px;
    margin-left: -100px;
    margin-right: -100px;
    left: 0;
  }
}

.calendar__right-col {
  margin: 0 0 0.5em;
}

@media (min-width: 1025px) {
  .calendar__right-col {
    margin: 0 0 0.5em 5em;
  }
}

.calendar__pagination__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding: 0;
}

.calendar__pagination__list li:after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1px;
  height: 30px;
  background: #182E44;
  margin: -0.3rem 0.5rem 0.1rem;
}

.calendar__pagination__list li:last-child:after {
  content: none;
}

.calendar__pagination__list .active a {
  font-weight: 600;
  color: #BA2319;
}

.calendar__pagination__list a {
  color: #000000;
  font-weight: 400;
  font-size: 1.125rem;
}

@media (min-width: 1025px) {
  .calendar__pagination__list a {
    font-size: 1rem;
  }
}

.calendar__pagination__list a:hover {
  color: #BA2319;
}

.calendar__pagination {
  margin-bottom: 2.7rem;
}

@media (min-width: 1025px) {
  .calendar__pagination {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.calendar__pagination__date {
  display: inline-block;
  position: relative;
  font-size: 1.75rem;
  font-weight: 400;
  padding: 0 23px;
}

@media (min-width: 1025px) {
  .calendar__pagination__date {
    font-size: 2rem;
    padding: 0 29px;
    margin: 0 1.6em 0 0;
  }
}

.calendar__pagination__date .icon-arrow-left,
.calendar__pagination__date .icon-arrow-right {
  position: absolute;
  top: 0;
  width: 20px;
  height: 100%;
  left: -5px;
}

.calendar__pagination__date .icon-arrow-left:after,
.calendar__pagination__date .icon-arrow-right:after {
  position: absolute;
  display: block;
  top: 50%;
  left: 8px;
  width: 6px;
  height: 6px;
  border-width: 0 0 1px 1px;
  border-style: solid;
  border-color: #182E44;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  content: '';
}

.calendar__pagination__date .icon-arrow-right {
  right: -9px;
  left: auto;
}

@media (min-width: 1025px) {
  .calendar__pagination__date .icon-arrow-right {
    right: -7px;
  }
}

.calendar__pagination__date .icon-arrow-right:after {
  -webkit-transform: rotate(-130deg);
      -ms-transform: rotate(-130deg);
          transform: rotate(-130deg);
  left: 5px;
}

.calendar__events-list {
  position: relative;
}

.calendar__events-list:after {
  display: block;
  position: absolute;
  height: 0;
  width: 2px;
  left: 10px;
  top: 0;
  border-left: 2px dotted #182E44;
  opacity: 0;
  -webkit-transition: height 0.5s ease;
  -o-transition: height 0.5s ease;
  transition: height 0.5s ease;
  z-index: -1;
  content: '';
}

@media (min-width: 1025px) {
  .calendar__events-list:after {
    left: 69px;
  }
}

.calendar__events-list.js-active:after {
  opacity: 1;
  -webkit-animation: drawDown 300ms linear forwards 0ms;
          animation: drawDown 300ms linear forwards 0ms;
}

@media (min-width: 1025px) {
  .calendar__event {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.calendar__event:nth-child(2) .calendar__event__date {
  background-color: #99B4C9;
}

.calendar__event:nth-child(3) .calendar__event__date {
  background-color: #182E44;
  color: #fff;
}

.calendar__event:last-child {
  background: #fff;
}

.calendar__event__date {
  text-align: center;
  width: 89px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #F6D16F;
  font-size: 1rem;
  color: #182E44;
  font-weight: 700;
  text-transform: uppercase;
}

@media (min-width: 700px) {
  .calendar__event__date {
    width: 139px;
    font-size: 1.38rem;
  }
}

.calendar__date {
  padding: 4px 0;
}

@media (min-width: 700px) {
  .calendar__date {
    padding: 8px 0;
  }
}

.calendar__event__text {
  margin: 0 0 0 10px;
  padding: 10px 12px 39px;
}

@media (min-width: 700px) {
  .calendar__event__text {
    padding: 10px 20px 39px;
  }
}

@media (min-width: 1025px) {
  .calendar__event__text {
    padding: 4px 20px 39px;
  }
}

.calendar__event__text h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  text-transform: none;
  letter-spacing: normal;
}

@media (min-width: 700px) {
  .calendar__event__text h2 {
    margin-bottom: 0.6rem;
  }
}

.calendar__event__text h2 .cta--link {
  font-size: 1rem;
  font-weight: 700;
}

@media (min-width: 700px) {
  .calendar__event__text h2 .cta--link {
    font-size: 1.39rem;
  }
}

.calendar__event__text h2 .cta--link .arrow {
  width: 27px;
  -webkit-transition: right 0.3s ease;
  -o-transition: right 0.3s ease;
  transition: right 0.3s ease;
}

@media (min-width: 700px) {
  .calendar__event__text h2 .cta--link .arrow {
    width: 44px;
  }
}

.calendar__event__text h2 .cta--link .last-word {
  padding-right: 37px;
}

@media (min-width: 700px) {
  .calendar__event__text h2 .cta--link .last-word {
    padding-right: 60px;
  }
}

.calendar__event__text h2 .cta--link:after {
  content: none;
}

.calendar__event__text h2 .cta--link:hover .arrow {
  right: -12px;
}

.calendar__event__time, .calendar__event__location {
  display: inline;
  font-size: 0.94rem;
}

@media (min-width: 700px) {
  .calendar__event__time, .calendar__event__location {
    display: block;
    font-size: 1rem;
  }
}

.calendar__event__time {
  padding-right: 5px;
}

.calendar__category-dates {
  display: none;
  margin: 0 -20px 25px;
  padding: 25px 20px;
  -webkit-box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.16);
          box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.16);
}

@media (min-width: 700px) {
  .calendar__category-dates {
    margin: 0 -70px 25px;
    padding: 25px 70px;
  }
}

@media (min-width: 1025px) {
  .calendar__category-dates {
    display: block !important;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin: 0;
    padding: 14px 0;
  }
}

.calendar .datepicker-holder {
  width: 284px;
}

.calendar .mini-cal {
  margin: 0 0 2rem;
}

.calendar .mini-cal__header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 2.1rem;
  color: #182E44;
}

@media (min-width: 1025px) {
  .calendar .mini-cal__header {
    margin: 0 0 1.8rem;
  }
}

.calendar .mini-cal__month {
  font-size: 1.25rem;
  font-weight: 700;
  width: 100%;
  text-align: center;
}

@media (min-width: 700px) {
  .calendar .mini-cal__month {
    font-size: 1.11rem;
    line-height: 2;
  }
}

.calendar .mini-cal__dates {
  border-spacing: 0;
  width: 100%;
  margin-left: 4px;
}

@media (min-width: 1025px) {
  .calendar .mini-cal__dates {
    margin-left: -4px;
  }
}

.calendar .mini-cal__dates tr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 0.4rem;
}

@media (min-width: 1025px) {
  .calendar .mini-cal__dates tr {
    margin: 0 0 0.41rem;
  }
}

.calendar .mini-cal__dates tr:nth-child(1) {
  margin: 0 0 0.5rem;
}

@media (min-width: 1025px) {
  .calendar .mini-cal__dates tr:nth-child(1) {
    margin: 0 0 0.35rem;
  }
}

.calendar .mini-cal__dates th,
.calendar .mini-cal__dates td {
  text-align: center;
  color: #182E44;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: inline-block;
}

.calendar .mini-cal__dates th {
  font-size: 0.625rem;
  font-weight: 400;
  text-transform: uppercase;
}

@media (min-width: 1025px) {
  .calendar .mini-cal__dates th {
    font-size: 0.55rem;
  }
}

.calendar .mini-cal__dates td {
  font-size: 1.125rem;
  padding: 0.24rem 0;
}

@media (min-width: 1025px) {
  .calendar .mini-cal__dates td {
    padding: 0.12rem 0;
  }
}

.calendar .mini-cal__dates a {
  display: block;
  width: 100%;
  height: 100%;
}

.calendar .mini-cal .current {
  border: 1px solid #182E44;
}

.calendar .mini-cal .current.events {
  position: relative;
  background: #182E44;
}

.calendar .mini-cal .current.events:after {
  position: absolute;
  display: block;
  pointer-events: none;
  top: 0;
  left: 0;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border: 1px solid #fff;
  content: '';
}

.calendar .mini-cal .events {
  background: #BA2319;
}

.calendar .mini-cal .events:hover {
  background: #182E44;
}

.calendar .mini-cal .events a {
  color: #fff;
  font-weight: 400;
}

.calendar .mini-cal .icon-arrow-left,
.calendar .mini-cal .icon-arrow-right {
  position: relative;
  width: 63px;
}

.calendar .mini-cal .icon-arrow-left:after,
.calendar .mini-cal .icon-arrow-right:after {
  position: absolute;
  display: block;
  top: calc(50% - 7px);
  left: 28px;
  background: url("../assets/icons/arrow-red-lft.svg") no-repeat center center;
  background-size: contain;
  width: 100%;
  height: 14px;
  border: 0;
  -webkit-transition: left 0.3s ease;
  -o-transition: left 0.3s ease;
  transition: left 0.3s ease;
  content: '';
}

@media (min-width: 1025px) {
  .calendar .mini-cal .icon-arrow-left:after,
  .calendar .mini-cal .icon-arrow-right:after {
    left: 6px;
  }
}

.calendar .mini-cal .icon-arrow-left:hover:after,
.calendar .mini-cal .icon-arrow-right:hover:after {
  left: 18px;
}

@media (min-width: 1025px) {
  .calendar .mini-cal .icon-arrow-left:hover:after,
  .calendar .mini-cal .icon-arrow-right:hover:after {
    left: -4px;
  }
}

.calendar .mini-cal .icon-arrow-right:after {
  background: url("../assets/icons/arrow-red.svg") no-repeat center center;
  left: -13px;
}

.calendar .mini-cal .icon-arrow-right:hover:after {
  left: -7px;
}

.calendar .category-calendar {
  padding: 12px 0 0 36px;
}

@media (min-width: 1025px) {
  .calendar .category-calendar {
    padding: 7px 0 0 24px;
  }
}

.calendar .category__drop h2 {
  font-size: 1.125rem;
  text-transform: none;
  color: #000000;
  letter-spacing: normal;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  margin: 0;
}

@media (min-width: 1025px) {
  .calendar .category__drop h2 {
    font-size: 1rem;
  }
}

.calendar .category__drop form {
  margin-top: 0.7rem;
  margin-bottom: 0;
}

.calendar .category__drop form .form__item {
  margin-bottom: 0;
}

@media (min-width: 1025px) {
  .calendar .category__drop form .form__checkbox {
    margin: 0 0 0.2em -10px;
  }
}

.calendar .category__drop form .form__checkbox input[type="checkbox"] {
  display: block;
  top: 3px;
  width: 25px;
  height: 25px;
  left: 3px;
}

@media (min-width: 1025px) {
  .calendar .category__drop form .form__checkbox input[type="checkbox"] {
    left: 7px;
  }
}

.calendar .category__drop fieldset {
  border: 0;
  padding: 0;
}

.calendar .category__drop .form__checkbox {
  margin: 0 0 0.7em -10px;
  padding-left: 10px;
}

@media screen and (min-width: 1025px) {
  #gallery-list {
    width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    margin-top: 8.0em;
  }
}

.gallery-filters {
  margin-top: -1.1em;
  margin-bottom: 1.3em;
}

@media screen and (min-width: 700px) {
  .gallery-filters {
    margin-bottom: 3em;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-filters {
    margin-bottom: 2.3em;
  }
}

.gallery-filters__inner {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0s;
  transition: opacity 0.3s ease, visibility 0s ease 0s;
}

@media screen and (min-width: 700px) {
  .gallery-filters__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-filters__inner {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
       -moz-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.gallery-filters__wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 16px;
}

@media screen and (min-width: 700px) {
  .gallery-filters__wrapper {
    margin-left: 0;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 88%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 88%;
            flex: 0 0 88%;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-filters__wrapper {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 51%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 51%;
            flex: 0 0 51%;
  }
}

.gallery-filters__select {
  position: relative;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
     -moz-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%;
}

.gallery-filters__select:before {
  content: '';
  position: absolute;
  left: 1.1em;
  bottom: 16px;
  width: calc(100% - 2.2em);
  height: 1px;
  background-color: #000000;
}

@media screen and (min-width: 700px) {
  .gallery-filters__select:before {
    width: calc(100% - 2.6em);
    bottom: 19px;
    left: 1.3em;
  }
}

.gallery-filters__select:after {
  content: '';
  position: absolute;
  right: 1.1em;
  bottom: 29px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media screen and (min-width: 700px) {
  .gallery-filters__select:after {
    right: 1.6em;
    bottom: 34px;
  }
}

.gallery-filters__select:nth-child(1) {
  background-color: #F6D16F;
}

.gallery-filters__select:nth-child(2) {
  background-color: #99B4C9;
}

.gallery-filters__fieldset {
  width: 100%;
  font-family: urw-din, sans-serif;
  font-size: 0.85em;
  padding: 1.6em 1.1em;
  border: 0;
  background: transparent;
}

@media screen and (min-width: 700px) {
  .gallery-filters__fieldset {
    padding: 1.8em 1.3em;
    font-size: 0.919em;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-filters__fieldset {
    padding: 1.7em 1.3em;
  }
}

@media screen and (max-width: 699px) {
  .gallery-filters strong {
    display: block;
    margin-bottom: 0.6em;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-filters strong {
    margin-right: 14px;
  }
}

.gallery-filters.js-fixed .gallery-filters__inner {
  position: fixed;
  top: 43px;
  padding-top: 10px;
  left: 15px;
  z-index: 2;
  width: calc(100% - 30px);
}

@media (min-width: 700px) {
  .gallery-filters.js-fixed .gallery-filters__inner {
    top: 42px;
  }
}

@media (min-width: 1025px) {
  .gallery-filters.js-fixed .gallery-filters__inner {
    padding-top: 0;
    top: 65px;
  }
}

.gallery-filters.js-fixed .gallery-filters__inner:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #fff;
  width: 100vw;
  height: calc(100% + 17px);
  z-index: -1;
}

@media screen and (min-width: 700px) {
  .gallery-filters.js-fixed .gallery-filters__inner:after {
    top: -43px;
    height: calc(100% + 53px);
  }
}

@media (min-width: 1025px) {
  .gallery-filters.js-fixed .gallery-filters__inner:after {
    top: -11px;
    height: calc(100% + 23px);
  }
}

@media screen and (min-width: 700px) {
  .gallery-filters.js-fixed .gallery-filters__inner {
    left: 50px;
    width: calc(100% - 100px);
  }
}

@media screen and (min-width: 1025px) {
  .gallery-filters.js-fixed .gallery-filters__inner {
    left: calc((100vw - 1040px) / 2);
    width: 1040px;
  }
}

.gallery-filters.js-fixed .gallery-filters__content {
  background-color: #fff;
}

.gallery-filters.js-fixed + .gallery-list {
  padding-top: 84px;
}

@media (min-width: 700px) {
  .gallery-filters.js-fixed + .gallery-list {
    padding-top: 70px;
  }
}

.gallery-filters.js-hidden .gallery-filters__inner {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  transition: opacity 0.3s ease, visibility 0s ease 0.3s;
}

.gallery-list {
  position: relative;
  margin-bottom: 2.8em;
}

@media screen and (min-width: 1025px) {
  .gallery-list__inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 50px;
  }
}

.gallery-list__listing .line {
  position: absolute;
  top: 100px;
  left: 25%;
  width: 50%;
  height: calc(100% - 100px + 24px);
  z-index: -1;
}

@media screen and (max-width: 699px) {
  .gallery-list__listing .line {
    display: none;
  }
}

.gallery-list__listing .line span {
  -webkit-transition: width 0.3s ease, height 0.3s ease;
  -o-transition: width 0.3s ease, height 0.3s ease;
  transition: width 0.3s ease, height 0.3s ease;
}

.gallery-list__listing .line span:nth-child(1) {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 2px;
  border-bottom: 2px dotted #000000;
}

.gallery-list__listing .line span:nth-child(2) {
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 0;
  border-right: 2px dotted #000000;
  -webkit-transition-delay: 0.3s;
       -o-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.gallery-list__listing .line span:nth-child(3) {
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  height: 2px;
  border-bottom: 2px dotted #000000;
  -webkit-transition-delay: 0.6s;
       -o-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.gallery-list__listing .line span:nth-child(4) {
  position: absolute;
  top: 50%;
  left: 0;
  width: 2px;
  height: 0;
  border-left: 2px dotted #000000;
  -webkit-transition-delay: 0.9s;
       -o-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.gallery-list__listing .line span:nth-child(5) {
  position: absolute;
  top: 100%;
  left: 0;
  width: 0;
  height: 2px;
  border-bottom: 2px dotted #000000;
  -webkit-transition-delay: 1.2s;
       -o-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.gallery-list__listing .line.js-active span:nth-child(1), .gallery-list__listing .line.js-active span:nth-child(3) {
  width: 100%;
}

.gallery-list__listing .line.js-active span:nth-child(2), .gallery-list__listing .line.js-active span:nth-child(4) {
  height: 50%;
}

.gallery-list__listing .line.js-active span:nth-child(5) {
  width: 50%;
}

.gallery-list__line--mobile {
  position: absolute;
  top: 0;
  left: calc(50% + 1px);
  width: 2px;
  height: 0;
  height: 100%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  border-right: 2px dotted #000000;
  -webkit-transition: height 0.3s ease;
  -o-transition: height 0.3s ease;
  transition: height 0.3s ease;
}

@media screen and (min-width: 700px) {
  .gallery-list__line--mobile {
    display: none;
  }
}

.gallery-list__block {
  margin-bottom: 1.4em;
}

@media screen and (max-width: 699px) {
  .gallery-list__block {
    position: static !important;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
  }
}

@media screen and (min-width: 700px) {
  .gallery-list__block {
    width: calc(50% - 20px);
  }
}

@media screen and (min-width: 1025px) {
  .gallery-list__block {
    width: calc(50% - 32px);
    margin-bottom: 3.0em;
  }
}

.gallery-list__pagination {
  margin-top: 2.5em;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 700px) {
  .gallery-list__pagination {
    margin-top: 0.3em;
  }
}

.gallery-list__pagination button {
  z-index: 1;
  background: #fff;
}

.gallery-list__listing {
  position: relative;
}

@media screen and (max-width: 699px) {
  .gallery-list__listing {
    height: auto !important;
  }
}

.gallery-list__listing:nth-child(2) {
  margin-top: 7.7em;
}

@media screen and (min-width: 1025px) {
  .gallery-list__listing {
    max-width: 1040px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 700px) {
  .gallery-list__listing:after {
    content: '';
    position: absolute;
    top: 0;
    left: 40%;
    width: 2px;
    height: 0;
    border-right: 2px dotted #000000;
    z-index: -1;
    -webkit-transition: height 0.3s ease;
    -o-transition: height 0.3s ease;
    transition: height 0.3s ease;
  }
  .gallery-list__listing:last-of-type .gallery-list__block:after {
    content: none;
  }
}

.gallery-list__listing:not(:first-of-type).js-active:after {
  height: calc(100% - 4em);
}

.gallery-item {
  position: relative;
  background-color: transparent;
  padding: 0;
  border: 0;
  width: 100%;
  max-height: calc(100% / 9);
}

.gallery-item__img {
  position: relative;
  z-index: 0;
}

.gallery-item__img:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(186, 35, 25, 0.6);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.gallery-item__img:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% - 28px);
  height: calc(100% - 28px);
  border: 4px solid #fff;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media screen and (min-width: 700px) {
  .gallery-item__img:after {
    width: calc(100% - 30px);
    height: calc(100% - 30px);
  }
}

@media screen and (min-width: 1025px) {
  .gallery-item__img:after {
    width: calc(100% - 58px);
    height: calc(100% - 58px);
  }
}

.gallery-item__img img {
  width: 100%;
  max-height: calc(100vw);
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 700px) {
  .gallery-item__img img {
    min-height: 215px;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-item__img img {
    min-height: 330px;
    max-height: 650px;
  }
}

.gallery-item__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: 1;
  text-align: left;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 1.3em;
  color: #fff;
}

@media screen and (min-width: 1025px) {
  .gallery-item__content {
    padding-left: 46px;
    padding-right: 46px;
    padding-bottom: 2.6em;
  }
}

.gallery-item__content h2 {
  color: #fff;
  font-size: 1.4em;
  text-transform: unset;
}

@media screen and (min-width: 1025px) {
  .gallery-item__content h2 {
    font-size: 1.56em;
  }
}

.gallery-item__content h3 {
  font-size: 1em;
}

@media screen and (min-width: 1025px) {
  .gallery-item__content h3 {
    font-size: 1.25em;
  }
}

.gallery-item__content *:last-of-type {
  margin-bottom: 0;
}

.gallery-item:hover .gallery-item__content,
.gallery-item:hover .gallery-item__img:before,
.gallery-item:hover .gallery-item__img:after, .gallery-item:focus .gallery-item__content,
.gallery-item:focus .gallery-item__img:before,
.gallery-item:focus .gallery-item__img:after {
  opacity: 1;
}

.gallery-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 500;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  transition: opacity 0.3s ease, visibility 0s ease 0.3s;
  padding-top: 4.7em;
  overflow-y: auto;
}

@media screen and (min-width: 1025px) {
  .gallery-modal {
    padding-top: 5.6em;
  }
}

.gallery-modal[aria-hidden='false'] {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease, visibility 0s ease 0s;
  -o-transition: opacity 0.3s ease, visibility 0s ease 0s;
  transition: opacity 0.3s ease, visibility 0s ease 0s;
}

.gallery-modal__close {
  position: relative;
  display: inline-block;
  font-family: urw-din-condensed, sans-serif;
  text-transform: uppercase;
  color: #182E44;
  padding: 0.8em 1.05em;
  background-color: #fff;
  position: absolute;
  top: 20px;
  right: 15px;
  width: 40px;
  height: 40px;
  background-color: #F6D16F;
  border: 0;
}

.gallery-modal__close:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F6D16F;
  z-index: 0;
}

.gallery-modal__close:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #BA2319;
  z-index: 1;
  -webkit-transition: width 0.3s ease;
  -o-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.gallery-modal__close span {
  position: relative;
  z-index: 2;
}

.gallery-modal__close:hover {
  color: #fff;
}

.gallery-modal__close:hover:before {
  width: 100%;
}

@media screen and (min-width: 1025px) {
  .gallery-modal__close {
    top: 44px;
    right: 30px;
    width: 50px;
    height: 50px;
  }
}

@media (min-width: 1900px) {
  .gallery-modal__close {
    right: calc((100vw - 1900px) / 2);
  }
}

.gallery-modal__close span + span {
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

.gallery-modal__close .close {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.gallery-modal__close .close:before,
.gallery-modal__close .close:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 16px;
  background-color: #000000;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
      -ms-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  z-index: 1;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.gallery-modal__close .close:after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.gallery-modal__close:hover .close:before,
.gallery-modal__close:hover .close:after {
  background-color: #fff;
}

.gallery-modal__slider {
  padding-left: 15px;
  padding-right: 15px;
}

@media screen and (min-width: 700px) {
  .gallery-modal__slider {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-modal__slider {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media (min-width: 1025px) {
  .gallery-modal__slider {
    padding-left: 120px;
    padding-right: 120px;
  }
}

@media (min-width: 1201px) {
  .gallery-modal__slider {
    padding-left: 50px;
    padding-right: 50px;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider {
    position: relative;
    max-width: 1046px;
    margin: 0 auto;
  }
}

.gallery-modal .slider__controls {
  position: absolute;
  top: 20px;
  left: 15px;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider__controls {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    top: 50%;
    left: 50%;
    width: calc(100vw - 65px);
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    max-width: 1900px;
  }
}

.gallery-modal .slider__controls button {
  position: relative;
  border-radius: 20px;
  width: 63px;
  height: 38px;
  border: 2px solid #99B4C9;
  margin-right: 1.21em;
  background-color: #fff;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider__controls button {
    width: 76px;
    height: 42px;
    margin-right: 0;
  }
}

.gallery-modal .slider__controls button:before {
  display: block;
  position: absolute;
  top: -6px;
  left: -6px;
  width: 100%;
  height: 100%;
  padding: 4px;
  border: 2px solid #182E44;
  border-radius: 24px;
  opacity: 0;
  content: '';
}

.gallery-modal .slider__controls button:after {
  content: '';
  position: absolute;
  top: calc((38px / 2) - 6px);
  left: 21.4%;
  width: 36px;
  height: 10px;
  background-image: url("../assets/icons/arrow-blue.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider__controls button:after {
    top: calc((42px / 2) - 8px);
    left: 23%;
    width: 41px;
    height: 14px;
  }
}

.gallery-modal .slider__controls button:focus {
  outline: none;
}

.gallery-modal .slider__controls button:focus:before {
  opacity: 1;
}

.gallery-modal .slider__controls button:not(:last-of-type):after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}

.gallery-modal .slider__controls button span {
  border: 0;
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

.gallery-modal .slider__controls button:hover {
  background-color: #E6E6E6;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider-item {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: -moz-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

.gallery-modal .slider-item__img {
  margin-bottom: 2.2em;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider-item__img {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 67.5%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 67.5%;
            flex: 0 0 67.5%;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider-item__img img {
    width: 100%;
    max-height: 70vh;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider-item__content {
    padding: 3.2em 32px;
  }
}

.gallery-modal .slider-item__author {
  font-family: urw-din, sans-serif;
  font-size: 1.17em;
  text-transform: unset;
  color: #000000;
  margin-bottom: 0.3em;
}

.gallery-modal .slider-item__author-info {
  font-size: 1.24em;
  font-weight: 300;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider-item__author-info {
    font-size: 1.09em;
  }
}

.gallery-modal .slider-item__info {
  padding-top: 1.6em;
  border-top: 2px dotted #000000;
}

@media screen and (min-width: 1025px) {
  .gallery-modal .slider-item__info {
    font-size: 0.8em;
  }
}

.gallery-modal .slick-arrow {
  display: none !important;
}

.gallery-item > * {
  pointer-events: none;
}

/**
 * @file
 * Slick
 *
 * Slick carousel styles.
 */
.slick {
  position: relative;
}

.slick-slide {
  position: relative;
}

.slick-dots {
  list-style: none;
  text-align: center;
  margin: 0;
  padding: 0;
}

.slick-dots li {
  display: inline-block;
}

.slick-dots button {
  position: relative;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border: 0;
  font: 0/0 a;
  text-shadow: none;
  color: transparent;
  background-color: transparent;
  height: 40px;
  width: 40px;
  padding: 0;
}

.slick-dots button:after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  height: 0.5rem;
  width: 0.5rem;
  background: #000000;
  border: 0;
  border-radius: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

li:not(.slick-active) button:after {
  background: rgba(0, 0, 0, 0.5);
}

.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border: 0;
  font: 0/0 a;
  text-shadow: none;
  color: transparent;
  background-color: transparent;
  height: 40px;
  width: 40px;
  padding: 0;
  z-index: 5;
}

.slick-arrow:after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  height: 0.75rem;
  width: 0.75rem;
  background: #000000;
  border: 0;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.slick-arrow.slick-disabled:after {
  background: rgba(0, 0, 0, 0.5);
}

.slick-next {
  right: 0;
}

/*# sourceMappingURL=maps/main.css.map */