@import 'https://fonts.googleapis.com/css2?family=Archivo+Narrow:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap';
@import 'https://use.typekit.net/kwq3gwq.css';
@font-face {
  font-family: 'icomoon';
  src: url("/lucy-share/_fonts/icomoon.eot?cvvgxn");
  src: url("/lucy-share/_fonts/icomoon.eot?cvvgxn#iefix") format("embedded-opentype"), url("/lucy-share/_fonts/icomoon.ttf?cvvgxn") format("truetype"), url("/lucy-share/_fonts/icomoon.woff?cvvgxn") format("woff"), url("/lucy-share/_fonts/icomoon.svg?cvvgxn#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

.icon-prefixes, body.front a.button-link:after, #lucy-page-template-inner a.button-link:after, #page-search .field-wrap:before, #social-grid .instagram a:hover:after, #social-grid .instagram a:active:hover:after, #social-grid .instagram a:visited:hover:after, #footer-social .content .instagram:after, #footer-social .instagram.tablet-only:after, [class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-search:before, #page-search .field-wrap:before {
  content: "\e900" !important; }

.icon-email:before {
  content: "\e901" !important; }

.icon-share:before {
  content: "\e902" !important; }

.icon-heart:before {
  content: "\e903" !important; }

.icon-alert:before {
  content: "\e904" !important; }

.icon-calendar:before {
  content: "\e905" !important; }

.icon-pin:before {
  content: "\e906" !important; }

.icon-cart-full:before {
  content: "\e907" !important; }

.icon-cart-empty:before {
  content: "\e908" !important; }

.icon-phone:before {
  content: "\e909" !important; }

.icon-music:before {
  content: "\e90a" !important; }

.icon-print:before {
  content: "\e90b" !important; }

.icon-gear:before {
  content: "\e90c" !important; }

.icon-video:before {
  content: "\e90d" !important; }

.icon-camera:before {
  content: "\e90e" !important; }

.icon-photo:before {
  content: "\e90f" !important; }

.icon-man:before {
  content: "\e910" !important; }

.icon-woman:before {
  content: "\e911" !important; }

.icon-link:before {
  content: "\e912" !important; }

.icon-attachment:before {
  content: "\e913" !important; }

.icon-check:before {
  content: "\e914" !important; }

.icon-menu:before {
  content: "\e915" !important; }

.icon-list:before {
  content: "\e916" !important; }

.icon-grid-small:before {
  content: "\e917" !important; }

.icon-grid-large:before {
  content: "\e918" !important; }

.icon-close:before {
  content: "\e919" !important; }

.icon-plus:before {
  content: "\e91a" !important; }

.icon-move:before {
  content: "\e91b" !important; }

.icon-expand:before {
  content: "\e91c" !important; }

.icon-expand-corner:before {
  content: "\e91d" !important; }

.icon-play:before {
  content: "\e91e" !important; }

.icon-minus:before {
  content: "\e91f" !important; }

.icon-arrow-right:before {
  content: "\e920" !important; }

.icon-arrow-up:before {
  content: "\e921" !important; }

.icon-arrow-left:before {
  content: "\e922" !important; }

.icon-arrow-down:before {
  content: "\e923" !important; }

.icon-left:before {
  content: "\e924" !important; }

.icon-up:before {
  content: "\e925" !important; }

.icon-right:before {
  content: "\e926" !important; }

.icon-down:before {
  content: "\e927" !important; }

.icon-up-down:before {
  content: "\e928" !important; }

.icon-right-left:before {
  content: "\e929" !important; }

.icon-big-arrow-right:before {
  content: "\e92a" !important; }

.icon-share-this:before {
  content: "\e92b" !important; }

.icon-twitter:before {
  content: "\e92c" !important; }

.icon-facebook:before {
  content: "\e92d" !important; }

.icon-instagram:before {
  content: "\e92e" !important; }

.icon-pinterest:before {
  content: "\e92f" !important; }

.icon-vimeo:before {
  content: "\e930" !important; }

.icon-linkedin:before {
  content: "\e931" !important; }

.icon-dribbble:before {
  content: "\e932" !important; }

.icon-youtube:before {
  content: "\e933" !important; }

.icon-previous:before {
  content: "\e934" !important; }

.icon-next:before {
  content: "\e935" !important; }

.icon-star:before {
  content: "\e936" !important; }

.icon-staggered-menu:before {
  content: "\e937" !important; }

.icon-arrow-left-stroke:before {
  content: "\e938"; }

.icon-arrow-right-stroke:before {
  content: "\e939" !important; }

.icon-design-by-form:before {
  content: "\e93a" !important; }

.icon-news:before {
  content: "\e93b" !important; }

.icon-medium:before {
  content: "\e93c" !important; }

.icon-arrow-up-stroke:before {
  content: "\e93d" !important; }

.icon-arrow-down-stroke:before {
  content: "\e93e" !important; }

.icon-design-by-form-short:before {
  content: "\e93f" !important; }

.icon-download-arrow:before {
  content: "\e940" !important; }

.icon-pencil:before {
  content: "\e941" !important; }

.icon-big-arrow-left:before {
  content: "\e942" !important; }

.icon-pdf:before {
  content: "\e943" !important; }

.icon-arrow-left-stem:before {
  content: "\e944" !important; }

.icon-arrow-right-stem:before {
  content: "\e945" !important; }

.icon-paper-plane:before {
  content: "\e946" !important; }

.icon-globe:before {
  content: "\e947" !important; }

.icon-flag:before {
  content: "\e948" !important; }

.icon-clock:before {
  content: "\e949" !important; }

.icon-cross:before {
  content: "\e94a" !important; }

.icon-home:before {
  content: "\e94b" !important; }

.icon-link-arrow:before {
  content: "\e94c" !important; }

.icon-snapchat:before {
  content: "\e94d" !important; }

.icon-marker:before {
  content: "\e94e" !important; }

.icon-phone-2:before {
  content: "\e94f" !important; }

.icon-small-arrow:before {
  content: "\e950" !important; }

.icon-menu-bold:before {
  content: "\e951" !important; }

.icon-download-page:before {
  content: "\e952" !important; }

.icon-calendar-2:before {
  content: "\e953" !important; }

.icon-flickr:before {
  content: "\e954" !important; }

.icon-customer-service:before {
  content: "\e955" !important; }

.icon-accounting-finance:before {
  content: "\e956"; }

.icon-information-technology:before {
  content: "\e957" !important; }

.icon-human-resources:before {
  content: "\e958" !important; }

.icon-marketing:before {
  content: "\e959" !important; }

.icon-legal:before {
  content: "\e95a" !important; }

.icon-sales:before {
  content: "\e95b" !important; }

.icon-office:before {
  content: "\e95c" !important; }

.icon-office-management:before {
  content: "\e95d" !important; }

.icon-education:before {
  content: "\e960" !important; }

.icon-community-relations:before {
  content: "\e961" !important; }

.icon-medical:before {
  content: "\e95e" !important; }

.icon-materialsparts:before {
  content: "\e95f" !important; }

.icon-hamburger-menu:before {
  content: "\e962" !important; }

.icon-share-arrow-up:before {
  content: "\e963" !important; }

.icon-twitter-square:before {
  content: "\e964" !important; }

.icon-arrow-right-stroke-long:before {
  content: "\e965" !important; }

.icon-trending:before {
  content: "\e966" !important; }

.icon-search-2:before {
  content: "\e967" !important; }

.icon-profile:before {
  content: "\e968" !important; }

.icon-youtube-square:before {
  content: "\e969" !important; }

.icon-star-unfilled:before {
  content: "\e96a" !important; }

.icon-amex:before {
  content: "\e96b" !important; }

.icon-discover:before {
  content: "\e96c" !important; }

.icon-mastercard:before {
  content: "\e96d" !important; }

.icon-visa:before {
  content: "\e96e" !important; }

.icon-shopping-bag:before {
  content: "\e96f" !important; }

.icon-instagram-round:before {
  content: "\e970" !important; }

.icon-facebook-round:before {
  content: "\e971" !important; }

.icon-tumblr-logo:before {
  content: "\e972" !important; }

.icon-media-audio:before {
  content: "\e973" !important; }

.icon-media-document:before {
  content: "\e974" !important; }

.icon-media-image:before {
  content: "\e975" !important; }

.icon-media-spreadsheet:before {
  content: "\e978" !important; }

.icon-media-pdf:before {
  content: "\e979" !important; }

.icon-media-presentation:before {
  content: "\e976" !important; }

.icon-media-video:before {
  content: "\e977" !important; }

.icon-media-link:before {
  content: "\e97a" !important; }

.icon-media-webpage:before {
  content: "\e97b" !important; }

.icon-phone-outline:before {
  content: "\e97c" !important; }

.icon-pin-outline:before {
  content: "\e97d" !important; }

.icon-ticket:before {
  content: "\e97e" !important; }

.icon-calendar-outline:before {
  content: "\e97f" !important; }

.icon-clock-outline:before {
  content: "\e980" !important; }

.icon-cloud-download:before {
  content: "\e981" !important; }

.icon-photo-lense:before {
  content: "\e982" !important; }

.icon-arrow-top-right-stem:before {
  content: "\e983" !important; }

.icon-arrow-top-left-stem:before {
  content: "\e984" !important; }

.icon-media-phone:before {
  content: "\e985" !important; }

.icon-media-request:before {
  content: "\e986" !important; }

.icon-info:before {
  content: "\e987" !important; }

.icon-computer:before {
  content: "\e988" !important; }

.icon-tik-tok:before {
  content: "\e989" !important; }

/* --- Configuration Functions & Mixins --- */
/* --- Declarations --- */
/* --- Grid Sizing --- */
/* --- Grid Mixins --- */
/* --- Transitions --- */
/* --- Other --- */
/* --- Grid Structure --- */
.clearfix {
  *zoom: 1; }

.clearfix:before,
.clearfix:after {
  display: table;
  content: "";
  line-height: 0; }

.clearfix:after {
  clear: both; }

.row {
  margin-left: -20px;
  *zoom: 1; }

.row:before,
.row:after {
  display: table;
  content: "";
  line-height: 0; }

.row:after {
  clear: both; }

[class*="span"] {
  position: relative;
  float: left;
  min-height: 1px; }

[class*="span"].border-left {
  margin-left: 19px;
  border-left: 1px solid #D9DCE0; }

[class*="span"].border-right {
  margin-left: 19px;
  border-right: 1px solid #D9DCE0; }

[class*="span"].right {
  text-align: right; }

/* --- Input Styles --- */
[class*='span'] input[type=text], [class*='span'] input[type=email], [class*='span'] input[type=phone], [class*='span'] input[type=tel], [class*='span'] input[type=password], [class*='span'] textarea, [class*='span'] select, .input-wrap input[type=text], .input-wrap input[type=email], .input-wrap input[type=phone], .input-wrap input[type=tel], .input-wrap input[type=password], .input-wrap textarea, .input-wrap select {
  width: 100% !important;
  margin: 0 0 10px 0 !important; }

/* --- Grid Styles --- */
.span1 {
  width: calc(4.16667% - 20px);
  margin-left: 20px; }

.offset1 {
  margin-left: calc(4.16667% + 20px) !important; }

.inset-l1 {
  padding-left: 4.16667% !important; }

.inset-r1 {
  padding-right: 4.16667% !important; }

.span2 {
  width: calc(8.33333% - 20px);
  margin-left: 20px; }

.offset2 {
  margin-left: calc(8.33333% + 20px) !important; }

.inset-l2 {
  padding-left: 8.33333% !important; }

.inset-r2 {
  padding-right: 8.33333% !important; }

.span3 {
  width: calc(12.5% - 20px);
  margin-left: 20px; }

.offset3 {
  margin-left: calc(12.5% + 20px) !important; }

.inset-l3 {
  padding-left: 12.5% !important; }

.inset-r3 {
  padding-right: 12.5% !important; }

.span4 {
  width: calc(16.66667% - 20px);
  margin-left: 20px; }

.offset4 {
  margin-left: calc(16.66667% + 20px) !important; }

.inset-l4 {
  padding-left: 16.66667% !important; }

.inset-r4 {
  padding-right: 16.66667% !important; }

.span5 {
  width: calc(20.83333% - 20px);
  margin-left: 20px; }

.offset5 {
  margin-left: calc(20.83333% + 20px) !important; }

.inset-l5 {
  padding-left: 20.83333% !important; }

.inset-r5 {
  padding-right: 20.83333% !important; }

.span6 {
  width: calc(25% - 20px);
  margin-left: 20px; }

.offset6 {
  margin-left: calc(25% + 20px) !important; }

.inset-l6 {
  padding-left: 25% !important; }

.inset-r6 {
  padding-right: 25% !important; }

.span7 {
  width: calc(29.16667% - 20px);
  margin-left: 20px; }

.offset7 {
  margin-left: calc(29.16667% + 20px) !important; }

.inset-l7 {
  padding-left: 29.16667% !important; }

.inset-r7 {
  padding-right: 29.16667% !important; }

.span8 {
  width: calc(33.33333% - 20px);
  margin-left: 20px; }

.offset8 {
  margin-left: calc(33.33333% + 20px) !important; }

.inset-l8 {
  padding-left: 33.33333% !important; }

.inset-r8 {
  padding-right: 33.33333% !important; }

.span9 {
  width: calc(37.5% - 20px);
  margin-left: 20px; }

.offset9 {
  margin-left: calc(37.5% + 20px) !important; }

.inset-l9 {
  padding-left: 37.5% !important; }

.inset-r9 {
  padding-right: 37.5% !important; }

.span10 {
  width: calc(41.66667% - 20px);
  margin-left: 20px; }

.offset10 {
  margin-left: calc(41.66667% + 20px) !important; }

.inset-l10 {
  padding-left: 41.66667% !important; }

.inset-r10 {
  padding-right: 41.66667% !important; }

.span11 {
  width: calc(45.83333% - 20px);
  margin-left: 20px; }

.offset11 {
  margin-left: calc(45.83333% + 20px) !important; }

.inset-l11 {
  padding-left: 45.83333% !important; }

.inset-r11 {
  padding-right: 45.83333% !important; }

.span12 {
  width: calc(50% - 20px);
  margin-left: 20px; }

.offset12 {
  margin-left: calc(50% + 20px) !important; }

.inset-l12 {
  padding-left: 50% !important; }

.inset-r12 {
  padding-right: 50% !important; }

.span13 {
  width: calc(54.16667% - 20px);
  margin-left: 20px; }

.offset13 {
  margin-left: calc(54.16667% + 20px) !important; }

.inset-l13 {
  padding-left: 54.16667% !important; }

.inset-r13 {
  padding-right: 54.16667% !important; }

.span14 {
  width: calc(58.33333% - 20px);
  margin-left: 20px; }

.offset14 {
  margin-left: calc(58.33333% + 20px) !important; }

.inset-l14 {
  padding-left: 58.33333% !important; }

.inset-r14 {
  padding-right: 58.33333% !important; }

.span15 {
  width: calc(62.5% - 20px);
  margin-left: 20px; }

.offset15 {
  margin-left: calc(62.5% + 20px) !important; }

.inset-l15 {
  padding-left: 62.5% !important; }

.inset-r15 {
  padding-right: 62.5% !important; }

.span16 {
  width: calc(66.66667% - 20px);
  margin-left: 20px; }

.offset16 {
  margin-left: calc(66.66667% + 20px) !important; }

.inset-l16 {
  padding-left: 66.66667% !important; }

.inset-r16 {
  padding-right: 66.66667% !important; }

.span17 {
  width: calc(70.83333% - 20px);
  margin-left: 20px; }

.offset17 {
  margin-left: calc(70.83333% + 20px) !important; }

.inset-l17 {
  padding-left: 70.83333% !important; }

.inset-r17 {
  padding-right: 70.83333% !important; }

.span18 {
  width: calc(75% - 20px);
  margin-left: 20px; }

.offset18 {
  margin-left: calc(75% + 20px) !important; }

.inset-l18 {
  padding-left: 75% !important; }

.inset-r18 {
  padding-right: 75% !important; }

.span19 {
  width: calc(79.16667% - 20px);
  margin-left: 20px; }

.offset19 {
  margin-left: calc(79.16667% + 20px) !important; }

.inset-l19 {
  padding-left: 79.16667% !important; }

.inset-r19 {
  padding-right: 79.16667% !important; }

.span20 {
  width: calc(83.33333% - 20px);
  margin-left: 20px; }

.offset20 {
  margin-left: calc(83.33333% + 20px) !important; }

.inset-l20 {
  padding-left: 83.33333% !important; }

.inset-r20 {
  padding-right: 83.33333% !important; }

.span21 {
  width: calc(87.5% - 20px);
  margin-left: 20px; }

.offset21 {
  margin-left: calc(87.5% + 20px) !important; }

.inset-l21 {
  padding-left: 87.5% !important; }

.inset-r21 {
  padding-right: 87.5% !important; }

.span22 {
  width: calc(91.66667% - 20px);
  margin-left: 20px; }

.offset22 {
  margin-left: calc(91.66667% + 20px) !important; }

.inset-l22 {
  padding-left: 91.66667% !important; }

.inset-r22 {
  padding-right: 91.66667% !important; }

.span23 {
  width: calc(95.83333% - 20px);
  margin-left: 20px; }

.offset23 {
  margin-left: calc(95.83333% + 20px) !important; }

.inset-l23 {
  padding-left: 95.83333% !important; }

.inset-r23 {
  padding-right: 95.83333% !important; }

.span24 {
  width: calc(100% - 20px);
  margin-left: 20px; }

.offset24 {
  margin-left: calc(100% + 20px) !important; }

.inset-l24 {
  padding-left: 100% !important; }

.inset-r24 {
  padding-right: 100% !important; }

@media only screen and (max-width: 525px) {
  .row {
    margin-left: 0 !important; }
  [class*="span"] {
    width: 100% !important;
    margin-left: 0 !important; }
    [class*='span'].inset-l1 {
      padding-left: calc((100% / 24) * 2) !important; }
    [class*='span'].inset-r1 {
      padding-right: calc((100% / 24) * 2) !important; } }

/* --- Breakpoint Displays --- */
#breakpoints {
  position: fixed;
  z-index: 99999;
  bottom: 0;
  right: 0;
  padding: 5px 10px;
  font-family: Courier, serif;
  font-size: 16px;
  color: #FFF;
  background: #000; }
  #breakpoints .breakpoint {
    display: none; }
  @media only screen and (max-width: 1920px) {
    #breakpoints .breakpoint.desktop-large {
      display: inline-block; }
    #breakpoints .breakpoint.desktop-medium {
      display: none; }
    #breakpoints .breakpoint.desktop {
      display: none; }
    #breakpoints .breakpoint.tablet {
      display: none; }
    #breakpoints .breakpoint.mobile {
      display: none; } }
  @media only screen and (max-width: 1440px) {
    #breakpoints .breakpoint.desktop-large {
      display: none; }
    #breakpoints .breakpoint.desktop-medium {
      display: inline-block; }
    #breakpoints .breakpoint.desktop {
      display: none; }
    #breakpoints .breakpoint.tablet {
      display: none; }
    #breakpoints .breakpoint.mobile {
      display: none; } }
  @media only screen and (max-width: 1125px) {
    #breakpoints .breakpoint.desktop-large {
      display: none; }
    #breakpoints .breakpoint.desktop-medium {
      display: none; }
    #breakpoints .breakpoint.desktop {
      display: inline-block; }
    #breakpoints .breakpoint.tablet {
      display: none; }
    #breakpoints .breakpoint.mobile {
      display: none; } }
  @media only screen and (max-width: 910px) {
    #breakpoints .breakpoint.desktop-large {
      display: none; }
    #breakpoints .breakpoint.desktop-medium {
      display: none; }
    #breakpoints .breakpoint.desktop {
      display: none; }
    #breakpoints .breakpoint.tablet {
      display: inline-block; }
    #breakpoints .breakpoint.mobile {
      display: none; } }
  @media only screen and (max-width: 525px) {
    #breakpoints .breakpoint.desktop-large {
      display: none; }
    #breakpoints .breakpoint.desktop-medium {
      display: none; }
    #breakpoints .breakpoint.desktop {
      display: none; }
    #breakpoints .breakpoint.tablet {
      display: none; }
    #breakpoints .breakpoint.mobile {
      display: inline-block; } }

body.front, #lucy-page-template-inner {
  /* --- Buttons and Links --- */
  /* --- Table Styles --- */ }
  body.front a, body.front a:active, body.front a:visited, #lucy-page-template-inner a, #lucy-page-template-inner a:active, #lucy-page-template-inner a:visited {
    color: #1B2532;
    text-decoration: underline; }
    body.front a:hover, body.front a:active:hover, body.front a:visited:hover, #lucy-page-template-inner a:hover, #lucy-page-template-inner a:active:hover, #lucy-page-template-inner a:visited:hover {
      text-decoration: none; }
  body.front h1, #lucy-page-template-inner h1 {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 4em;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.2em; }
  body.front h2, #lucy-page-template-inner h2 {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 3em;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.15em; }
  body.front h3, #lucy-page-template-inner h3 {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.2em; }
  body.front h4, body.front #lucy-checkout-fields h2, #lucy-checkout-fields body.front h2, #lucy-page-template-inner h4, #lucy-page-template-inner #lucy-checkout-fields h2, #lucy-checkout-fields #lucy-page-template-inner h2 {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-size: 1.55em;
    letter-spacing: 0.01em;
    line-height: 1.35em; }
  body.front h5, #lucy-page-template-inner h5 {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em; }
  body.front h6, #lucy-page-template-inner h6 {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em; }
  body.front .body-small, #lucy-page-template-inner .body-small {
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 0.8em;
    color: #1B2532;
    letter-spacing: 0.00187em;
    line-height: 1.875; }
  body.front blockquote, #lucy-page-template-inner blockquote {
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 1.3em;
    color: #1B2532;
    letter-spacing: 0;
    line-height: 1.85; }
  body.front .intro, #lucy-page-template-inner .intro {
    margin-bottom: 3rem;
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 1.3em;
    color: #1B2532;
    letter-spacing: 0;
    line-height: 1.85; }
  body.front .caption, #lucy-page-template-inner .caption {
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 0.8125em;
    color: #1B2532;
    letter-spacing: 0;
    line-height: 2; }
  body.front button, body.front .overlay-card .bottom .level-filled, .overlay-card .bottom body.front .level-filled, body.front a.button, body.front #sponsorship-levels .level form a.add, #sponsorship-levels .level form body.front a.add, body.front a.button:active, body.front #sponsorship-levels .level form a.add:active, #sponsorship-levels .level form body.front a.add:active, body.front a.button:visited, body.front #sponsorship-levels .level form a.add:visited, #sponsorship-levels .level form body.front a.add:visited, #lucy-page-template-inner button, #lucy-page-template-inner .overlay-card .bottom .level-filled, .overlay-card .bottom #lucy-page-template-inner .level-filled, #lucy-page-template-inner a.button, #lucy-page-template-inner #sponsorship-levels .level form a.add, #sponsorship-levels .level form #lucy-page-template-inner a.add, #lucy-page-template-inner a.button:active, #lucy-page-template-inner #sponsorship-levels .level form a.add:active, #sponsorship-levels .level form #lucy-page-template-inner a.add:active, #lucy-page-template-inner a.button:visited, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited {
    display: inline-block;
    font-family: franklin-gothic-atf, sans-serif;
    font-weight: 500;
    color: #FFFFFF;
    line-height: 63px;
    background-color: #26384E; }
  body.front .sub-header, #lucy-page-template-inner .sub-header {
    margin-bottom: 0.5em;
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 0.6875em;
    font-weight: 500;
    color: #A6192E;
    letter-spacing: 0.1em;
    line-height: 2.2em;
    text-transform: uppercase; }
  body.front .heading, #lucy-page-template-inner .heading {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532; }
  body.front .h1, #lucy-page-template-inner .h1 {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 4em;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.2em; }
  body.front .h2, #lucy-page-template-inner .h2 {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 3em;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.15em; }
  body.front .h3, #lucy-page-template-inner .h3 {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.2em; }
  body.front .h4, #lucy-page-template-inner .h4 {
    font-size: 1.55em;
    letter-spacing: 0.01em;
    line-height: 1.35em; }
  body.front .h5, #lucy-page-template-inner .h5 {
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em; }
  body.front .h6, #lucy-page-template-inner .h6 {
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em; }
  @media only screen and (max-width: 1440px) {
    body.front h1, #lucy-page-template-inner h1 {
      font-size: 4em; } }
  @media only screen and (max-width: 1125px) {
    body.front h1, #lucy-page-template-inner h1 {
      font-size: 7vw; } }
  @media only screen and (max-width: 910px) {
    body.front h1, #lucy-page-template-inner h1 {
      font-size: 9vw; } }
  @media only screen and (max-width: 525px) {
    body.front h1, #lucy-page-template-inner h1 {
      font-size: 12vw; } }
  @media only screen and (max-width: 1440px) {
    body.front h2, #lucy-page-template-inner h2 {
      font-size: 3em; } }
  @media only screen and (max-width: 1125px) {
    body.front h2, #lucy-page-template-inner h2 {
      font-size: 5vw; } }
  @media only screen and (max-width: 910px) {
    body.front h2, #lucy-page-template-inner h2 {
      font-size: 6vw; } }
  @media only screen and (max-width: 525px) {
    body.front h2, #lucy-page-template-inner h2 {
      font-size: 7.5vw; } }
  @media only screen and (max-width: 1440px) {
    body.front h3, #lucy-page-template-inner h3 {
      font-size: 2.5em; } }
  @media only screen and (max-width: 1125px) {
    body.front h3, #lucy-page-template-inner h3 {
      font-size: 3.5vw; } }
  @media only screen and (max-width: 910px) {
    body.front h3, #lucy-page-template-inner h3 {
      font-size: 4.5vw; } }
  @media only screen and (max-width: 525px) {
    body.front h3, #lucy-page-template-inner h3 {
      font-size: 5.5vw; } }
  @media only screen and (max-width: 1440px) {
    body.front h4, body.front #lucy-checkout-fields h2, #lucy-checkout-fields body.front h2, #lucy-page-template-inner h4, #lucy-page-template-inner #lucy-checkout-fields h2, #lucy-checkout-fields #lucy-page-template-inner h2 {
      font-size: 1.5em; } }
  @media only screen and (max-width: 1125px) {
    body.front h4, body.front #lucy-checkout-fields h2, #lucy-checkout-fields body.front h2, #lucy-page-template-inner h4, #lucy-page-template-inner #lucy-checkout-fields h2, #lucy-checkout-fields #lucy-page-template-inner h2 {
      font-size: 2.5vw; } }
  @media only screen and (max-width: 910px) {
    body.front h4, body.front #lucy-checkout-fields h2, #lucy-checkout-fields body.front h2, #lucy-page-template-inner h4, #lucy-page-template-inner #lucy-checkout-fields h2, #lucy-checkout-fields #lucy-page-template-inner h2 {
      font-size: 3.5vw; } }
  @media only screen and (max-width: 525px) {
    body.front h4, body.front #lucy-checkout-fields h2, #lucy-checkout-fields body.front h2, #lucy-page-template-inner h4, #lucy-page-template-inner #lucy-checkout-fields h2, #lucy-checkout-fields #lucy-page-template-inner h2 {
      font-size: 4.5vw; } }
  body.front p, body.front ul, body.front ol, #lucy-page-template-inner p, #lucy-page-template-inner ul, #lucy-page-template-inner ol {
    margin-bottom: 2em;
    color: #1B2532; }
    @media only screen and (max-width: 910px) {
      body.front p, body.front ul, body.front ol, #lucy-page-template-inner p, #lucy-page-template-inner ul, #lucy-page-template-inner ol {
        margin-bottom: 1.3em; } }
  @media only screen and (max-width: 910px) {
    body.front p.intro, #lucy-page-template-inner p.intro {
      margin-bottom: 1.3rem;
      font-size: 1.2em; } }
  @media only screen and (max-width: 525px) {
    body.front p.intro, #lucy-page-template-inner p.intro {
      font-size: 1.1em; } }
  body.front blockquote, #lucy-page-template-inner blockquote {
    position: relative;
    margin-bottom: 1em;
    padding-left: 4em; }
    @media only screen and (max-width: 910px) {
      body.front blockquote, #lucy-page-template-inner blockquote {
        padding-left: 0;
        padding-top: 3em;
        font-size: 1.2em; } }
    @media only screen and (max-width: 525px) {
      body.front blockquote, #lucy-page-template-inner blockquote {
        font-size: 1.1em; } }
    body.front blockquote:before, #lucy-page-template-inner blockquote:before {
      position: absolute;
      top: 10px;
      left: 0;
      width: 70px;
      height: 50px;
      background-image: url(../images/quotation.png);
      background-size: contain;
      background-repeat: no-repeat;
      content: ''; }
      @media only screen and (max-width: 910px) {
        body.front blockquote:before, #lucy-page-template-inner blockquote:before {
          width: 40px;
          height: 30px; } }
  body.front hr, #lucy-page-template-inner hr {
    margin: 3em 0;
    border-top: 1px solid #D9DCE0; }
    @media only screen and (max-width: 910px) {
      body.front hr, #lucy-page-template-inner hr {
        margin: 2em 0; } }
  body.front ul, body.front ol, #lucy-page-template-inner ul, #lucy-page-template-inner ol {
    padding-left: 2em; }
  body.front .text-primary, #lucy-page-template-inner .text-primary {
    color: #A6192E; }
  body.front .bg-primary, #lucy-page-template-inner .bg-primary {
    background-color: #A6192E; }
  body.front .text-secondary, #lucy-page-template-inner .text-secondary {
    color: #8CCDD3; }
  body.front .bg-secondary, #lucy-page-template-inner .bg-secondary {
    background-color: #8CCDD3; }
  body.front .text-dark, #lucy-page-template-inner .text-dark {
    color: #26384E; }
  body.front .bg-dark, #lucy-page-template-inner .bg-dark {
    background-color: #26384E; }
  body.front .text-light, #lucy-page-template-inner .text-light {
    color: #F9F9F9; }
  body.front .bg-light, #lucy-page-template-inner .bg-light {
    background-color: #F9F9F9; }
  body.front .text-error, #lucy-page-template-inner .text-error {
    color: #ED6A5A; }
  body.front .bg-error, #lucy-page-template-inner .bg-error {
    background-color: #ED6A5A; }
  body.front .text-success, #lucy-page-template-inner .text-success {
    color: #1A936F; }
  body.front .bg-success, #lucy-page-template-inner .bg-success {
    background-color: #1A936F; }
  body.front .text-warning, #lucy-page-template-inner .text-warning {
    color: #FFC857; }
  body.front .bg-warning, #lucy-page-template-inner .bg-warning {
    background-color: #FFC857; }
  body.front .text-border, #lucy-page-template-inner .text-border {
    color: #D9DCE0; }
  body.front .bg-border, #lucy-page-template-inner .bg-border {
    background-color: #D9DCE0; }
  body.front .text-white, #lucy-page-template-inner .text-white {
    color: #FFFFFF; }
  body.front .bg-white, #lucy-page-template-inner .bg-white {
    background-color: #FFFFFF; }
  body.front .text-text, #lucy-page-template-inner .text-text {
    color: #1B2532; }
  body.front .bg-text, #lucy-page-template-inner .bg-text {
    background-color: #1B2532; }
  body.front button, body.front .overlay-card .bottom .level-filled, .overlay-card .bottom body.front .level-filled, body.front a.button, body.front #sponsorship-levels .level form a.add, #sponsorship-levels .level form body.front a.add, body.front a.button:active, body.front #sponsorship-levels .level form a.add:active, #sponsorship-levels .level form body.front a.add:active, body.front a.button:visited, body.front #sponsorship-levels .level form a.add:visited, #sponsorship-levels .level form body.front a.add:visited, body.front div.button, body.front #sponsorship-levels .level form div.add, #sponsorship-levels .level form body.front div.add, #lucy-page-template-inner button, #lucy-page-template-inner .overlay-card .bottom .level-filled, .overlay-card .bottom #lucy-page-template-inner .level-filled, #lucy-page-template-inner a.button, #lucy-page-template-inner #sponsorship-levels .level form a.add, #sponsorship-levels .level form #lucy-page-template-inner a.add, #lucy-page-template-inner a.button:active, #lucy-page-template-inner #sponsorship-levels .level form a.add:active, #sponsorship-levels .level form #lucy-page-template-inner a.add:active, #lucy-page-template-inner a.button:visited, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited, #lucy-page-template-inner div.button, #lucy-page-template-inner #sponsorship-levels .level form div.add, #sponsorship-levels .level form #lucy-page-template-inner div.add {
    position: relative;
    display: inline-block;
    height: 61.2px;
    padding: 0 2.5em;
    line-height: 61.2px;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: #FFFFFF !important;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    background: transparent;
    -webkit-appearance: none;
    -moz-osx-font-smoothing: grayscale;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    body.front button span, body.front .overlay-card .bottom .level-filled span, .overlay-card .bottom body.front .level-filled span, body.front a.button span, body.front #sponsorship-levels .level form a.add span, #sponsorship-levels .level form body.front a.add span, body.front a.button:active span, body.front #sponsorship-levels .level form a.add:active span, #sponsorship-levels .level form body.front a.add:active span, body.front a.button:visited span, body.front #sponsorship-levels .level form a.add:visited span, #sponsorship-levels .level form body.front a.add:visited span, body.front div.button span, body.front #sponsorship-levels .level form div.add span, #sponsorship-levels .level form body.front div.add span, #lucy-page-template-inner button span, #lucy-page-template-inner .overlay-card .bottom .level-filled span, .overlay-card .bottom #lucy-page-template-inner .level-filled span, #lucy-page-template-inner a.button span, #lucy-page-template-inner #sponsorship-levels .level form a.add span, #sponsorship-levels .level form #lucy-page-template-inner a.add span, #lucy-page-template-inner a.button:active span, #lucy-page-template-inner #sponsorship-levels .level form a.add:active span, #sponsorship-levels .level form #lucy-page-template-inner a.add:active span, #lucy-page-template-inner a.button:visited span, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited span, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited span, #lucy-page-template-inner div.button span, #lucy-page-template-inner #sponsorship-levels .level form div.add span, #sponsorship-levels .level form #lucy-page-template-inner div.add span {
      position: relative;
      z-index: 1; }
    body.front button .icon-arrow-right-stroke-long, body.front .overlay-card .bottom .level-filled .icon-arrow-right-stroke-long, .overlay-card .bottom body.front .level-filled .icon-arrow-right-stroke-long, body.front a.button .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add .icon-arrow-right-stroke-long, body.front a.button:active .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:active .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:active .icon-arrow-right-stroke-long, body.front a.button:visited .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:visited .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:visited .icon-arrow-right-stroke-long, body.front div.button .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form div.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front div.add .icon-arrow-right-stroke-long, #lucy-page-template-inner button .icon-arrow-right-stroke-long, #lucy-page-template-inner .overlay-card .bottom .level-filled .icon-arrow-right-stroke-long, .overlay-card .bottom #lucy-page-template-inner .level-filled .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:active .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:active .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:active .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:visited .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited .icon-arrow-right-stroke-long, #lucy-page-template-inner div.button .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form div.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner div.add .icon-arrow-right-stroke-long {
      position: absolute;
      top: 50%;
      left: .5em;
      color: #FFFFFF;
      -moz-osx-font-smoothing: grayscale;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased;
      transform: translate(0, -50%);
      perspective: 1000px;
      -moz-transform: translate(0, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -50%);
      -ms-perspective: 1000;
      filter: alpha(opacity=0);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -moz-opacity: 0;
      -khtml-opacity: 0;
      opacity: 0;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    body.front button:after, body.front .overlay-card .bottom .level-filled:after, .overlay-card .bottom body.front .level-filled:after, body.front a.button:after, body.front #sponsorship-levels .level form a.add:after, #sponsorship-levels .level form body.front a.add:after, body.front a.button:active:after, body.front #sponsorship-levels .level form a.add:active:after, #sponsorship-levels .level form body.front a.add:active:after, body.front a.button:visited:after, body.front #sponsorship-levels .level form a.add:visited:after, #sponsorship-levels .level form body.front a.add:visited:after, body.front div.button:after, body.front #sponsorship-levels .level form div.add:after, #sponsorship-levels .level form body.front div.add:after, #lucy-page-template-inner button:after, #lucy-page-template-inner .overlay-card .bottom .level-filled:after, .overlay-card .bottom #lucy-page-template-inner .level-filled:after, #lucy-page-template-inner a.button:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:after, #lucy-page-template-inner a.button:active:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active:after, #lucy-page-template-inner a.button:visited:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited:after, #lucy-page-template-inner div.button:after, #lucy-page-template-inner #sponsorship-levels .level form div.add:after, #sponsorship-levels .level form #lucy-page-template-inner div.add:after {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #26384E;
      content: '';
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    body.front button.small, body.front .overlay-card .bottom .small.level-filled, .overlay-card .bottom body.front .small.level-filled, body.front a.button.small, body.front #sponsorship-levels .level form a.small.add, #sponsorship-levels .level form body.front a.small.add, body.front a.button:active.small, body.front #sponsorship-levels .level form a.add:active.small, #sponsorship-levels .level form body.front a.add:active.small, body.front a.button:visited.small, body.front #sponsorship-levels .level form a.add:visited.small, #sponsorship-levels .level form body.front a.add:visited.small, body.front div.button.small, body.front #sponsorship-levels .level form div.small.add, #sponsorship-levels .level form body.front div.small.add, #lucy-page-template-inner button.small, #lucy-page-template-inner .overlay-card .bottom .small.level-filled, .overlay-card .bottom #lucy-page-template-inner .small.level-filled, #lucy-page-template-inner a.button.small, #lucy-page-template-inner #sponsorship-levels .level form a.small.add, #sponsorship-levels .level form #lucy-page-template-inner a.small.add, #lucy-page-template-inner a.button:active.small, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.small, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.small, #lucy-page-template-inner a.button:visited.small, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.small, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.small, #lucy-page-template-inner div.button.small, #lucy-page-template-inner #sponsorship-levels .level form div.small.add, #sponsorship-levels .level form #lucy-page-template-inner div.small.add {
      height: 49.5px;
      padding: 0 27px;
      line-height: 49.5px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
    body.front button.alt:after, body.front .overlay-card .bottom .alt.level-filled:after, .overlay-card .bottom body.front .alt.level-filled:after, body.front a.button.alt:after, body.front #sponsorship-levels .level form a.alt.add:after, #sponsorship-levels .level form body.front a.alt.add:after, body.front a.button:active.alt:after, body.front #sponsorship-levels .level form a.add:active.alt:after, #sponsorship-levels .level form body.front a.add:active.alt:after, body.front a.button:visited.alt:after, body.front #sponsorship-levels .level form a.add:visited.alt:after, #sponsorship-levels .level form body.front a.add:visited.alt:after, body.front div.button.alt:after, body.front #sponsorship-levels .level form div.alt.add:after, #sponsorship-levels .level form body.front div.alt.add:after, #lucy-page-template-inner button.alt:after, #lucy-page-template-inner .overlay-card .bottom .alt.level-filled:after, .overlay-card .bottom #lucy-page-template-inner .alt.level-filled:after, #lucy-page-template-inner a.button.alt:after, #lucy-page-template-inner #sponsorship-levels .level form a.alt.add:after, #sponsorship-levels .level form #lucy-page-template-inner a.alt.add:after, #lucy-page-template-inner a.button:active.alt:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.alt:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.alt:after, #lucy-page-template-inner a.button:visited.alt:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.alt:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.alt:after, #lucy-page-template-inner div.button.alt:after, #lucy-page-template-inner #sponsorship-levels .level form div.alt.add:after, #sponsorship-levels .level form #lucy-page-template-inner div.alt.add:after {
      background-color: #A6192E; }
    body.front button.alt:hover:after, body.front .overlay-card .bottom .alt.level-filled:hover:after, .overlay-card .bottom body.front .alt.level-filled:hover:after, body.front button.alt.selected:after, body.front .overlay-card .bottom .alt.selected.level-filled:after, .overlay-card .bottom body.front .alt.selected.level-filled:after, body.front button.alt.active:after, body.front .overlay-card .bottom .alt.active.level-filled:after, .overlay-card .bottom body.front .alt.active.level-filled:after, body.front a.button.alt:hover:after, body.front #sponsorship-levels .level form a.alt.add:hover:after, #sponsorship-levels .level form body.front a.alt.add:hover:after, body.front a.button.alt.selected:after, body.front #sponsorship-levels .level form a.alt.selected.add:after, #sponsorship-levels .level form body.front a.alt.selected.add:after, body.front a.button.alt.active:after, body.front #sponsorship-levels .level form a.alt.active.add:after, #sponsorship-levels .level form body.front a.alt.active.add:after, body.front a.button:active.alt:hover:after, body.front #sponsorship-levels .level form a.add:active.alt:hover:after, #sponsorship-levels .level form body.front a.add:active.alt:hover:after, body.front a.button:active.alt.selected:after, body.front #sponsorship-levels .level form a.add:active.alt.selected:after, #sponsorship-levels .level form body.front a.add:active.alt.selected:after, body.front a.button:active.alt.active:after, body.front #sponsorship-levels .level form a.add:active.alt.active:after, #sponsorship-levels .level form body.front a.add:active.alt.active:after, body.front a.button:visited.alt:hover:after, body.front #sponsorship-levels .level form a.add:visited.alt:hover:after, #sponsorship-levels .level form body.front a.add:visited.alt:hover:after, body.front a.button:visited.alt.selected:after, body.front #sponsorship-levels .level form a.add:visited.alt.selected:after, #sponsorship-levels .level form body.front a.add:visited.alt.selected:after, body.front a.button:visited.alt.active:after, body.front #sponsorship-levels .level form a.add:visited.alt.active:after, #sponsorship-levels .level form body.front a.add:visited.alt.active:after, body.front div.button.alt:hover:after, body.front #sponsorship-levels .level form div.alt.add:hover:after, #sponsorship-levels .level form body.front div.alt.add:hover:after, body.front div.button.alt.selected:after, body.front #sponsorship-levels .level form div.alt.selected.add:after, #sponsorship-levels .level form body.front div.alt.selected.add:after, body.front div.button.alt.active:after, body.front #sponsorship-levels .level form div.alt.active.add:after, #sponsorship-levels .level form body.front div.alt.active.add:after, #lucy-page-template-inner button.alt:hover:after, #lucy-page-template-inner .overlay-card .bottom .alt.level-filled:hover:after, .overlay-card .bottom #lucy-page-template-inner .alt.level-filled:hover:after, #lucy-page-template-inner button.alt.selected:after, #lucy-page-template-inner .overlay-card .bottom .alt.selected.level-filled:after, .overlay-card .bottom #lucy-page-template-inner .alt.selected.level-filled:after, #lucy-page-template-inner button.alt.active:after, #lucy-page-template-inner .overlay-card .bottom .alt.active.level-filled:after, .overlay-card .bottom #lucy-page-template-inner .alt.active.level-filled:after, #lucy-page-template-inner a.button.alt:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.alt.add:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.alt.add:hover:after, #lucy-page-template-inner a.button.alt.selected:after, #lucy-page-template-inner #sponsorship-levels .level form a.alt.selected.add:after, #sponsorship-levels .level form #lucy-page-template-inner a.alt.selected.add:after, #lucy-page-template-inner a.button.alt.active:after, #lucy-page-template-inner #sponsorship-levels .level form a.alt.active.add:after, #sponsorship-levels .level form #lucy-page-template-inner a.alt.active.add:after, #lucy-page-template-inner a.button:active.alt:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.alt:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.alt:hover:after, #lucy-page-template-inner a.button:active.alt.selected:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.alt.selected:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.alt.selected:after, #lucy-page-template-inner a.button:active.alt.active:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.alt.active:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.alt.active:after, #lucy-page-template-inner a.button:visited.alt:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.alt:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.alt:hover:after, #lucy-page-template-inner a.button:visited.alt.selected:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.alt.selected:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.alt.selected:after, #lucy-page-template-inner a.button:visited.alt.active:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.alt.active:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.alt.active:after, #lucy-page-template-inner div.button.alt:hover:after, #lucy-page-template-inner #sponsorship-levels .level form div.alt.add:hover:after, #sponsorship-levels .level form #lucy-page-template-inner div.alt.add:hover:after, #lucy-page-template-inner div.button.alt.selected:after, #lucy-page-template-inner #sponsorship-levels .level form div.alt.selected.add:after, #sponsorship-levels .level form #lucy-page-template-inner div.alt.selected.add:after, #lucy-page-template-inner div.button.alt.active:after, #lucy-page-template-inner #sponsorship-levels .level form div.alt.active.add:after, #sponsorship-levels .level form #lucy-page-template-inner div.alt.active.add:after {
      background-color: #26384E; }
    body.front button.fluid, body.front .overlay-card .bottom .fluid.level-filled, .overlay-card .bottom body.front .fluid.level-filled, body.front a.button.fluid, body.front #sponsorship-levels .level form a.fluid.add, #sponsorship-levels .level form body.front a.fluid.add, body.front a.button:active.fluid, body.front #sponsorship-levels .level form a.add:active.fluid, #sponsorship-levels .level form body.front a.add:active.fluid, body.front a.button:visited.fluid, body.front #sponsorship-levels .level form a.add:visited.fluid, #sponsorship-levels .level form body.front a.add:visited.fluid, body.front div.button.fluid, body.front #sponsorship-levels .level form div.fluid.add, #sponsorship-levels .level form body.front div.fluid.add, #lucy-page-template-inner button.fluid, #lucy-page-template-inner .overlay-card .bottom .fluid.level-filled, .overlay-card .bottom #lucy-page-template-inner .fluid.level-filled, #lucy-page-template-inner a.button.fluid, #lucy-page-template-inner #sponsorship-levels .level form a.fluid.add, #sponsorship-levels .level form #lucy-page-template-inner a.fluid.add, #lucy-page-template-inner a.button:active.fluid, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.fluid, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.fluid, #lucy-page-template-inner a.button:visited.fluid, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.fluid, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.fluid, #lucy-page-template-inner div.button.fluid, #lucy-page-template-inner #sponsorship-levels .level form div.fluid.add, #sponsorship-levels .level form #lucy-page-template-inner div.fluid.add {
      display: block;
      width: 100%;
      padding: 0;
      text-align: center; }
    body.front button.disabled, body.front .overlay-card .bottom .disabled.level-filled, .overlay-card .bottom body.front .disabled.level-filled, body.front button.disabled:hover, body.front .overlay-card .bottom .disabled.level-filled:hover, .overlay-card .bottom body.front .disabled.level-filled:hover, body.front a.button.disabled, body.front #sponsorship-levels .level form a.disabled.add, #sponsorship-levels .level form body.front a.disabled.add, body.front a.button.disabled:hover, body.front #sponsorship-levels .level form a.disabled.add:hover, #sponsorship-levels .level form body.front a.disabled.add:hover, body.front a.button:active.disabled, body.front #sponsorship-levels .level form a.add:active.disabled, #sponsorship-levels .level form body.front a.add:active.disabled, body.front a.button:active.disabled:hover, body.front #sponsorship-levels .level form a.add:active.disabled:hover, #sponsorship-levels .level form body.front a.add:active.disabled:hover, body.front a.button:visited.disabled, body.front #sponsorship-levels .level form a.add:visited.disabled, #sponsorship-levels .level form body.front a.add:visited.disabled, body.front a.button:visited.disabled:hover, body.front #sponsorship-levels .level form a.add:visited.disabled:hover, #sponsorship-levels .level form body.front a.add:visited.disabled:hover, body.front div.button.disabled, body.front #sponsorship-levels .level form div.disabled.add, #sponsorship-levels .level form body.front div.disabled.add, body.front div.button.disabled:hover, body.front #sponsorship-levels .level form div.disabled.add:hover, #sponsorship-levels .level form body.front div.disabled.add:hover, #lucy-page-template-inner button.disabled, #lucy-page-template-inner .overlay-card .bottom .disabled.level-filled, .overlay-card .bottom #lucy-page-template-inner .disabled.level-filled, #lucy-page-template-inner button.disabled:hover, #lucy-page-template-inner .overlay-card .bottom .disabled.level-filled:hover, .overlay-card .bottom #lucy-page-template-inner .disabled.level-filled:hover, #lucy-page-template-inner a.button.disabled, #lucy-page-template-inner #sponsorship-levels .level form a.disabled.add, #sponsorship-levels .level form #lucy-page-template-inner a.disabled.add, #lucy-page-template-inner a.button.disabled:hover, #lucy-page-template-inner #sponsorship-levels .level form a.disabled.add:hover, #sponsorship-levels .level form #lucy-page-template-inner a.disabled.add:hover, #lucy-page-template-inner a.button:active.disabled, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.disabled, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.disabled, #lucy-page-template-inner a.button:active.disabled:hover, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.disabled:hover, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.disabled:hover, #lucy-page-template-inner a.button:visited.disabled, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.disabled, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.disabled, #lucy-page-template-inner a.button:visited.disabled:hover, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.disabled:hover, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.disabled:hover, #lucy-page-template-inner div.button.disabled, #lucy-page-template-inner #sponsorship-levels .level form div.disabled.add, #sponsorship-levels .level form #lucy-page-template-inner div.disabled.add, #lucy-page-template-inner div.button.disabled:hover, #lucy-page-template-inner #sponsorship-levels .level form div.disabled.add:hover, #sponsorship-levels .level form #lucy-page-template-inner div.disabled.add:hover {
      cursor: not-allowed;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      filter: alpha(opacity=75);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
      -moz-opacity: 0.75;
      -khtml-opacity: 0.75;
      opacity: 0.75; }
      body.front button.disabled:after, body.front .overlay-card .bottom .disabled.level-filled:after, .overlay-card .bottom body.front .disabled.level-filled:after, body.front button.disabled:hover:after, body.front .overlay-card .bottom .disabled.level-filled:hover:after, .overlay-card .bottom body.front .disabled.level-filled:hover:after, body.front a.button.disabled:after, body.front #sponsorship-levels .level form a.disabled.add:after, #sponsorship-levels .level form body.front a.disabled.add:after, body.front a.button.disabled:hover:after, body.front #sponsorship-levels .level form a.disabled.add:hover:after, #sponsorship-levels .level form body.front a.disabled.add:hover:after, body.front a.button:active.disabled:after, body.front #sponsorship-levels .level form a.add:active.disabled:after, #sponsorship-levels .level form body.front a.add:active.disabled:after, body.front a.button:active.disabled:hover:after, body.front #sponsorship-levels .level form a.add:active.disabled:hover:after, #sponsorship-levels .level form body.front a.add:active.disabled:hover:after, body.front a.button:visited.disabled:after, body.front #sponsorship-levels .level form a.add:visited.disabled:after, #sponsorship-levels .level form body.front a.add:visited.disabled:after, body.front a.button:visited.disabled:hover:after, body.front #sponsorship-levels .level form a.add:visited.disabled:hover:after, #sponsorship-levels .level form body.front a.add:visited.disabled:hover:after, body.front div.button.disabled:after, body.front #sponsorship-levels .level form div.disabled.add:after, #sponsorship-levels .level form body.front div.disabled.add:after, body.front div.button.disabled:hover:after, body.front #sponsorship-levels .level form div.disabled.add:hover:after, #sponsorship-levels .level form body.front div.disabled.add:hover:after, #lucy-page-template-inner button.disabled:after, #lucy-page-template-inner .overlay-card .bottom .disabled.level-filled:after, .overlay-card .bottom #lucy-page-template-inner .disabled.level-filled:after, #lucy-page-template-inner button.disabled:hover:after, #lucy-page-template-inner .overlay-card .bottom .disabled.level-filled:hover:after, .overlay-card .bottom #lucy-page-template-inner .disabled.level-filled:hover:after, #lucy-page-template-inner a.button.disabled:after, #lucy-page-template-inner #sponsorship-levels .level form a.disabled.add:after, #sponsorship-levels .level form #lucy-page-template-inner a.disabled.add:after, #lucy-page-template-inner a.button.disabled:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.disabled.add:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.disabled.add:hover:after, #lucy-page-template-inner a.button:active.disabled:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.disabled:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.disabled:after, #lucy-page-template-inner a.button:active.disabled:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.disabled:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.disabled:hover:after, #lucy-page-template-inner a.button:visited.disabled:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.disabled:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.disabled:after, #lucy-page-template-inner a.button:visited.disabled:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.disabled:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.disabled:hover:after, #lucy-page-template-inner div.button.disabled:after, #lucy-page-template-inner #sponsorship-levels .level form div.disabled.add:after, #sponsorship-levels .level form #lucy-page-template-inner div.disabled.add:after, #lucy-page-template-inner div.button.disabled:hover:after, #lucy-page-template-inner #sponsorship-levels .level form div.disabled.add:hover:after, #sponsorship-levels .level form #lucy-page-template-inner div.disabled.add:hover:after {
        background-color: #26384E !important; }
      body.front button.disabled span:after, body.front .overlay-card .bottom .disabled.level-filled span:after, .overlay-card .bottom body.front .disabled.level-filled span:after, body.front button.disabled:hover span:after, body.front .overlay-card .bottom .disabled.level-filled:hover span:after, .overlay-card .bottom body.front .disabled.level-filled:hover span:after, body.front a.button.disabled span:after, body.front #sponsorship-levels .level form a.disabled.add span:after, #sponsorship-levels .level form body.front a.disabled.add span:after, body.front a.button.disabled:hover span:after, body.front #sponsorship-levels .level form a.disabled.add:hover span:after, #sponsorship-levels .level form body.front a.disabled.add:hover span:after, body.front a.button:active.disabled span:after, body.front #sponsorship-levels .level form a.add:active.disabled span:after, #sponsorship-levels .level form body.front a.add:active.disabled span:after, body.front a.button:active.disabled:hover span:after, body.front #sponsorship-levels .level form a.add:active.disabled:hover span:after, #sponsorship-levels .level form body.front a.add:active.disabled:hover span:after, body.front a.button:visited.disabled span:after, body.front #sponsorship-levels .level form a.add:visited.disabled span:after, #sponsorship-levels .level form body.front a.add:visited.disabled span:after, body.front a.button:visited.disabled:hover span:after, body.front #sponsorship-levels .level form a.add:visited.disabled:hover span:after, #sponsorship-levels .level form body.front a.add:visited.disabled:hover span:after, body.front div.button.disabled span:after, body.front #sponsorship-levels .level form div.disabled.add span:after, #sponsorship-levels .level form body.front div.disabled.add span:after, body.front div.button.disabled:hover span:after, body.front #sponsorship-levels .level form div.disabled.add:hover span:after, #sponsorship-levels .level form body.front div.disabled.add:hover span:after, #lucy-page-template-inner button.disabled span:after, #lucy-page-template-inner .overlay-card .bottom .disabled.level-filled span:after, .overlay-card .bottom #lucy-page-template-inner .disabled.level-filled span:after, #lucy-page-template-inner button.disabled:hover span:after, #lucy-page-template-inner .overlay-card .bottom .disabled.level-filled:hover span:after, .overlay-card .bottom #lucy-page-template-inner .disabled.level-filled:hover span:after, #lucy-page-template-inner a.button.disabled span:after, #lucy-page-template-inner #sponsorship-levels .level form a.disabled.add span:after, #sponsorship-levels .level form #lucy-page-template-inner a.disabled.add span:after, #lucy-page-template-inner a.button.disabled:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form a.disabled.add:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner a.disabled.add:hover span:after, #lucy-page-template-inner a.button:active.disabled span:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.disabled span:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.disabled span:after, #lucy-page-template-inner a.button:active.disabled:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.disabled:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.disabled:hover span:after, #lucy-page-template-inner a.button:visited.disabled span:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.disabled span:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.disabled span:after, #lucy-page-template-inner a.button:visited.disabled:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.disabled:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.disabled:hover span:after, #lucy-page-template-inner div.button.disabled span:after, #lucy-page-template-inner #sponsorship-levels .level form div.disabled.add span:after, #sponsorship-levels .level form #lucy-page-template-inner div.disabled.add span:after, #lucy-page-template-inner div.button.disabled:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form div.disabled.add:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner div.disabled.add:hover span:after {
        display: none; }
    body.front button.no-style span:not(.icon-arrow-right-stroke-long), body.front .overlay-card .bottom .no-style.level-filled span:not(.icon-arrow-right-stroke-long), .overlay-card .bottom body.front .no-style.level-filled span:not(.icon-arrow-right-stroke-long), body.front a.button.no-style span:not(.icon-arrow-right-stroke-long), body.front #sponsorship-levels .level form a.no-style.add span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form body.front a.no-style.add span:not(.icon-arrow-right-stroke-long), body.front a.button:active.no-style span:not(.icon-arrow-right-stroke-long), body.front #sponsorship-levels .level form a.add:active.no-style span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form body.front a.add:active.no-style span:not(.icon-arrow-right-stroke-long), body.front a.button:visited.no-style span:not(.icon-arrow-right-stroke-long), body.front #sponsorship-levels .level form a.add:visited.no-style span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form body.front a.add:visited.no-style span:not(.icon-arrow-right-stroke-long), body.front div.button.no-style span:not(.icon-arrow-right-stroke-long), body.front #sponsorship-levels .level form div.no-style.add span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form body.front div.no-style.add span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner button.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner .overlay-card .bottom .no-style.level-filled span:not(.icon-arrow-right-stroke-long), .overlay-card .bottom #lucy-page-template-inner .no-style.level-filled span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner a.button.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner #sponsorship-levels .level form a.no-style.add span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form #lucy-page-template-inner a.no-style.add span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner a.button:active.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner #sponsorship-levels .level form a.add:active.no-style span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form #lucy-page-template-inner a.add:active.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner a.button:visited.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.no-style span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner div.button.no-style span:not(.icon-arrow-right-stroke-long), #lucy-page-template-inner #sponsorship-levels .level form div.no-style.add span:not(.icon-arrow-right-stroke-long), #sponsorship-levels .level form #lucy-page-template-inner div.no-style.add span:not(.icon-arrow-right-stroke-long) {
      position: relative; }
      body.front button.no-style span:not(.icon-arrow-right-stroke-long):after, body.front .overlay-card .bottom .no-style.level-filled span:not(.icon-arrow-right-stroke-long):after, .overlay-card .bottom body.front .no-style.level-filled span:not(.icon-arrow-right-stroke-long):after, body.front a.button.no-style span:not(.icon-arrow-right-stroke-long):after, body.front #sponsorship-levels .level form a.no-style.add span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form body.front a.no-style.add span:not(.icon-arrow-right-stroke-long):after, body.front a.button:active.no-style span:not(.icon-arrow-right-stroke-long):after, body.front #sponsorship-levels .level form a.add:active.no-style span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form body.front a.add:active.no-style span:not(.icon-arrow-right-stroke-long):after, body.front a.button:visited.no-style span:not(.icon-arrow-right-stroke-long):after, body.front #sponsorship-levels .level form a.add:visited.no-style span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form body.front a.add:visited.no-style span:not(.icon-arrow-right-stroke-long):after, body.front div.button.no-style span:not(.icon-arrow-right-stroke-long):after, body.front #sponsorship-levels .level form div.no-style.add span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form body.front div.no-style.add span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner button.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner .overlay-card .bottom .no-style.level-filled span:not(.icon-arrow-right-stroke-long):after, .overlay-card .bottom #lucy-page-template-inner .no-style.level-filled span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner a.button.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner #sponsorship-levels .level form a.no-style.add span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form #lucy-page-template-inner a.no-style.add span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner a.button:active.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.no-style span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner a.button:visited.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.no-style span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner div.button.no-style span:not(.icon-arrow-right-stroke-long):after, #lucy-page-template-inner #sponsorship-levels .level form div.no-style.add span:not(.icon-arrow-right-stroke-long):after, #sponsorship-levels .level form #lucy-page-template-inner div.no-style.add span:not(.icon-arrow-right-stroke-long):after {
        position: absolute;
        bottom: -4px;
        left: 0;
        width: 0;
        height: 2px;
        background: #FFFFFF;
        content: '';
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
    body.front button.no-style:hover span:after, body.front .overlay-card .bottom .no-style.level-filled:hover span:after, .overlay-card .bottom body.front .no-style.level-filled:hover span:after, body.front a.button.no-style:hover span:after, body.front #sponsorship-levels .level form a.no-style.add:hover span:after, #sponsorship-levels .level form body.front a.no-style.add:hover span:after, body.front a.button:active.no-style:hover span:after, body.front #sponsorship-levels .level form a.add:active.no-style:hover span:after, #sponsorship-levels .level form body.front a.add:active.no-style:hover span:after, body.front a.button:visited.no-style:hover span:after, body.front #sponsorship-levels .level form a.add:visited.no-style:hover span:after, #sponsorship-levels .level form body.front a.add:visited.no-style:hover span:after, body.front div.button.no-style:hover span:after, body.front #sponsorship-levels .level form div.no-style.add:hover span:after, #sponsorship-levels .level form body.front div.no-style.add:hover span:after, #lucy-page-template-inner button.no-style:hover span:after, #lucy-page-template-inner .overlay-card .bottom .no-style.level-filled:hover span:after, .overlay-card .bottom #lucy-page-template-inner .no-style.level-filled:hover span:after, #lucy-page-template-inner a.button.no-style:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form a.no-style.add:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner a.no-style.add:hover span:after, #lucy-page-template-inner a.button:active.no-style:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.no-style:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.no-style:hover span:after, #lucy-page-template-inner a.button:visited.no-style:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.no-style:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.no-style:hover span:after, #lucy-page-template-inner div.button.no-style:hover span:after, #lucy-page-template-inner #sponsorship-levels .level form div.no-style.add:hover span:after, #sponsorship-levels .level form #lucy-page-template-inner div.no-style.add:hover span:after {
      width: 100%; }
    @media (pointer: fine) {
      body.front button:hover:not(.no-style), body.front .overlay-card .bottom .level-filled:hover:not(.no-style), .overlay-card .bottom body.front .level-filled:hover:not(.no-style), body.front button.active:not(.no-style), body.front .overlay-card .bottom .active.level-filled:not(.no-style), .overlay-card .bottom body.front .active.level-filled:not(.no-style), body.front a.button:hover:not(.no-style), body.front #sponsorship-levels .level form a.add:hover:not(.no-style), #sponsorship-levels .level form body.front a.add:hover:not(.no-style), body.front a.button.active:not(.no-style), body.front #sponsorship-levels .level form a.active.add:not(.no-style), #sponsorship-levels .level form body.front a.active.add:not(.no-style), body.front a.button:active:hover:not(.no-style), body.front #sponsorship-levels .level form a.add:active:hover:not(.no-style), #sponsorship-levels .level form body.front a.add:active:hover:not(.no-style), body.front a.button:active.active:not(.no-style), body.front #sponsorship-levels .level form a.add:active.active:not(.no-style), #sponsorship-levels .level form body.front a.add:active.active:not(.no-style), body.front a.button:visited:hover:not(.no-style), body.front #sponsorship-levels .level form a.add:visited:hover:not(.no-style), #sponsorship-levels .level form body.front a.add:visited:hover:not(.no-style), body.front a.button:visited.active:not(.no-style), body.front #sponsorship-levels .level form a.add:visited.active:not(.no-style), #sponsorship-levels .level form body.front a.add:visited.active:not(.no-style), body.front div.button:hover:not(.no-style), body.front #sponsorship-levels .level form div.add:hover:not(.no-style), #sponsorship-levels .level form body.front div.add:hover:not(.no-style), body.front div.button.active:not(.no-style), body.front #sponsorship-levels .level form div.active.add:not(.no-style), #sponsorship-levels .level form body.front div.active.add:not(.no-style), #lucy-page-template-inner button:hover:not(.no-style), #lucy-page-template-inner .overlay-card .bottom .level-filled:hover:not(.no-style), .overlay-card .bottom #lucy-page-template-inner .level-filled:hover:not(.no-style), #lucy-page-template-inner button.active:not(.no-style), #lucy-page-template-inner .overlay-card .bottom .active.level-filled:not(.no-style), .overlay-card .bottom #lucy-page-template-inner .active.level-filled:not(.no-style), #lucy-page-template-inner a.button:hover:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form a.add:hover:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner a.add:hover:not(.no-style), #lucy-page-template-inner a.button.active:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form a.active.add:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner a.active.add:not(.no-style), #lucy-page-template-inner a.button:active:hover:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form a.add:active:hover:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner a.add:active:hover:not(.no-style), #lucy-page-template-inner a.button:active.active:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form a.add:active.active:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner a.add:active.active:not(.no-style), #lucy-page-template-inner a.button:visited:hover:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form a.add:visited:hover:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner a.add:visited:hover:not(.no-style), #lucy-page-template-inner a.button:visited.active:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.active:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.active:not(.no-style), #lucy-page-template-inner div.button:hover:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form div.add:hover:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner div.add:hover:not(.no-style), #lucy-page-template-inner div.button.active:not(.no-style), #lucy-page-template-inner #sponsorship-levels .level form div.active.add:not(.no-style), #sponsorship-levels .level form #lucy-page-template-inner div.active.add:not(.no-style) {
        padding-left: 3.5em; }
        body.front button:hover:not(.no-style):after, body.front .overlay-card .bottom .level-filled:hover:not(.no-style):after, .overlay-card .bottom body.front .level-filled:hover:not(.no-style):after, body.front button.active:not(.no-style):after, body.front .overlay-card .bottom .active.level-filled:not(.no-style):after, .overlay-card .bottom body.front .active.level-filled:not(.no-style):after, body.front a.button:hover:not(.no-style):after, body.front #sponsorship-levels .level form a.add:hover:not(.no-style):after, #sponsorship-levels .level form body.front a.add:hover:not(.no-style):after, body.front a.button.active:not(.no-style):after, body.front #sponsorship-levels .level form a.active.add:not(.no-style):after, #sponsorship-levels .level form body.front a.active.add:not(.no-style):after, body.front a.button:active:hover:not(.no-style):after, body.front #sponsorship-levels .level form a.add:active:hover:not(.no-style):after, #sponsorship-levels .level form body.front a.add:active:hover:not(.no-style):after, body.front a.button:active.active:not(.no-style):after, body.front #sponsorship-levels .level form a.add:active.active:not(.no-style):after, #sponsorship-levels .level form body.front a.add:active.active:not(.no-style):after, body.front a.button:visited:hover:not(.no-style):after, body.front #sponsorship-levels .level form a.add:visited:hover:not(.no-style):after, #sponsorship-levels .level form body.front a.add:visited:hover:not(.no-style):after, body.front a.button:visited.active:not(.no-style):after, body.front #sponsorship-levels .level form a.add:visited.active:not(.no-style):after, #sponsorship-levels .level form body.front a.add:visited.active:not(.no-style):after, body.front div.button:hover:not(.no-style):after, body.front #sponsorship-levels .level form div.add:hover:not(.no-style):after, #sponsorship-levels .level form body.front div.add:hover:not(.no-style):after, body.front div.button.active:not(.no-style):after, body.front #sponsorship-levels .level form div.active.add:not(.no-style):after, #sponsorship-levels .level form body.front div.active.add:not(.no-style):after, #lucy-page-template-inner button:hover:not(.no-style):after, #lucy-page-template-inner .overlay-card .bottom .level-filled:hover:not(.no-style):after, .overlay-card .bottom #lucy-page-template-inner .level-filled:hover:not(.no-style):after, #lucy-page-template-inner button.active:not(.no-style):after, #lucy-page-template-inner .overlay-card .bottom .active.level-filled:not(.no-style):after, .overlay-card .bottom #lucy-page-template-inner .active.level-filled:not(.no-style):after, #lucy-page-template-inner a.button:hover:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:hover:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:hover:not(.no-style):after, #lucy-page-template-inner a.button.active:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form a.active.add:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner a.active.add:not(.no-style):after, #lucy-page-template-inner a.button:active:hover:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active:hover:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active:hover:not(.no-style):after, #lucy-page-template-inner a.button:active.active:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.active:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.active:not(.no-style):after, #lucy-page-template-inner a.button:visited:hover:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited:hover:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited:hover:not(.no-style):after, #lucy-page-template-inner a.button:visited.active:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.active:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.active:not(.no-style):after, #lucy-page-template-inner div.button:hover:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form div.add:hover:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner div.add:hover:not(.no-style):after, #lucy-page-template-inner div.button.active:not(.no-style):after, #lucy-page-template-inner #sponsorship-levels .level form div.active.add:not(.no-style):after, #sponsorship-levels .level form #lucy-page-template-inner div.active.add:not(.no-style):after {
          width: calc(100% + 3px); }
      body.front button:hover .icon-arrow-right-stroke-long, body.front .overlay-card .bottom .level-filled:hover .icon-arrow-right-stroke-long, .overlay-card .bottom body.front .level-filled:hover .icon-arrow-right-stroke-long, body.front button.active .icon-arrow-right-stroke-long, body.front .overlay-card .bottom .active.level-filled .icon-arrow-right-stroke-long, .overlay-card .bottom body.front .active.level-filled .icon-arrow-right-stroke-long, body.front a.button:hover .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:hover .icon-arrow-right-stroke-long, body.front a.button.active .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.active.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.active.add .icon-arrow-right-stroke-long, body.front a.button:active:hover .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:active:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:active:hover .icon-arrow-right-stroke-long, body.front a.button:active.active .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:active.active .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:active.active .icon-arrow-right-stroke-long, body.front a.button:visited:hover .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:visited:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:visited:hover .icon-arrow-right-stroke-long, body.front a.button:visited.active .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form a.add:visited.active .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front a.add:visited.active .icon-arrow-right-stroke-long, body.front div.button:hover .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form div.add:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front div.add:hover .icon-arrow-right-stroke-long, body.front div.button.active .icon-arrow-right-stroke-long, body.front #sponsorship-levels .level form div.active.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form body.front div.active.add .icon-arrow-right-stroke-long, #lucy-page-template-inner button:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner .overlay-card .bottom .level-filled:hover .icon-arrow-right-stroke-long, .overlay-card .bottom #lucy-page-template-inner .level-filled:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner button.active .icon-arrow-right-stroke-long, #lucy-page-template-inner .overlay-card .bottom .active.level-filled .icon-arrow-right-stroke-long, .overlay-card .bottom #lucy-page-template-inner .active.level-filled .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button.active .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.active.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.active.add .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:active:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:active:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:active:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:active.active .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.active .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.active .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:visited:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner a.button:visited.active .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.active .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.active .icon-arrow-right-stroke-long, #lucy-page-template-inner div.button:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form div.add:hover .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner div.add:hover .icon-arrow-right-stroke-long, #lucy-page-template-inner div.button.active .icon-arrow-right-stroke-long, #lucy-page-template-inner #sponsorship-levels .level form div.active.add .icon-arrow-right-stroke-long, #sponsorship-levels .level form #lucy-page-template-inner div.active.add .icon-arrow-right-stroke-long {
        left: 1.5em;
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1; }
      body.front button:hover:after, body.front .overlay-card .bottom .level-filled:hover:after, .overlay-card .bottom body.front .level-filled:hover:after, body.front button.active:after, body.front .overlay-card .bottom .active.level-filled:after, .overlay-card .bottom body.front .active.level-filled:after, body.front a.button:hover:after, body.front #sponsorship-levels .level form a.add:hover:after, #sponsorship-levels .level form body.front a.add:hover:after, body.front a.button.active:after, body.front #sponsorship-levels .level form a.active.add:after, #sponsorship-levels .level form body.front a.active.add:after, body.front a.button:active:hover:after, body.front #sponsorship-levels .level form a.add:active:hover:after, #sponsorship-levels .level form body.front a.add:active:hover:after, body.front a.button:active.active:after, body.front #sponsorship-levels .level form a.add:active.active:after, #sponsorship-levels .level form body.front a.add:active.active:after, body.front a.button:visited:hover:after, body.front #sponsorship-levels .level form a.add:visited:hover:after, #sponsorship-levels .level form body.front a.add:visited:hover:after, body.front a.button:visited.active:after, body.front #sponsorship-levels .level form a.add:visited.active:after, #sponsorship-levels .level form body.front a.add:visited.active:after, body.front div.button:hover:after, body.front #sponsorship-levels .level form div.add:hover:after, #sponsorship-levels .level form body.front div.add:hover:after, body.front div.button.active:after, body.front #sponsorship-levels .level form div.active.add:after, #sponsorship-levels .level form body.front div.active.add:after, #lucy-page-template-inner button:hover:after, #lucy-page-template-inner .overlay-card .bottom .level-filled:hover:after, .overlay-card .bottom #lucy-page-template-inner .level-filled:hover:after, #lucy-page-template-inner button.active:after, #lucy-page-template-inner .overlay-card .bottom .active.level-filled:after, .overlay-card .bottom #lucy-page-template-inner .active.level-filled:after, #lucy-page-template-inner a.button:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:hover:after, #lucy-page-template-inner a.button.active:after, #lucy-page-template-inner #sponsorship-levels .level form a.active.add:after, #sponsorship-levels .level form #lucy-page-template-inner a.active.add:after, #lucy-page-template-inner a.button:active:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active:hover:after, #lucy-page-template-inner a.button:active.active:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:active.active:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:active.active:after, #lucy-page-template-inner a.button:visited:hover:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited:hover:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited:hover:after, #lucy-page-template-inner a.button:visited.active:after, #lucy-page-template-inner #sponsorship-levels .level form a.add:visited.active:after, #sponsorship-levels .level form #lucy-page-template-inner a.add:visited.active:after, #lucy-page-template-inner div.button:hover:after, #lucy-page-template-inner #sponsorship-levels .level form div.add:hover:after, #sponsorship-levels .level form #lucy-page-template-inner div.add:hover:after, #lucy-page-template-inner div.button.active:after, #lucy-page-template-inner #sponsorship-levels .level form div.active.add:after, #sponsorship-levels .level form #lucy-page-template-inner div.active.add:after {
        background-color: #A6192E; } }
  body.front a.button-link, #lucy-page-template-inner a.button-link {
    position: relative;
    display: inline-block;
    margin-bottom: .5em;
    font-family: franklin-gothic-atf, sans-serif;
    font-size: .6875em;
    font-weight: bold;
    color: #1B2532;
    letter-spacing: .1em;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none; }
    body.front a.button-link:before, #lucy-page-template-inner a.button-link:before {
      position: absolute;
      top: 50%;
      right: -2.5em;
      display: block;
      width: 1.9em;
      height: 1.9em;
      background: #A6192E;
      content: '';
      transform: translate(0, -50%);
      perspective: 1000px;
      -moz-transform: translate(0, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -50%);
      -ms-perspective: 1000;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
    body.front a.button-link:after, #lucy-page-template-inner a.button-link:after {
      position: absolute;
      top: 50%;
      right: -2.85em;
      display: block;
      width: 2em;
      height: 2em;
      line-height: 2em;
      font-size: .9em;
      text-align: center;
      color: #FFFFFF;
      content: "\e939" !important;
      transform: translate(0, -45%);
      perspective: 1000px;
      -moz-transform: translate(0, -45%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -45%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -45%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -45%);
      -ms-perspective: 1000;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
    body.front a.button-link:hover, #lucy-page-template-inner a.button-link:hover {
      text-decoration: underline; }
      body.front a.button-link:hover:before, #lucy-page-template-inner a.button-link:hover:before {
        background: #26384E; }
  body.front .back-to, #lucy-page-template-inner .back-to {
    overflow: hidden;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 1.5em;
    text-decoration: none; }
    body.front .back-to span, #lucy-page-template-inner .back-to span {
      float: none !important;
      display: inline-block;
      margin-bottom: 0;
      color: #1B2532;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      body.front .back-to span.icon-arrow-right-stroke-long, #lucy-page-template-inner .back-to span.icon-arrow-right-stroke-long {
        margin-right: .5em;
        font-size: .8em;
        transform: scaleX(-1);
        perspective: 1000px;
        -moz-transform: scaleX(-1);
        -moz-perspective: 1000;
        -webkit-transform: scaleX(-1);
        -webkit-perspective: 1000;
        -o-transform: scaleX(-1);
        -o-perspective: 1000;
        -ms-transform: scaleX(-1);
        -ms-perspective: 1000;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
    body.front .back-to:hover span.icon-arrow-right-stroke-long, #lucy-page-template-inner .back-to:hover span.icon-arrow-right-stroke-long {
      margin-right: .8em; }
  body.front table:not(#calendar-grid):not(.ui-datepicker-calendar), #lucy-page-template-inner table:not(#calendar-grid):not(.ui-datepicker-calendar) {
    width: 100%;
    border-collapse: collapse; }
    body.front table:not(#calendar-grid):not(.ui-datepicker-calendar) th, body.front table:not(#calendar-grid):not(.ui-datepicker-calendar) td, #lucy-page-template-inner table:not(#calendar-grid):not(.ui-datepicker-calendar) th, #lucy-page-template-inner table:not(#calendar-grid):not(.ui-datepicker-calendar) td {
      padding: 27px;
      vertical-align: top; }
    body.front table:not(#calendar-grid):not(.ui-datepicker-calendar) th, #lucy-page-template-inner table:not(#calendar-grid):not(.ui-datepicker-calendar) th {
      margin-bottom: 0.5em;
      font-family: franklin-gothic-atf, sans-serif;
      font-size: 0.6875em;
      font-weight: 500;
      color: #A6192E;
      letter-spacing: 0.1em;
      line-height: 2.2em;
      text-transform: uppercase;
      text-align: left;
      color: #FFFFFF;
      font-family: 'Archivo Narrow', sans-serif;
      font-size: .6875em;
      text-transform: uppercase;
      background: #26384E; }
    body.front table:not(#calendar-grid):not(.ui-datepicker-calendar) tr:nth-child(even) td, #lucy-page-template-inner table:not(#calendar-grid):not(.ui-datepicker-calendar) tr:nth-child(even) td {
      background: rgba(249, 249, 249, 0.5); }

/* --- Generic Page Styles --- */
.page-content {
  padding: 4em 0 6em 0; }

/* --- Form + Label Styles --- */
body.front select, #lucy-page-template-inner select {
  height: 3.45em;
  background: #FFFFFF url(../images/dropdown-arrow.png) no-repeat calc(100% - 10px) 50%;
  background-size: 12px 16px;
  -webkit-appearance: none;
  color: #1B2532;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  body.front select.error, #lucy-page-template-inner select.error {
    background: #FFFFFF url(../images/field-error.png) no-repeat calc(100% - 10px) 50%;
    background-size: 20px 20px; }

[class*='span'] input[type=text], [class*='span'] input[type=email], [class*='span'] input[type=tel], [class*='span'] input[type=password], [class*='span'] textarea, [class*='span'] select {
  position: relative;
  z-index: 1;
  margin-bottom: 20px !important;
  padding: 1em;
  font-size: 18px;
  font-family: franklin-gothic-atf, sans-serif;
  border: 1px solid #D9DCE0;
  -webkit-appearance: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  [class*='span'] input[type=text]:focus, [class*='span'] input[type=email]:focus, [class*='span'] input[type=tel]:focus, [class*='span'] input[type=password]:focus, [class*='span'] textarea:focus, [class*='span'] select:focus {
    border-color: #26384E;
    outline: none;
    -moz-outline: none;
    -webkit-outline: none; }
  [class*='span'] input[type=text].error, [class*='span'] input[type=email].error, [class*='span'] input[type=tel].error, [class*='span'] input[type=password].error, [class*='span'] textarea.error, [class*='span'] select.error {
    border-color: #ED6A5A; }
    [class*='span'] input[type=text].error::-webkit-input-placeholder, [class*='span'] input[type=email].error::-webkit-input-placeholder, [class*='span'] input[type=tel].error::-webkit-input-placeholder, [class*='span'] input[type=password].error::-webkit-input-placeholder, [class*='span'] textarea.error::-webkit-input-placeholder, [class*='span'] select.error::-webkit-input-placeholder {
      color: #ED6A5A; }
    [class*='span'] input[type=text].error:-moz-placeholder, [class*='span'] input[type=email].error:-moz-placeholder, [class*='span'] input[type=tel].error:-moz-placeholder, [class*='span'] input[type=password].error:-moz-placeholder, [class*='span'] textarea.error:-moz-placeholder, [class*='span'] select.error:-moz-placeholder {
      color: #ED6A5A; }
    [class*='span'] input[type=text].error::-moz-placeholder, [class*='span'] input[type=email].error::-moz-placeholder, [class*='span'] input[type=tel].error::-moz-placeholder, [class*='span'] input[type=password].error::-moz-placeholder, [class*='span'] textarea.error::-moz-placeholder, [class*='span'] select.error::-moz-placeholder {
      color: #ED6A5A; }
    [class*='span'] input[type=text].error:-ms-input-placeholder, [class*='span'] input[type=email].error:-ms-input-placeholder, [class*='span'] input[type=tel].error:-ms-input-placeholder, [class*='span'] input[type=password].error:-ms-input-placeholder, [class*='span'] textarea.error:-ms-input-placeholder, [class*='span'] select.error:-ms-input-placeholder {
      color: #ED6A5A; }
    [class*='span'] input[type=text].error:not(#card-number), [class*='span'] input[type=email].error:not(#card-number), [class*='span'] input[type=tel].error:not(#card-number), [class*='span'] input[type=password].error:not(#card-number), [class*='span'] textarea.error:not(#card-number), [class*='span'] select.error:not(#card-number) {
      background: #FFFFFF url(../images/field-error.png) no-repeat 0 0;
      background-position: calc(100% - 10px) 50%;
      background-size: 20px 20px; }

[class*='span'] input::placeholder, [class*='span'] textarea::placeholder {
  color: #1B2532 !important;
  transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  -ms-transition: all 0.1s ease-in-out;
  filter: alpha(opacity=100);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1; }

[class*='span'] input:focus::placeholder, [class*='span'] textarea:focus::placeholder {
  filter: alpha(opacity=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0; }

[class*='span'].select, .input-wrap.select {
  margin-bottom: 20px !important; }
  [class*='span'].select select, .input-wrap.select select {
    position: relative;
    z-index: 1;
    height: 3.45em;
    padding: .75em;
    color: #26384E;
    vertical-align: middle;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
  [class*='span'].select label, .input-wrap.select label {
    z-index: 0; }
    [class*='span'].select label.show, .input-wrap.select label.show {
      z-index: 2; }
  [class*='span'].select span.error, .input-wrap.select span.error {
    top: 100% !important; }
  [class*='span'].select select, .input-wrap.select select {
    margin-bottom: 0 !important; }

[class*='span'].upload {
  margin-bottom: 20px !important; }
  [class*='span'].upload input {
    margin-top: 1.5em; }
  [class*='span'].upload label {
    top: .25em !important;
    left: 0 !important;
    padding: 0;
    background: transparent;
    font-size: 1em !important;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1; }
  [class*='span'].upload span.error {
    top: 100% !important; }
  [class*='span'].upload select {
    margin-bottom: 0 !important; }

[class*='span'] label {
  position: absolute;
  z-index: 0;
  top: .6em;
  left: 1rem;
  display: block;
  margin-bottom: 0;
  padding: 0 .3em;
  cursor: text;
  background: #FFFFFF;
  transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  -ms-transition: all 0.1s ease-in-out;
  filter: alpha(opacity=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0; }
  [class*='span'] label.show {
    z-index: 2;
    top: 0;
    font-size: .6em;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1; }
  [class*='span'] label.error {
    color: #ED6A5A !important; }
  [class*='span'] label.fixed {
    position: relative;
    top: auto;
    left: auto;
    padding: 0;
    font-size: 16.2px;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1; }

span.error {
  position: absolute !important;
  top: calc(100% - 20px) !important;
  left: 0;
  width: 100%;
  font-size: .6em;
  color: #ED6A5A !important; }

/* --- Table of Contents --- */
#table-of-contents {
  margin-top: 4em; }
  @media only screen and (max-width: 910px) {
    #table-of-contents {
      margin-top: 2em; } }
  #table-of-contents h2 {
    margin-bottom: .5em; }
  #table-of-contents a, #table-of-contents a:active, #table-of-contents a:visited {
    display: block;
    overflow: hidden;
    margin-bottom: 2.5em;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 700px) {
      #table-of-contents a, #table-of-contents a:active, #table-of-contents a:visited {
        margin-bottom: 2em; } }
    #table-of-contents a:last-child, #table-of-contents a:active:last-child, #table-of-contents a:visited:last-child {
      margin-bottom: 0;
      padding-bottom: 0;
      border-bottom: none; }
    #table-of-contents a .page, #table-of-contents a:active .page, #table-of-contents a:visited .page {
      display: flex;
      align-items: center;
      position: relative;
      background: none; }
      @media only screen and (max-width: 1440px) {
        #table-of-contents a .page, #table-of-contents a:active .page, #table-of-contents a:visited .page {
          align-items: flex-start; } }
      @media only screen and (max-width: 700px) {
        #table-of-contents a .page, #table-of-contents a:active .page, #table-of-contents a:visited .page {
          flex-wrap: wrap; } }
      #table-of-contents a .page .image, #table-of-contents a:active .page .image, #table-of-contents a:visited .page .image {
        overflow: hidden;
        width: 40%;
        margin-right: 2.5em; }
        @media only screen and (max-width: 700px) {
          #table-of-contents a .page .image, #table-of-contents a:active .page .image, #table-of-contents a:visited .page .image {
            width: 100%;
            margin-right: 0;
            margin-bottom: 1.5em; } }
        #table-of-contents a .page .image img, #table-of-contents a:active .page .image img, #table-of-contents a:visited .page .image img {
          display: block;
          width: 100%;
          transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -webkit-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          -ms-transition: all 0.2s ease-in-out; }
      #table-of-contents a .page .content, #table-of-contents a:active .page .content, #table-of-contents a:visited .page .content {
        width: 100%; }
        #table-of-contents a .page .content h4, #table-of-contents a .page .content #lucy-checkout-fields h2, #lucy-checkout-fields #table-of-contents a .page .content h2, #table-of-contents a:active .page .content h4, #table-of-contents a:active .page .content #lucy-checkout-fields h2, #lucy-checkout-fields #table-of-contents a:active .page .content h2, #table-of-contents a:visited .page .content h4, #table-of-contents a:visited .page .content #lucy-checkout-fields h2, #lucy-checkout-fields #table-of-contents a:visited .page .content h2 {
          margin-bottom: .25em;
          font-weight: 500; }
          #table-of-contents a .page .content h4 span, #table-of-contents a .page .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a .page .content h2 span, #table-of-contents a:active .page .content h4 span, #table-of-contents a:active .page .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:active .page .content h2 span, #table-of-contents a:visited .page .content h4 span, #table-of-contents a:visited .page .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:visited .page .content h2 span {
            margin-left: .5em;
            font-size: .8em;
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out; }
        #table-of-contents a .page .content p, #table-of-contents a:active .page .content p, #table-of-contents a:visited .page .content p {
          margin-bottom: .5em; }
          #table-of-contents a .page .content p.body, #table-of-contents a:active .page .content p.body, #table-of-contents a:visited .page .content p.body {
            margin-bottom: 0; }
            @media only screen and (max-width: 1125px) {
              #table-of-contents a .page .content p.body, #table-of-contents a:active .page .content p.body, #table-of-contents a:visited .page .content p.body {
                font-size: .778em; } }
            @media only screen and (max-width: 910px) {
              #table-of-contents a .page .content p.body, #table-of-contents a:active .page .content p.body, #table-of-contents a:visited .page .content p.body {
                font-size: 1em; } }
      #table-of-contents a .page.has-image .content, #table-of-contents a:active .page.has-image .content, #table-of-contents a:visited .page.has-image .content {
        width: 60%; }
        @media only screen and (max-width: 700px) {
          #table-of-contents a .page.has-image .content, #table-of-contents a:active .page.has-image .content, #table-of-contents a:visited .page.has-image .content {
            width: 100%; } }
      #table-of-contents a .page :last-child, #table-of-contents a:active .page :last-child, #table-of-contents a:visited .page :last-child {
        margin-bottom: 0; }
      #table-of-contents a .page:last-of-type, #table-of-contents a:active .page:last-of-type, #table-of-contents a:visited .page:last-of-type {
        margin-bottom: 0; }
    #table-of-contents a:hover .content h4 span, #table-of-contents a:hover .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:hover .content h2 span, #table-of-contents a:focus .content h4 span, #table-of-contents a:focus .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:focus .content h2 span, #table-of-contents a:active:hover .content h4 span, #table-of-contents a:active:hover .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:active:hover .content h2 span, #table-of-contents a:active:focus .content h4 span, #table-of-contents a:active:focus .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:active:focus .content h2 span, #table-of-contents a:visited:hover .content h4 span, #table-of-contents a:visited:hover .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:visited:hover .content h2 span, #table-of-contents a:visited:focus .content h4 span, #table-of-contents a:visited:focus .content #lucy-checkout-fields h2 span, #lucy-checkout-fields #table-of-contents a:visited:focus .content h2 span {
      margin-left: .8em;
      color: #A6192E; }
    #table-of-contents a:hover .image img, #table-of-contents a:focus .image img, #table-of-contents a:active:hover .image img, #table-of-contents a:active:focus .image img, #table-of-contents a:visited:hover .image img, #table-of-contents a:visited:focus .image img {
      transform: scale(1.03);
      perspective: 1000px;
      -moz-transform: scale(1.03);
      -moz-perspective: 1000;
      -webkit-transform: scale(1.03);
      -webkit-perspective: 1000;
      -o-transform: scale(1.03);
      -o-perspective: 1000;
      -ms-transform: scale(1.03);
      -ms-perspective: 1000; }

/* --- Event Date Box --- */
.date-box {
  position: relative;
  float: left;
  display: inline-block;
  width: 4em;
  height: 4em;
  margin-right: 1.5em;
  margin-left: 8px;
  line-height: .9;
  text-align: center;
  text-indent: 2px; }
  @media only screen and (max-width: 1125px) {
    .date-box {
      width: 3em;
      height: 3em; } }
  .date-box span {
    position: relative;
    z-index: 2;
    display: inline-block; }
  .date-box span:first-child {
    margin-top: 1em;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: .6785em;
    font-weight: 700; }
    @media only screen and (max-width: 1125px) {
      .date-box span:first-child {
        font-size: .5em; } }
  .date-box span:last-child {
    margin-top: 5px;
    font-size: 2.2em;
    font-weight: 700; }
    @media only screen and (max-width: 1125px) {
      .date-box span:last-child {
        font-size: 1.5em; } }
  .date-box:after {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid #1B2532;
    background: #F9F9F9;
    content: ''; }
  .date-box:before {
    position: absolute;
    z-index: 0;
    top: 8px;
    left: -8px;
    width: 100%;
    height: 100%;
    border: 2px solid #1B2532;
    content: ''; }

/* --- Related News --- */
.related-news {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-top: 4em; }
  @media only screen and (max-width: 910px) {
    .related-news {
      margin-top: 2em; } }
  .related-news h2 {
    width: 100%;
    margin-bottom: .5em; }
  .related-news .news-item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: calc(33.3333% - (20px * 2) / 3);
    margin-right: 20px;
    margin-bottom: 20px;
    padding-bottom: 1.5rem;
    text-decoration: none;
    background: #F9F9F9;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 1125px) {
      .related-news .news-item {
        width: calc(50% - (20px / 2)); }
        .related-news .news-item:nth-of-type(2) {
          margin-right: 0; }
        .related-news .news-item:nth-of-type(3) {
          display: none; } }
    @media only screen and (max-width: 700px) {
      .related-news .news-item {
        width: 100%;
        margin-right: 0; } }
    .related-news .news-item:last-of-type {
      margin-right: 0; }
    .related-news .news-item .image {
      overflow: hidden; }
      .related-news .news-item .image img {
        display: block;
        width: 100%;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
    .related-news .news-item p {
      padding: 0 1.5rem;
      line-height: 1.45; }
      .related-news .news-item p.sub-header {
        margin-top: 1.5rem; }
      .related-news .news-item p.title {
        margin-bottom: .5em;
        font-weight: 500; }
        .related-news .news-item p.title.push {
          margin-bottom: 1.5rem; }
      .related-news .news-item p.body {
        line-height: 2; }
      .related-news .news-item p.date {
        margin-top: auto;
        margin-bottom: 0;
        padding-top: 1.5rem;
        border-top: 1px solid #D9DCE0;
        font-size: .778em; }
    .related-news .news-item:hover {
      transform: translate(0, -5px);
      perspective: 1000px;
      -moz-transform: translate(0, -5px);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -5px);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -5px);
      -o-perspective: 1000;
      -ms-transform: translate(0, -5px);
      -ms-perspective: 1000;
      box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
      -webkit-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
      -o-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
      -ms-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1); }

/* --- Callouts --- */
.callout {
  display: block;
  margin-bottom: 3em;
  border: 1px solid #D9DCE0;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  .callout .image {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    border-top-left-radius: 8px;
    -moz-border-top-left-radius: 8px;
    -webkit-border-top-left-radius: 8px;
    -o-border-top-left-radius: 8px;
    -ms-border-top-left-radius: 8px;
    -moz-background-clip: "padding-box";
    -webkit-background-clip: "padding-box";
    -o-background-clip: "padding-box";
    -ms-background-clip: "padding-box";
    border-bottom-left-radius: 8px;
    -moz-border-bottom-left-radius: 8px;
    -webkit-border-bottom-left-radius: 8px;
    -o-border-bottom-left-radius: 8px;
    -ms-border-bottom-left-radius: 8px;
    -moz-background-clip: "padding-box";
    -webkit-background-clip: "padding-box";
    -o-background-clip: "padding-box";
    -ms-background-clip: "padding-box"; }
  .callout .title {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em; }
  .callout .details, .callout .action, .callout .image {
    padding-top: 36px;
    padding-bottom: 36px; }
  .callout .details p {
    position: relative;
    left: 18px; }
    @media only screen and (max-width: 525px) {
      .callout .details p {
        left: 0; } }
  .callout.no-image .outer, .callout.no-image .inner, .callout.no-image .wrap {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: block !important; }
  .callout :last-child {
    margin-bottom: 0; }
  @media only screen and (max-width: 525px) {
    .callout .image {
      height: 0;
      margin-bottom: 2em;
      padding-bottom: 50%;
      border-bottom-left-radius: 0;
      -moz-border-bottom-left-radius: 0;
      -webkit-border-bottom-left-radius: 0;
      -o-border-bottom-left-radius: 0;
      -ms-border-bottom-left-radius: 0;
      -moz-background-clip: "padding-box";
      -webkit-background-clip: "padding-box";
      -o-background-clip: "padding-box";
      -ms-background-clip: "padding-box";
      border-top-right-radius: 8px;
      -moz-border-top-right-radius: 8px;
      -webkit-border-top-right-radius: 8px;
      -o-border-top-right-radius: 8px;
      -ms-border-top-right-radius: 8px;
      -moz-background-clip: "padding-box";
      -webkit-background-clip: "padding-box";
      -o-background-clip: "padding-box";
      -ms-background-clip: "padding-box"; }
    .callout .outer, .callout .inner, .callout .wrap {
      position: relative !important;
      top: auto !important;
      left: auto !important;
      display: block !important; }
    .callout .outer {
      padding: 0 2em 2em 2em;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
    .callout .details, .callout .action {
      padding: 0; } }

/* --- Credit Card Icons --- */
.card-icons {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 10px;
  font-size: 0;
  transform: translate(0, calc(-50% - 10px));
  perspective: 1000px;
  -moz-transform: translate(0, calc(-50% - 10px));
  -moz-perspective: 1000;
  -webkit-transform: translate(0, calc(-50% - 10px));
  -webkit-perspective: 1000;
  -o-transform: translate(0, calc(-50% - 10px));
  -o-perspective: 1000;
  -ms-transform: translate(0, calc(-50% - 10px));
  -ms-perspective: 1000; }
  .card-icons span {
    display: inline-block;
    margin-left: .25em;
    font-size: 27px;
    color: #26384E;
    filter: alpha(opacity=20);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
    -moz-opacity: 0.2;
    -khtml-opacity: 0.2;
    opacity: 0.2;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    .card-icons span.selected {
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }
  @media only screen and (max-width: 525px) {
    .card-icons span {
      display: none; }
      .card-icons span.selected {
        display: inline-block; } }

/* --- Page Search --- */
#page-search {
  position: relative;
  margin-bottom: 3em;
  /*
	&.isolated { margin: 3em 0; }	
	h1, h2, h3, h4, h5, h6 {
		margin-bottom: 0;
		line-height: 60px;
	}
	
	input[type=text] {
		height: 3.75 * $base_font_size;
		margin-bottom: 0 !important;
		padding-left: 3em;
	}
	select {
		height: 3.75 * $base_font_size;
		margin-bottom: 0 !important;
		background: get_color(white) url(../images/dropdown-arrow.png) no-repeat calc(100% - 10px) 50%;
		background-size: 10px 6px;
		-webkit-appearance: none;
	}
	.select { margin-bottom: 0 !important; }
	@include bp('mobile') {
		input[type=text], select { margin-bottom: $grid_gutter_width !important; }
	}
	*/ }
  #page-search h5 {
    line-height: 2.1;
    font-size: 1.1em;
    font-weight: 500; }
  #page-search .field-wrap {
    position: relative; }
    #page-search .field-wrap:before {
      position: absolute;
      z-index: 2;
      top: 50%;
      left: 1em;
      font-size: 1em;
      color: #A6192E;
      transform: translate(0, -50%);
      perspective: 1000px;
      -moz-transform: translate(0, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -50%);
      -ms-perspective: 1000; }
    #page-search .field-wrap input, #page-search .field-wrap select {
      margin-bottom: 0 !important;
      padding-left: calc(1em + 25px); }

#page-search-clear {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 1.5em;
  width: 3em;
  height: 3em;
  line-height: 3em;
  text-decoration: none;
  color: #26384E;
  text-align: center;
  font-size: .6em;
  background: #F9F9F9;
  transform: translate(0, -50%);
  perspective: 1000px;
  -moz-transform: translate(0, -50%);
  -moz-perspective: 1000;
  -webkit-transform: translate(0, -50%);
  -webkit-perspective: 1000;
  -o-transform: translate(0, -50%);
  -o-perspective: 1000;
  -ms-transform: translate(0, -50%);
  -ms-perspective: 1000;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  #page-search-clear span {
    position: relative;
    top: 2px;
    margin-right: 0;
    color: #1B2532; }
  #page-search-clear:hover {
    color: #FFFFFF;
    background-color: #26384E; }
    #page-search-clear:hover span {
      color: #FFFFFF; }

/* --- Filter Bar --- */
.filter-bar {
  z-index: 5;
  width: 100%;
  background: #FFFFFF; }
  .filter-bar .inner {
    padding: 2em 0;
    border-bottom: 1px solid #D9DCE0; }
  .filter-bar h2 {
    font-size: 1.2em !important;
    font-family: franklin-gothic-atf, sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: .3px; }
  .filter-bar .field-wrap {
    display: inline-block;
    vertical-align: top; }
  .filter-bar .field {
    position: relative;
    display: flex;
    align-items: center;
    height: 3.5em;
    margin-right: 1em;
    margin-bottom: 20px;
    padding: 0 1em;
    border: 1px solid #D9DCE0;
    vertical-align: top;
    overflow: hidden;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    .filter-bar .field [class*='icon'] {
      position: relative;
      margin-right: .5em;
      color: #26384E; }
    .filter-bar .field select, .filter-bar .field input {
      height: 3.5em;
      width: 100%;
      margin-bottom: 0;
      font-family: franklin-gothic-atf, sans-serif;
      font-size: .889em;
      color: #26384E;
      border: none;
      background-color: transparent;
      -webkit-appearance: none; }
      .filter-bar .field select::-webkit-input-placeholder, .filter-bar .field input::-webkit-input-placeholder {
        color: #1B2532; }
      .filter-bar .field select:-moz-placeholder, .filter-bar .field input:-moz-placeholder {
        color: #1B2532; }
      .filter-bar .field select::-moz-placeholder, .filter-bar .field input::-moz-placeholder {
        color: #1B2532; }
      .filter-bar .field select:-ms-input-placeholder, .filter-bar .field input:-ms-input-placeholder {
        color: #1B2532; }
      .filter-bar .field select:focus, .filter-bar .field input:focus {
        -webkit-appearance: none;
        outline: none; }
    .filter-bar .field select {
      padding-right: 3em; }
    .filter-bar .field .text {
      font-size: .889em; }
    .filter-bar .field.select {
      padding-right: .5em; }
    .filter-bar .field.date-field {
      padding-right: 0; }
      .filter-bar .field.date-field input {
        min-width: 0;
        padding-right: 0; }
    .filter-bar .field #ticket-option {
      width: 250px; }
    .filter-bar .field #ticket-time {
      width: 175px; }
    .filter-bar .field.text {
      border: none; }
      .filter-bar .field.text .text {
        padding-right: 0; }
    .filter-bar .field:hover {
      border-color: #bdc2c9; }
    .filter-bar .field.disabled {
      filter: alpha(opacity=75);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
      -moz-opacity: 0.75;
      -khtml-opacity: 0.75;
      opacity: 0.75; }
    @media only screen and (max-width: 910px) {
      .filter-bar .field {
        width: 100%; }
        .filter-bar .field select, .filter-bar .field input, .filter-bar .field .text {
          width: calc(100% - 35px) !important; } }
  .filter-bar .buttons {
    display: inline-block;
    height: 3.5em;
    margin-right: .75em; }
    .filter-bar .buttons ul {
      margin: 0 !important;
      padding: 0 !important;
      list-style-type: none; }
      .filter-bar .buttons ul li {
        display: inline-block;
        margin-right: .25em; }
        .filter-bar .buttons ul li a, .filter-bar .buttons ul li a:active, .filter-bar .buttons ul li a:visited {
          display: block;
          width: 3.5em;
          height: 3.5em;
          line-height: 3.5em;
          text-align: center;
          color: #26384E;
          text-decoration: none;
          border: 1px solid #D9DCE0;
          border-radius: 4px;
          -moz-border-radius: 4px;
          -webkit-border-radius: 4px;
          -o-border-radius: 4px;
          -ms-border-radius: 4px;
          -moz-background-clip: padding-box;
          -webkit-background-clip: padding-box;
          -o-background-clip: padding-box;
          -ms-background-clip: padding-box;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          -webkit-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box; }
          .filter-bar .buttons ul li a:hover, .filter-bar .buttons ul li a:active:hover, .filter-bar .buttons ul li a:visited:hover {
            border-color: #26384E; }
          .filter-bar .buttons ul li a.selected, .filter-bar .buttons ul li a:active.selected, .filter-bar .buttons ul li a:visited.selected {
            color: #FFFFFF;
            background: #26384E;
            border-color: #26384E; }
        .filter-bar .buttons ul li:last-child {
          margin-right: 0; }
  .filter-bar .field-separator {
    display: inline-block;
    height: 4.5em;
    margin-right: 1em;
    border-left: 1px solid #D9DCE0;
    vertical-align: top; }
  .filter-bar.tall .field {
    margin-top: 1.5em; }
  .filter-bar.tall .field-wrap .field {
    margin-top: 0; }

/* --- On Page Links/Filters --- */
.page-filter-links {
  margin: 3em 0 6em 0 !important;
  padding: 0 0 .5em 0 !important;
  margin-bottom: 0.5em;
  font-family: franklin-gothic-atf, sans-serif;
  font-size: 0.6875em;
  font-weight: 500;
  color: #A6192E;
  letter-spacing: 0.1em;
  line-height: 2.2em;
  text-transform: uppercase;
  list-style-type: none;
  border-bottom: 1px solid #D9DCE0; }
  .page-filter-links li {
    display: inline-block;
    margin-right: 2em;
    text-transform: uppercase; }
    .page-filter-links li a, .page-filter-links li a:active, .page-filter-links li a:visited {
      text-decoration: none;
      filter: alpha(opacity=40);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
      -moz-opacity: 0.4;
      -khtml-opacity: 0.4;
      opacity: 0.4; }
      .page-filter-links li a:hover, .page-filter-links li a.active, .page-filter-links li a:active:hover, .page-filter-links li a:active.active, .page-filter-links li a:visited:hover, .page-filter-links li a:visited.active {
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1; }

/* --- Vertical Alignment Wrappers --- */
.outer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  .outer .inner {
    display: table;
    width: 100%;
    height: 100%; }
    .outer .inner .wrap {
      display: table-cell;
      vertical-align: middle; }

/* --- Visual Tag --- */
.tag {
  display: inline-block;
  margin-bottom: .5em;
  padding: .6em 2em .6em 1.5em;
  font-size: .7em;
  font-family: 'Archivo Narrow', sans-serif;
  letter-spacing: .01em;
  color: #1B2532;
  text-transform: uppercase;
  font-weight: bold;
  border: 1px solid #D9DCE0;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  -o-border-radius: 4px;
  -ms-border-radius: 4px;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  .tag span {
    display: inline-block;
    margin-right: .7em;
    font-size: 1.1em; }

/* --- Skip To Content --- */
.skip {
  position: fixed;
  top: -100px;
  left: 10vw;
  z-index: 25;
  padding: .75em 1em;
  text-decoration: none;
  line-height: 1;
  font-size: .75em;
  font-weight: bold;
  text-transform: uppercase;
  color: #FFFFFF !important;
  background: #26384E;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  .skip:hover {
    color: #333 !important;
    background: #FFFFFF; }
  .skip:focus {
    top: 7px;
    outline: none;
    -moz-outline: none; }

/* --- Wrap video and Preserve Ratio --- */
.video-wrapper {
  position: relative;
  margin-bottom: 2em;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0; }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* --- Overlay --- */
#overlay {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #FFFFFF;
  background: rgba(255, 255, 255, 0.87); }

#overlay-close {
  display: none;
  position: fixed;
  z-index: 102;
  top: 20px;
  right: 20px;
  font-size: 1.4em;
  color: #000;
  cursor: pointer; }

#overlay-image {
  position: fixed;
  z-index: 101; }

#overlay-content {
  position: fixed;
  z-index: 101;
  top: 200%;
  left: 50%; }

/* --- Error Reporting --- */
.error {
  color: #ED6A5A !important; }

/* --- Pagination Styles --- */
.pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 3em;
  padding-top: 3em;
  border-top: 1px solid #D9DCE0;
  text-align: center;
  /*
	a:not(.button), a:not(.button):active, a:not(.button):visited {
		@extend button.no-style;
		
		margin: 0 .25em;
		padding: 0 !important;
		line-height: 40px !important;
		text-align: center;
		font-size: .778em !important;
		
		
	}
*/ }
  @media only screen and (max-width: 1125px) {
    .pagination {
      flex-wrap: wrap;
      justify-content: center;
      margin-top: 2em;
      padding-top: 2em; } }
  .pagination .prev, .pagination .next {
    font-size: 4em;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: 700;
    text-decoration: none;
    fill: transparent;
    color: #A6192E;
    stroke-width: 1px !important;
    -moz-text-stroke-color: #A6192E !important;
    -moz-text-fill-color: transparent !important;
    -moz-text-stroke-width: 1px !important;
    -webkit-text-stroke-color: #A6192E !important;
    -webkit-text-fill-color: transparent !important;
    -webkit-text-stroke-width: 1px !important;
    -o-text-stroke-color: #A6192E !important;
    -o-text-fill-color: transparent !important;
    -o-text-stroke-width: 1px !important;
    -ms-text-stroke-color: #A6192E !important;
    -ms-text-fill-color: transparent !important;
    -ms-text-stroke-width: 1px !important;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 525px) {
      .pagination .prev, .pagination .next {
        stroke-width: 0.5px;
        -moz-text-stroke-width: 0.5px !important;
        -webkit-text-stroke-width: 0.5px !important;
        -o-text-stroke-width: 0.5px !important;
        -ms-text-stroke-width: 0.5px !important; } }
    @media only screen and (max-width: 1125px) {
      .pagination .prev, .pagination .next {
        width: 100%;
        line-height: 1.5; } }
    @media only screen and (max-width: 525px) {
      .pagination .prev, .pagination .next {
        color: #A6192E;
        stroke-width: 2px !important;
        -moz-text-stroke-color: #A6192E !important;
        -moz-text-fill-color: transparent !important;
        -moz-text-stroke-width: 2px !important;
        -webkit-text-stroke-color: #A6192E !important;
        -webkit-text-fill-color: transparent !important;
        -webkit-text-stroke-width: 2px !important;
        -o-text-stroke-color: #A6192E !important;
        -o-text-fill-color: transparent !important;
        -o-text-stroke-width: 2px !important;
        -ms-text-stroke-color: #A6192E !important;
        -ms-text-fill-color: transparent !important;
        -ms-text-stroke-width: 2px !important; } }
  @media only screen and (max-width: 525px) and (max-width: 525px) {
    .pagination .prev, .pagination .next {
      stroke-width: 1px;
      -moz-text-stroke-width: 1px !important;
      -webkit-text-stroke-width: 1px !important;
      -o-text-stroke-width: 1px !important;
      -ms-text-stroke-width: 1px !important; } }
    .pagination .prev svg g, .pagination .next svg g {
      fill: transparent; }
    .pagination .prev:hover, .pagination .next:hover {
      color: #A6192E;
      stroke-width: 1px !important;
      -moz-text-stroke-color: #A6192E !important;
      -moz-text-fill-color: #A6192E !important;
      -moz-text-stroke-width: 1px !important;
      -webkit-text-stroke-color: #A6192E !important;
      -webkit-text-fill-color: #A6192E !important;
      -webkit-text-stroke-width: 1px !important;
      -o-text-stroke-color: #A6192E !important;
      -o-text-fill-color: #A6192E !important;
      -o-text-stroke-width: 1px !important;
      -ms-text-stroke-color: #A6192E !important;
      -ms-text-fill-color: #A6192E !important;
      -ms-text-stroke-width: 1px !important; }
      @media only screen and (max-width: 525px) {
        .pagination .prev:hover, .pagination .next:hover {
          stroke-width: 0.5px;
          -moz-text-stroke-width: 0.5px !important;
          -webkit-text-stroke-width: 0.5px !important;
          -o-text-stroke-width: 0.5px !important;
          -ms-text-stroke-width: 0.5px !important; } }
      .pagination .prev:hover svg g, .pagination .next:hover svg g {
        fill: #A6192E; }
  @media only screen and (max-width: 1125px) {
    .pagination .pages {
      margin: 1em 0; } }
  .pagination .pages a, .pagination .pages a:active, .pagination .pages a:visited {
    display: inline-block;
    width: 45px !important;
    height: 45px !important;
    margin: 0 5px;
    text-decoration: none;
    font-size: .778em;
    line-height: 42px !important;
    background: #A6192E;
    color: #FFFFFF;
    font-weight: 700;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 910px) {
      .pagination .pages a, .pagination .pages a:active, .pagination .pages a:visited {
        margin: 5px; } }
    .pagination .pages a:hover, .pagination .pages a.selected, .pagination .pages a:active:hover, .pagination .pages a:active.selected, .pagination .pages a:visited:hover, .pagination .pages a:visited.selected {
      background: #26384E !important; }

/* --- Video Grid --- */
.video-gallery .title {
  font-size: 1.22em;
  letter-spacing: -0.01em;
  line-height: 1.35em; }
  .video-gallery .title:last-child {
    margin-bottom: 0; }

.video-gallery .full {
  margin-bottom: 4em;
  padding-bottom: 4em;
  border-bottom: 1px solid #D9DCE0; }
  .video-gallery .full .title {
    font-size: 1.55em;
    letter-spacing: 0.01em;
    line-height: 1.35em;
    margin-bottom: .5em; }
  .video-gallery .full :last-child {
    margin-bottom: 0; }

.video-gallery .span8 {
  margin-bottom: 1em; }
  .video-gallery .span8 .video-wrapper {
    margin-bottom: 0; }

/* --- Image Viewer --- */
.gallery .span6 {
  position: relative;
  margin-bottom: 20px;
  background-color: #8CCDD3;
  cursor: pointer; }
  .gallery .span6 img {
    float: left;
    width: 100%; }
  .gallery .span6:hover img {
    filter: alpha(opacity=75);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
    -moz-opacity: 0.75;
    -khtml-opacity: 0.75;
    opacity: 0.75; }
  .gallery .span6.view-more {
    height: 0;
    padding-bottom: calc(25% - 20px);
    background: #A6192E; }
    .gallery .span6.view-more p {
      position: absolute;
      top: 50%;
      left: 0;
      width: 100%;
      margin-bottom: 0.5em;
      font-family: franklin-gothic-atf, sans-serif;
      font-size: 0.6875em;
      font-weight: 500;
      color: #A6192E;
      letter-spacing: 0.1em;
      line-height: 2.2em;
      text-transform: uppercase;
      text-align: center;
      color: #FFFFFF;
      transform: translate(0, -50%);
      perspective: 1000px;
      -moz-transform: translate(0, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -50%);
      -ms-perspective: 1000; }
    .gallery .span6.view-more:hover {
      background: #8CCDD3; }
      .gallery .span6.view-more:hover:after {
        display: none; }

#viewer {
  position: fixed;
  z-index: 25;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #F5F5F5;
  transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out; }
  #viewer #viewer-header {
    position: relative;
    z-index: 1;
    height: 60px;
    background: #FFFFFF;
    border-bottom: 1px solid #D9DCE0; }
    #viewer #viewer-header h2 {
      float: left;
      display: inline;
      margin: 0 1.5em 0 0;
      padding-left: 1em;
      line-height: 60px;
      font-size: 1.5em; }
    #viewer #viewer-header #viewer-close {
      float: right;
      display: inline;
      padding: 20px;
      cursor: pointer; }
      #viewer #viewer-header #viewer-close:before {
        font-family: 'icomoon';
        content: '\e919'; }
    #viewer #viewer-header p {
      float: right;
      display: inline;
      padding: 0 2em;
      line-height: 60px;
      font-weight: 800;
      font-size: .85em;
      border-left: 1px solid #D9DCE0;
      border-right: 1px solid #D9DCE0; }
    #viewer #viewer-header em {
      font-weight: 300;
      color: #777; }
  #viewer #viewer-previous, #viewer #viewer-next {
    position: absolute;
    z-index: 1;
    top: 50%;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
    #viewer #viewer-previous:before, #viewer #viewer-next:before {
      position: absolute;
      width: 70px;
      height: 70px;
      background: #FFFFFF;
      content: '';
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
    #viewer #viewer-previous:after, #viewer #viewer-next:after {
      position: absolute;
      font-family: 'icomoon';
      font-size: 70px;
      color: #000;
      line-height: 1; }
  #viewer #viewer-previous {
    left: 0; }
    #viewer #viewer-previous:before {
      left: -50px; }
    #viewer #viewer-previous:after {
      content: '\e934'; }
  #viewer #viewer-next {
    right: 0; }
    #viewer #viewer-next:before {
      right: -50px; }
    #viewer #viewer-next:after {
      right: 0;
      content: '\e935'; }
  #viewer #viewer-image {
    position: absolute;
    z-index: 0;
    top: 60px;
    left: 0;
    width: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }

/* --- Lucy Slideshow --- */
.lucy-slideshow-wrap {
  position: relative;
  margin-bottom: 1.5em;
  padding-bottom: 1em; }
  @media only screen and (max-width: 700px) {
    .lucy-slideshow-wrap {
      width: calc(100% + 10vw);
      margin-left: -5vw; } }
  @media only screen and (max-width: 525px) {
    .lucy-slideshow-wrap {
      width: calc(100% + 50px);
      margin-left: -25px; } }
  .lucy-slideshow-wrap nav {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    width: 100%;
    align-items: center; }
    @media only screen and (max-width: 700px) {
      .lucy-slideshow-wrap nav {
        padding: 0 5vw;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; } }
    @media only screen and (max-width: 525px) {
      .lucy-slideshow-wrap nav {
        padding: 0 25px; } }
    .lucy-slideshow-wrap nav ul {
      display: flex;
      margin: 0 !important;
      padding: 0 !important;
      list-style-type: none; }
      .lucy-slideshow-wrap nav ul li {
        width: 3vw;
        height: 4px;
        margin-right: 5px;
        text-indent: -9999px;
        background: rgba(27, 37, 50, 0.13);
        cursor: pointer;
        color: #FEFEFF;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
        @media only screen and (max-width: 1125px) {
          .lucy-slideshow-wrap nav ul li {
            width: 4vw; } }
        @media only screen and (max-width: 700px) {
          .lucy-slideshow-wrap nav ul li {
            width: 5vw; } }
        @media only screen and (max-width: 525px) {
          .lucy-slideshow-wrap nav ul li {
            width: 6vw; } }
        .lucy-slideshow-wrap nav ul li:last-child {
          margin-right: 0; }
        .lucy-slideshow-wrap nav ul li.selected {
          background: #A6192E; }
        .lucy-slideshow-wrap nav ul li:hover {
          background: #26384E; }
    .lucy-slideshow-wrap nav .previous {
      margin: 0 .75em 0 auto; }
    .lucy-slideshow-wrap nav .previous, .lucy-slideshow-wrap nav .next {
      text-decoration: none; }
      .lucy-slideshow-wrap nav .previous:hover, .lucy-slideshow-wrap nav .next:hover {
        color: #A6192E; }

.lucy-slideshow {
  position: relative;
  width: 100%;
  height: 0;
  margin-bottom: 2em;
  padding-bottom: 58%;
  background: #F9F9F9;
  overflow: hidden; }
  .lucy-slideshow .slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    .lucy-slideshow .slider .slide {
      position: relative;
      float: left;
      display: inline;
      height: 100%;
      line-height: 0; }
      .lucy-slideshow .slider .slide .video-wrapper {
        margin-bottom: 0;
        padding-bottom: 56%; }
      .lucy-slideshow .slider .slide img {
        position: absolute;
        top: 50%;
        left: 50%;
        max-width: 100%;
        max-height: 100%;
        width: auto;
        transform: translate(-50%, -50%);
        perspective: 1000px;
        -moz-transform: translate(-50%, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(-50%, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(-50%, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(-50%, -50%);
        -ms-perspective: 1000; }
      .lucy-slideshow .slider .slide p {
        position: absolute;
        width: 100%;
        bottom: 0;
        left: 0;
        margin-bottom: 0;
        padding: 1.5em;
        line-height: 1.2;
        color: #FFFFFF;
        font-size: .9em;
        text-align: center;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
      .lucy-slideshow .slider .slide.caption:before {
        position: absolute;
        z-index: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: transparent url(../images/slideshow-gradient.png) repeat-x bottom left;
        content: ''; }
    .lucy-slideshow .slider.count1 {
      width: 100%; }
      .lucy-slideshow .slider.count1 .slide {
        width: 100%; }
    .lucy-slideshow .slider.count2 {
      width: 200%; }
      .lucy-slideshow .slider.count2 .slide {
        width: 50%; }
    .lucy-slideshow .slider.count3 {
      width: 300%; }
      .lucy-slideshow .slider.count3 .slide {
        width: 33.33333%; }
    .lucy-slideshow .slider.count4 {
      width: 400%; }
      .lucy-slideshow .slider.count4 .slide {
        width: 25%; }
    .lucy-slideshow .slider.count5 {
      width: 500%; }
      .lucy-slideshow .slider.count5 .slide {
        width: 20%; }
    .lucy-slideshow .slider.count6 {
      width: 600%; }
      .lucy-slideshow .slider.count6 .slide {
        width: 16.66667%; }
    .lucy-slideshow .slider.count7 {
      width: 700%; }
      .lucy-slideshow .slider.count7 .slide {
        width: 14.28571%; }
    .lucy-slideshow .slider.count8 {
      width: 800%; }
      .lucy-slideshow .slider.count8 .slide {
        width: 12.5%; }
    .lucy-slideshow .slider.count9 {
      width: 900%; }
      .lucy-slideshow .slider.count9 .slide {
        width: 11.11111%; }
    .lucy-slideshow .slider.count10 {
      width: 1000%; }
      .lucy-slideshow .slider.count10 .slide {
        width: 10%; }
    .lucy-slideshow .slider.count11 {
      width: 1100%; }
      .lucy-slideshow .slider.count11 .slide {
        width: 9.09091%; }
    .lucy-slideshow .slider.count12 {
      width: 1200%; }
      .lucy-slideshow .slider.count12 .slide {
        width: 8.33333%; }
    .lucy-slideshow .slider.count13 {
      width: 1300%; }
      .lucy-slideshow .slider.count13 .slide {
        width: 7.69231%; }
    .lucy-slideshow .slider.count14 {
      width: 1400%; }
      .lucy-slideshow .slider.count14 .slide {
        width: 7.14286%; }
    .lucy-slideshow .slider.count15 {
      width: 1500%; }
      .lucy-slideshow .slider.count15 .slide {
        width: 6.66667%; }
  .lucy-slideshow.position1 .slider {
    left: 0%; }
  .lucy-slideshow.position2 .slider {
    left: -100%; }
  .lucy-slideshow.position3 .slider {
    left: -200%; }
  .lucy-slideshow.position4 .slider {
    left: -300%; }
  .lucy-slideshow.position5 .slider {
    left: -400%; }
  .lucy-slideshow.position6 .slider {
    left: -500%; }
  .lucy-slideshow.position7 .slider {
    left: -600%; }
  .lucy-slideshow.position8 .slider {
    left: -700%; }
  .lucy-slideshow.position9 .slider {
    left: -800%; }
  .lucy-slideshow.position10 .slider {
    left: -900%; }
  .lucy-slideshow.position11 .slider {
    left: -1000%; }
  .lucy-slideshow.position12 .slider {
    left: -1100%; }
  .lucy-slideshow.position13 .slider {
    left: -1200%; }
  .lucy-slideshow.position14 .slider {
    left: -1300%; }
  .lucy-slideshow.position15 .slider {
    left: -1400%; }
  .lucy-slideshow .previous, .lucy-slideshow .next {
    position: absolute;
    top: 50%;
    left: 0;
    width: 2em;
    height: 4em;
    margin-top: -2em;
    text-indent: -9999px;
    background: #1B2532;
    cursor: pointer; }
    .lucy-slideshow .previous:after, .lucy-slideshow .next:after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      width: 0;
      height: 0;
      margin: -4px 0 0 -3px;
      border-style: solid;
      border-width: 4px 5px 4px 0;
      border-color: transparent #FFFFFF transparent transparent; }
    .lucy-slideshow .previous:hover, .lucy-slideshow .next:hover {
      background: #121921; }
  .lucy-slideshow .next {
    left: auto;
    right: 0; }
    .lucy-slideshow .next:after {
      border-width: 4px 0 4px 5px;
      border-color: transparent transparent transparent #FFFFFF; }
  .lucy-slideshow:hover .thumbs {
    bottom: 0; }

/* --- Social Icons --- */
ul.social-icons {
  display: flex;
  margin: 0 !important;
  padding: 0 !important;
  list-style-type: none; }
  ul.social-icons a, ul.social-icons a:active, ul.social-icons a:visited {
    position: relative;
    display: block;
    width: 3em;
    height: 3em;
    margin-right: 1em;
    color: #FFFFFF;
    text-decoration: none;
    background: #26384E;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 1125px) {
      ul.social-icons a, ul.social-icons a:active, ul.social-icons a:visited {
        width: 4.5vw;
        height: 4.5vw; } }
    @media only screen and (max-width: 910px) {
      ul.social-icons a, ul.social-icons a:active, ul.social-icons a:visited {
        width: 3em;
        height: 3em; } }
    @media only screen and (max-width: 525px) {
      ul.social-icons a, ul.social-icons a:active, ul.social-icons a:visited {
        width: 2.5em;
        height: 2.5em; } }
    ul.social-icons a span, ul.social-icons a:active span, ul.social-icons a:visited span {
      position: absolute;
      top: 50%;
      left: 50%;
      font-size: 1.25em;
      transform: translate(-50%, -50%);
      perspective: 1000px;
      -moz-transform: translate(-50%, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(-50%, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(-50%, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(-50%, -50%);
      -ms-perspective: 1000;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      @media only screen and (max-width: 1125px) {
        ul.social-icons a span, ul.social-icons a:active span, ul.social-icons a:visited span {
          font-size: 1.7vw; } }
      @media only screen and (max-width: 910px) {
        ul.social-icons a span, ul.social-icons a:active span, ul.social-icons a:visited span {
          font-size: 1.25em; } }
      @media only screen and (max-width: 525px) {
        ul.social-icons a span, ul.social-icons a:active span, ul.social-icons a:visited span {
          font-size: 1em; } }
    ul.social-icons a:hover, ul.social-icons a:active:hover, ul.social-icons a:visited:hover {
      background: #FFFFFF; }
      ul.social-icons a:hover span, ul.social-icons a:active:hover span, ul.social-icons a:visited:hover span {
        color: #26384E; }

/* --- Structural Styles --- */
.lucy-bucket.bucket-edge {
  padding: 0; }
  .lucy-bucket.bucket-edge:first-of-type {
    padding-top: 0 !important; }
  .lucy-bucket.bucket-edge[data-padding='top'] {
    margin-top: calc(var(--spacer) * 2); }
    @media only screen and (max-width: 525px) {
      .lucy-bucket.bucket-edge[data-padding='top'] {
        margin-top: var(--spacer); } }
  .lucy-bucket.bucket-edge[data-padding='bottom'] {
    margin-bottom: calc(var(--spacer) * 2); }
    @media only screen and (max-width: 525px) {
      .lucy-bucket.bucket-edge[data-padding='bottom'] {
        margin-bottom: var(--spacer); } }
  .lucy-bucket.bucket-edge[data-padding='both'] {
    margin: calc(var(--spacer) * 2) 0; }
    @media only screen and (max-width: 525px) {
      .lucy-bucket.bucket-edge[data-padding='both'] {
        margin: var(--spacer) 0; } }

.lucy-bucket {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  .lucy-bucket:first-child {
    padding-top: 0 !important; }
  .lucy-bucket[data-padding='top'] {
    padding-top: 4em; }
    @media only screen and (max-width: 1125px) {
      .lucy-bucket[data-padding='top'] {
        padding-top: 2em; } }
    @media only screen and (max-width: 910px) {
      .lucy-bucket[data-padding='top'] {
        padding-top: 25px; } }
  .lucy-bucket[data-padding='bottom'] {
    padding-bottom: 4em; }
    @media only screen and (max-width: 1125px) {
      .lucy-bucket[data-padding='bottom'] {
        padding-bottom: 2em; } }
    @media only screen and (max-width: 910px) {
      .lucy-bucket[data-padding='bottom'] {
        padding-bottom: 25px; } }
  .lucy-bucket[data-padding='both'] {
    padding: 4em 0; }
    @media only screen and (max-width: 1125px) {
      .lucy-bucket[data-padding='both'] {
        padding: 2em 0; } }
    @media only screen and (max-width: 910px) {
      .lucy-bucket[data-padding='both'] {
        padding: 25px 0; } }
  .lucy-bucket[data-border='1'] {
    border-bottom: 1px solid #D9DCE0; }
  .lucy-bucket.dark h1, .lucy-bucket.dark h2, .lucy-bucket.dark h3, .lucy-bucket.dark h4, .lucy-bucket.dark #lucy-checkout-fields h2, #lucy-checkout-fields .lucy-bucket.dark h2, .lucy-bucket.dark p, .lucy-bucket.dark blockquote, .lucy-bucket.dark ul, .lucy-bucket.has-image h1, .lucy-bucket.has-image h2, .lucy-bucket.has-image h3, .lucy-bucket.has-image h4, .lucy-bucket.has-image #lucy-checkout-fields h2, #lucy-checkout-fields .lucy-bucket.has-image h2, .lucy-bucket.has-image p, .lucy-bucket.has-image blockquote, .lucy-bucket.has-image ul {
    color: #FFFFFF !important;
    -moz-osx-font-smoothing: grayscale;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    .lucy-bucket.dark h1 a.button, .lucy-bucket.dark h1 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark h1 a.add, .lucy-bucket.dark h2 a.button, .lucy-bucket.dark h2 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark h2 a.add, .lucy-bucket.dark h3 a.button, .lucy-bucket.dark h3 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark h3 a.add, .lucy-bucket.dark h4 a.button, .lucy-bucket.dark #lucy-checkout-fields h2 a.button, #lucy-checkout-fields .lucy-bucket.dark h2 a.button, .lucy-bucket.dark h4 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark h4 a.add, .lucy-bucket.dark #lucy-checkout-fields h2 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark #lucy-checkout-fields h2 a.add, #lucy-checkout-fields .lucy-bucket.dark h2 #sponsorship-levels .level form a.add, #sponsorship-levels .level form #lucy-checkout-fields .lucy-bucket.dark h2 a.add, .lucy-bucket.dark p a.button, .lucy-bucket.dark p #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark p a.add, .lucy-bucket.dark blockquote a.button, .lucy-bucket.dark blockquote #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark blockquote a.add, .lucy-bucket.dark ul a.button, .lucy-bucket.dark ul #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.dark ul a.add, .lucy-bucket.has-image h1 a.button, .lucy-bucket.has-image h1 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image h1 a.add, .lucy-bucket.has-image h2 a.button, .lucy-bucket.has-image h2 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image h2 a.add, .lucy-bucket.has-image h3 a.button, .lucy-bucket.has-image h3 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image h3 a.add, .lucy-bucket.has-image h4 a.button, .lucy-bucket.has-image #lucy-checkout-fields h2 a.button, #lucy-checkout-fields .lucy-bucket.has-image h2 a.button, .lucy-bucket.has-image h4 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image h4 a.add, .lucy-bucket.has-image #lucy-checkout-fields h2 #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image #lucy-checkout-fields h2 a.add, #lucy-checkout-fields .lucy-bucket.has-image h2 #sponsorship-levels .level form a.add, #sponsorship-levels .level form #lucy-checkout-fields .lucy-bucket.has-image h2 a.add, .lucy-bucket.has-image p a.button, .lucy-bucket.has-image p #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image p a.add, .lucy-bucket.has-image blockquote a.button, .lucy-bucket.has-image blockquote #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image blockquote a.add, .lucy-bucket.has-image ul a.button, .lucy-bucket.has-image ul #sponsorship-levels .level form a.add, #sponsorship-levels .level form .lucy-bucket.has-image ul a.add {
      color: #FFFFFF !important;
      -moz-osx-font-smoothing: grayscale;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
  .lucy-bucket.dark .page-item, .lucy-bucket.has-image .page-item {
    border-color: rgba(255, 255, 255, 0.5); }
    .lucy-bucket.dark .page-item .button, .lucy-bucket.dark .page-item #sponsorship-levels .level form .add, #sponsorship-levels .level form .lucy-bucket.dark .page-item .add, .lucy-bucket.has-image .page-item .button, .lucy-bucket.has-image .page-item #sponsorship-levels .level form .add, #sponsorship-levels .level form .lucy-bucket.has-image .page-item .add {
      color: #FFFFFF !important;
      -moz-osx-font-smoothing: grayscale;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
  .lucy-bucket.has-image:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    content: ''; }
  .lucy-bucket.live[data-height='25'] {
    height: calc(25vh - 160px); }
    @media only screen and (max-width: 525px) {
      .lucy-bucket.live[data-height='25'] {
        height: calc(15vh - 160px); } }
  .lucy-bucket.live[data-height='50'] {
    height: calc(50vh - 160px); }
    @media only screen and (max-width: 525px) {
      .lucy-bucket.live[data-height='50'] {
        height: calc(40vh - 160px); } }
  .lucy-bucket.live[data-height='75'] {
    height: calc(75vh - 160px); }
    @media only screen and (max-width: 525px) {
      .lucy-bucket.live[data-height='75'] {
        height: calc(65vh - 160px); } }
  .lucy-bucket.live[data-height='100'] {
    height: calc(100vh - 160px); }
  .lucy-bucket.live .bucket-outer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .lucy-bucket.live .bucket-wrap {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    display: table;
    width: 100%;
    height: 100%; }
  .lucy-bucket.live .bucket-inner {
    display: table-cell;
    vertical-align: middle; }
  @media only screen and (max-width: 910px) {
    .lucy-bucket .right-7030, .lucy-bucket .left-7030, .lucy-bucket .left-50, .lucy-bucket .right-50 {
      width: calc(100% - 20px); } }
  .lucy-bucket img {
    display: block;
    margin-bottom: 1em; }

.left-7030 .plugin-output.text, .left-50 .plugin-output.text, .left-3col .plugin-output.text, .middle-3col .plugin-output.text, .four-1 .plugin-output.text, .four-2 .plugin-output.text, .four-3 .plugin-output.text {
  padding-right: 5%; }
  @media only screen and (max-width: 910px) {
    .left-7030 .plugin-output.text, .left-50 .plugin-output.text, .left-3col .plugin-output.text, .middle-3col .plugin-output.text, .four-1 .plugin-output.text, .four-2 .plugin-output.text, .four-3 .plugin-output.text {
      padding-right: 0; } }

#page-content-below {
  padding-top: 2em; }

.center {
  text-align: center; }

.lucy-modal-close {
  color: #4A4C51 !important; }

form.custom button.button.submit, #sponsorship-levels .level form.custom button.submit.add, #sponsorship-levels .level form.custom .overlay-card .bottom .submit.add.level-filled, .overlay-card .bottom #sponsorship-levels .level form.custom .submit.add.level-filled, form.custom .overlay-card .bottom .button.submit.level-filled, .overlay-card .bottom form.custom .button.submit.level-filled {
  font-size: 1em !important; }

/* --- Miscellaneous --- */
.header-wrap {
  display: flex;
  margin-bottom: 2em;
  justify-content: space-between;
  align-items: center; }
  .header-wrap h2 {
    margin-bottom: 0 !important; }
  @media only screen and (max-width: 910px) {
    .header-wrap .action {
      display: none; } }

.action {
  font-weight: 500;
  text-decoration: none !important; }
  .action span {
    display: inline-block;
    margin-right: .5em;
    transition: margin 0.2s ease-in-out;
    -moz-transition: margin 0.2s ease-in-out;
    -webkit-transition: margin 0.2s ease-in-out;
    -o-transition: margin 0.2s ease-in-out;
    -ms-transition: margin 0.2s ease-in-out; }
  .action:hover {
    color: #A6192E !important; }
    .action:hover span {
      margin-right: 1em; }

.g-recaptcha {
  margin-bottom: 20px; }

a img {
  border: none; }

.separator {
  margin: 2em 0;
  border-bottom: 1px solid #D9DCE0; }

.tablet-only {
  display: none !important; }
  @media only screen and (max-width: 910px) {
    .tablet-only {
      display: block !important; } }

.mobile-only {
  display: none !important; }
  @media only screen and (max-width: 525px) {
    .mobile-only {
      display: block !important; } }

.no-transition {
  transition: none !important;
  -moz-transition: none !important;
  -webkit-transition: none !important;
  -o-transition: none !important;
  -ms-transition: none !important; }

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
  color: #757575 !important;
  background: #FFF !important; }

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none; }

.ui-datepicker {
  width: 17em;
  display: none;
  border: none !important; }

.ui-datepicker .ui-icon {
  width: 25px; }

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: .5em 0; }

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 35%;
  width: 3em;
  height: 2em;
  font-size: 1.35em;
  text-decoration: none; }

.ui-datepicker .ui-datepicker-prev {
  left: 2px; }

.ui-datepicker .ui-datepicker-next {
  right: 2px; }

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px; }

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px; }

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  margin-top: 1px; }

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-indent: 0 !important;
  font-size: .8em;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: none; }

.ui-datepicker .ui-datepicker-prev span {
  content: "\e922"; }

.ui-datepicker .ui-datepicker-next span {
  content: "\e920";
  text-align: right; }

.ui-datepicker-next span {
  float: right; }

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  font-family: franklin-gothic-atf, sans-serif !important;
  font-weight: 500;
  font-size: 1.5em;
  line-height: 1.5em;
  text-align: center; }

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0; }

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%; }

.ui-datepicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em; }

.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: 700;
  font-family: franklin-gothic-atf, sans-serif !important;
  color: #A6192E;
  font-size: .85em;
  border: 0; }

.ui-datepicker td {
  border: none !important;
  padding: 1px; }

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: .5em;
  font-size: .85em;
  font-weight: 300 !important;
  text-align: center;
  text-decoration: none;
  border: none !important; }

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: .7em 0 0 0;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0; }

.ui-datepicker .ui-datepicker-buttonpane button, .ui-datepicker .ui-datepicker-buttonpane .overlay-card .bottom .level-filled, .overlay-card .bottom .ui-datepicker .ui-datepicker-buttonpane .level-filled {
  float: right;
  margin: .5em .2em .4em;
  cursor: pointer;
  padding: .2em .6em .3em .6em;
  width: auto;
  overflow: visible; }

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current, .ui-datepicker .ui-datepicker-buttonpane .overlay-card .bottom .ui-datepicker-current.level-filled, .overlay-card .bottom .ui-datepicker .ui-datepicker-buttonpane .ui-datepicker-current.level-filled {
  float: left; }

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto; }

.ui-datepicker-multi .ui-datepicker-group {
  float: left; }

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto .4em; }

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%; }

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%; }

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%; }

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0; }

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left; }

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0; }

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl; }

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button, .ui-datepicker-rtl .ui-datepicker-buttonpane .overlay-card .bottom .level-filled, .overlay-card .bottom .ui-datepicker-rtl .ui-datepicker-buttonpane .level-filled {
  float: left; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current, .ui-datepicker-rtl .ui-datepicker-buttonpane .overlay-card .bottom .ui-datepicker-current.level-filled, .overlay-card .bottom .ui-datepicker-rtl .ui-datepicker-buttonpane .ui-datepicker-current.level-filled,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right; }

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px; }

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  font-weight: bold;
  color: #1B2532; }

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: #454545;
  text-decoration: none; }

.ui-visual-focus {
  box-shadow: 0 0 3px 1px #5e9ed6; }

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  color: #FFFFFF !important;
  background: #A6192E !important; }

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #FFFFFF;
  text-decoration: none;
  background: #A6192E; }

/* --- Lucy Style Overrides --- */
.ui-widget {
  font-family: franklin-gothic-atf, sans-serif; }

.ui-datepicker a, .ui-datepicker a:active, .ui-datepicker a:visited {
  border: none !important; }

.ui-datepicker .ui-datepicker-header {
  margin: 1em 0 .5em 0; }
  @media only screen and (max-width: 1125px) {
    .ui-datepicker .ui-datepicker-header {
      margin: 1em 0; } }
  .ui-datepicker .ui-datepicker-header .ui-datepicker-title {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 1.1em;
    font-weight: 500;
    letter-spacing: .5px; }
    @media only screen and (max-width: 1125px) {
      .ui-datepicker .ui-datepicker-header .ui-datepicker-title {
        margin: 0;
        font-size: 1em; } }
  .ui-datepicker .ui-datepicker-header .ui-datepicker-prev, .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
    text-decoration: none; }

.ui-datepicker .ui-datepicker-calendar {
  font-size: .75em; }
  .ui-datepicker .ui-datepicker-calendar thead {
    font-size: 1em;
    font-weight: 500; }
  .ui-datepicker .ui-datepicker-calendar td {
    text-align: center !important;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1; }
    .ui-datepicker .ui-datepicker-calendar td.active span, .ui-datepicker .ui-datepicker-calendar td a {
      background-color: #fbf4f5; }
    .ui-datepicker .ui-datepicker-calendar td span, .ui-datepicker .ui-datepicker-calendar td a {
      display: inline-block;
      width: 32px;
      height: 32px;
      padding: 0;
      line-height: 32px;
      border-radius: 100%;
      -moz-border-radius: 100%;
      -webkit-border-radius: 100%;
      -o-border-radius: 100%;
      -ms-border-radius: 100%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
      @media only screen and (max-width: 1440px) {
        .ui-datepicker .ui-datepicker-calendar td span, .ui-datepicker .ui-datepicker-calendar td a {
          width: 25px;
          height: 25px;
          line-height: 25px; } }
      @media only screen and (max-width: 1125px) {
        .ui-datepicker .ui-datepicker-calendar td span, .ui-datepicker .ui-datepicker-calendar td a {
          width: 20px;
          height: 20px;
          line-height: 20px;
          font-size: .667em; } }

/* --- Template Specific Includes --- */
#search-results .sub-header {
  margin-bottom: 1rem; }

#search-results .result-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem 0;
  border-top: 1px solid #D9DCE0; }
  #search-results .result-container > * {
    margin-bottom: 0; }
  #search-results .result-container p.result-title a:any-link {
    font-weight: 700; }
  #search-results .result-container:last-of-type {
    border-bottom: 1px solid #D9DCE0; }

/* --- Pagination Styles --- */
#lucy-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  width: 100%;
  padding-top: 2rem; }
  #lucy-pagination svg {
    color: #FFF; }
  #lucy-pagination .page-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    font-size: .889rem; }
  #lucy-pagination .arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2rem;
    height: 2rem;
    background-color: #A6192E;
    border-radius: 50%; }
    #lucy-pagination .arrow.disabled {
      cursor: not-allowed;
      opacity: .5; }
  #lucy-pagination .pages {
    display: flex;
    gap: .5rem; }
    #lucy-pagination .pages a:any-link {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 2.5rem;
      height: 2.5rem;
      font-size: .889rem;
      font-weight: 700;
      color: #1B2532;
      text-decoration: none;
      background-color: #F9F9F9;
      border-radius: 50%;
      transition: all .3s ease; }
      #lucy-pagination .pages a:any-link:hover, #lucy-pagination .pages a:any-link.selected {
        color: #FFF;
        background-color: #A6192E; }
  #lucy-pagination #page-selection {
    margin: 0 !important;
    min-width: 4rem;
    font-size: .889rem;
    padding-inline: 10px;
    border: 1px solid #D9DCE0; }

#hero {
  overflow: hidden;
  position: relative;
  width: 100%;
  min-height: 450px;
  height: 60vw;
  overflow: hidden; }
  @media only screen and (max-width: 910px) {
    #hero {
      height: 95vw; } }
  @media only screen and (max-width: 700px) {
    #hero {
      height: 108vw; } }
  #hero .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../images/home-hero.jpg); }
    @media only screen and (max-width: 700px) {
      #hero .bg {
        background-image: url(../images/home-hero-mobile.jpg);
        background-position: center top; } }
  #hero:before {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-image: url(../images/home-hero-mobile-gradient.png);
    background-repeat: repeat-x;
    background-size: contain;
    background-position: center bottom;
    content: ''; }
    @media only screen and (max-width: 700px) {
      #hero:before {
        display: block; } }

#hero.home .lucy-wrapper, #hero.home #layout-7030, #hero.home .content {
  height: 100%; }

@media only screen and (max-width: 700px) {
  #hero.home .header-gradient:before, #hero.home .header-gradient:after {
    display: none; } }

#hero.home .content {
  display: flex;
  flex-direction: column;
  justify-content: space-between; }
  @media only screen and (max-width: 700px) {
    #hero.home .content {
      display: block;
      position: absolute;
      bottom: 2em;
      z-index: 2;
      width: calc(100% - 10vw);
      height: auto; } }
  #hero.home .content .where-you-at-doe {
    height: 140px; }
  #hero.home .content h1 {
    width: 50%;
    margin-bottom: 0;
    padding: .5em 0;
    font-size: 6.25vw;
    line-height: 1.1;
    color: #FFFFFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    @media only screen and (max-width: 1440px) {
      #hero.home .content h1 {
        width: 60%;
        font-size: 7vw; } }
    @media only screen and (max-width: 1125px) {
      #hero.home .content h1 {
        width: 65%;
        margin-top: 150px;
        font-size: 7.8vw; } }
    @media only screen and (max-width: 910px) {
      #hero.home .content h1 {
        width: 70%;
        margin-top: calc(80px + 6vw);
        font-size: 9vw; } }
    @media only screen and (max-width: 700px) {
      #hero.home .content h1 {
        width: 100%;
        margin-top: 0;
        padding: 0;
        font-size: 13vw; } }
    #hero.home .content h1 span {
      color: #FFF;
      stroke-width: 2px !important;
      -moz-text-stroke-color: #FFF !important;
      -moz-text-fill-color: transparent !important;
      -moz-text-stroke-width: 2px !important;
      -webkit-text-stroke-color: #FFF !important;
      -webkit-text-fill-color: transparent !important;
      -webkit-text-stroke-width: 2px !important;
      -o-text-stroke-color: #FFF !important;
      -o-text-fill-color: transparent !important;
      -o-text-stroke-width: 2px !important;
      -ms-text-stroke-color: #FFF !important;
      -ms-text-fill-color: transparent !important;
      -ms-text-stroke-width: 2px !important; }
      @media only screen and (max-width: 525px) {
        #hero.home .content h1 span {
          stroke-width: 1px;
          -moz-text-stroke-width: 1px !important;
          -webkit-text-stroke-width: 1px !important;
          -o-text-stroke-width: 1px !important;
          -ms-text-stroke-width: 1px !important; } }
      @media only screen and (max-width: 1125px) {
        #hero.home .content h1 span {
          color: #FFF;
          stroke-width: 1px !important;
          -moz-text-stroke-color: #FFF !important;
          -moz-text-fill-color: transparent !important;
          -moz-text-stroke-width: 1px !important;
          -webkit-text-stroke-color: #FFF !important;
          -webkit-text-fill-color: transparent !important;
          -webkit-text-stroke-width: 1px !important;
          -o-text-stroke-color: #FFF !important;
          -o-text-fill-color: transparent !important;
          -o-text-stroke-width: 1px !important;
          -ms-text-stroke-color: #FFF !important;
          -ms-text-fill-color: transparent !important;
          -ms-text-stroke-width: 1px !important; } }
  @media only screen and (max-width: 1125px) and (max-width: 525px) {
    #hero.home .content h1 span {
      stroke-width: 0.5px;
      -moz-text-stroke-width: 0.5px !important;
      -webkit-text-stroke-width: 0.5px !important;
      -o-text-stroke-width: 0.5px !important;
      -ms-text-stroke-width: 0.5px !important; } }
  #hero.home .content .callouts {
    display: flex;
    justify-content: space-between;
    font-size: 1vw;
    line-height: 1.5; }
    @media only screen and (max-width: 1440px) {
      #hero.home .content .callouts {
        font-size: 1.2vw; } }
    @media only screen and (max-width: 1125px) {
      #hero.home .content .callouts {
        font-size: 1.3vw; } }
    @media only screen and (max-width: 910px) {
      #hero.home .content .callouts {
        flex-wrap: wrap;
        font-size: 2vw; } }
    @media only screen and (max-width: 700px) {
      #hero.home .content .callouts {
        display: none; } }
    #hero.home .content .callouts a, #hero.home .content .callouts a:active, #hero.home .content .callouts a:visited {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      flex: 0 0 25%;
      padding: 4em 5vw 4em 0;
      color: #FFFFFF;
      text-decoration: none;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      @media only screen and (max-width: 910px) {
        #hero.home .content .callouts a, #hero.home .content .callouts a:active, #hero.home .content .callouts a:visited {
          flex: 0 0 50%;
          padding: 0 10vw 2em 0; } }
      #hero.home .content .callouts a span, #hero.home .content .callouts a:active span, #hero.home .content .callouts a:visited span {
        margin-bottom: 3rem; }
        @media only screen and (max-width: 1440px) {
          #hero.home .content .callouts a span, #hero.home .content .callouts a:active span, #hero.home .content .callouts a:visited span {
            margin-bottom: 2.5vw; } }
      #hero.home .content .callouts a:after, #hero.home .content .callouts a:active:after, #hero.home .content .callouts a:visited:after {
        display: block;
        margin-top: auto;
        width: 2.5vw;
        height: 4px;
        background: #FFFFFF;
        content: '';
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
      #hero.home .content .callouts a:hover:after, #hero.home .content .callouts a:active:hover:after, #hero.home .content .callouts a:visited:hover:after {
        width: 4vw;
        background: #A6192E; }
    #hero.home .content .callouts strong {
      font-size: 1.5vw;
      font-weight: 500; }
      @media only screen and (max-width: 1440px) {
        #hero.home .content .callouts strong {
          font-size: 1.4vw; } }
      @media only screen and (max-width: 1125px) {
        #hero.home .content .callouts strong {
          font-size: 1.5vw; } }
      @media only screen and (max-width: 910px) {
        #hero.home .content .callouts strong {
          font-size: 2.2vw; } }

#mobile-callouts {
  display: none;
  background: #26384E; }
  @media only screen and (max-width: 700px) {
    #mobile-callouts {
      display: block; } }
  #mobile-callouts a, #mobile-callouts a:active, #mobile-callouts a:visited {
    display: block;
    padding: 5vw;
    color: #FFFFFF;
    font-size: 1em;
    line-height: 1.3;
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    @media only screen and (max-width: 525px) {
      #mobile-callouts a, #mobile-callouts a:active, #mobile-callouts a:visited {
        padding: 25px; } }
    #mobile-callouts a:hover strong span, #mobile-callouts a:active:hover strong span, #mobile-callouts a:visited:hover strong span {
      transform: translate(10px, 0);
      perspective: 1000px;
      -moz-transform: translate(10px, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(10px, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(10px, 0);
      -o-perspective: 1000;
      -ms-transform: translate(10px, 0);
      -ms-perspective: 1000; }
  #mobile-callouts strong {
    display: inline-block;
    margin-bottom: .5em;
    font-size: 1.22em;
    font-weight: 700;
    letter-spacing: .18px; }
    #mobile-callouts strong span {
      display: inline-block;
      margin-left: 8px;
      color: #A6192E;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }

section[id*='home'] h2, #upcoming-events h2 {
  font-size: 4em; }
  @media only screen and (max-width: 1440px) {
    section[id*='home'] h2, #upcoming-events h2 {
      font-size: 3.5em; } }
  @media only screen and (max-width: 1125px) {
    section[id*='home'] h2, #upcoming-events h2 {
      font-size: 5vw; } }
  @media only screen and (max-width: 910px) {
    section[id*='home'] h2, #upcoming-events h2 {
      font-size: 7vw; } }
  @media only screen and (max-width: 525px) {
    section[id*='home'] h2, #upcoming-events h2 {
      font-size: 7.5vw; } }

@media only screen and (max-width: 1440px) {
  section[id*='home'] .span16.offset4, #upcoming-events .span16.offset4 {
    width: calc(75% - 20px);
    margin-left: calc(12.5% + 20px) !important; } }

@media only screen and (max-width: 910px) {
  section[id*='home'] .span16.offset4, #upcoming-events .span16.offset4 {
    width: calc(100% - 20px);
    margin-left: 20px !important; } }

@media only screen and (max-width: 525px) {
  section[id*='home'] .span16.offset4, #upcoming-events .span16.offset4 {
    margin-left: 0 !important; } }

/* --- Mission --- */
#home-mission {
  position: relative;
  padding: 3em 0 5em 0;
  background: #F9F9F9; }
  @media only screen and (max-width: 910px) {
    #home-mission {
      padding: 2em 0 3em 0; } }
  #home-mission p {
    position: relative;
    margin-bottom: 0;
    padding-top: 5.5em;
    font-size: 1.35em;
    line-height: 1.625;
    text-align: center; }
    @media only screen and (max-width: 1125px) {
      #home-mission p {
        padding-top: 3.5em;
        font-size: 1.1em; } }
    @media only screen and (max-width: 910px) {
      #home-mission p {
        padding-top: 2.5em; } }
    @media only screen and (max-width: 525px) {
      #home-mission p {
        font-size: 1em; } }
  #home-mission:before {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    font-size: 11em;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: 700;
    content: 'mission';
    color: #FFFFFF;
    stroke-width: 2px !important;
    -moz-text-stroke-color: #FFFFFF !important;
    -moz-text-fill-color: transparent !important;
    -moz-text-stroke-width: 2px !important;
    -webkit-text-stroke-color: #FFFFFF !important;
    -webkit-text-fill-color: transparent !important;
    -webkit-text-stroke-width: 2px !important;
    -o-text-stroke-color: #FFFFFF !important;
    -o-text-fill-color: transparent !important;
    -o-text-stroke-width: 2px !important;
    -ms-text-stroke-color: #FFFFFF !important;
    -ms-text-fill-color: transparent !important;
    -ms-text-stroke-width: 2px !important;
    transform: translate(-50%, -50%);
    perspective: 1000px;
    -moz-transform: translate(-50%, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(-50%, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(-50%, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(-50%, -50%);
    -ms-perspective: 1000; }
    @media only screen and (max-width: 525px) {
      #home-mission:before {
        stroke-width: 1px;
        -moz-text-stroke-width: 1px !important;
        -webkit-text-stroke-width: 1px !important;
        -o-text-stroke-width: 1px !important;
        -ms-text-stroke-width: 1px !important; } }
    @media only screen and (max-width: 1440px) {
      #home-mission:before {
        font-size: 15vw; } }
    @media only screen and (max-width: 1125px) {
      #home-mission:before {
        top: 40%; } }
    @media only screen and (max-width: 910px) {
      #home-mission:before {
        color: #FFF;
        stroke-width: 2px !important;
        -moz-text-stroke-color: #FFF !important;
        -moz-text-fill-color: #FFFFFF !important;
        -moz-text-stroke-width: 2px !important;
        -webkit-text-stroke-color: #FFF !important;
        -webkit-text-fill-color: #FFFFFF !important;
        -webkit-text-stroke-width: 2px !important;
        -o-text-stroke-color: #FFF !important;
        -o-text-fill-color: #FFFFFF !important;
        -o-text-stroke-width: 2px !important;
        -ms-text-stroke-color: #FFF !important;
        -ms-text-fill-color: #FFFFFF !important;
        -ms-text-stroke-width: 2px !important; } }
  @media only screen and (max-width: 910px) and (max-width: 525px) {
    #home-mission:before {
      stroke-width: 1px;
      -moz-text-stroke-width: 1px !important;
      -webkit-text-stroke-width: 1px !important;
      -o-text-stroke-width: 1px !important;
      -ms-text-stroke-width: 1px !important; } }
    @media only screen and (max-width: 525px) {
      #home-mission:before {
        top: 35%;
        font-size: 18vw; } }

/* --- Services --- */
#home-services {
  text-align: center;
  background: #F9F9F9; }
  #home-services .services {
    display: flex;
    flex-wrap: wrap; }
    #home-services .services a, #home-services .services a:active, #home-services .services a:visited {
      position: relative;
      flex: 0 0 50%;
      padding-bottom: 30%;
      overflow: hidden; }
      @media only screen and (max-width: 700px) {
        #home-services .services a, #home-services .services a:active, #home-services .services a:visited {
          flex: 0 0 100%;
          margin-bottom: 5px;
          padding-bottom: 56%; } }
      #home-services .services a img, #home-services .services a:active img, #home-services .services a:visited img {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 105%;
        height: 105%;
        transform: translate(-50%, -50%);
        perspective: 1000px;
        -moz-transform: translate(-50%, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(-50%, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(-50%, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(-50%, -50%);
        -ms-perspective: 1000; }
      #home-services .services a .content, #home-services .services a:active .content, #home-services .services a:visited .content {
        position: absolute;
        z-index: 2;
        bottom: 0;
        width: 100%;
        padding: 0 10vw;
        color: #FFFFFF;
        transition: all 0.4s ease-in-out;
        -moz-transition: all 0.4s ease-in-out;
        -webkit-transition: all 0.4s ease-in-out;
        -o-transition: all 0.4s ease-in-out;
        -ms-transition: all 0.4s ease-in-out;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        @media only screen and (max-width: 1440px) {
          #home-services .services a .content, #home-services .services a:active .content, #home-services .services a:visited .content {
            padding: 0 6vw; } }
        @media only screen and (max-width: 1125px) {
          #home-services .services a .content, #home-services .services a:active .content, #home-services .services a:visited .content {
            padding: 0 5vw; } }
        @media only screen and (max-width: 910px) {
          #home-services .services a .content, #home-services .services a:active .content, #home-services .services a:visited .content {
            padding: 0 2.5vw; } }
        #home-services .services a .content h3, #home-services .services a:active .content h3, #home-services .services a:visited .content h3 {
          margin-bottom: .5em;
          font-size: 2em;
          color: #FFFFFF;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased; }
          @media only screen and (max-width: 1125px) {
            #home-services .services a .content h3, #home-services .services a:active .content h3, #home-services .services a:visited .content h3 {
              font-size: 3.5vw; } }
          @media only screen and (max-width: 700px) {
            #home-services .services a .content h3, #home-services .services a:active .content h3, #home-services .services a:visited .content h3 {
              margin-bottom: 1.5rem;
              font-size: 6vw; } }
          @media only screen and (max-width: 525px) {
            #home-services .services a .content h3, #home-services .services a:active .content h3, #home-services .services a:visited .content h3 {
              font-size: 7vw; } }
        #home-services .services a .content p, #home-services .services a:active .content p, #home-services .services a:visited .content p {
          margin-bottom: 1em;
          padding: 0 20px;
          font-size: 1em;
          font-weight: 500;
          line-height: 1.5;
          color: #FFFFFF;
          filter: alpha(opacity=0);
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -moz-opacity: 0;
          -khtml-opacity: 0;
          opacity: 0;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased;
          transition: opacity 0.4s ease-in-out;
          -moz-transition: opacity 0.4s ease-in-out;
          -webkit-transition: opacity 0.4s ease-in-out;
          -o-transition: opacity 0.4s ease-in-out;
          -ms-transition: opacity 0.4s ease-in-out; }
          @media only screen and (max-width: 1125px) {
            #home-services .services a .content p, #home-services .services a:active .content p, #home-services .services a:visited .content p {
              font-size: .8em; } }
          @media only screen and (max-width: 700px) {
            #home-services .services a .content p, #home-services .services a:active .content p, #home-services .services a:visited .content p {
              display: none; } }
          #home-services .services a .content p:last-child, #home-services .services a:active .content p:last-child, #home-services .services a:visited .content p:last-child {
            margin-bottom: 0;
            font-size: 1.75em; }
            @media only screen and (max-width: 1125px) {
              #home-services .services a .content p:last-child, #home-services .services a:active .content p:last-child, #home-services .services a:visited .content p:last-child {
                font-size: 1.3em; } }
      #home-services .services a .more, #home-services .services a:active .more, #home-services .services a:visited .more {
        position: absolute;
        z-index: 2;
        top: 50%;
        left: 50%;
        width: 100%;
        text-align: center;
        transform: translate(-50%, -50%);
        perspective: 1000px;
        -moz-transform: translate(-50%, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(-50%, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(-50%, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(-50%, -50%);
        -ms-perspective: 1000; }
        #home-services .services a .more svg, #home-services .services a:active .more svg, #home-services .services a:visited .more svg {
          margin-right: 1em; }
        #home-services .services a .more span, #home-services .services a:active .more span, #home-services .services a:visited .more span {
          font-size: 5em;
          font-weight: 500;
          font-family: 'Archivo Narrow', sans-serif;
          color: #FFFFFF;
          stroke-width: 2px !important;
          -moz-text-stroke-color: #FFFFFF !important;
          -moz-text-fill-color: transparent !important;
          -moz-text-stroke-width: 2px !important;
          -webkit-text-stroke-color: #FFFFFF !important;
          -webkit-text-fill-color: transparent !important;
          -webkit-text-stroke-width: 2px !important;
          -o-text-stroke-color: #FFFFFF !important;
          -o-text-fill-color: transparent !important;
          -o-text-stroke-width: 2px !important;
          -ms-text-stroke-color: #FFFFFF !important;
          -ms-text-fill-color: transparent !important;
          -ms-text-stroke-width: 2px !important; }
          @media only screen and (max-width: 525px) {
            #home-services .services a .more span, #home-services .services a:active .more span, #home-services .services a:visited .more span {
              stroke-width: 1px;
              -moz-text-stroke-width: 1px !important;
              -webkit-text-stroke-width: 1px !important;
              -o-text-stroke-width: 1px !important;
              -ms-text-stroke-width: 1px !important; } }
      #home-services .services a:before, #home-services .services a:active:before, #home-services .services a:visited:before {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: '';
        background: transparent url(../images/service-box-gradient.png) repeat-x bottom left; }
      #home-services .services a:after, #home-services .services a:active:after, #home-services .services a:visited:after {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: '';
        background-color: rgba(0, 0, 0, 0.5);
        filter: alpha(opacity=0);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -moz-opacity: 0;
        -khtml-opacity: 0;
        opacity: 0;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
        @media only screen and (max-width: 700px) {
          #home-services .services a:after, #home-services .services a:active:after, #home-services .services a:visited:after {
            display: none; } }
      @media (pointer: fine) {
        #home-services .services a:hover, #home-services .services a:active:hover, #home-services .services a:visited:hover {
          /*
					.more {
						span { @include stroke-text(get_color(white), get_color(white)); }	
						svg, path {
							fill: get_color(white);
						}
					}
					&:last-child {
						img { @include blur(0); }
					}
					&:not(:last-child):after { @include opacity(1); }
					*/ }
          #home-services .services a:hover img, #home-services .services a:active:hover img, #home-services .services a:visited:hover img {
            -webkit-filter: blur(10px);
            /* Chrome, Safari */
            -ms-filter: blur(10px);
            /* IE12? */
            filter: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"><filter id="blur"><feGaussianBlur stdDeviation="10" /></filter></svg>#blur');
            /* Firefox, Safari, Chrome*/
            filter: progid:DXImageTransform.Microsoft.Blur(Strength=$radius);
            /* IE9 */ } }
    @media only screen and (pointer: fine) and (max-width: 700px) {
      #home-services .services a:hover img, #home-services .services a:active:hover img, #home-services .services a:visited:hover img {
        -webkit-filter: blur(0px);
        /* Chrome, Safari */
        -ms-filter: blur(0px);
        /* IE12? */
        filter: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"><filter id="blur"><feGaussianBlur stdDeviation="0" /></filter></svg>#blur');
        /* Firefox, Safari, Chrome*/
        filter: progid:DXImageTransform.Microsoft.Blur(Strength=$radius);
        /* IE9 */ } }
      @media (pointer: fine) {
          #home-services .services a:hover .content p, #home-services .services a:active:hover .content p, #home-services .services a:visited:hover .content p {
            filter: alpha(opacity=100);
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
            -moz-opacity: 1;
            -khtml-opacity: 1;
            opacity: 1; }
          #home-services .services a:hover:after, #home-services .services a:active:hover:after, #home-services .services a:visited:hover:after {
            filter: alpha(opacity=100);
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
            -moz-opacity: 1;
            -khtml-opacity: 1;
            opacity: 1; } }

/* --- Our Approach/Who We Serve --- */
#home-lower {
  background: #F9F9F9; }

#home-approach {
  padding: 5vw 0 15vw 0; }
  @media only screen and (max-width: 1440px) {
    #home-approach {
      padding: 5vw 0 12vw 0; } }
  @media only screen and (max-width: 910px) {
    #home-approach {
      padding: 2em 0; } }

#home-who-we-serve {
  padding: 10vw 0 15vw 0; }
  @media only screen and (max-width: 1440px) {
    #home-who-we-serve {
      padding: 7vw 0 12vw 0; } }
  @media only screen and (max-width: 910px) {
    #home-who-we-serve {
      padding: 2em 0; } }

.home-blocks {
  background: #F9F9F9; }
  .home-blocks .lucy-wrapper, .home-blocks #layout-7030 {
    position: relative; }
  .home-blocks .content {
    position: relative;
    top: 40px;
    left: 0;
    width: 35%;
    z-index: 1;
    padding: 4vw;
    color: #FFF;
    text-align: left;
    background: #FFFFFF;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    @media only screen and (max-width: 1440px) {
      .home-blocks .content {
        font-size: 1.3vw; } }
    @media only screen and (max-width: 910px) {
      .home-blocks .content {
        top: auto;
        left: auto;
        width: 100%;
        padding: 25px;
        font-size: 1rem; } }
    @media only screen and (max-width: 525px) {
      .home-blocks .content {
        text-align: center; } }
    .home-blocks .content h2 {
      margin-bottom: .25em; }
    @media only screen and (max-width: 1125px) {
      .home-blocks .content .button, .home-blocks .content #sponsorship-levels .level form .add, #sponsorship-levels .level form .home-blocks .content .add {
        font-size: 1.1em; } }
    @media only screen and (max-width: 525px) {
      .home-blocks .content .button, .home-blocks .content #sponsorship-levels .level form .add, #sponsorship-levels .level form .home-blocks .content .add {
        width: 100%; } }
    .home-blocks .content :last-child {
      margin-bottom: 0; }
  .home-blocks .image {
    position: absolute;
    top: 0;
    right: 5vw;
    width: 65%;
    height: 40vw;
    z-index: 0;
    background-size: cover;
    background-repeat: no-repeat; }
    @media only screen and (max-width: 1125px) {
      .home-blocks .image {
        height: 45vw; } }
    @media only screen and (max-width: 910px) {
      .home-blocks .image {
        position: relative;
        top: auto;
        right: auto;
        width: 100%; } }
    @media only screen and (max-width: 525px) {
      .home-blocks .image {
        height: 50vw; } }
  .home-blocks.right .lucy-wrapper, .home-blocks.right #layout-7030 {
    position: relative;
    text-align: right; }
  .home-blocks.right .content {
    right: 0;
    left: auto;
    margin-left: 65%; }
    @media only screen and (max-width: 910px) {
      .home-blocks.right .content {
        right: auto;
        margin-left: 0; } }
  .home-blocks.right .image {
    left: 5vw;
    right: auto; }
    @media only screen and (max-width: 910px) {
      .home-blocks.right .image {
        left: auto; } }

/* --- Stats --- */
#home-stats {
  padding: 5em 0;
  background: #A6192E; }
  @media only screen and (max-width: 910px) {
    #home-stats {
      padding: 3em 0; } }
  @media only screen and (max-width: 700px) {
    #home-stats {
      padding: 2em 0; } }
  #home-stats .lucy-wrapper, #home-stats #layout-7030 {
    display: flex; }
    @media only screen and (max-width: 700px) {
      #home-stats .lucy-wrapper, #home-stats #layout-7030 {
        flex-wrap: wrap; } }
    #home-stats .lucy-wrapper p, #home-stats #layout-7030 p {
      position: relative;
      top: 20px;
      width: calc(25% - (2em * 3) / 4);
      margin: 0 2em 0 0;
      font-size: 1.25em;
      font-weight: 500;
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased;
      filter: alpha(opacity=0);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -moz-opacity: 0;
      -khtml-opacity: 0;
      opacity: 0; }
      @media only screen and (max-width: 1440px) {
        #home-stats .lucy-wrapper p, #home-stats #layout-7030 p {
          font-size: 1.5vw; } }
      @media only screen and (max-width: 910px) {
        #home-stats .lucy-wrapper p, #home-stats #layout-7030 p {
          font-size: 2vw; } }
      @media only screen and (max-width: 700px) {
        #home-stats .lucy-wrapper p, #home-stats #layout-7030 p {
          top: 0;
          width: 100%;
          margin-right: 0;
          margin-bottom: 2rem;
          font-size: 3vw;
          text-align: center;
          filter: alpha(opacity=100);
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          -moz-opacity: 1;
          -khtml-opacity: 1;
          opacity: 1; }
          #home-stats .lucy-wrapper p:nth-of-type(3), #home-stats #layout-7030 p:nth-of-type(3) {
            margin-bottom: 0; } }
      @media only screen and (max-width: 525px) {
        #home-stats .lucy-wrapper p, #home-stats #layout-7030 p {
          font-size: 4vw; } }
      #home-stats .lucy-wrapper p strong, #home-stats #layout-7030 p strong {
        display: block;
        font-size: 3.2em;
        line-height: .9; }
      #home-stats .lucy-wrapper p .button, #home-stats #layout-7030 p .button, #home-stats .lucy-wrapper p #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats .lucy-wrapper p .add, #home-stats #layout-7030 p #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats #layout-7030 p .add {
        display: block;
        margin-bottom: .5em;
        height: 4em;
        line-height: 4em;
        font-size: 15.3px;
        color: #1B2532; }
        @media only screen and (max-width: 1125px) {
          #home-stats .lucy-wrapper p .button, #home-stats #layout-7030 p .button, #home-stats .lucy-wrapper p #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats .lucy-wrapper p .add, #home-stats #layout-7030 p #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats #layout-7030 p .add {
            height: 3em;
            line-height: 3em; } }
        @media only screen and (max-width: 910px) {
          #home-stats .lucy-wrapper p .button, #home-stats #layout-7030 p .button, #home-stats .lucy-wrapper p #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats .lucy-wrapper p .add, #home-stats #layout-7030 p #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats #layout-7030 p .add {
            font-size: 13.5px; } }
        #home-stats .lucy-wrapper p .button:hover:after, #home-stats #layout-7030 p .button:hover:after, #home-stats .lucy-wrapper p #sponsorship-levels .level form .add:hover:after, #sponsorship-levels .level form #home-stats .lucy-wrapper p .add:hover:after, #home-stats #layout-7030 p #sponsorship-levels .level form .add:hover:after, #sponsorship-levels .level form #home-stats #layout-7030 p .add:hover:after {
          background: #26384E; }
      #home-stats .lucy-wrapper p:last-child, #home-stats #layout-7030 p:last-child {
        margin-right: 0; }
        @media only screen and (max-width: 700px) {
          #home-stats .lucy-wrapper p:last-child, #home-stats #layout-7030 p:last-child {
            display: none; } }
      #home-stats .lucy-wrapper p:not(:last-child):after, #home-stats #layout-7030 p:not(:last-child):after {
        position: absolute;
        left: 0;
        bottom: .25em;
        width: 2.5vw;
        height: 4px;
        background: #FFFFFF;
        content: ''; }
        @media only screen and (max-width: 700px) {
          #home-stats .lucy-wrapper p:not(:last-child):after, #home-stats #layout-7030 p:not(:last-child):after {
            display: none; } }
  #home-stats .bp-700 {
    display: none;
    margin-top: 2em;
    padding: 0 5vw; }
    @media only screen and (max-width: 700px) {
      #home-stats .bp-700 {
        display: block; } }
    #home-stats .bp-700 .button, #home-stats .bp-700 #sponsorship-levels .level form .add, #sponsorship-levels .level form #home-stats .bp-700 .add {
      display: block;
      width: 100%;
      margin-bottom: 20px; }
      #home-stats .bp-700 .button span, #home-stats .bp-700 #sponsorship-levels .level form .add span, #sponsorship-levels .level form #home-stats .bp-700 .add span {
        color: #26384E; }
      #home-stats .bp-700 .button:after, #home-stats .bp-700 #sponsorship-levels .level form .add:after, #sponsorship-levels .level form #home-stats .bp-700 .add:after {
        background-color: #FFFFFF; }
      #home-stats .bp-700 .button:hover span, #home-stats .bp-700 #sponsorship-levels .level form .add:hover span, #sponsorship-levels .level form #home-stats .bp-700 .add:hover span {
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
      #home-stats .bp-700 .button:hover:after, #home-stats .bp-700 #sponsorship-levels .level form .add:hover:after, #sponsorship-levels .level form #home-stats .bp-700 .add:hover:after {
        background-color: #26384E; }

/* --- Professional Development --- */
#home-development {
  padding: 5em 0;
  background: #FFFFFF; }
  @media only screen and (max-width: 910px) {
    #home-development {
      padding: 3em 0; } }
  @media only screen and (max-width: 700px) {
    #home-development {
      padding: 2em 0; }
      #home-development .course-wrap {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch; } }
  @media only screen and (max-width: 700px) {
    #home-development .courses {
      flex-wrap: nowrap; }
      #home-development .courses[data-count="3"] {
        width: 300%; }
        #home-development .courses[data-count="3"] .course:nth-of-type(3) {
          margin-right: calc(40px + 5vw) !important; }
      #home-development .courses[data-count="2"] {
        width: 200%; }
        #home-development .courses[data-count="2"] .course:nth-of-type(2) {
          margin-right: calc(60px + 5vw) !important; }
      #home-development .courses[data-count="1"] {
        width: 100%; }
        #home-development .courses[data-count="1"] .course:last-child {
          width: 100% !important;
          margin-right: 0 !important; } }
  @media only screen and (max-width: 525px) {
    #home-development .courses[data-count="3"] .course:nth-of-type(3) {
      margin-right: calc(40px + 25px) !important; }
    #home-development .courses[data-count="2"] .course:nth-of-type(2) {
      margin-right: calc(55px + 25px) !important; }
    #home-development .courses[data-count="1"] .course:last-child {
      margin-right: 0 !important; } }
  @media only screen and (max-width: 910px) {
    #home-development .courses .course {
      width: calc(50% - (2.5em / 2)); }
      #home-development .courses .course:nth-of-type(2) {
        margin-right: 0; }
      #home-development .courses .course:nth-of-type(3) {
        display: none; } }
  @media only screen and (max-width: 700px) {
    #home-development .courses .course {
      width: calc(100% - (20px + 5vw));
      margin-right: 20px !important;
      margin-bottom: 0;
      display: flex !important; }
      #home-development .courses .course:last-child {
        display: flex !important; } }
  #home-development .tablet-only {
    margin-top: 2em;
    text-align: center; }

/* --- Find a School --- */
#home-find-a-school {
  position: relative;
  display: block;
  margin-top: 2em;
  line-height: 0;
  text-align: right;
  text-decoration: none;
  background: #FFFFFF; }
  #home-find-a-school .image-container {
    width: 64%;
    margin-left: 36%;
    overflow: hidden; }
    @media only screen and (max-width: 1125px) {
      #home-find-a-school .image-container {
        width: 62%;
        margin-left: 38%; } }
    @media only screen and (max-width: 910px) {
      #home-find-a-school .image-container {
        width: 100%;
        margin-left: 0; } }
    #home-find-a-school .image-container img {
      width: 100%; }
    @media only screen and (max-width: 910px) {
      #home-find-a-school .image-container .tablet-hide {
        display: none; } }
  #home-find-a-school .content {
    position: absolute;
    top: 50%;
    left: 5vw;
    text-align: left;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
    @media only screen and (max-width: 910px) {
      #home-find-a-school .content em {
        display: none; } }
  #home-find-a-school h2 {
    margin-bottom: .25em;
    font-size: 9.4vw;
    font-weight: 600; }
    @media only screen and (max-width: 910px) {
      #home-find-a-school h2 {
        margin-bottom: 0;
        font-size: 10vw; } }
    @media only screen and (max-width: 525px) {
      #home-find-a-school h2 {
        font-size: 11.5vw; } }
    #home-find-a-school h2 span {
      color: #1B2532;
      stroke-width: 2px !important;
      -moz-text-stroke-color: #1B2532 !important;
      -moz-text-fill-color: transparent !important;
      -moz-text-stroke-width: 2px !important;
      -webkit-text-stroke-color: #1B2532 !important;
      -webkit-text-fill-color: transparent !important;
      -webkit-text-stroke-width: 2px !important;
      -o-text-stroke-color: #1B2532 !important;
      -o-text-fill-color: transparent !important;
      -o-text-stroke-width: 2px !important;
      -ms-text-stroke-color: #1B2532 !important;
      -ms-text-fill-color: transparent !important;
      -ms-text-stroke-width: 2px !important; }
      @media only screen and (max-width: 525px) {
        #home-find-a-school h2 span {
          stroke-width: 1px;
          -moz-text-stroke-width: 1px !important;
          -webkit-text-stroke-width: 1px !important;
          -o-text-stroke-width: 1px !important;
          -ms-text-stroke-width: 1px !important; } }
      @media only screen and (max-width: 910px) {
        #home-find-a-school h2 span {
          color: #1B2532;
          stroke-width: 1px !important;
          -moz-text-stroke-color: #1B2532 !important;
          -moz-text-fill-color: transparent !important;
          -moz-text-stroke-width: 1px !important;
          -webkit-text-stroke-color: #1B2532 !important;
          -webkit-text-fill-color: transparent !important;
          -webkit-text-stroke-width: 1px !important;
          -o-text-stroke-color: #1B2532 !important;
          -o-text-fill-color: transparent !important;
          -o-text-stroke-width: 1px !important;
          -ms-text-stroke-color: #1B2532 !important;
          -ms-text-fill-color: transparent !important;
          -ms-text-stroke-width: 1px !important; } }
  @media only screen and (max-width: 910px) and (max-width: 525px) {
    #home-find-a-school h2 span {
      stroke-width: 0.5px;
      -moz-text-stroke-width: 0.5px !important;
      -webkit-text-stroke-width: 0.5px !important;
      -o-text-stroke-width: 0.5px !important;
      -ms-text-stroke-width: 0.5px !important; } }
    #home-find-a-school h2 img {
      display: none;
      vertical-align: middle;
      width: 10vw; }
      @media only screen and (max-width: 910px) {
        #home-find-a-school h2 img {
          display: inline-block; } }
  #home-find-a-school .action {
    margin-bottom: 0;
    font-weight: 500; }
    @media only screen and (max-width: 910px) {
      #home-find-a-school .action {
        display: none; } }
    #home-find-a-school .action span {
      display: inline-block;
      margin-right: .5em; }
  #home-find-a-school:hover h2 span {
    color: #1B2532;
    stroke-width: 2px !important;
    -moz-text-stroke-color: #1B2532 !important;
    -moz-text-fill-color: #1B2532 !important;
    -moz-text-stroke-width: 2px !important;
    -webkit-text-stroke-color: #1B2532 !important;
    -webkit-text-fill-color: #1B2532 !important;
    -webkit-text-stroke-width: 2px !important;
    -o-text-stroke-color: #1B2532 !important;
    -o-text-fill-color: #1B2532 !important;
    -o-text-stroke-width: 2px !important;
    -ms-text-stroke-color: #1B2532 !important;
    -ms-text-fill-color: #1B2532 !important;
    -ms-text-stroke-width: 2px !important; }
    @media only screen and (max-width: 525px) {
      #home-find-a-school:hover h2 span {
        stroke-width: 1px;
        -moz-text-stroke-width: 1px !important;
        -webkit-text-stroke-width: 1px !important;
        -o-text-stroke-width: 1px !important;
        -ms-text-stroke-width: 1px !important; } }
  #home-find-a-school:hover .action {
    color: #A6192E; }
    #home-find-a-school:hover .action span {
      margin-right: 1em; }

/* --- Upcoming Events --- */
#upcoming-events {
  padding: 5em 0;
  background: #F9F9F9; }
  @media only screen and (max-width: 910px) {
    #upcoming-events {
      padding: 3em 0; } }
  @media only screen and (max-width: 700px) {
    #upcoming-events {
      padding: 2em 0; } }
  #upcoming-events h2 {
    margin-bottom: .5em; }
  #upcoming-events .events {
    display: flex; }
    @media only screen and (max-width: 700px) {
      #upcoming-events .events {
        display: block; } }
    #upcoming-events .events a, #upcoming-events .events a:active, #upcoming-events .events a:visited {
      width: calc((100% / 3) - (2.5em * 2) / 3);
      margin-right: 2.5em;
      text-decoration: none; }
      @media only screen and (max-width: 910px) {
        #upcoming-events .events a, #upcoming-events .events a:active, #upcoming-events .events a:visited {
          width: calc(50% - (2.5em / 2)); }
          #upcoming-events .events a:nth-of-type(2), #upcoming-events .events a:active:nth-of-type(2), #upcoming-events .events a:visited:nth-of-type(2) {
            margin-right: 0; }
          #upcoming-events .events a:nth-of-type(3), #upcoming-events .events a:active:nth-of-type(3), #upcoming-events .events a:visited:nth-of-type(3) {
            display: none; } }
      @media only screen and (max-width: 700px) {
        #upcoming-events .events a, #upcoming-events .events a:active, #upcoming-events .events a:visited {
          display: block;
          width: 100%;
          margin-right: 0;
          margin-bottom: 2em; }
          #upcoming-events .events a:last-child, #upcoming-events .events a:active:last-child, #upcoming-events .events a:visited:last-child {
            margin-bottom: 0; } }
      #upcoming-events .events a:last-child, #upcoming-events .events a:active:last-child, #upcoming-events .events a:visited:last-child {
        margin-right: 0; }
      #upcoming-events .events a .image, #upcoming-events .events a:active .image, #upcoming-events .events a:visited .image {
        overflow: hidden;
        margin-bottom: 1.5em; }
        #upcoming-events .events a .image img, #upcoming-events .events a:active .image img, #upcoming-events .events a:visited .image img {
          display: block;
          width: 100%;
          transition: transform 0.2s ease-in-out;
          -moz-transition: transform 0.2s ease-in-out;
          -webkit-transition: transform 0.2s ease-in-out;
          -o-transition: transform 0.2s ease-in-out;
          -ms-transition: transform 0.2s ease-in-out; }
      #upcoming-events .events a .content, #upcoming-events .events a:active .content, #upcoming-events .events a:visited .content {
        position: relative;
        padding-left: calc(72px + 1.5em); }
        @media only screen and (max-width: 1125px) {
          #upcoming-events .events a .content, #upcoming-events .events a:active .content, #upcoming-events .events a:visited .content {
            padding-left: calc(54px + 1.5em); } }
        #upcoming-events .events a .content .date-box, #upcoming-events .events a:active .content .date-box, #upcoming-events .events a:visited .content .date-box {
          position: absolute;
          top: 0;
          left: 0; }
          #upcoming-events .events a .content .date-box span, #upcoming-events .events a .content .date-box:after, #upcoming-events .events a:active .content .date-box span, #upcoming-events .events a:active .content .date-box:after, #upcoming-events .events a:visited .content .date-box span, #upcoming-events .events a:visited .content .date-box:after {
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out; }
      #upcoming-events .events a p.title, #upcoming-events .events a:active p.title, #upcoming-events .events a:visited p.title {
        margin-bottom: .35em;
        line-height: 1.45;
        font-weight: 500;
        font-size: 1.3em; }
        @media only screen and (max-width: 1440px) {
          #upcoming-events .events a p.title, #upcoming-events .events a:active p.title, #upcoming-events .events a:visited p.title {
            font-size: 1.8vw; } }
        @media only screen and (max-width: 910px) {
          #upcoming-events .events a p.title, #upcoming-events .events a:active p.title, #upcoming-events .events a:visited p.title {
            font-size: 2.3vw; } }
        @media only screen and (max-width: 700px) {
          #upcoming-events .events a p.title, #upcoming-events .events a:active p.title, #upcoming-events .events a:visited p.title {
            font-size: 1.1em; } }
      #upcoming-events .events a p.date, #upcoming-events .events a:active p.date, #upcoming-events .events a:visited p.date {
        font-size: .6875em;
        line-height: 1.625;
        letter-spacing: .1em;
        text-transform: uppercase;
        font-weight: 500;
        color: #A6192E; }
        @media only screen and (max-width: 1440px) {
          #upcoming-events .events a p.date, #upcoming-events .events a:active p.date, #upcoming-events .events a:visited p.date {
            font-size: .95vw; } }
        @media only screen and (max-width: 1125px) {
          #upcoming-events .events a p.date, #upcoming-events .events a:active p.date, #upcoming-events .events a:visited p.date {
            font-size: 1vw; } }
        @media only screen and (max-width: 910px) {
          #upcoming-events .events a p.date, #upcoming-events .events a:active p.date, #upcoming-events .events a:visited p.date {
            font-size: 1.3vw; } }
        @media only screen and (max-width: 700px) {
          #upcoming-events .events a p.date, #upcoming-events .events a:active p.date, #upcoming-events .events a:visited p.date {
            font-size: .667em; } }
      #upcoming-events .events a:hover .image img, #upcoming-events .events a:active:hover .image img, #upcoming-events .events a:visited:hover .image img {
        transform: scale(1.03);
        perspective: 1000px;
        -moz-transform: scale(1.03);
        -moz-perspective: 1000;
        -webkit-transform: scale(1.03);
        -webkit-perspective: 1000;
        -o-transform: scale(1.03);
        -o-perspective: 1000;
        -ms-transform: scale(1.03);
        -ms-perspective: 1000; }
      #upcoming-events .events a:hover .content .date-box span, #upcoming-events .events a:active:hover .content .date-box span, #upcoming-events .events a:visited:hover .content .date-box span {
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
      #upcoming-events .events a:hover .content .date-box:after, #upcoming-events .events a:active:hover .content .date-box:after, #upcoming-events .events a:visited:hover .content .date-box:after {
        background: #26384E; }

/* --- Scrolling Words --- */
.scrolling-words {
  position: relative;
  white-space: nowrap;
  color: #A6192E;
  stroke-width: 1px !important;
  -moz-text-stroke-color: #A6192E !important;
  -moz-text-fill-color: transparent !important;
  -moz-text-stroke-width: 1px !important;
  -webkit-text-stroke-color: #A6192E !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke-width: 1px !important;
  -o-text-stroke-color: #A6192E !important;
  -o-text-fill-color: transparent !important;
  -o-text-stroke-width: 1px !important;
  -ms-text-stroke-color: #A6192E !important;
  -ms-text-fill-color: transparent !important;
  -ms-text-stroke-width: 1px !important; }
  @media only screen and (max-width: 525px) {
    .scrolling-words {
      stroke-width: 0.5px;
      -moz-text-stroke-width: 0.5px !important;
      -webkit-text-stroke-width: 0.5px !important;
      -o-text-stroke-width: 0.5px !important;
      -ms-text-stroke-width: 0.5px !important; } }
  .scrolling-words .inner {
    padding: 0 .5em;
    line-height: 1;
    font-size: 11em;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: 700; }
    @media only screen and (max-width: 1125px) {
      .scrolling-words .inner {
        font-size: 15vw; } }
    @media only screen and (max-width: 525px) {
      .scrolling-words .inner {
        font-size: 17vw; } }
  .scrolling-words.alt {
    padding-top: 5em;
    background: #A6192E;
    color: #FFF;
    stroke-width: 2px !important;
    -moz-text-stroke-color: #FFF !important;
    -moz-text-fill-color: transparent !important;
    -moz-text-stroke-width: 2px !important;
    -webkit-text-stroke-color: #FFF !important;
    -webkit-text-fill-color: transparent !important;
    -webkit-text-stroke-width: 2px !important;
    -o-text-stroke-color: #FFF !important;
    -o-text-fill-color: transparent !important;
    -o-text-stroke-width: 2px !important;
    -ms-text-stroke-color: #FFF !important;
    -ms-text-fill-color: transparent !important;
    -ms-text-stroke-width: 2px !important; }
    @media only screen and (max-width: 525px) {
      .scrolling-words.alt {
        stroke-width: 1px;
        -moz-text-stroke-width: 1px !important;
        -webkit-text-stroke-width: 1px !important;
        -o-text-stroke-width: 1px !important;
        -ms-text-stroke-width: 1px !important; } }
    @media only screen and (max-width: 910px) {
      .scrolling-words.alt {
        padding-top: 3em; } }
    @media only screen and (max-width: 700px) {
      .scrolling-words.alt {
        padding-top: 2em; } }

.lucy-callout {
  display: flex;
  margin: 4rem 0;
  align-items: center;
  color: #FFFFFF;
  text-decoration: none !important;
  background: #A6192E;
  overflow: hidden; }
  .lucy-callout img {
    display: block;
    width: 28%;
    margin-right: 3rem;
    margin-bottom: 0; }
  .lucy-callout .wrap {
    display: flex;
    align-items: center;
    flex: 1 0 0; }
  .lucy-callout .content {
    margin-right: 11rem; }
    .lucy-callout .content h3, .lucy-callout .content p {
      color: #FFFFFF !important; }
    .lucy-callout .content h3 {
      margin-bottom: .35em !important; }
      .lucy-callout .content h3 span {
        display: inline-block;
        margin-left: 10px;
        font-size: .8em;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
    .lucy-callout .content p {
      margin-bottom: 0 !important;
      line-height: 1.5; }
  .lucy-callout .button, .lucy-callout #sponsorship-levels .level form .add, #sponsorship-levels .level form .lucy-callout .add {
    margin-left: auto;
    margin-right: 3rem;
    white-space: nowrap; }
  .lucy-callout svg {
    position: absolute;
    bottom: -.5rem;
    right: -1rem; }
    .lucy-callout svg g {
      fill: transparent;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
  .lucy-callout[max-width~="900px"] h3 {
    font-size: 1.5em; }
  .lucy-callout[max-width~="810px"] img {
    width: 50%;
    margin-right: 2rem; }
  .lucy-callout[max-width~="810px"] .wrap {
    flex-direction: column;
    align-items: flex-start; }
    .lucy-callout[max-width~="810px"] .wrap .content {
      margin-right: 2rem; }
    .lucy-callout[max-width~="810px"] .wrap .button, .lucy-callout[max-width~="810px"] .wrap #sponsorship-levels .level form .add, #sponsorship-levels .level form .lucy-callout[max-width~="810px"] .wrap .add {
      margin: 1rem 0 0 0 !important; }
  .lucy-callout[max-width~="700px"] {
    flex-wrap: wrap; }
    .lucy-callout[max-width~="700px"] img {
      width: 100%;
      margin: 0 0 2rem 0; }
    .lucy-callout[max-width~="700px"] .wrap .content {
      width: 100%;
      margin-bottom: 1rem;
      padding: 0 2rem;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
    .lucy-callout[max-width~="700px"] .wrap .button, .lucy-callout[max-width~="700px"] .wrap #sponsorship-levels .level form .add, #sponsorship-levels .level form .lucy-callout[max-width~="700px"] .wrap .add {
      margin: 0 2rem 2rem !important; }
  .lucy-callout:hover h3 span {
    margin-left: 15px; }
  .lucy-callout:hover g {
    fill: #FFFFFF; }
  .lucy-callout:hover .button, .lucy-callout:hover #sponsorship-levels .level form .add, #sponsorship-levels .level form .lucy-callout:hover .add {
    color: #A6192E;
    background: #FFFFFF; }

#course-list {
  padding: 5vw 0;
  font-size: 18px; }
  @media only screen and (max-width: 910px) {
    #course-list {
      padding: 5vw; } }
  @media only screen and (max-width: 1125px) {
    #course-list .span18 {
      width: calc(100% - 20px); } }
  #course-list .courses {
    flex-wrap: wrap; }

#course-filters {
  display: flex;
  margin-bottom: 4em;
  justify-content: space-between; }
  @media only screen and (max-width: 910px) {
    #course-filters {
      margin-bottom: 2em; } }
  #course-filters .section {
    margin-right: 2em;
    padding-right: 2em;
    border-right: 1px solid #D9DCE0; }
    #course-filters .section label.main {
      display: block;
      margin-bottom: .5em;
      font-weight: 500;
      font-size: 1.1em; }
    @media only screen and (max-width: 910px) {
      #course-filters .section:first-child {
        display: none; } }
    #course-filters .section:first-child a, #course-filters .section:first-child a:active, #course-filters .section:first-child a:visited {
      position: relative;
      display: inline-block;
      width: 3em;
      height: 3em;
      margin-right: .35em;
      color: #FFFFFF;
      text-decoration: none;
      border: 1px solid #D9DCE0;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #course-filters .section:first-child a:last-child, #course-filters .section:first-child a:active:last-child, #course-filters .section:first-child a:visited:last-child {
        margin-right: 0; }
      #course-filters .section:first-child a span, #course-filters .section:first-child a:active span, #course-filters .section:first-child a:visited span {
        position: absolute;
        top: 50%;
        left: 50%;
        font-size: 1em;
        color: #26384E;
        transform: translate(-50%, -50%);
        perspective: 1000px;
        -moz-transform: translate(-50%, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(-50%, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(-50%, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(-50%, -50%);
        -ms-perspective: 1000;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
      #course-filters .section:first-child a:hover, #course-filters .section:first-child a:active:hover, #course-filters .section:first-child a:visited:hover {
        border-color: #26384E;
        background: #F9F9F9; }
      #course-filters .section:first-child a.active, #course-filters .section:first-child a:active.active, #course-filters .section:first-child a:visited.active {
        background: #26384E; }
        #course-filters .section:first-child a.active span, #course-filters .section:first-child a:active.active span, #course-filters .section:first-child a:visited.active span {
          color: #FFFFFF; }
    #course-filters .section:last-child {
      margin-right: 0;
      padding-right: 0;
      border-right: none;
      flex-grow: 1; }
      #course-filters .section:last-child .fields {
        display: flex; }
        @media only screen and (max-width: 700px) {
          #course-filters .section:last-child .fields {
            flex-wrap: wrap; } }
        #course-filters .section:last-child .fields .span {
          flex-grow: 1;
          margin-right: 20px; }
          @media only screen and (max-width: 700px) {
            #course-filters .section:last-child .fields .span {
              width: 100%;
              margin-right: 0; } }
          #course-filters .section:last-child .fields .span:nth-child(2) {
            flex-grow: 2; }
    #course-filters .section #course-search {
      position: relative; }
      #course-filters .section #course-search span.icon-search, #course-filters .section #course-search #page-search span.field-wrap:before, #page-search #course-filters .section #course-search span.field-wrap:before {
        position: absolute;
        top: 23px;
        left: 1em;
        z-index: 2;
        color: #A6192E; }
      #course-filters .section #course-search input {
        padding-left: calc(1em + 25px); }
    #course-filters .section #course-search-button {
      background-color: #A6192E;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      @media only screen and (max-width: 700px) {
        #course-filters .section #course-search-button {
          width: 100%; } }
      #course-filters .section #course-search-button:hover, #course-filters .section #course-search-button:focus {
        background-color: #26384E; }

.courses {
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 910px) {
    .courses .course {
      width: calc(50% - (2.5em / 2)) !important; }
      .courses .course:nth-child(even) {
        margin-right: 0 !important; } }
  @media only screen and (max-width: 700px) {
    .courses .course {
      width: 100% !important;
      margin-right: 0 !important; } }
  .courses .course {
    display: flex;
    flex-direction: column;
    width: calc(25% - ((20px * 3) / 4));
    margin-right: 20px;
    margin-bottom: 20px;
    text-decoration: none;
    background: #F9F9F9;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    .courses .course:nth-child(4n), .courses .course:last-child {
      margin-right: 0; }
    .courses .course .image {
      overflow: hidden; }
      .courses .course .image img {
        display: block;
        width: 100%;
        transform-origin: center !important;
        transition: transform 0.2s ease-in-out;
        -moz-transition: transform 0.2s ease-in-out;
        -webkit-transition: transform 0.2s ease-in-out;
        -o-transition: transform 0.2s ease-in-out;
        -ms-transition: transform 0.2s ease-in-out; }
    .courses .course p {
      margin-bottom: .5rem; }
      .courses .course p.sub-header {
        margin-bottom: .5em; }
        @media only screen and (max-width: 1440px) {
          .courses .course p.sub-header {
            font-size: 1.1vw; } }
        @media only screen and (max-width: 1125px) {
          .courses .course p.sub-header {
            font-size: 1.3vw; } }
        @media only screen and (max-width: 700px) {
          .courses .course p.sub-header {
            font-size: .667em; } }
      .courses .course p.title {
        line-height: 1.45;
        font-weight: 500;
        font-size: 1.1em; }
        @media only screen and (max-width: 1440px) {
          .courses .course p.title {
            font-size: 1.8vw; } }
        @media only screen and (max-width: 1125px) {
          .courses .course p.title {
            font-size: 2vw; } }
        @media only screen and (max-width: 910px) {
          .courses .course p.title {
            font-size: 2.3vw; } }
        @media only screen and (max-width: 700px) {
          .courses .course p.title {
            font-size: 1.1em; } }
      .courses .course p.blurb {
        font-size: .95em;
        line-height: 1.625;
        color: #6A737F; }
        @media only screen and (max-width: 1440px) {
          .courses .course p.blurb {
            font-size: 1.3vw; } }
        @media only screen and (max-width: 1125px) {
          .courses .course p.blurb {
            font-size: 1.5vw; } }
        @media only screen and (max-width: 910px) {
          .courses .course p.blurb {
            font-size: 1.7vw; } }
        @media only screen and (max-width: 700px) {
          .courses .course p.blurb {
            font-size: .889em; } }
      .courses .course p.body {
        display: none;
        font-size: .95em;
        line-height: 1.625;
        color: #6A737F; }
      .courses .course p.course-content {
        margin-top: 1.5rem; }
      .courses .course p a, .courses .course p a:active, .courses .course p a:visited {
        text-decoration: none; }
      .courses .course p .button, .courses .course p #sponsorship-levels .level form .add, #sponsorship-levels .level form .courses .course p .add {
        width: 100%;
        padding-left: 0;
        padding-right: 0; }
        @media only screen and (max-width: 1440px) {
          .courses .course p .button, .courses .course p #sponsorship-levels .level form .add, #sponsorship-levels .level form .courses .course p .add {
            font-size: .889em; } }
        .courses .course p .button em, .courses .course p #sponsorship-levels .level form .add em, #sponsorship-levels .level form .courses .course p .add em {
          font-style: normal; }
          @media only screen and (max-width: 1440px) {
            .courses .course p .button em, .courses .course p #sponsorship-levels .level form .add em, #sponsorship-levels .level form .courses .course p .add em {
              display: none; } }
    .courses .course .details {
      padding: 1.5rem 1.75rem;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      .courses .course .details :last-child {
        margin-bottom: 0; }
    .courses .course .actions {
      display: flex;
      margin-top: auto;
      padding: 1.5rem 1.75rem;
      align-items: center;
      line-height: 1;
      border-top: 1px solid #D9DCE0; }
      .courses .course .actions a, .courses .course .actions a:active, .courses .course .actions a:visited {
        text-decoration: none; }
      .courses .course .actions .complete {
        display: flex;
        align-items: center; }
        .courses .course .actions .complete .star {
          width: 27px;
          height: 27px;
          margin-right: .5em;
          cursor: pointer; }
          .courses .course .actions .complete .star g {
            transition: stroke 0.2s ease-in-out;
            -moz-transition: stroke 0.2s ease-in-out;
            -webkit-transition: stroke 0.2s ease-in-out;
            -o-transition: stroke 0.2s ease-in-out;
            -ms-transition: stroke 0.2s ease-in-out; }
        .courses .course .actions .complete span {
          position: relative;
          text-transform: uppercase;
          font-size: .7em;
          font-weight: 500;
          letter-spacing: .15em;
          cursor: pointer;
          color: #1B2532; }
          .courses .course .actions .complete span.main:after {
            position: absolute;
            bottom: -10px;
            left: 0;
            width: 0;
            height: 2px;
            content: '';
            background-color: #A6192E;
            transition: width 0.2s ease-in-out;
            -moz-transition: width 0.2s ease-in-out;
            -webkit-transition: width 0.2s ease-in-out;
            -o-transition: width 0.2s ease-in-out;
            -ms-transition: width 0.2s ease-in-out; }
          .courses .course .actions .complete span.active {
            color: #A6192E; }
          .courses .course .actions .complete span span {
            font-size: 1em; }
        .courses .course .actions .complete.active span.main:after {
          display: none; }
        .courses .course .actions .complete.active .star-icon {
          stroke: #A6192E;
          fill: #A6192E; }
        .courses .course .actions .complete.active .star-check {
          fill: #FFFFFF; }
        .courses .course .actions .complete.active span {
          color: #A6192E; }
        @media (pointer: fine) {
          .courses .course .actions .complete:hover .star-icon {
            stroke: #A6192E;
            fill: #A6192E; }
          .courses .course .actions .complete:hover .star-check {
            fill: #FFFFFF; }
          .courses .course .actions .complete:hover span.main:after {
            width: 100%; } }
      .courses .course .actions .bookmark {
        margin-left: auto;
        cursor: pointer;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
        .courses .course .actions .bookmark .bookmark-icon {
          width: 18px;
          height: 27px; }
        .courses .course .actions .bookmark.active g {
          fill: #26384E; }
        @media (pointer: fine) {
          .courses .course .actions .bookmark:hover g {
            fill: #26384E; } }
    .courses .course .content {
      text-decoration: none; }
    .courses .course:hover, .courses .course:focus {
      transform: translate(0, -5px);
      perspective: 1000px;
      -moz-transform: translate(0, -5px);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -5px);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -5px);
      -o-perspective: 1000;
      -ms-transform: translate(0, -5px);
      -ms-perspective: 1000;
      box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -o-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -ms-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1); }
  .courses[data-count='3'] .course, .courses[data-count='1'] .course {
    width: calc((100% / 3) - ((2.5em * 2) / 3));
    margin-right: 2.5em;
    margin-bottom: 2.5em; }
    .courses[data-count='3'] .course:nth-child(3n), .courses[data-count='1'] .course:nth-child(3n) {
      margin-right: 0; }
  .courses[data-count='2'] .course {
    width: calc(50% - (2.5em / 2));
    margin-right: 2.5em;
    margin-bottom: 2.5em; }
    .courses[data-count='2'] .course:nth-child(even) {
      margin-right: 0; }
  .courses.list {
    flex-direction: row; }
    .courses.list .course {
      flex-direction: row;
      flex: 0 0 100%;
      margin: 0;
      padding: 2.5em;
      background: transparent;
      border-top: 1px solid #D9DCE0;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      @media only screen and (max-width: 910px) {
        .courses.list .course {
          display: block;
          padding: 2em 5vw; } }
      @media only screen and (max-width: 525px) {
        .courses.list .course {
          padding: 2em 25px; } }
      .courses.list .course:hover, .courses.list .course:focus {
        background: #F9F9F9;
        transform: translate(0, 0);
        perspective: 1000px;
        -moz-transform: translate(0, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(0, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(0, 0);
        -o-perspective: 1000;
        -ms-transform: translate(0, 0);
        -ms-perspective: 1000;
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
        -moz-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
        -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
        -o-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
        -ms-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); }
        .courses.list .course:hover .image img, .courses.list .course:focus .image img {
          transform: scale(1.05);
          perspective: 1000px;
          -moz-transform: scale(1.05);
          -moz-perspective: 1000;
          -webkit-transform: scale(1.05);
          -webkit-perspective: 1000;
          -o-transform: scale(1.05);
          -o-perspective: 1000;
          -ms-transform: scale(1.05);
          -ms-perspective: 1000; }
      .courses.list .course .image {
        display: block;
        width: 30%;
        margin-right: 1.5em;
        line-height: 0; }
        @media only screen and (max-width: 910px) {
          .courses.list .course .image {
            width: 100%;
            margin-right: 0;
            margin-bottom: 1.5em; } }
        .courses.list .course .image img {
          width: 100%; }
      .courses.list .course .content {
        display: flex;
        flex-direction: row;
        align-items: center; }
        @media only screen and (max-width: 1125px) {
          .courses.list .course .content {
            align-items: flex-start; } }
        @media only screen and (max-width: 910px) {
          .courses.list .course .content {
            flex-wrap: wrap; } }
      .courses.list .course .details {
        width: 65%;
        margin-right: 1.5em;
        padding: 0 2em; }
        @media only screen and (max-width: 1125px) {
          .courses.list .course .details {
            padding-left: 0; } }
        @media only screen and (max-width: 910px) {
          .courses.list .course .details {
            width: 100%;
            padding: 0;
            margin-right: 0;
            margin-bottom: 1.5em; } }
        .courses.list .course .details .sub-header {
          margin-bottom: 0;
          padding-top: 0; }
        .courses.list .course .details .title {
          margin-bottom: .25em;
          font-size: 1.55em; }
        .courses.list .course .details .blurb {
          margin-top: 0;
          margin-bottom: .5em; }
        .courses.list .course .details .body {
          display: block;
          font-size: 1em;
          line-height: 2; }
          @media only screen and (max-width: 1440px) {
            .courses.list .course .details .body {
              font-size: .889em; } }
      .courses.list .course .actions {
        flex: 1 0 auto;
        justify-content: flex-end;
        margin-top: 0;
        padding: 0;
        border-top: none; }
        @media only screen and (max-width: 910px) {
          .courses.list .course .actions {
            display: block;
            width: 100%; } }
        .courses.list .course .actions a, .courses.list .course .actions a:active, .courses.list .course .actions a:visited {
          position: relative;
          display: inline-block;
          height: 2.5em;
          margin-right: .5em;
          line-height: 2.5em;
          color: #26384E;
          text-decoration: none;
          background: #FFFFFF;
          vertical-align: top;
          border: 1px solid #D9DCE0;
          border-radius: 1.5em;
          -moz-border-radius: 1.5em;
          -webkit-border-radius: 1.5em;
          -o-border-radius: 1.5em;
          -ms-border-radius: 1.5em;
          -moz-background-clip: padding-box;
          -webkit-background-clip: padding-box;
          -o-background-clip: padding-box;
          -ms-background-clip: padding-box; }
          .courses.list .course .actions a.complete, .courses.list .course .actions a:active.complete, .courses.list .course .actions a:visited.complete {
            display: inline-flex;
            padding: 0 1em 0 .75em;
            align-items: center; }
            .courses.list .course .actions a.complete svg, .courses.list .course .actions a:active.complete svg, .courses.list .course .actions a:visited.complete svg {
              display: inline-block;
              margin-right: .5em; }
            .courses.list .course .actions a.complete span, .courses.list .course .actions a:active.complete span, .courses.list .course .actions a:visited.complete span {
              font-size: .75em; }
              .courses.list .course .actions a.complete span span, .courses.list .course .actions a:active.complete span span, .courses.list .course .actions a:visited.complete span span {
                display: none; }
              .courses.list .course .actions a.complete span:after, .courses.list .course .actions a:active.complete span:after, .courses.list .course .actions a:visited.complete span:after {
                display: none; }
            @media (pointer: fine) {
              .courses.list .course .actions a.complete:hover .star-icon, .courses.list .course .actions a:active.complete:hover .star-icon, .courses.list .course .actions a:visited.complete:hover .star-icon {
                stroke: #A6192E;
                fill: #A6192E; }
              .courses.list .course .actions a.complete:hover .star-check, .courses.list .course .actions a:active.complete:hover .star-check, .courses.list .course .actions a:visited.complete:hover .star-check {
                fill: #FFFFFF; } }
          .courses.list .course .actions a.bookmark, .courses.list .course .actions a:active.bookmark, .courses.list .course .actions a:visited.bookmark {
            width: 2.5em;
            height: 2.5em;
            margin: 0;
            transition: none !important;
            -moz-transition: none !important;
            -webkit-transition: none !important;
            -o-transition: none !important;
            -ms-transition: none !important; }
            .courses.list .course .actions a.bookmark svg, .courses.list .course .actions a:active.bookmark svg, .courses.list .course .actions a:visited.bookmark svg {
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              perspective: 1000px;
              -moz-transform: translate(-50%, -50%);
              -moz-perspective: 1000;
              -webkit-transform: translate(-50%, -50%);
              -webkit-perspective: 1000;
              -o-transform: translate(-50%, -50%);
              -o-perspective: 1000;
              -ms-transform: translate(-50%, -50%);
              -ms-perspective: 1000; }
            .courses.list .course .actions a.bookmark.active g, .courses.list .course .actions a:active.bookmark.active g, .courses.list .course .actions a:visited.bookmark.active g {
              fill: #26384E; }
          .courses.list .course .actions a:hover, .courses.list .course .actions a:active:hover, .courses.list .course .actions a:visited:hover {
            border-color: #26384E; }

/* --- Detail Page --- */
#course-header {
  position: relative;
  padding: calc(140px + 4em) 0 6em 0;
  background-size: cover;
  background-position: center; }
  @media only screen and (max-width: 910px) {
    #course-header {
      padding: calc(80px + 2em) 0 2em 0;
      background-color: #26384E;
      background-image: none !important; } }
  #course-header:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    content: ''; }
    @media only screen and (max-width: 910px) {
      #course-header:before {
        display: none; } }
  #course-header .lucy-wrapper, #course-header #layout-7030 {
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 910px) {
      #course-header .lucy-wrapper .content, #course-header #layout-7030 .content {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start; } }
    #course-header .lucy-wrapper img, #course-header #layout-7030 img {
      width: 45%;
      margin-right: 5%; }
      @media only screen and (max-width: 910px) {
        #course-header .lucy-wrapper img, #course-header #layout-7030 img {
          display: none; } }
    #course-header .lucy-wrapper .actions, #course-header #layout-7030 .actions {
      margin-bottom: 1.5em; }
      @media only screen and (max-width: 910px) {
        #course-header .lucy-wrapper .actions, #course-header #layout-7030 .actions {
          width: 100%;
          order: 3;
          padding-bottom: 2rem;
          margin-bottom: 2rem;
          border-bottom: 1px solid rgba(255, 255, 255, 0.2); } }
      #course-header .lucy-wrapper .actions a, #course-header #layout-7030 .actions a, #course-header .lucy-wrapper .actions a:active, #course-header #layout-7030 .actions a:active, #course-header .lucy-wrapper .actions a:visited, #course-header #layout-7030 .actions a:visited {
        position: relative;
        display: inline-block;
        height: 2.5em;
        margin-right: .5em;
        line-height: 2.5em;
        color: #26384E;
        text-decoration: none;
        background: #FFFFFF;
        vertical-align: top;
        border-radius: 1.5em;
        -moz-border-radius: 1.5em;
        -webkit-border-radius: 1.5em;
        -o-border-radius: 1.5em;
        -ms-border-radius: 1.5em;
        -moz-background-clip: padding-box;
        -webkit-background-clip: padding-box;
        -o-background-clip: padding-box;
        -ms-background-clip: padding-box; }
        #course-header .lucy-wrapper .actions a span, #course-header #layout-7030 .actions a span, #course-header .lucy-wrapper .actions a:active span, #course-header #layout-7030 .actions a:active span, #course-header .lucy-wrapper .actions a:visited span, #course-header #layout-7030 .actions a:visited span {
          position: relative;
          text-transform: uppercase;
          font-size: .7em;
          font-weight: 500;
          letter-spacing: .15em;
          cursor: pointer; }
          #course-header .lucy-wrapper .actions a span.main:after, #course-header #layout-7030 .actions a span.main:after, #course-header .lucy-wrapper .actions a:active span.main:after, #course-header #layout-7030 .actions a:active span.main:after, #course-header .lucy-wrapper .actions a:visited span.main:after, #course-header #layout-7030 .actions a:visited span.main:after {
            position: absolute;
            bottom: -10px;
            left: 0;
            width: 0;
            height: 2px;
            content: '';
            background-color: #A6192E;
            transition: width 0.2s ease-in-out;
            -moz-transition: width 0.2s ease-in-out;
            -webkit-transition: width 0.2s ease-in-out;
            -o-transition: width 0.2s ease-in-out;
            -ms-transition: width 0.2s ease-in-out; }
        #course-header .lucy-wrapper .actions a.complete, #course-header #layout-7030 .actions a.complete, #course-header .lucy-wrapper .actions a:active.complete, #course-header #layout-7030 .actions a:active.complete, #course-header .lucy-wrapper .actions a:visited.complete, #course-header #layout-7030 .actions a:visited.complete {
          display: inline-flex;
          padding: 0 1em 0 .75em;
          align-items: center; }
          #course-header .lucy-wrapper .actions a.complete svg, #course-header #layout-7030 .actions a.complete svg, #course-header .lucy-wrapper .actions a:active.complete svg, #course-header #layout-7030 .actions a:active.complete svg, #course-header .lucy-wrapper .actions a:visited.complete svg, #course-header #layout-7030 .actions a:visited.complete svg {
            display: inline-block;
            margin-right: .5em; }
          #course-header .lucy-wrapper .actions a.complete.active .star-icon, #course-header #layout-7030 .actions a.complete.active .star-icon, #course-header .lucy-wrapper .actions a:active.complete.active .star-icon, #course-header #layout-7030 .actions a:active.complete.active .star-icon, #course-header .lucy-wrapper .actions a:visited.complete.active .star-icon, #course-header #layout-7030 .actions a:visited.complete.active .star-icon {
            stroke: #A6192E;
            fill: #A6192E; }
          #course-header .lucy-wrapper .actions a.complete.active .star-check, #course-header #layout-7030 .actions a.complete.active .star-check, #course-header .lucy-wrapper .actions a:active.complete.active .star-check, #course-header #layout-7030 .actions a:active.complete.active .star-check, #course-header .lucy-wrapper .actions a:visited.complete.active .star-check, #course-header #layout-7030 .actions a:visited.complete.active .star-check {
            fill: #FFFFFF; }
          #course-header .lucy-wrapper .actions a.complete.active span, #course-header #layout-7030 .actions a.complete.active span, #course-header .lucy-wrapper .actions a:active.complete.active span, #course-header #layout-7030 .actions a:active.complete.active span, #course-header .lucy-wrapper .actions a:visited.complete.active span, #course-header #layout-7030 .actions a:visited.complete.active span {
            color: #A6192E; }
          @media (pointer: fine) {
            #course-header .lucy-wrapper .actions a.complete:hover .star-icon, #course-header #layout-7030 .actions a.complete:hover .star-icon, #course-header .lucy-wrapper .actions a:active.complete:hover .star-icon, #course-header #layout-7030 .actions a:active.complete:hover .star-icon, #course-header .lucy-wrapper .actions a:visited.complete:hover .star-icon, #course-header #layout-7030 .actions a:visited.complete:hover .star-icon {
              stroke: #A6192E;
              fill: #A6192E; }
            #course-header .lucy-wrapper .actions a.complete:hover .star-check, #course-header #layout-7030 .actions a.complete:hover .star-check, #course-header .lucy-wrapper .actions a:active.complete:hover .star-check, #course-header #layout-7030 .actions a:active.complete:hover .star-check, #course-header .lucy-wrapper .actions a:visited.complete:hover .star-check, #course-header #layout-7030 .actions a:visited.complete:hover .star-check {
              fill: #FFFFFF; }
            #course-header .lucy-wrapper .actions a.complete:hover span, #course-header #layout-7030 .actions a.complete:hover span, #course-header .lucy-wrapper .actions a:active.complete:hover span, #course-header #layout-7030 .actions a:active.complete:hover span, #course-header .lucy-wrapper .actions a:visited.complete:hover span, #course-header #layout-7030 .actions a:visited.complete:hover span {
              color: #A6192E; } }
        #course-header .lucy-wrapper .actions a.bookmark, #course-header #layout-7030 .actions a.bookmark, #course-header .lucy-wrapper .actions a:active.bookmark, #course-header #layout-7030 .actions a:active.bookmark, #course-header .lucy-wrapper .actions a:visited.bookmark, #course-header #layout-7030 .actions a:visited.bookmark {
          width: 2.5em; }
          #course-header .lucy-wrapper .actions a.bookmark svg, #course-header #layout-7030 .actions a.bookmark svg, #course-header .lucy-wrapper .actions a:active.bookmark svg, #course-header #layout-7030 .actions a:active.bookmark svg, #course-header .lucy-wrapper .actions a:visited.bookmark svg, #course-header #layout-7030 .actions a:visited.bookmark svg {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            perspective: 1000px;
            -moz-transform: translate(-50%, -50%);
            -moz-perspective: 1000;
            -webkit-transform: translate(-50%, -50%);
            -webkit-perspective: 1000;
            -o-transform: translate(-50%, -50%);
            -o-perspective: 1000;
            -ms-transform: translate(-50%, -50%);
            -ms-perspective: 1000; }
          #course-header .lucy-wrapper .actions a.bookmark.active g, #course-header #layout-7030 .actions a.bookmark.active g, #course-header .lucy-wrapper .actions a:active.bookmark.active g, #course-header #layout-7030 .actions a:active.bookmark.active g, #course-header .lucy-wrapper .actions a:visited.bookmark.active g, #course-header #layout-7030 .actions a:visited.bookmark.active g {
            fill: #26384E; }
          @media (pointer: fine) {
            #course-header .lucy-wrapper .actions a.bookmark:hover g, #course-header #layout-7030 .actions a.bookmark:hover g, #course-header .lucy-wrapper .actions a:active.bookmark:hover g, #course-header #layout-7030 .actions a:active.bookmark:hover g, #course-header .lucy-wrapper .actions a:visited.bookmark:hover g, #course-header #layout-7030 .actions a:visited.bookmark:hover g {
              fill: #26384E; } }
    #course-header .lucy-wrapper h1, #course-header #layout-7030 h1, #course-header .lucy-wrapper p, #course-header #layout-7030 p {
      color: #FFFFFF; }
    #course-header .lucy-wrapper h1, #course-header #layout-7030 h1 {
      margin-bottom: .25em;
      line-height: 1; }
      @media only screen and (max-width: 1440px) {
        #course-header .lucy-wrapper h1, #course-header #layout-7030 h1 {
          font-size: 5vw; } }
      @media only screen and (max-width: 910px) {
        #course-header .lucy-wrapper h1, #course-header #layout-7030 h1 {
          order: 1;
          font-size: 9vw;
          line-height: 1; } }
      @media only screen and (max-width: 525px) {
        #course-header .lucy-wrapper h1, #course-header #layout-7030 h1 {
          font-size: 12vw; } }
    #course-header .lucy-wrapper .intro, #course-header #layout-7030 .intro {
      margin-bottom: .5em;
      font-size: 1.5em; }
      @media only screen and (max-width: 1440px) {
        #course-header .lucy-wrapper .intro, #course-header #layout-7030 .intro {
          font-size: 1.8vw; } }
      @media only screen and (max-width: 910px) {
        #course-header .lucy-wrapper .intro, #course-header #layout-7030 .intro {
          order: 2;
          margin-bottom: 1em;
          font-size: 1.2em; } }
    #course-header .lucy-wrapper .dates, #course-header #layout-7030 .dates, #course-header .lucy-wrapper .location, #course-header #layout-7030 .location {
      margin-bottom: 0;
      font-size: .889em; }
      @media only screen and (max-width: 1440px) {
        #course-header .lucy-wrapper .dates, #course-header #layout-7030 .dates, #course-header .lucy-wrapper .location, #course-header #layout-7030 .location {
          font-size: 1.2vw; } }
      @media only screen and (max-width: 1125px) {
        #course-header .lucy-wrapper .dates, #course-header #layout-7030 .dates, #course-header .lucy-wrapper .location, #course-header #layout-7030 .location {
          font-size: 1.3vw; } }
      @media only screen and (max-width: 910px) {
        #course-header .lucy-wrapper .dates, #course-header #layout-7030 .dates, #course-header .lucy-wrapper .location, #course-header #layout-7030 .location {
          order: 4;
          font-size: .889em; } }
      #course-header .lucy-wrapper .dates span, #course-header #layout-7030 .dates span, #course-header .lucy-wrapper .location span, #course-header #layout-7030 .location span {
        display: inline-block;
        width: 1.5em; }
      #course-header .lucy-wrapper .dates a, #course-header #layout-7030 .dates a, #course-header .lucy-wrapper .dates a:active, #course-header #layout-7030 .dates a:active, #course-header .lucy-wrapper .dates a:visited, #course-header #layout-7030 .dates a:visited, #course-header .lucy-wrapper .location a, #course-header #layout-7030 .location a, #course-header .lucy-wrapper .location a:active, #course-header #layout-7030 .location a:active, #course-header .lucy-wrapper .location a:visited, #course-header #layout-7030 .location a:visited {
        color: #FFFFFF;
        text-decoration: none; }
        #course-header .lucy-wrapper .dates a:hover, #course-header #layout-7030 .dates a:hover, #course-header .lucy-wrapper .dates a:active:hover, #course-header #layout-7030 .dates a:active:hover, #course-header .lucy-wrapper .dates a:visited:hover, #course-header #layout-7030 .dates a:visited:hover, #course-header .lucy-wrapper .location a:hover, #course-header #layout-7030 .location a:hover, #course-header .lucy-wrapper .location a:active:hover, #course-header #layout-7030 .location a:active:hover, #course-header .lucy-wrapper .location a:visited:hover, #course-header #layout-7030 .location a:visited:hover {
          text-decoration: underline; }

.course-image.tablet-only {
  width: 100%; }

#course-register-bar {
  padding: 3em 0;
  background: #F9F9F9; }
  @media only screen and (max-width: 1125px) {
    #course-register-bar {
      padding: 2em 0; } }
  @media only screen and (max-width: 910px) {
    #course-register-bar {
      padding: 25px 0; } }
  #course-register-bar .lucy-wrapper, #course-register-bar #layout-7030 {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 1125px) {
      #course-register-bar .lucy-wrapper, #course-register-bar #layout-7030 {
        flex-wrap: wrap;
        justify-content: flex-start; } }
    #course-register-bar .lucy-wrapper label, #course-register-bar #layout-7030 label {
      padding: 1rem 0;
      flex: .5 0 auto;
      font-size: 1.5em;
      font-weight: 500;
      line-height: 1; }
      @media only screen and (max-width: 1440px) {
        #course-register-bar .lucy-wrapper label, #course-register-bar #layout-7030 label {
          font-size: 2vw; } }
      @media only screen and (max-width: 1125px) {
        #course-register-bar .lucy-wrapper label, #course-register-bar #layout-7030 label {
          width: 100%;
          margin-bottom: 1rem;
          padding-top: 0;
          padding-bottom: 1rem;
          border-bottom: 1px solid #D9DCE0;
          font-size: 1.5em; } }
      #course-register-bar .lucy-wrapper label span, #course-register-bar #layout-7030 label span {
        font-size: .9rem;
        font-weight: 300; }
        @media only screen and (max-width: 1440px) {
          #course-register-bar .lucy-wrapper label span, #course-register-bar #layout-7030 label span {
            font-size: 1.2vw; } }
        @media only screen and (max-width: 1125px) {
          #course-register-bar .lucy-wrapper label span, #course-register-bar #layout-7030 label span {
            font-size: .9rem; } }
    #course-register-bar .lucy-wrapper p, #course-register-bar #layout-7030 p, #course-register-bar .lucy-wrapper form, #course-register-bar #layout-7030 form {
      margin-bottom: 0;
      padding: 1rem 0;
      flex: 1 0 auto;
      font-size: .9rem;
      text-align: center;
      border-left: 1px solid #D9DCE0; }
      @media only screen and (max-width: 1440px) {
        #course-register-bar .lucy-wrapper p, #course-register-bar #layout-7030 p, #course-register-bar .lucy-wrapper form, #course-register-bar #layout-7030 form {
          font-size: 1.2vw; } }
      @media only screen and (max-width: 1125px) {
        #course-register-bar .lucy-wrapper p, #course-register-bar #layout-7030 p, #course-register-bar .lucy-wrapper form, #course-register-bar #layout-7030 form {
          flex: 0 0 auto;
          font-size: .9rem;
          padding: 1rem;
          text-align: left; } }
      @media only screen and (max-width: 910px) {
        #course-register-bar .lucy-wrapper p, #course-register-bar #layout-7030 p, #course-register-bar .lucy-wrapper form, #course-register-bar #layout-7030 form {
          width: 100%;
          padding: 0;
          margin-bottom: 1rem;
          border: none; } }
      #course-register-bar .lucy-wrapper p span:not(.in-button), #course-register-bar #layout-7030 p span:not(.in-button), #course-register-bar .lucy-wrapper form span:not(.in-button), #course-register-bar #layout-7030 form span:not(.in-button) {
        display: inline-block;
        margin-right: .5em; }
      #course-register-bar .lucy-wrapper p:last-child, #course-register-bar #layout-7030 p:last-child, #course-register-bar .lucy-wrapper form:last-child, #course-register-bar #layout-7030 form:last-child {
        flex: .5 0 auto;
        margin-left: 1em;
        text-align: right; }
        @media only screen and (max-width: 1125px) {
          #course-register-bar .lucy-wrapper p:last-child, #course-register-bar #layout-7030 p:last-child, #course-register-bar .lucy-wrapper form:last-child, #course-register-bar #layout-7030 form:last-child {
            margin-left: 0;
            padding-left: 1rem;
            text-align: left; } }
        @media only screen and (max-width: 910px) {
          #course-register-bar .lucy-wrapper p:last-child, #course-register-bar #layout-7030 p:last-child, #course-register-bar .lucy-wrapper form:last-child, #course-register-bar #layout-7030 form:last-child {
            margin-top: 1em;
            padding-left: 0; } }
        @media only screen and (max-width: 525px) {
          #course-register-bar .lucy-wrapper p:last-child .button, #course-register-bar #layout-7030 p:last-child .button, #course-register-bar .lucy-wrapper p:last-child #sponsorship-levels .level form .add, #sponsorship-levels .level form #course-register-bar .lucy-wrapper p:last-child .add, #course-register-bar #layout-7030 p:last-child #sponsorship-levels .level form .add, #sponsorship-levels .level form #course-register-bar #layout-7030 p:last-child .add, #course-register-bar .lucy-wrapper form:last-child .button, #course-register-bar #layout-7030 form:last-child .button, #course-register-bar .lucy-wrapper #sponsorship-levels .level form:last-child .add, #sponsorship-levels .level #course-register-bar .lucy-wrapper form:last-child .add, #course-register-bar #layout-7030 #sponsorship-levels .level form:last-child .add, #sponsorship-levels .level #course-register-bar #layout-7030 form:last-child .add {
            width: 100%; } }
    #course-register-bar .lucy-wrapper form, #course-register-bar #layout-7030 form {
      padding: 0; }
      @media only screen and (max-width: 1125px) {
        #course-register-bar .lucy-wrapper form, #course-register-bar #layout-7030 form {
          margin-bottom: 0; } }
    @media only screen and (max-width: 1125px) {
      #course-register-bar .lucy-wrapper p:first-of-type, #course-register-bar #layout-7030 p:first-of-type {
        padding-left: 0;
        border: none; } }

.course-detail aside a.back, .course-detail aside a.back:active, .course-detail aside a.back:visited {
  letter-spacing: .1em;
  font-size: .9em;
  text-transform: uppercase;
  text-decoration: none; }
  .course-detail aside a.back span, .course-detail aside a.back:active span, .course-detail aside a.back:visited span {
    display: inline-block;
    margin-right: .5em;
    transform: rotate(180deg);
    perspective: 1000px;
    -moz-transform: rotate(180deg);
    -moz-perspective: 1000;
    -webkit-transform: rotate(180deg);
    -webkit-perspective: 1000;
    -o-transform: rotate(180deg);
    -o-perspective: 1000;
    -ms-transform: rotate(180deg);
    -ms-perspective: 1000; }
  .course-detail aside a.back:hover, .course-detail aside a.back:active:hover, .course-detail aside a.back:visited:hover {
    text-decoration: underline; }

.course-detail aside .certificate {
  position: relative;
  display: block;
  margin-top: 3em;
  padding: 2em 2em 7em 2em;
  text-decoration: none;
  background: #26384E;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  @media only screen and (max-width: 1440px) {
    .course-detail aside .certificate {
      padding: 2vw 2vw 6em 2vw; } }
  @media only screen and (max-width: 910px) {
    .course-detail aside .certificate {
      display: none; } }
  .course-detail aside .certificate h3, .course-detail aside .certificate p {
    color: #FFFFFF; }
  .course-detail aside .certificate h3 {
    margin-bottom: .25em; }
    @media only screen and (max-width: 1440px) {
      .course-detail aside .certificate h3 {
        font-size: 2.5vw; } }
  .course-detail aside .certificate p {
    margin-bottom: 0;
    font-size: .75em; }
    @media only screen and (max-width: 1125px) {
      .course-detail aside .certificate p {
        font-size: .667em; } }
  .course-detail aside .certificate:after {
    position: absolute;
    bottom: -50px;
    left: 2em;
    width: 8em;
    height: 8em;
    background-image: url(../images/certificate-icon.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 1440px) {
      .course-detail aside .certificate:after {
        left: 2vw; } }
  .course-detail aside .certificate:hover {
    background: #A6192E; }
    .course-detail aside .certificate:hover:after {
      bottom: -40px; }

.course-detail h2 {
  margin-bottom: .5em !important; }

@media only screen and (max-width: 525px) {
  .course-detail p .button, .course-detail p #sponsorship-levels .level form .add, #sponsorship-levels .level form .course-detail p .add {
    width: 100%; } }

.course-detail .course-dates, .course-detail .faqs {
  margin-top: 4em; }
  @media only screen and (max-width: 910px) {
    .course-detail .course-dates, .course-detail .faqs {
      margin-top: 2em; } }

@media only screen and (max-width: 1125px) {
  .course-detail .course-dates table {
    font-size: .889em; } }

@media only screen and (max-width: 700px) {
  .course-detail .course-dates table {
    display: none; } }

.course-detail .course-dates table thead th {
  background-color: #A6192E !important; }

.course-detail .course-dates .mobile-course-dates {
  display: none;
  border-bottom: 1px solid #D9DCE0; }
  @media only screen and (max-width: 700px) {
    .course-detail .course-dates .mobile-course-dates {
      display: block; } }
  .course-detail .course-dates .mobile-course-dates .date {
    padding: 1em 0;
    border-top: 1px solid #D9DCE0; }
    .course-detail .course-dates .mobile-course-dates .date p {
      margin-bottom: 0;
      line-height: 1.5; }
      .course-detail .course-dates .mobile-course-dates .date p.day {
        font-weight: 500; }
      .course-detail .course-dates .mobile-course-dates .date p.time {
        color: #A6192E;
        font-size: .889em; }

.course-detail .course-page-callout {
  position: relative;
  display: block;
  margin-top: 20px;
  padding: 2em 2em 6em 2em;
  text-decoration: none;
  background: #A6192E; }
  .course-detail .course-page-callout h3, .course-detail .course-page-callout p {
    color: #FFFFFF; }
  .course-detail .course-page-callout h3 {
    margin-bottom: .25em;
    font-size: 6vw; }
    @media only screen and (max-width: 525px) {
      .course-detail .course-page-callout h3 {
        font-size: 7vw; } }
  .course-detail .course-page-callout p {
    margin-bottom: 0;
    font-size: .889em; }
  .course-detail .course-page-callout svg {
    position: absolute;
    bottom: -25px;
    left: 2em; }
    .course-detail .course-page-callout svg g {
      fill: transparent;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
  .course-detail .course-page-callout:hover {
    background: #A6192E; }
    .course-detail .course-page-callout:hover g {
      fill: #FFFFFF; }
  .course-detail .course-page-callout.certificate {
    margin-top: 2em;
    background: #26384E;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    .course-detail .course-page-callout.certificate:after {
      position: absolute;
      bottom: -50px;
      left: 2em;
      width: 8em;
      height: 8em;
      background-image: url(../images/certificate-icon.png);
      background-size: contain;
      background-repeat: no-repeat;
      content: '';
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    .course-detail .course-page-callout.certificate:hover {
      background: #A6192E; }
      .course-detail .course-page-callout.certificate:hover:after {
        bottom: -40px; }

.course-detail .back-to-top {
  display: block;
  margin-top: 2em;
  text-decoration: none;
  text-align: center; }

/* --- Social Grid --- */
#social-grid {
  display: flex;
  flex-wrap: wrap; }
  #social-grid .box {
    width: calc(50% - 20px * 1/2);
    margin-right: 20px;
    margin-top: calc(3em - 20px);
    margin-bottom: 3em;
    word-break: break-word; }
    @media only screen and (max-width: 1125px) {
      #social-grid .box {
        margin-top: calc(2em - 20px);
        margin-bottom: 2em; } }
    @media only screen and (max-width: 910px) {
      #social-grid .box {
        width: 100%;
        margin-right: 0;
        margin-top: 0;
        margin-bottom: 20px; } }
    #social-grid .box:nth-child(1), #social-grid .box:nth-child(2) {
      margin-top: 0; }
    #social-grid .box:nth-last-of-type(-n+2) {
      margin-bottom: 0; }
    #social-grid .box.alt {
      margin-right: 0; }
    #social-grid .box .inner {
      position: relative;
      padding: 2em 2em 8em 2em;
      height: 100%;
      background: #F9F9F9;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      @media only screen and (max-width: 910px) {
        #social-grid .box .inner {
          padding: 25px 25px 8em 25px; } }
      #social-grid .box .inner a, #social-grid .box .inner a:active, #social-grid .box .inner a:visited {
        color: #A6192E; }
    #social-grid .box .title {
      margin-bottom: 0.5em;
      font-weight: normal;
      color: #1B2532;
      font-size: 1.22em;
      letter-spacing: -0.01em;
      line-height: 1.35em; }
      #social-grid .box .title a, #social-grid .box .title a:active, #social-grid .box .title a:visited {
        color: #1B2532;
        text-decoration: none; }
        #social-grid .box .title a:hover, #social-grid .box .title a:active:hover, #social-grid .box .title a:visited:hover {
          text-decoration: underline; }
    #social-grid .box .tweet {
      margin-bottom: 0;
      font-size: 1.5em;
      line-height: 1.5; }
      @media only screen and (max-width: 1440px) {
        #social-grid .box .tweet {
          font-size: 2vw; } }
      @media only screen and (max-width: 910px) {
        #social-grid .box .tweet {
          font-size: 1.3em; } }
      @media only screen and (max-width: 525px) {
        #social-grid .box .tweet {
          font-size: 1.1em; } }
    #social-grid .box .body {
      font-size: 1em;
      line-height: 1.65; }
      @media only screen and (max-width: 1440px) {
        #social-grid .box .body {
          font-size: 1.5vw; } }
      @media only screen and (max-width: 910px) {
        #social-grid .box .body {
          font-size: .889em; } }
    #social-grid .box .video-wrapper, #social-grid .box .body {
      margin-bottom: 0; }
    #social-grid .box img {
      max-width: 100%; }
    #social-grid .box .bottom {
      position: absolute;
      bottom: 2em;
      left: 2em;
      display: flex;
      align-items: center;
      width: calc(100% - 4em);
      padding-top: 1em;
      border-top: 1px solid #D9DCE0; }
      #social-grid .box .bottom .date {
        height: 1em;
        margin-bottom: 0;
        line-height: 1em;
        font-size: .8125em;
        overflow: hidden; }
        #social-grid .box .bottom .date a, #social-grid .box .bottom .date a:active, #social-grid .box .bottom .date a:visited {
          color: #1B2532; }
      #social-grid .box .bottom a {
        text-decoration: none;
        margin-left: auto; }
      #social-grid .box .bottom [class*='icon'] {
        color: #A6192E;
        font-size: 1.5em; }
        #social-grid .box .bottom [class*='icon']:hover {
          color: #26384E; }
    #social-grid .box .sub-header a, #social-grid .box .sub-header a:active, #social-grid .box .sub-header a:visited, #social-grid .box .date a, #social-grid .box .date a:active, #social-grid .box .date a:visited {
      text-decoration: none; }
      #social-grid .box .sub-header a:hover, #social-grid .box .sub-header a:active:hover, #social-grid .box .sub-header a:visited:hover, #social-grid .box .date a:hover, #social-grid .box .date a:active:hover, #social-grid .box .date a:visited:hover {
        text-decoration: underline; }
  #social-grid .instagram {
    display: flex;
    width: 100%;
    flex-wrap: wrap; }
    #social-grid .instagram a, #social-grid .instagram a:active, #social-grid .instagram a:visited {
      position: relative;
      display: block;
      width: calc(25% - 20px * 3/4);
      margin-right: 20px;
      margin-bottom: 20px;
      height: 0;
      padding-bottom: 23.5%;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center; }
      #social-grid .instagram a:nth-child(4n), #social-grid .instagram a:active:nth-child(4n), #social-grid .instagram a:visited:nth-child(4n) {
        margin-right: 0; }
      #social-grid .instagram a:hover:before, #social-grid .instagram a:active:hover:before, #social-grid .instagram a:visited:hover:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        line-height: 100%;
        text-align: center;
        color: red;
        content: '';
        background: rgba(166, 25, 46, 0.5); }
      #social-grid .instagram a:hover:after, #social-grid .instagram a:active:hover:after, #social-grid .instagram a:visited:hover:after {
        position: absolute;
        top: 50%;
        left: 50%;
        color: #FFFFFF;
        font-size: 2em;
        content: "\e92e" !important;
        transform: translate(-50%, -50%);
        perspective: 1000px;
        -moz-transform: translate(-50%, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(-50%, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(-50%, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(-50%, -50%);
        -ms-perspective: 1000; }
    @media only screen and (max-width: 800px) {
      #social-grid .instagram a, #social-grid .instagram a:active, #social-grid .instagram a:visited {
        width: calc(50% - 20px * 1/2);
        margin-right: 20px;
        padding-bottom: 48%; }
        #social-grid .instagram a:nth-child(even), #social-grid .instagram a:active:nth-child(even), #social-grid .instagram a:visited:nth-child(even) {
          margin-right: 0; } }

/* --- FAQs --- */
.faqs .top {
  position: relative; }
  .faqs .top .more {
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 50px;
    height: 50px;
    cursor: pointer;
    background-color: #26384E;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
    @media only screen and (max-width: 700px) {
      .faqs .top .more {
        width: 20px;
        height: 20px;
        background-color: transparent; } }
    .faqs .top .more:before, .faqs .top .more:after {
      position: absolute;
      top: 50%;
      left: 50%;
      background: #FFFFFF;
      content: '';
      transform: translate(-50%, -50%);
      perspective: 1000px;
      -moz-transform: translate(-50%, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(-50%, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(-50%, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(-50%, -50%);
      -ms-perspective: 1000;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      @media only screen and (max-width: 700px) {
        .faqs .top .more:before, .faqs .top .more:after {
          background-color: #A6192E; } }
    .faqs .top .more:before {
      width: 2px;
      height: 20px; }
    .faqs .top .more:after {
      width: 20px;
      height: 2px; }

.faqs .question {
  position: relative;
  padding: 2em;
  margin-bottom: 20px;
  background: #F9F9F9;
  cursor: pointer; }
  @media only screen and (max-width: 700px) {
    .faqs .question {
      padding: 4vw; } }
  .faqs .question p.title {
    position: relative;
    margin-bottom: 0;
    padding-right: 3em;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.3; }
    @media only screen and (max-width: 1125px) {
      .faqs .question p.title {
        font-size: 2vw; } }
    @media only screen and (max-width: 910px) {
      .faqs .question p.title {
        font-size: 2.5vw; } }
    @media only screen and (max-width: 700px) {
      .faqs .question p.title {
        font-size: 1em; } }
  .faqs .question .body {
    display: none;
    margin-bottom: 0;
    padding-right: 5em;
    padding: 1em 5em 0 0;
    font-size: .9em; }
    @media only screen and (max-width: 700px) {
      .faqs .question .body {
        padding-right: 0;
        font-size: .889em; } }
    .faqs .question .body :last-child {
      margin-bottom: 0; }
  .faqs .question:hover .more {
    background: #A6192E; }
    @media only screen and (max-width: 700px) {
      .faqs .question:hover .more {
        background-color: transparent; }
        .faqs .question:hover .more:before, .faqs .question:hover .more:after {
          background-color: #26384E; } }
  .faqs .question.open .more {
    background: #A6192E; }
    .faqs .question.open .more:before {
      height: 0; }
    @media only screen and (max-width: 700px) {
      .faqs .question.open .more {
        background-color: transparent; }
        .faqs .question.open .more:before, .faqs .question.open .more:after {
          background-color: #26384E; } }

h4.faqs-form-header, #lucy-checkout-fields h2.faqs-form-header {
  font-family: 'Archivo Narrow', sans-serif !important;
  font-weight: 700 !important; }

#question-form .span {
  width: 100%; }

#account-page, #register-page, #forgot-page {
  padding-top: 4em;
  padding-bottom: 4em; }
  @media only screen and (max-width: 910px) {
    #account-page, #register-page, #forgot-page {
      padding-top: 2em;
      padding-bottom: 2em; } }
  #account-page h2, #register-page h2, #forgot-page h2 {
    margin-bottom: .5em !important; }

@media only screen and (max-width: 1125px) {
  #register-page .span10.offset7, #forgot-page .span10.offset7 {
    width: calc(50% - 20px);
    margin-left: calc(25% + 20px) !important; } }

@media only screen and (max-width: 910px) {
  #register-page .span10.offset7, #forgot-page .span10.offset7 {
    width: calc(66.6666666667% - 20px);
    margin-left: calc(16.6666666667% + 20px) !important; } }

@media only screen and (max-width: 700px) {
  #register-page .span10.offset7, #forgot-page .span10.offset7 {
    width: calc(100% - 20px);
    margin-left: 20px !important; } }

@media only screen and (max-width: 525px) {
  #register-page .span10.offset7, #forgot-page .span10.offset7 {
    margin-left: 0 !important; } }

@media only screen and (max-width: 910px) {
  #register-page .span8, #forgot-page .span8 {
    width: calc(75% - 20px); } }

@media only screen and (max-width: 910px) {
  #register-page .span4, #forgot-page .span4 {
    width: calc(25% - 20px); } }

@media only screen and (max-width: 910px) {
  #register-page .span12, #forgot-page .span12 {
    width: calc(100% - 20px); }
    #register-page .span12 .span12, #forgot-page .span12 .span12 {
      width: calc(50% - 20px); } }

#layout-7030.profile h2 {
  margin-bottom: .5em !important; }

#layout-7030.profile form {
  margin-bottom: 4em; }
  #layout-7030.profile form:last-child {
    margin-bottom: 0; }

@media only screen and (max-width: 1125px) {
  #layout-7030.profile .header-wrap {
    margin-bottom: 1em; } }

@media only screen and (max-width: 1125px) {
  #layout-7030.profile .header-wrap .action {
    display: none; } }

@media only screen and (max-width: 1440px) {
  #layout-7030.profile .courses.explore .course {
    width: calc(50% - (2.5em / 2)); }
    #layout-7030.profile .courses.explore .course:nth-of-type(2) {
      margin-right: 0; }
    #layout-7030.profile .courses.explore .course:nth-of-type(3) {
      display: none; } }

#login-overlay {
  position: fixed;
  display: none;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  content: ''; }

#login-overlay-content {
  position: fixed;
  display: none;
  z-index: 100;
  top: 50%;
  left: 50%;
  width: 700px;
  max-width: 95%;
  padding: 3em 5em 2em 5em;
  background: #FFFFFF;
  transform: translate(-50%, -50%);
  perspective: 1000px;
  -moz-transform: translate(-50%, -50%);
  -moz-perspective: 1000;
  -webkit-transform: translate(-50%, -50%);
  -webkit-perspective: 1000;
  -o-transform: translate(-50%, -50%);
  -o-perspective: 1000;
  -ms-transform: translate(-50%, -50%);
  -ms-perspective: 1000;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }
  @media only screen and (max-width: 700px) {
    #login-overlay-content {
      padding: 3em; } }
  @media only screen and (max-width: 600px) {
    #login-overlay-content {
      padding: 2em; } }
  #login-overlay-content #login-overlay-close {
    position: absolute;
    top: 2em;
    right: 2em;
    text-decoration: none; }
    @media only screen and (max-width: 700px) {
      #login-overlay-content #login-overlay-close {
        top: 15px;
        right: 15px; } }
    #login-overlay-content #login-overlay-close:hover, #login-overlay-content #login-overlay-close:focus {
      text-decoration: underline; }
  #login-overlay-content h2 {
    margin-bottom: .25em; }
  #login-overlay-content .forgot {
    margin-bottom: 1em;
    padding: 1em 0 2em 0;
    font-size: .889em;
    font-weight: 500;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .1em; }
    @media only screen and (max-width: 910px) {
      #login-overlay-content .forgot {
        font-size: .667em; } }
    #login-overlay-content .forgot a, #login-overlay-content .forgot a:active, #login-overlay-content .forgot a:visited {
      line-height: 1.1;
      text-decoration: none;
      border-bottom: 2px solid #A6192E; }
      #login-overlay-content .forgot a:hover, #login-overlay-content .forgot a:active:hover, #login-overlay-content .forgot a:visited:hover {
        border-color: transparent; }
  #login-overlay-content .register {
    margin-bottom: 0;
    text-align: center;
    font-size: 1.25em; }
    @media only screen and (max-width: 910px) {
      #login-overlay-content .register {
        font-size: 1em; } }
    @media only screen and (max-width: 525px) {
      #login-overlay-content .register {
        font-size: .889em; } }
    #login-overlay-content .register a, #login-overlay-content .register a:active, #login-overlay-content .register a:visited {
      color: #A6192E; }
  #login-overlay-content .button, #login-overlay-content #sponsorship-levels .level form .add, #sponsorship-levels .level form #login-overlay-content .add {
    width: 100%;
    padding-left: 0;
    padding-right: 0; }

@media only screen and (max-width: 1125px) {
  #account-form .span18 {
    width: calc(70% - 20px); } }

@media only screen and (max-width: 910px) {
  #account-form .span18 {
    width: calc(65% - 20px); } }

@media only screen and (max-width: 1125px) {
  #account-form .span6 {
    width: calc(30% - 20px); } }

@media only screen and (max-width: 910px) {
  #account-form .span6 {
    width: calc(35% - 20px); } }

@media only screen and (max-width: 1125px) {
  #profile-form .span7, #profile-form .span8 {
    width: calc(50% - 20px); } }

@media only screen and (max-width: 1125px) {
  #profile-form .span4, #profile-form .span5 {
    width: calc(25% - 20px); } }

@media only screen and (max-width: 525px) {
  #profile-form button, #profile-form .overlay-card .bottom .level-filled, .overlay-card .bottom #profile-form .level-filled {
    width: 100%;
    padding: 0; }
    #profile-form button:hover:after, #profile-form .overlay-card .bottom .level-filled:hover:after, .overlay-card .bottom #profile-form .level-filled:hover:after {
      width: 100%; } }

@media only screen and (max-width: 1125px) {
  #password-form .span9 {
    width: calc(50% - 20px); } }

@media only screen and (max-width: 1125px) {
  #password-form .span6 {
    width: auto; }
    #password-form .span6 button, #password-form .span6 .overlay-card .bottom .level-filled, .overlay-card .bottom #password-form .span6 .level-filled {
      padding: 0 2.5em; } }

.desktop-only {
  display: none; }
  @media only screen and (max-width: 1125px) {
    .desktop-only {
      display: inline-block; } }

@media only screen and (max-width: 1125px) {
  #patron-orders {
    display: block;
    border-bottom: 1px solid #D9DCE0; } }

@media only screen and (max-width: 1125px) {
  #patron-orders tbody, #patron-orders tr, #patron-orders td {
    display: block;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important; } }

@media only screen and (max-width: 1125px) {
  #patron-orders tr {
    padding: 1em 0 !important;
    border-top: 1px solid #D9DCE0; }
    #patron-orders tr td {
      background-color: #FFFFFF !important; }
      #patron-orders tr td:last-of-type {
        margin-top: 1em !important; } }

@media only screen and (max-width: 1125px) {
  #patron-orders thead {
    display: none; } }

#patron-orders td:first-child {
  width: 20%; }

#patron-orders .desktop-only {
  font-weight: 700; }

#cart-donate-pitch {
  display: block;
  overflow: hidden;
  margin-bottom: 20px;
  padding-top: 20px;
  border-top: 1px solid #D9DCE0;
  font-size: .889em;
  color: #1B2532; }
  @media only screen and (max-width: 1440px) {
    #cart-donate-pitch {
      font-size: .9em; } }
  @media only screen and (max-width: 910px) {
    #cart-donate-pitch {
      font-size: 1em; } }
  #cart-donate-pitch p {
    margin-bottom: 10px; }
  #cart-donate-pitch #cart-donate-check {
    float: left;
    width: 35%;
    margin-top: 8px; }
    @media only screen and (max-width: 1440px) {
      #cart-donate-pitch #cart-donate-check {
        width: 40%; } }
  #cart-donate-pitch #cart-donate-amount {
    float: left;
    width: 65% !important;
    height: 45px;
    margin-bottom: 0 !important; }
    @media only screen and (max-width: 1440px) {
      #cart-donate-pitch #cart-donate-amount {
        width: 60% !important; } }

#lucy-checkout {
  margin: 4em 0; }
  @media only screen and (max-width: 910px) {
    #lucy-checkout {
      margin: 2em 0; } }
  @media only screen and (max-width: 910px) {
    #lucy-checkout .span6.main {
      width: calc(100% - 20px);
      margin-left: 20px !important; } }
  @media only screen and (max-width: 525px) {
    #lucy-checkout .span6.main {
      margin-left: 0 !important; } }

#lucy-cart {
  min-height: calc(100vh - 140px - 148px - 8em);
  margin: 4em 0; }
  @media only screen and (max-width: 910px) {
    #lucy-cart {
      min-height: calc(100vh - 80px - 128px - 4em);
      margin: 2em 0; } }
  @media only screen and (max-width: 910px) {
    #lucy-cart .span16.main, #lucy-cart .span6.main {
      width: calc(100% - 20px);
      margin-left: 20px !important; } }
  @media only screen and (max-width: 525px) {
    #lucy-cart .span16.main, #lucy-cart .span6.main {
      margin-left: 0 !important; } }
  #lucy-cart .cart-table {
    margin-bottom: 3em; }
  #lucy-cart table tr.pitch td {
    background: #A6192E; }
  #lucy-cart #coupon-error {
    font-size: .75em;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: bold; }
  #lucy-cart #cart-coupon, #lucy-cart #cart-coupon-mobile {
    margin-top: 1em; }
    #lucy-cart #cart-coupon input, #lucy-cart #cart-coupon-mobile input {
      margin-bottom: 0 !important; }
  #lucy-cart #cart-coupon-mobile {
    display: none; }
  #lucy-cart #cart-coupon-apply {
    text-align: center; }
  @media only screen and (max-width: 910px) {
    #lucy-cart #cart-coupon.desktop {
      display: none; }
    #lucy-cart #cart-coupon-mobile {
      display: block;
      margin-bottom: 1em;
      padding: 1em 0; }
      #lucy-cart #cart-coupon-mobile #cart-coupon-apply-mobile {
        display: block;
        text-align: center; }
      #lucy-cart #cart-coupon-mobile .span16 {
        width: 65% !important; }
      #lucy-cart #cart-coupon-mobile .span8 {
        width: 25% !important;
        margin-left: 5% !important; } }

/* --- Cart Item Table --- */
.cart-table, .ticket-table {
  margin-bottom: 2em; }
  .cart-table .header, .ticket-table .header {
    margin-bottom: 0.5em;
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 0.6875em;
    font-weight: 500;
    color: #A6192E;
    letter-spacing: 0.1em;
    line-height: 2.2em;
    text-transform: uppercase;
    margin-bottom: 1em; }
    @media only screen and (max-width: 525px) {
      .cart-table .header, .ticket-table .header {
        display: none; } }
  .cart-table .item, .ticket-table .item {
    position: relative;
    padding: 1.5em 0;
    border-top: 1px solid #D9DCE0; }
    .cart-table .item [class*='span'], .ticket-table .item [class*='span'] {
      position: relative; }
    .cart-table .item .title, .ticket-table .item .title {
      margin-bottom: 0;
      font-size: 1.22em;
      letter-spacing: -0.01em;
      line-height: 1.35em;
      font-weight: 500 !important; }
    .cart-table .item .desc, .ticket-table .item .desc {
      margin-bottom: 0;
      font-size: .75em;
      color: #1B2532 !important; }
    .cart-table .item .quantity select, .ticket-table .item .quantity select {
      width: 100% !important;
      padding-left: 10px;
      -webkit-appearance: none;
      background: #FFFFFF url(../images/dropdown-arrow.png) no-repeat calc(100% - 10px) 50%;
      background-size: 12px 16px; }
    .cart-table .item .price, .ticket-table .item .price {
      color: #1B2532; }
    .cart-table .item input, .cart-table .item select, .ticket-table .item input, .ticket-table .item select {
      width: 75% !important;
      margin-bottom: 0 !important; }
    .cart-table .item:last-child, .ticket-table .item:last-child {
      border-bottom: 1px solid #D9DCE0; }
    .cart-table .item.fixed .inner, .ticket-table .item.fixed .inner {
      position: absolute;
      top: 50%;
      left: 0;
      width: 100%;
      transform: translate(0, -50%);
      perspective: 1000px;
      -moz-transform: translate(0, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -50%);
      -ms-perspective: 1000; }
    .cart-table .item .delete, .ticket-table .item .delete {
      display: block;
      margin-top: 2em;
      font-family: 'Archivo Narrow', sans-serif;
      font-size: .722em;
      text-decoration: none; }
      .cart-table .item .delete:hover, .ticket-table .item .delete:hover {
        text-decoration: underline; }
    .cart-table .item .mobile.delete, .ticket-table .item .mobile.delete {
      position: absolute;
      top: 1.5em;
      right: 0;
      display: none;
      text-decoration: none;
      color: #C3CBCB; }
  @media only screen and (max-width: 525px) {
    .cart-table, .ticket-table {
      margin-bottom: 1em !important; }
      .cart-table .item .span14, .ticket-table .item .span14 {
        width: 90% !important; }
      .cart-table .item .span4, .ticket-table .item .span4 {
        display: none; }
      .cart-table .item .mobile.delete, .ticket-table .item .mobile.delete {
        display: block;
        margin-top: .5em !important; }
      .cart-table .item input, .cart-table .item select, .ticket-table .item input, .ticket-table .item select {
        margin-top: .5em !important; }
      .cart-table .item .quantity, .ticket-table .item .quantity {
        display: inline-block;
        width: 60% !important; }
      .cart-table .item .price, .ticket-table .item .price {
        display: inline-block;
        width: 40% !important; } }
  .cart-table .ticket, .ticket-table .ticket {
    padding: 1.5em 0;
    border-top: 1px solid #D9DCE0;
    border-bottom: none !important; }
    .cart-table .ticket.sold-out .title, .ticket-table .ticket.sold-out .title {
      filter: alpha(opacity=70);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
      -moz-opacity: 0.7;
      -khtml-opacity: 0.7;
      opacity: 0.7; }
    @media only screen and (max-width: 525px) {
      .cart-table .ticket.sold-out .span6, .ticket-table .ticket.sold-out .span6 {
        display: none; } }
    @media only screen and (max-width: 525px) {
      .cart-table .ticket.sold-out .span8.right, .ticket-table .ticket.sold-out .span8.right {
        margin-left: 0 !important; } }
    .cart-table .ticket:last-child, .ticket-table .ticket:last-child {
      border-bottom: 1px solid #D9DCE0 !important; }
    .cart-table .ticket .title, .cart-table .ticket .amount, .ticket-table .ticket .title, .ticket-table .ticket .amount {
      font-size: 1.125em; }
    .cart-table .ticket select, .ticket-table .ticket select {
      font-size: .7em;
      text-align: center;
      border: 1px solid #D9DCE0;
      border-radius: 3px;
      -moz-border-radius: 3px;
      -webkit-border-radius: 3px;
      -o-border-radius: 3px;
      -ms-border-radius: 3px;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
    .cart-table .ticket p:last-child, .ticket-table .ticket p:last-child {
      margin-bottom: 0; }
    .cart-table .ticket button, .cart-table .ticket .overlay-card .bottom .level-filled, .overlay-card .bottom .cart-table .ticket .level-filled, .cart-table .ticket .button, .cart-table .ticket #sponsorship-levels .level form .add, #sponsorship-levels .level form .cart-table .ticket .add, .ticket-table .ticket button, .ticket-table .ticket .overlay-card .bottom .level-filled, .overlay-card .bottom .ticket-table .ticket .level-filled, .ticket-table .ticket .button, .ticket-table .ticket #sponsorship-levels .level form .add, #sponsorship-levels .level form .ticket-table .ticket .add {
      font-size: .7em !important; }
    .cart-table .ticket .fields .span8, .ticket-table .ticket .fields .span8 {
      margin-bottom: 1em; }
    .cart-table .ticket .fields input, .ticket-table .ticket .fields input {
      width: 100% !important; }
    .cart-table .ticket .attendees, .ticket-table .ticket .attendees {
      padding-top: 1em !important; }
    .cart-table .ticket .guest-label, .ticket-table .ticket .guest-label {
      margin-bottom: 1em;
      font-family: 'Archivo Narrow', sans-serif;
      font-size: .75em;
      text-transform: uppercase; }
    @media only screen and (max-width: 525px) {
      .cart-table .ticket, .ticket-table .ticket {
        position: relative; }
        .cart-table .ticket .span12, .ticket-table .ticket .span12 {
          width: 88% !important;
          margin-bottom: .75em; }
        .cart-table .ticket .amount, .ticket-table .ticket .amount {
          position: absolute;
          top: 1.75em;
          right: 0;
          width: auto !important;
          margin: 0 !important;
          font-size: 1.25em !important;
          font-family: 'Archivo Narrow', sans-serif;
          font-weight: bold;
          transform: translate(0, -50%);
          perspective: 1000px;
          -moz-transform: translate(0, -50%);
          -moz-perspective: 1000;
          -webkit-transform: translate(0, -50%);
          -webkit-perspective: 1000;
          -o-transform: translate(0, -50%);
          -o-perspective: 1000;
          -ms-transform: translate(0, -50%);
          -ms-perspective: 1000; }
        .cart-table .ticket .quantity, .ticket-table .ticket .quantity {
          margin-top: 0;
          width: 75px !important; }
          .cart-table .ticket .quantity select, .ticket-table .ticket .quantity select {
            width: 100% !important;
            height: 48px; }
        .cart-table .ticket .right, .ticket-table .ticket .right {
          display: inline-block;
          width: auto !important;
          margin-left: 1em !important;
          margin-top: .5em !important; } }

.ticket-table .item input[type="number"] {
  width: 100% !important;
  padding-right: 0; }

.ticket-table .item .custom-fields {
  margin-top: 1em; }
  .ticket-table .item .custom-fields input[type="text"], .ticket-table .item .custom-fields input[type="email"] {
    width: 100% !important;
    margin-bottom: 25px !important; }
  .ticket-table .item .custom-fields .select-field {
    margin-bottom: 1em; }
  .ticket-table .item .custom-fields .check-group .check-field input {
    width: auto !important; }
  .ticket-table .item .custom-fields .check-group .check-field label {
    display: inline;
    position: static !important;
    opacity: 1 !important; }

.cart-totals {
  padding-top: 20px;
  border-top: 1px solid #D9DCE0; }
  .cart-totals .total span {
    float: right;
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em;
    font-weight: 500 !important; }
  .cart-totals button, .cart-totals .overlay-card .bottom .level-filled, .overlay-card .bottom .cart-totals .level-filled {
    display: block;
    width: 100%;
    padding: 1.5em 0;
    text-align: center; }

/* --- Checkout --- */
#lucy-order-total {
  display: none;
  margin-bottom: 2em;
  padding: .75em 0;
  background: #A6192E; }
  #lucy-order-total .span12 {
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: bold;
    text-transform: uppercase; }
  @media only screen and (max-width: 1125px) {
    #lucy-order-total {
      display: block; } }
  @media only screen and (max-width: 910px) {
    #lucy-order-total .row {
      width: 100% !important;
      margin: 0 !important; }
    #lucy-order-total .span12 {
      width: 50% !important;
      margin: 0 !important; } }

#lucy-checkout-fields h2 {
  margin-top: 2em;
  margin-bottom: 1em !important;
  font-weight: 500 !important;
  font-family: franklin-gothic-atf, sans-serif !important; }
  #lucy-checkout-fields h2:first-child, #lucy-checkout-fields h2.billing {
    margin-top: 0; }

#lucy-checkout-fields ul#cart-payments {
  display: table;
  width: 100%;
  margin: 0 0 2em 0;
  padding: 0;
  border: 1px solid #D9DCE0;
  overflow: hidden; }
  #lucy-checkout-fields ul#cart-payments li {
    display: table-cell;
    padding: 1.25em 0;
    text-align: center;
    color: #1B2532;
    font-size: .7em;
    text-transform: uppercase;
    font-weight: bold;
    border-right: 1px solid #D9DCE0;
    cursor: pointer; }
    #lucy-checkout-fields ul#cart-payments li.selected {
      color: #FFFFFF;
      background: #A6192E; }
    @media (pointer: fine) {
      #lucy-checkout-fields ul#cart-payments li:hover {
        color: #FFFFFF;
        background: #A6192E; } }
    #lucy-checkout-fields ul#cart-payments li:last-child {
      border-right: none; }

#lucy-checkout-fields #create-account {
  margin-top: -1em;
  margin-bottom: 2em;
  font-size: .9em; }
  #lucy-checkout-fields #create-account input[type=checkbox] {
    position: relative;
    top: 1px; }

#lucy-checkout-fields #account-cancel {
  position: absolute;
  top: 12px;
  right: 15px;
  font-size: .8em; }

#lucy-checkout-fields #password-wrapper {
  display: none; }

@media only screen and (max-width: 910px) {
  #lucy-checkout-fields {
    width: calc(100% - 20px) !important;
    margin-bottom: 2em; }
    #lucy-checkout-fields .actions {
      margin-top: 0; }
      #lucy-checkout-fields .actions .row {
        width: 100% !important;
        margin: 0 !important; }
      #lucy-checkout-fields .actions .span12 {
        width: 50% !important;
        margin: 0 !important; } }

@media only screen and (max-width: 525px) {
  #lucy-checkout-fields {
    width: 100% !important; }
    #lucy-checkout-fields .actions .span12 {
      width: 100% !important;
      margin-bottom: 20px !important; }
      #lucy-checkout-fields .actions .span12 button, #lucy-checkout-fields .actions .span12 .overlay-card .bottom .level-filled, .overlay-card .bottom #lucy-checkout-fields .actions .span12 .level-filled, #lucy-checkout-fields .actions .span12 .button, #lucy-checkout-fields .actions .span12 #sponsorship-levels .level form .add, #sponsorship-levels .level form #lucy-checkout-fields .actions .span12 .add {
        width: 100%;
        padding: 0;
        text-align: center; } }

#lucy-checkout-details {
  padding: 25px;
  background: #F9F9F9; }
  @media only screen and (max-width: 1125px) {
    #lucy-checkout-details.filled .items .item .title, #lucy-checkout-details.filled .items .item .desc {
      padding-right: 0; }
    #lucy-checkout-details.filled .items .item .price {
      position: relative;
      top: auto;
      right: auto;
      margin-top: .5em;
      text-align: right; } }
  @media only screen and (max-width: 910px) {
    #lucy-checkout-details.filled .items .item .title, #lucy-checkout-details.filled .items .item .desc {
      padding-right: 100px; }
    #lucy-checkout-details.filled .items .item .price {
      position: absolute;
      top: 15px;
      right: 0;
      margin-top: 0; } }
  #lucy-checkout-details h5 {
    margin-bottom: 20px;
    font-weight: 500 !important; }
    @media only screen and (max-width: 1440px) {
      #lucy-checkout-details h5 {
        font-size: 1.8vw; } }
    @media only screen and (max-width: 1125px) {
      #lucy-checkout-details h5 {
        font-size: 2vw; } }
    @media only screen and (max-width: 910px) {
      #lucy-checkout-details h5 {
        font-size: 1.22em; } }
  #lucy-checkout-details .count {
    margin-bottom: .75em;
    font-size: 1.22em;
    font-weight: bold; }
    @media only screen and (max-width: 1440px) {
      #lucy-checkout-details .count {
        font-size: 1.8vw; } }
    @media only screen and (max-width: 1125px) {
      #lucy-checkout-details .count {
        font-size: 2vw; } }
    @media only screen and (max-width: 910px) {
      #lucy-checkout-details .count {
        font-size: 1.22em; } }
  #lucy-checkout-details .items {
    margin-bottom: 20px;
    border-top: 1px solid #D9DCE0;
    border-bottom: 1px solid #D9DCE0; }
    #lucy-checkout-details .items .item {
      position: relative;
      padding: 15px 0;
      line-height: 1.3;
      font-size: .9em;
      border-bottom: 1px solid #D9DCE0; }
      #lucy-checkout-details .items .item .title {
        margin-bottom: 0;
        padding-right: 100px;
        font-weight: 500; }
        @media only screen and (max-width: 1440px) {
          #lucy-checkout-details .items .item .title {
            font-size: .9em; } }
        @media only screen and (max-width: 910px) {
          #lucy-checkout-details .items .item .title {
            font-size: 1em; } }
      #lucy-checkout-details .items .item .desc {
        margin-bottom: 0;
        padding-right: 100px;
        font-size: .75em; }
      #lucy-checkout-details .items .item .price {
        position: absolute;
        top: 15px;
        right: 0;
        margin-bottom: 0;
        font-weight: bold; }
      #lucy-checkout-details .items .item:last-child {
        margin-bottom: 0;
        border-bottom: none; }
  #lucy-checkout-details .totals .item {
    padding: 15px 0;
    line-height: 1.3; }
    #lucy-checkout-details .totals .item .title {
      margin-bottom: 0;
      padding-right: 100px; }
      #lucy-checkout-details .totals .item .title a {
        font-size: .8em; }
    #lucy-checkout-details .totals .item .price {
      float: right;
      margin-bottom: 0;
      font-weight: bold; }
    #lucy-checkout-details .totals .item :last-child {
      margin-bottom: 0; }
    #lucy-checkout-details .totals .item.small {
      padding: 5px 0;
      font-size: .8em; }
    #lucy-checkout-details .totals .item:last-child {
      margin-top: 0;
      padding: 15px 0 0 0;
      font-size: 1.22em;
      letter-spacing: -0.01em;
      line-height: 1.35em;
      font-weight: 500 !important; }
    #lucy-checkout-details .totals .item.total {
      margin-top: 15px; }
  #lucy-checkout-details .actions {
    display: block;
    margin-top: 2em;
    text-align: center; }
  #lucy-checkout-details #coupon-error {
    font-size: .75em;
    font-weight: bold; }
  #lucy-checkout-details #cart-coupon input {
    margin-bottom: 0 !important; }

#lucy-cart-thanks {
  margin-bottom: 4em;
  min-height: calc(100vh - 140px - 148px - 14em); }
  @media only screen and (max-width: 910px) {
    #lucy-cart-thanks {
      margin-bottom: 0;
      padding: 2em 0;
      min-height: calc(100vh - 80px - 128px - 4em); } }
  #lucy-cart-thanks h2, #lucy-cart-thanks p.thanks {
    text-align: center; }
  #lucy-cart-thanks #lucy-checkout-details .totals .item.total {
    border-top: none; }
  @media only screen and (max-width: 910px) {
    #lucy-cart-thanks .span12.offset6 {
      width: calc(100% - 20px);
      margin-left: 20px !important; } }
  @media only screen and (max-width: 525px) {
    #lucy-cart-thanks .span12.offset6 {
      margin-left: 0 !important; } }

.resource-group .resource-item:last-of-type {
  border-bottom: 1px solid #D9DCE0; }

.resource-item {
  overflow: hidden;
  position: relative;
  margin-bottom: 20px;
  padding: 1.5em;
  background: #F9F9F9; }
  @media only screen and (max-width: 525px) {
    .resource-item {
      padding: 1.5em 0; } }
  .resource-item:last-of-type {
    margin-bottom: 0; }
  .resource-item.audio {
    padding: 2em 0 1.5em 0; }
    .resource-item.audio img {
      top: 2em; }
  .resource-item.two-button .file-size, .resource-item.two-button h5 {
    padding-right: 295px; }
  .resource-item span[class*='icon'] {
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    color: #A6192E;
    font-size: 50px; }
  .resource-item .sub-header {
    margin-bottom: 0 !important;
    padding-right: 155px;
    padding-left: 60px; }
    @media only screen and (max-width: 525px) {
      .resource-item .sub-header {
        padding-right: 0 !important; } }
  .resource-item h5 {
    margin-bottom: 0 !important;
    padding-right: 155px !important;
    padding-left: 60px;
    font-weight: 500 !important; }
    @media only screen and (max-width: 525px) {
      .resource-item h5 {
        padding-right: 0 !important; } }
  .resource-item .desc {
    display: none;
    margin-top: 1em;
    margin-bottom: 0;
    padding-left: 60px;
    font-size: .88em; }
    @media only screen and (max-width: 525px) {
      .resource-item .desc {
        padding-left: 0; } }
    .resource-item .desc.open {
      display: block; }
    .resource-item .desc h6 {
      margin-top: 1em;
      margin-bottom: .25em;
      font-weight: 500; }
    .resource-item .desc p {
      margin-bottom: .5em; }
    .resource-item .desc .button-link {
      display: inline-block;
      margin-bottom: 2em;
      font-size: .625em;
      text-transform: uppercase;
      line-height: 1;
      letter-spacing: 1px;
      text-decoration: none !important;
      font-weight: 500;
      outline: none;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      .resource-item .desc .button-link:hover {
        text-decoration: underline; }
  .resource-item .more {
    display: block;
    position: absolute;
    top: 2rem;
    right: calc(1.5rem + 150px);
    width: 50px;
    height: 50px;
    cursor: pointer;
    background-color: #26384E;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box; }
    .resource-item .more:before, .resource-item .more:after {
      position: absolute;
      top: 50%;
      left: 50%;
      background: #FFFFFF;
      content: '';
      transform: translate(-50%, -50%);
      perspective: 1000px;
      -moz-transform: translate(-50%, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(-50%, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(-50%, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(-50%, -50%);
      -ms-perspective: 1000;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    .resource-item .more:before {
      width: 2px;
      height: 20px; }
    .resource-item .more:after {
      width: 20px;
      height: 2px; }
    .resource-item .more:hover, .resource-item .more.open {
      background: #A6192E; }
    .resource-item .more.open:before {
      height: 0; }
  .resource-item .button, .resource-item #sponsorship-levels .level form .add, #sponsorship-levels .level form .resource-item .add {
    position: absolute !important;
    top: 1.8rem;
    right: 1.5rem;
    width: 135px;
    height: auto !important;
    padding: 1em 0 !important;
    line-height: 1 !important;
    text-align: center;
    color: #FFFFFF;
    background-color: #A6192E !important;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 525px) {
      .resource-item .button, .resource-item #sponsorship-levels .level form .add, #sponsorship-levels .level form .resource-item .add {
        float: left;
        position: relative;
        top: auto !important;
        right: auto !important;
        margin-top: 2em; } }

.resources-plugin {
  margin-bottom: 2em; }

.faculty-list {
  margin-top: 4em; }
  @media only screen and (max-width: 910px) {
    .faculty-list {
      margin-top: 2em; } }
  .faculty-list h2 {
    margin-bottom: .5em !important; }
  .faculty-list .member {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #D9DCE0; }
    @media only screen and (max-width: 700px) {
      .faculty-list .member {
        flex-wrap: wrap;
        padding-bottom: 2em; } }
    .faculty-list .member:first-of-type {
      border-top: 1px solid #D9DCE0; }
    .faculty-list .member .content {
      display: flex;
      align-items: flex-start;
      width: 100%;
      padding: 2em 2em 2em 0; }
      @media only screen and (max-width: 700px) {
        .faculty-list .member .content {
          flex-wrap: wrap;
          padding-right: 0;
          padding-bottom: 0; } }
      .faculty-list .member .content img {
        width: 33%;
        margin: 0 2em 0 0; }
        @media only screen and (max-width: 700px) {
          .faculty-list .member .content img {
            width: 100% !important;
            margin-right: 0;
            margin-bottom: 1.5em; } }
      .faculty-list .member .content .inner {
        width: 66%; }
        @media only screen and (max-width: 700px) {
          .faculty-list .member .content .inner {
            width: 100% !important; } }
      .faculty-list .member .content .person {
        font-size: 1.55em;
        letter-spacing: 0.01em;
        line-height: 1.35em;
        margin-bottom: .2em;
        font-weight: 500; }
        @media only screen and (max-width: 1440px) {
          .faculty-list .member .content .person {
            font-size: 1.5em; } }
        @media only screen and (max-width: 1125px) {
          .faculty-list .member .content .person {
            font-size: 2.5vw; } }
        @media only screen and (max-width: 910px) {
          .faculty-list .member .content .person {
            font-size: 3.5vw; } }
        @media only screen and (max-width: 525px) {
          .faculty-list .member .content .person {
            font-size: 4.5vw; } }
      .faculty-list .member .content .title {
        margin-bottom: 0;
        font-weight: 500; }
        @media only screen and (max-width: 525px) {
          .faculty-list .member .content .title {
            font-size: .889em; } }
      .faculty-list .member .content .short, .faculty-list .member .content .long {
        margin: 1em 0 0 0; }
      .faculty-list .member .content .long {
        display: none; }
      .faculty-list .member .content .open, .faculty-list .member .content .close {
        cursor: pointer;
        color: #A6192E;
        font-weight: 500; }
        .faculty-list .member .content .open:hover, .faculty-list .member .content .close:hover {
          text-decoration: underline; }
      .faculty-list .member .content.has-actions img {
        width: 42%; }
      .faculty-list .member .content.has-actions .inner {
        width: 53%; }
    .faculty-list .member .actions {
      width: 18%;
      padding: 2em;
      border-left: 1px solid #D9DCE0; }
      @media only screen and (max-width: 1440px) {
        .faculty-list .member .actions {
          font-size: .889em; } }
      @media only screen and (max-width: 700px) {
        .faculty-list .member .actions {
          flex-basis: 100%;
          padding: 1em 0 0 0;
          border: none;
          font-size: 1em; } }
      .faculty-list .member .actions p {
        margin-bottom: 0;
        font-size: .875em;
        line-height: 2; }
      .faculty-list .member .actions [class*='icon'] {
        vertical-align: middle;
        color: #A6192E; }
      .faculty-list .member .actions .button, .faculty-list .member .actions #sponsorship-levels .level form .add, #sponsorship-levels .level form .faculty-list .member .actions .add {
        margin-top: 1em;
        margin-bottom: 0; }
        .faculty-list .member .actions .button em, .faculty-list .member .actions #sponsorship-levels .level form .add em, #sponsorship-levels .level form .faculty-list .member .actions .add em {
          font-style: normal; }
          @media only screen and (max-width: 1125px) {
            .faculty-list .member .actions .button em, .faculty-list .member .actions #sponsorship-levels .level form .add em, #sponsorship-levels .level form .faculty-list .member .actions .add em {
              display: none; } }
          @media only screen and (max-width: 700px) {
            .faculty-list .member .actions .button em, .faculty-list .member .actions #sponsorship-levels .level form .add em, #sponsorship-levels .level form .faculty-list .member .actions .add em {
              display: inline-block; } }
      .faculty-list .member .actions a, .faculty-list .member .actions a:active, .faculty-list .member .actions a:visited {
        text-decoration: none; }
  .faculty-list [class*='span'] {
    padding-top: 54px;
    padding-bottom: 54px; }

#layout-7030.contact-page .left-7030 {
  padding-right: 2.5em;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }
  @media only screen and (max-width: 910px) {
    #layout-7030.contact-page .left-7030 {
      padding-right: 0; } }
  #layout-7030.contact-page .left-7030 h2.form-title {
    position: relative;
    padding-left: 65px; }
    @media only screen and (max-width: 910px) {
      #layout-7030.contact-page .left-7030 h2.form-title {
        font-size: 3em; } }
    @media only screen and (max-width: 525px) {
      #layout-7030.contact-page .left-7030 h2.form-title {
        font-size: 2.5em; } }
    #layout-7030.contact-page .left-7030 h2.form-title:before {
      position: absolute;
      top: 18px;
      left: 0;
      width: 50px;
      height: 32px;
      background-image: url(../images/icon-mail.svg);
      background-size: contain;
      background-repeat: no-repeat;
      content: ''; }
      @media only screen and (max-width: 525px) {
        #layout-7030.contact-page .left-7030 h2.form-title:before {
          top: 12px; } }

#layout-7030.contact-page .right-7030 h3 {
  margin-bottom: 0.5em;
  font-family: franklin-gothic-atf, sans-serif;
  font-size: 0.6875em;
  font-weight: 500;
  color: #A6192E;
  letter-spacing: 0.1em;
  line-height: 2.2em;
  text-transform: uppercase; }

#layout-7030.contact-page .right-7030 a {
  font-size: 1.5em;
  font-weight: 500;
  text-decoration: none;
  line-height: 1.3; }

/* --- Jobs --- */
#jobs {
  border-top: 1px solid #D9DCE0; }
  #jobs .job {
    display: block;
    position: relative;
    cursor: pointer;
    border-bottom: 1px solid #D9DCE0;
    text-decoration: none; }
    #jobs .job .content {
      margin: 1em 0;
      padding: 2em 0;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      @media (pointer: coarse) {
        #jobs .job .content {
          background: #FFFFFF; } }
      #jobs .job .content :last-child {
        margin-bottom: 0; }
    #jobs .job p.title {
      position: relative;
      margin-bottom: 0.5em;
      font-weight: normal;
      color: #1B2532;
      font-size: 1.55em;
      letter-spacing: 0.01em;
      line-height: 1.35em;
      margin-bottom: .5em;
      font-weight: 500;
      cursor: pointer;
      text-decoration-color: transparent;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #jobs .job p.title a, #jobs .job p.title a:active, #jobs .job p.title a:visited {
        color: #1B2532;
        text-decoration: none; }
        #jobs .job p.title a:hover, #jobs .job p.title a:active:hover, #jobs .job p.title a:visited:hover {
          text-decoration: underline; }
    #jobs .job p:last-child {
      margin-bottom: 0; }

@media only screen and (max-width: 910px) {
  aside.job-detail {
    display: none !important; } }

#content-7030.jobs h2 {
  margin-top: 1em; }

/* --- Featured News Entry --- */
#content-full.featured-event {
  padding-bottom: 0 !important; }
  @media only screen and (max-width: 910px) {
    #content-full.featured-event {
      display: none; } }

#events-featured {
  display: block;
  padding-bottom: 5vw;
  border-bottom: 1px solid #D9DCE0;
  text-decoration: none;
  /*
	.image {
		position: absolute;
		display: block;
		top: 0;
		right: 0;
		width: 50%;
		height: 100%;
		background-size: cover;
		background-position: center;
		overflow: hidden;
		@include border-radius-top-right(8px);
		@include border-radius-bottom-right(8px);
		
		.date-wrap {
			position: absolute;
			top: 1em;
			right: 1em;
			width: 90px;
			background: get_color(white);
			@include border-radius(3px);
			
			.date {
				display: block;
				padding: 1em 0;
				text-align: center;
				line-height: 1;
				@include box-shadow(0, 2px, 4px, 0, rgba(#000, .1));
				
				.month {
					@include get_font_styles(sub-header);
					margin-bottom: 0;
				}
				.day { @include get_font_styles(h2); }
			}
		}
	}
*/ }
  #events-featured .row {
    display: flex;
    align-items: center; }
  #events-featured .date-box {
    float: none;
    margin-bottom: 2rem; }
    #events-featured .date-box:after {
      background-color: #FFFFFF; }
  #events-featured .title {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 3em;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.15em;
    margin-bottom: 0; }
    @media only screen and (max-width: 1125px) {
      #events-featured .title {
        font-size: 4.5vw; } }
    #events-featured .title a, #events-featured .title a:active, #events-featured .title a:visited {
      color: #1B2532;
      text-decoration: none; }
      #events-featured .title a:hover, #events-featured .title a:active:hover, #events-featured .title a:visited:hover {
        text-decoration: underline; }
  #events-featured .image {
    overflow: hidden; }
  #events-featured img {
    display: block;
    width: 100%;
    max-width: 100%;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
  #events-featured .info {
    margin: 2rem 0; }
  #events-featured .dates, #events-featured .location {
    margin-bottom: 0;
    font-size: .889em; }
    #events-featured .dates span[class*="icon"], #events-featured .location span[class*="icon"] {
      display: inline-block;
      width: 1.5em;
      color: #A6192E; }
    #events-featured .dates a, #events-featured .dates a:active, #events-featured .dates a:visited, #events-featured .location a, #events-featured .location a:active, #events-featured .location a:visited {
      text-decoration: none; }
      #events-featured .dates a:hover, #events-featured .dates a:active:hover, #events-featured .dates a:visited:hover, #events-featured .location a:hover, #events-featured .location a:active:hover, #events-featured .location a:visited:hover {
        text-decoration: underline; }
  #events-featured:hover .action {
    color: #A6192E; }
    #events-featured:hover .action span {
      margin-right: 1em; }
  #events-featured:hover .image img {
    transform: scale(1.03);
    perspective: 1000px;
    -moz-transform: scale(1.03);
    -moz-perspective: 1000;
    -webkit-transform: scale(1.03);
    -webkit-perspective: 1000;
    -o-transform: scale(1.03);
    -o-perspective: 1000;
    -ms-transform: scale(1.03);
    -ms-perspective: 1000; }
  #events-featured :last-child {
    margin-bottom: 0; }

/* --- Sidebar Calendar --- */
#event-filters #upcoming-past {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 2em;
  border-collapse: separate;
  overflow: hidden; }
  #event-filters #upcoming-past .wrap {
    float: left;
    width: 50%;
    text-align: center;
    /*
			@include bp('mobile') {  
				float: none;
				width: 100% !important;
			}
			*/ }
    @media only screen and (max-width: 1125px) {
      #event-filters #upcoming-past .wrap {
        float: none;
        width: 100% !important; } }
    @media only screen and (max-width: 910px) {
      #event-filters #upcoming-past .wrap {
        float: left;
        width: 50% !important; } }
    #event-filters #upcoming-past .wrap .toggle {
      display: block;
      height: 3em;
      margin-bottom: 0;
      line-height: 3em;
      font-weight: 500;
      text-decoration: none;
      text-align: center;
      border: 1px solid #D9DCE0;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      #event-filters #upcoming-past .wrap .toggle.selected {
        color: #FFFFFF;
        background: #26384E;
        border-color: #26384E; }
      #event-filters #upcoming-past .wrap .toggle:hover, #event-filters #upcoming-past .wrap .toggle:focus {
        text-decoration: underline; }
        #event-filters #upcoming-past .wrap .toggle:hover:after, #event-filters #upcoming-past .wrap .toggle:focus:after {
          width: calc(100% - 5em); }
    #event-filters #upcoming-past .wrap:last-child .toggle {
      border-left: none; }
      @media only screen and (max-width: 1125px) {
        #event-filters #upcoming-past .wrap:last-child .toggle {
          border-left: 1px solid #D9DCE0; } }
      @media only screen and (max-width: 910px) {
        #event-filters #upcoming-past .wrap:last-child .toggle {
          border-left: none; } }

@media only screen and (max-width: 910px) {
  #event-filters #datepicker {
    display: none; } }

#event-filters .ui-datepicker {
  width: 100%;
  margin-bottom: 1.5em;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }

#event-filters .span {
  width: 100%; }
  #event-filters .span select, #event-filters .span input {
    width: 100%; }
    @media only screen and (max-width: 1125px) {
      #event-filters .span select, #event-filters .span input {
        font-size: .889em; } }
  #event-filters .span.search {
    position: relative; }
    #event-filters .span.search .icon-search, #event-filters .span.search #page-search .field-wrap:before, #page-search #event-filters .span.search .field-wrap:before {
      position: absolute;
      top: 22px;
      left: 1em;
      z-index: 2;
      color: #A6192E; }
    #event-filters .span.search input {
      padding-left: 45px; }
    #event-filters .span.search #page-search-clear {
      top: 31px; }

/* --- Events Listing --- */
@media only screen and (max-width: 910px) {
  #layout-7030.event-hybrid aside, #layout-7030.event-hybrid #content-7030 {
    width: 100%; }
  #layout-7030.event-hybrid #vertical-nav-content {
    padding: 0 5vw 5vw 5vw; } }

@media only screen and (max-width: 525px) {
  #layout-7030.event-hybrid #vertical-nav-content {
    padding: 0 25px 25px 25px; } }

#event-listing-hybrid .event-group {
  margin-top: 5em; }
  @media only screen and (max-width: 910px) {
    #event-listing-hybrid .event-group {
      margin-top: 2em; } }
  #event-listing-hybrid .event-group:first-child {
    margin-top: 0; }

#event-listing-hybrid .event {
  position: relative;
  display: block;
  margin-bottom: 20px;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  #event-listing-hybrid .event .content {
    padding: 3em calc(30% + 3em) 3em 3em;
    overflow: hidden;
    background: #F9F9F9;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    @media only screen and (max-width: 1440px) {
      #event-listing-hybrid .event .content {
        padding: 2em calc(40% + 2em) 2em 2em; } }
    @media only screen and (max-width: 1125px) {
      #event-listing-hybrid .event .content {
        padding: calc(40vw + 2em) 2em 2em 2em; } }
    @media only screen and (max-width: 910px) {
      #event-listing-hybrid .event .content {
        position: relative;
        margin-right: 0;
        padding: 1.5em 0;
        padding-left: calc(72px + 1.5em);
        background: #FFFFFF; } }
    #event-listing-hybrid .event .content .date-box {
      position: absolute;
      top: 1.5em;
      left: 0; }
      #event-listing-hybrid .event .content .date-box span {
        color: #1B2532; }
  #event-listing-hybrid .event.no-image .content {
    padding-right: 3em; }
    @media only screen and (max-width: 1125px) {
      #event-listing-hybrid .event.no-image .content {
        padding-top: 2em; } }
  #event-listing-hybrid .event .title {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-size: 1.55em;
    letter-spacing: 0.01em;
    line-height: 1.35em;
    margin-bottom: .3em;
    font-weight: 500; }
    @media only screen and (max-width: 1440px) {
      #event-listing-hybrid .event .title {
        font-size: 1.8vw; } }
    @media only screen and (max-width: 910px) {
      #event-listing-hybrid .event .title {
        font-size: 2.3vw; } }
    @media only screen and (max-width: 700px) {
      #event-listing-hybrid .event .title {
        font-size: 1.1em; } }
    #event-listing-hybrid .event .title a, #event-listing-hybrid .event .title a:active, #event-listing-hybrid .event .title a:visited {
      color: #1B2532;
      text-decoration: none; }
      #event-listing-hybrid .event .title a:hover, #event-listing-hybrid .event .title a:active:hover, #event-listing-hybrid .event .title a:visited:hover {
        text-decoration: underline; }
  #event-listing-hybrid .event .sub-title {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-size: 1.22em;
    letter-spacing: -0.01em;
    line-height: 1.35em;
    margin-bottom: .35em; }
  #event-listing-hybrid .event .date {
    margin-bottom: 0.5em;
    font-family: franklin-gothic-atf, sans-serif;
    font-size: 0.6875em;
    font-weight: 500;
    color: #A6192E;
    letter-spacing: 0.1em;
    line-height: 2.2em;
    text-transform: uppercase; }
  @media only screen and (max-width: 1125px) {
    #event-listing-hybrid .event .body {
      font-size: .889em; } }
  @media only screen and (max-width: 910px) {
    #event-listing-hybrid .event .body {
      display: none; } }
  #event-listing-hybrid .event :last-child {
    margin-bottom: 0; }
  #event-listing-hybrid .event .image {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    width: 30%;
    height: 100%;
    overflow: hidden;
    background-size: cover;
    background-position: center; }
    @media only screen and (max-width: 1440px) {
      #event-listing-hybrid .event .image {
        width: 40%; } }
    @media only screen and (max-width: 1125px) {
      #event-listing-hybrid .event .image {
        width: 100%;
        height: 40vw; } }
    @media only screen and (max-width: 910px) {
      #event-listing-hybrid .event .image {
        display: none; } }
    #event-listing-hybrid .event .image .date-box {
      position: absolute;
      float: none;
      top: 15px;
      right: 15px;
      margin-right: 0; }
      #event-listing-hybrid .event .image .date-box span {
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
      #event-listing-hybrid .event .image .date-box:before {
        display: none; }
      #event-listing-hybrid .event .image .date-box:after {
        border-color: #FFFFFF;
        background: transparent; }
    #event-listing-hybrid .event .image:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(38, 56, 78, 0.1);
      content: ''; }
  #event-listing-hybrid .event .tablet-only.image-bar img {
    display: block;
    width: 100%; }
  #event-listing-hybrid .event:hover {
    transform: translate(0, -5px);
    perspective: 1000px;
    -moz-transform: translate(0, -5px);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -5px);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -5px);
    -o-perspective: 1000;
    -ms-transform: translate(0, -5px);
    -ms-perspective: 1000;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    -o-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1); }

/* --- Event Detail --- */
@media only screen and (max-width: 910px) {
  #event-detail .single-nav {
    display: none; } }

#event-detail .section {
  margin-top: 6em; }
  @media only screen and (max-width: 1125px) {
    #event-detail .section {
      margin-top: 4em; } }
  @media only screen and (max-width: 910px) {
    #event-detail .section {
      margin-top: 2em; } }

#event-detail #event-header {
  position: relative;
  padding: calc(140px + 4em) 0 6em 0;
  background: #26384E;
  border-bottom: 1px solid #D9DCE0; }
  @media only screen and (max-width: 910px) {
    #event-detail #event-header {
      padding: calc(80px + 2em) 0 2em 0;
      background-color: #26384E;
      background-image: none !important; } }
  #event-detail #event-header.has-image {
    background-size: cover;
    background-position: center; }
    #event-detail #event-header.has-image:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      content: ''; }
      @media only screen and (max-width: 910px) {
        #event-detail #event-header.has-image:before {
          display: none; } }
  #event-detail #event-header .lucy-wrapper, #event-detail #event-header #layout-7030 {
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 910px) {
      #event-detail #event-header .lucy-wrapper .content, #event-detail #event-header #layout-7030 .content {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start; } }
    #event-detail #event-header .lucy-wrapper img, #event-detail #event-header #layout-7030 img {
      width: 45%;
      margin-right: 5%; }
      @media only screen and (max-width: 910px) {
        #event-detail #event-header .lucy-wrapper img, #event-detail #event-header #layout-7030 img {
          display: none; } }
    #event-detail #event-header .lucy-wrapper .date-box, #event-detail #event-header #layout-7030 .date-box {
      display: block;
      float: none;
      margin-bottom: 1.5em; }
      #event-detail #event-header .lucy-wrapper .date-box:before, #event-detail #event-header #layout-7030 .date-box:before {
        display: none; }
      #event-detail #event-header .lucy-wrapper .date-box:after, #event-detail #event-header #layout-7030 .date-box:after {
        background: transparent; }
    #event-detail #event-header .lucy-wrapper .date-box span, #event-detail #event-header #layout-7030 .date-box span {
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
    #event-detail #event-header .lucy-wrapper .date-box:after, #event-detail #event-header #layout-7030 .date-box:after {
      border-color: #FFFFFF; }
    #event-detail #event-header .lucy-wrapper h1, #event-detail #event-header #layout-7030 h1, #event-detail #event-header .lucy-wrapper p, #event-detail #event-header #layout-7030 p {
      color: #FFFFFF; }
    #event-detail #event-header .lucy-wrapper .dates a, #event-detail #event-header #layout-7030 .dates a, #event-detail #event-header .lucy-wrapper .dates a:active, #event-detail #event-header #layout-7030 .dates a:active, #event-detail #event-header .lucy-wrapper .dates a:visited, #event-detail #event-header #layout-7030 .dates a:visited, #event-detail #event-header .lucy-wrapper .location a, #event-detail #event-header #layout-7030 .location a, #event-detail #event-header .lucy-wrapper .location a:active, #event-detail #event-header #layout-7030 .location a:active, #event-detail #event-header .lucy-wrapper .location a:visited, #event-detail #event-header #layout-7030 .location a:visited, #event-detail #event-header .lucy-wrapper .phone a, #event-detail #event-header #layout-7030 .phone a, #event-detail #event-header .lucy-wrapper .phone a:active, #event-detail #event-header #layout-7030 .phone a:active, #event-detail #event-header .lucy-wrapper .phone a:visited, #event-detail #event-header #layout-7030 .phone a:visited {
      color: #FFFFFF; }
    #event-detail #event-header .lucy-wrapper h1, #event-detail #event-header #layout-7030 h1 {
      margin-bottom: .25em;
      line-height: 1; }
      @media only screen and (max-width: 1440px) {
        #event-detail #event-header .lucy-wrapper h1, #event-detail #event-header #layout-7030 h1 {
          font-size: 5vw; } }
      @media only screen and (max-width: 910px) {
        #event-detail #event-header .lucy-wrapper h1, #event-detail #event-header #layout-7030 h1 {
          order: 1;
          font-size: 9vw;
          line-height: 1; } }
      @media only screen and (max-width: 525px) {
        #event-detail #event-header .lucy-wrapper h1, #event-detail #event-header #layout-7030 h1 {
          font-size: 12vw; } }
    #event-detail #event-header .lucy-wrapper .subtitle, #event-detail #event-header #layout-7030 .subtitle {
      margin-top: -.25em;
      margin-bottom: .5em;
      font-size: 1.5em;
      line-height: 1.3; }
      @media only screen and (max-width: 1440px) {
        #event-detail #event-header .lucy-wrapper .subtitle, #event-detail #event-header #layout-7030 .subtitle {
          font-size: 1.8vw; } }
      @media only screen and (max-width: 910px) {
        #event-detail #event-header .lucy-wrapper .subtitle, #event-detail #event-header #layout-7030 .subtitle {
          order: 2;
          margin-bottom: 1em;
          font-size: 1.3em; } }
      @media only screen and (max-width: 525px) {
        #event-detail #event-header .lucy-wrapper .subtitle, #event-detail #event-header #layout-7030 .subtitle {
          font-size: 1.1em; } }
    #event-detail #event-header .lucy-wrapper .dates, #event-detail #event-header #layout-7030 .dates, #event-detail #event-header .lucy-wrapper .location, #event-detail #event-header #layout-7030 .location, #event-detail #event-header .lucy-wrapper .phone, #event-detail #event-header #layout-7030 .phone {
      position: relative;
      margin-bottom: 10px;
      padding-left: 25px;
      font-size: .889em;
      line-height: 1.5; }
      @media only screen and (max-width: 1440px) {
        #event-detail #event-header .lucy-wrapper .dates, #event-detail #event-header #layout-7030 .dates, #event-detail #event-header .lucy-wrapper .location, #event-detail #event-header #layout-7030 .location, #event-detail #event-header .lucy-wrapper .phone, #event-detail #event-header #layout-7030 .phone {
          font-size: 1.2vw; } }
      @media only screen and (max-width: 1125px) {
        #event-detail #event-header .lucy-wrapper .dates, #event-detail #event-header #layout-7030 .dates, #event-detail #event-header .lucy-wrapper .location, #event-detail #event-header #layout-7030 .location, #event-detail #event-header .lucy-wrapper .phone, #event-detail #event-header #layout-7030 .phone {
          font-size: 1.3vw; } }
      @media only screen and (max-width: 910px) {
        #event-detail #event-header .lucy-wrapper .dates, #event-detail #event-header #layout-7030 .dates, #event-detail #event-header .lucy-wrapper .location, #event-detail #event-header #layout-7030 .location, #event-detail #event-header .lucy-wrapper .phone, #event-detail #event-header #layout-7030 .phone {
          order: 4;
          font-size: .889em; } }
      #event-detail #event-header .lucy-wrapper .dates span[class*="icon"], #event-detail #event-header #layout-7030 .dates span[class*="icon"], #event-detail #event-header .lucy-wrapper .location span[class*="icon"], #event-detail #event-header #layout-7030 .location span[class*="icon"], #event-detail #event-header .lucy-wrapper .phone span[class*="icon"], #event-detail #event-header #layout-7030 .phone span[class*="icon"] {
        position: absolute;
        top: 5px;
        left: 0; }
      #event-detail #event-header .lucy-wrapper .dates a, #event-detail #event-header #layout-7030 .dates a, #event-detail #event-header .lucy-wrapper .dates a:active, #event-detail #event-header #layout-7030 .dates a:active, #event-detail #event-header .lucy-wrapper .dates a:visited, #event-detail #event-header #layout-7030 .dates a:visited, #event-detail #event-header .lucy-wrapper .location a, #event-detail #event-header #layout-7030 .location a, #event-detail #event-header .lucy-wrapper .location a:active, #event-detail #event-header #layout-7030 .location a:active, #event-detail #event-header .lucy-wrapper .location a:visited, #event-detail #event-header #layout-7030 .location a:visited, #event-detail #event-header .lucy-wrapper .phone a, #event-detail #event-header #layout-7030 .phone a, #event-detail #event-header .lucy-wrapper .phone a:active, #event-detail #event-header #layout-7030 .phone a:active, #event-detail #event-header .lucy-wrapper .phone a:visited, #event-detail #event-header #layout-7030 .phone a:visited {
        text-decoration: none; }
        #event-detail #event-header .lucy-wrapper .dates a:hover, #event-detail #event-header #layout-7030 .dates a:hover, #event-detail #event-header .lucy-wrapper .dates a:active:hover, #event-detail #event-header #layout-7030 .dates a:active:hover, #event-detail #event-header .lucy-wrapper .dates a:visited:hover, #event-detail #event-header #layout-7030 .dates a:visited:hover, #event-detail #event-header .lucy-wrapper .location a:hover, #event-detail #event-header #layout-7030 .location a:hover, #event-detail #event-header .lucy-wrapper .location a:active:hover, #event-detail #event-header #layout-7030 .location a:active:hover, #event-detail #event-header .lucy-wrapper .location a:visited:hover, #event-detail #event-header #layout-7030 .location a:visited:hover, #event-detail #event-header .lucy-wrapper .phone a:hover, #event-detail #event-header #layout-7030 .phone a:hover, #event-detail #event-header .lucy-wrapper .phone a:active:hover, #event-detail #event-header #layout-7030 .phone a:active:hover, #event-detail #event-header .lucy-wrapper .phone a:visited:hover, #event-detail #event-header #layout-7030 .phone a:visited:hover {
          text-decoration: underline; }
    @media only screen and (max-width: 910px) {
      #event-detail #event-header .lucy-wrapper .event-location, #event-detail #event-header #layout-7030 .event-location {
        order: 4; } }
    #event-detail #event-header .lucy-wrapper .register, #event-detail #event-header #layout-7030 .register {
      margin-top: 1.5em;
      margin-bottom: 0; }
      @media only screen and (max-width: 910px) {
        #event-detail #event-header .lucy-wrapper .register, #event-detail #event-header #layout-7030 .register {
          order: 5; } }

#event-detail #event-sponsors .top {
  display: flex;
  align-items: center;
  margin-bottom: 1em; }
  #event-detail #event-sponsors .top h2 {
    margin-bottom: 0; }
  #event-detail #event-sponsors .top a.action {
    margin-left: auto;
    margin-bottom: 0;
    margin-right: 20px; }

#event-detail #event-sponsors .grid {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }
  #event-detail #event-sponsors .grid .group {
    display: flex;
    flex-wrap: wrap;
    width: 100%; }
  #event-detail #event-sponsors .grid h3 {
    width: 100%; }
  #event-detail #event-sponsors .grid .sponsor {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(20% - (20px * 4 / 5));
    height: 12vw;
    margin: 0 20px 20px 0;
    text-align: center; }
    @media only screen and (max-width: 1125px) {
      #event-detail #event-sponsors .grid .sponsor {
        width: calc((100% / 3) - (20px * 2) / 3);
        height: 18vw; }
        #event-detail #event-sponsors .grid .sponsor:nth-child(3n) {
          margin-right: 0; } }
    @media only screen and (max-width: 910px) {
      #event-detail #event-sponsors .grid .sponsor {
        width: calc(25% - (20px * 3) / 4);
        height: 20vw; }
        #event-detail #event-sponsors .grid .sponsor:nth-child(3n) {
          margin-right: 20px; }
        #event-detail #event-sponsors .grid .sponsor:nth-child(4n) {
          margin-right: 0; } }
    @media only screen and (max-width: 700px) {
      #event-detail #event-sponsors .grid .sponsor {
        width: calc(50% - 20px);
        height: 40vw; }
        #event-detail #event-sponsors .grid .sponsor:nth-child(even) {
          margin-right: 0; } }
    #event-detail #event-sponsors .grid .sponsor img {
      width: 9vw;
      max-width: 100%; }
      @media only screen and (max-width: 1125px) {
        #event-detail #event-sponsors .grid .sponsor img {
          width: 12vw; } }
      @media only screen and (max-width: 910px) {
        #event-detail #event-sponsors .grid .sponsor img {
          width: 14vw; } }
      @media only screen and (max-width: 700px) {
        #event-detail #event-sponsors .grid .sponsor img {
          width: 25vw; } }
    #event-detail #event-sponsors .grid .sponsor:nth-child(5n) {
      margin-right: 0; }
      @media only screen and (max-width: 1125px) {
        #event-detail #event-sponsors .grid .sponsor:nth-child(5n) {
          margin-right: 20px; } }
    #event-detail #event-sponsors .grid .sponsor.text-only {
      padding: 4.5vw 2vw;
      background: #F9F9F9;
      font-weight: 500;
      line-height: 1.3;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      @media only screen and (max-width: 1440px) {
        #event-detail #event-sponsors .grid .sponsor.text-only {
          font-size: 1.2vw; } }
      @media only screen and (max-width: 1125px) {
        #event-detail #event-sponsors .grid .sponsor.text-only {
          font-size: 1.5vw; } }
      @media only screen and (max-width: 700px) {
        #event-detail #event-sponsors .grid .sponsor.text-only {
          font-size: 2.7vw; } }
      @media only screen and (max-width: 525px) {
        #event-detail #event-sponsors .grid .sponsor.text-only {
          font-size: 1em; } }
      #event-detail #event-sponsors .grid .sponsor.text-only p {
        margin-bottom: 0; }
  #event-detail #event-sponsors .grid.main {
    flex-wrap: wrap; }
    #event-detail #event-sponsors .grid.main .sponsor {
      margin-bottom: 20px; }

#event-tickets-placeholder {
  background: transparent; }

#event-tickets {
  position: relative;
  background: #F9F9F9; }
  @media print {
    #event-tickets {
      display: none; } }
  #event-tickets .inner {
    border: none; }
  #event-tickets .fluid-wrap {
    display: flex;
    align-items: center;
    width: 100%; }
    @media only screen and (max-width: 1125px) {
      #event-tickets .fluid-wrap {
        flex-wrap: wrap; } }
    #event-tickets .fluid-wrap .field {
      background: #FFFFFF;
      border: none;
      margin-bottom: 0; }
      @media only screen and (max-width: 1440px) {
        #event-tickets .fluid-wrap .field {
          font-size: .889em; } }
      @media only screen and (max-width: 1125px) {
        #event-tickets .fluid-wrap .field {
          margin-bottom: 20px; } }
      @media only screen and (max-width: 910px) {
        #event-tickets .fluid-wrap .field {
          flex-basis: 100%;
          margin: 0;
          margin-bottom: 20px;
          font-size: 1em; } }
      @media only screen and (max-width: 1125px) {
        #event-tickets .fluid-wrap .field #ticket-date {
          width: 100px; } }
      #event-tickets .fluid-wrap .field .text {
        display: inline-block;
        line-height: 1.3; }
    @media only screen and (max-width: 910px) {
      #event-tickets .fluid-wrap .field-wrap {
        width: 100%; } }
    @media only screen and (max-width: 1125px) {
      #event-tickets .fluid-wrap .field-separator {
        display: none; } }
    @media only screen and (max-width: 1440px) {
      #event-tickets .fluid-wrap button, #event-tickets .fluid-wrap .overlay-card .bottom .level-filled, .overlay-card .bottom #event-tickets .fluid-wrap .level-filled, #event-tickets .fluid-wrap .button, #event-tickets .fluid-wrap #sponsorship-levels .level form .add, #sponsorship-levels .level form #event-tickets .fluid-wrap .add {
        font-size: .889em; } }
    @media only screen and (max-width: 1125px) {
      #event-tickets .fluid-wrap button, #event-tickets .fluid-wrap .overlay-card .bottom .level-filled, .overlay-card .bottom #event-tickets .fluid-wrap .level-filled, #event-tickets .fluid-wrap .button, #event-tickets .fluid-wrap #sponsorship-levels .level form .add, #sponsorship-levels .level form #event-tickets .fluid-wrap .add {
        margin-bottom: 20px; } }
    @media only screen and (max-width: 910px) {
      #event-tickets .fluid-wrap button, #event-tickets .fluid-wrap .overlay-card .bottom .level-filled, .overlay-card .bottom #event-tickets .fluid-wrap .level-filled, #event-tickets .fluid-wrap .button, #event-tickets .fluid-wrap #sponsorship-levels .level form .add, #sponsorship-levels .level form #event-tickets .fluid-wrap .add {
        margin-bottom: 0;
        font-size: 1em; } }
    @media only screen and (max-width: 525px) {
      #event-tickets .fluid-wrap button, #event-tickets .fluid-wrap .overlay-card .bottom .level-filled, .overlay-card .bottom #event-tickets .fluid-wrap .level-filled, #event-tickets .fluid-wrap .button, #event-tickets .fluid-wrap #sponsorship-levels .level form .add, #sponsorship-levels .level form #event-tickets .fluid-wrap .add {
        width: 100%; } }
    #event-tickets .fluid-wrap a.sold-out span.icon-arrow-right-stroke-long {
      display: none; }

/* --- Registration Overlay --- */
#register-overlay {
  display: none;
  position: fixed;
  z-index: 201;
  top: 50%;
  left: 50%;
  max-height: calc(100vh - 4em);
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  transform: translate(-50%, -50%);
  perspective: 1000px;
  -moz-transform: translate(-50%, -50%);
  -moz-perspective: 1000;
  -webkit-transform: translate(-50%, -50%);
  -webkit-perspective: 1000;
  -o-transform: translate(-50%, -50%);
  -o-perspective: 1000;
  -ms-transform: translate(-50%, -50%);
  -ms-perspective: 1000; }
  @media only screen and (max-width: 1440px) {
    #register-overlay {
      width: 70vw; } }
  @media only screen and (max-width: 1125px) {
    #register-overlay {
      width: 80vw; } }
  @media only screen and (max-width: 525px) {
    #register-overlay {
      width: 100vw;
      background: #FFFFFF; } }
  #register-overlay .inner {
    position: relative;
    padding: 4em;
    background: #FFFFFF; }
    @media only screen and (max-width: 910px) {
      #register-overlay .inner {
        padding: 2em; } }
    @media only screen and (max-width: 525px) {
      #register-overlay .inner {
        max-height: 100vh;
        height: calc(100vh - 50px);
        padding: 25px;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        -moz-background-clip: padding-box;
        -webkit-background-clip: padding-box;
        -o-background-clip: padding-box;
        -ms-background-clip: padding-box; } }
    #register-overlay .inner h2 {
      padding-right: 2em;
      font-size: 2.25em; }
      @media only screen and (max-width: 910px) {
        #register-overlay .inner h2 {
          font-size: 7vw; } }
    #register-overlay .inner h3 {
      margin-top: 2em;
      margin-bottom: 1em;
      font-size: 1em;
      font-size: 1.25em;
      text-transform: capitalize;
      font-weight: 500;
      font-family: franklin-gothic-atf, sans-serif; }
    #register-overlay .inner .event-details {
      position: relative;
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin: 1em 0;
      padding: 1em 0;
      border-top: 1px solid #D9DCE0;
      border-bottom: 1px solid #D9DCE0; }
      @media only screen and (max-width: 910px) {
        #register-overlay .inner .event-details {
          flex-wrap: wrap; } }
      #register-overlay .inner .event-details img {
        display: block;
        max-width: 100%;
        width: 30%;
        margin-right: 20px; }
        @media only screen and (max-width: 910px) {
          #register-overlay .inner .event-details img {
            width: 100%;
            margin-right: 0;
            margin-bottom: 20px; } }
      #register-overlay .inner .event-details .details {
        width: 60%;
        margin-right: 20px;
        display: flex;
        flex-direction: column;
        justify-content: center; }
        @media only screen and (max-width: 910px) {
          #register-overlay .inner .event-details .details {
            width: 100%;
            margin-right: 0; } }
        #register-overlay .inner .event-details .details :last-child {
          margin-bottom: 0; }
        #register-overlay .inner .event-details .details h5 {
          margin-bottom: 0;
          font-weight: 500; }
        #register-overlay .inner .event-details .details .caption {
          font-size: .889rem; }
      #register-overlay .inner .event-details .price {
        margin-bottom: 0;
        font-size: 1.2em;
        font-weight: 500;
        text-transform: uppercase;
        text-align: right; }
        @media only screen and (max-width: 910px) {
          #register-overlay .inner .event-details .price {
            width: 100%;
            text-align: left; } }
  #register-overlay #register-overlay-close {
    position: absolute;
    top: 20px;
    right: 20px;
    text-decoration: none;
    color: #26384E; }
    #register-overlay #register-overlay-close:hover {
      text-decoration: underline; }
  #register-overlay .buttons {
    text-align: center; }
    @media only screen and (max-width: 525px) {
      #register-overlay .buttons {
        padding-bottom: 25px; }
        #register-overlay .buttons button, #register-overlay .buttons .overlay-card .bottom .level-filled, .overlay-card .bottom #register-overlay .buttons .level-filled {
          width: 100%;
          padding: 0;
          text-align: center; } }
  #register-overlay #register-submit {
    padding: 0 6em !important; }

/* --- Sponsor Packages --- */
#sponsorship-levels {
  margin-top: 72px;
  font-size: 0; }
  @media only screen and (max-width: 910px) {
    #sponsorship-levels {
      margin-top: 2em; } }
  #sponsorship-levels .level {
    position: relative;
    display: inline-block;
    width: calc(100% / 3 - 14px);
    margin: 0 20px 20px 0;
    font-size: 18px;
    color: #FFF;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    overflow: hidden; }
    #sponsorship-levels .level .top {
      position: relative;
      height: 0;
      padding-bottom: 75%;
      background: #26384E; }
    #sponsorship-levels .level .bottom {
      position: relative;
      padding: 2em 0 1.5em 0;
      background: #F9F9F9; }
      #sponsorship-levels .level .bottom p {
        margin-bottom: 0; }
      #sponsorship-levels .level .bottom .link {
        position: relative;
        display: inline-block;
        padding: .75em 1.25em;
        font-size: .7em;
        font-weight: bold;
        line-height: 1;
        text-decoration: none; }
        #sponsorship-levels .level .bottom .link:hover {
          text-decoration: underline; }
        #sponsorship-levels .level .bottom .link:before {
          position: absolute;
          top: 0;
          left: -.5em;
          width: 1px;
          height: 100%;
          background: #D8D8D8;
          content: ''; }
        #sponsorship-levels .level .bottom .link:first-child:before {
          display: none; }
    #sponsorship-levels .level:nth-child(3n) {
      margin-right: 0; }
    #sponsorship-levels .level .title {
      margin-bottom: 0.5em;
      font-family: franklin-gothic-atf, sans-serif;
      font-size: 0.6875em;
      font-weight: 500;
      color: #A6192E;
      letter-spacing: 0.1em;
      line-height: 2.2em;
      text-transform: uppercase;
      margin-bottom: .5em;
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
    #sponsorship-levels .level .price {
      margin-bottom: 0.5em;
      font-weight: normal;
      color: #1B2532;
      font-family: 'Archivo Narrow', sans-serif;
      font-size: 3em;
      font-weight: 700;
      letter-spacing: -0.01em;
      line-height: 1.15em;
      margin-bottom: .1em;
      line-height: 1;
      color: #FFFFFF;
      font-family: franklin-gothic-atf, sans-serif;
      font-weight: 700;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
    #sponsorship-levels .level .outer {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      #sponsorship-levels .level .outer .inner {
        display: table;
        width: 100%;
        height: 100%; }
        #sponsorship-levels .level .outer .inner .wrap {
          position: relative;
          display: table-cell;
          vertical-align: middle; }
    #sponsorship-levels .level .button, #sponsorship-levels .level form .add {
      position: absolute;
      top: 0;
      left: 50%;
      width: 70%;
      height: auto !important;
      margin-bottom: 0;
      padding: 1.5em 0 !important;
      text-align: center;
      line-height: normal;
      white-space: nowrap;
      transform: translate(-50%, -50%);
      perspective: 1000px;
      -moz-transform: translate(-50%, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(-50%, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(-50%, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(-50%, -50%);
      -ms-perspective: 1000;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #sponsorship-levels .level .button:hover:after, #sponsorship-levels .level form .add:hover:after {
        background-color: #A6192E !important; }
    #sponsorship-levels .level form {
      margin-top: 10px; }
      #sponsorship-levels .level form .add {
        display: inline-block;
        position: relative;
        top: auto;
        left: auto;
        height: auto !important;
        line-height: normal !important;
        background-color: #26384E !important;
        transform: translate(0, 0);
        perspective: 1000px;
        -moz-transform: translate(0, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(0, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(0, 0);
        -o-perspective: 1000;
        -ms-transform: translate(0, 0);
        -ms-perspective: 1000; }
        #sponsorship-levels .level form .add a {
          text-decoration: none !important;
          color: #FFFFFF !important;
          font-weight: 500;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased;
          transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -webkit-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          -ms-transition: all 0.2s ease-in-out; }
          #sponsorship-levels .level form .add a span {
            position: relative; }
            #sponsorship-levels .level form .add a span:after {
              position: absolute;
              bottom: -4px;
              left: 0;
              width: 0;
              height: 2px;
              background: #FFFFFF;
              content: '';
              transition: all 0.2s ease-in-out;
              -moz-transition: all 0.2s ease-in-out;
              -webkit-transition: all 0.2s ease-in-out;
              -o-transition: all 0.2s ease-in-out;
              -ms-transition: all 0.2s ease-in-out; }
        #sponsorship-levels .level form .add:hover {
          background-color: #26384E !important; }
          #sponsorship-levels .level form .add:hover a {
            color: #FFF !important;
            -moz-font-smoothing: antialiased;
            -webkit-font-smoothing: antialiased;
            -o-font-smoothing: antialiased;
            -ms-font-smoothing: antialiased; }
            #sponsorship-levels .level form .add:hover a span:after {
              width: 100%; }
      #sponsorship-levels .level form .level-filled {
        padding: 1.15em 0;
        font-weight: 700;
        text-transform: uppercase;
        color: #1B2532;
        cursor: not-allowed; }
    #sponsorship-levels .level:hover .content {
      transform: translate(0, -25px);
      perspective: 1000px;
      -moz-transform: translate(0, -25px);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -25px);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -25px);
      -o-perspective: 1000;
      -ms-transform: translate(0, -25px);
      -ms-perspective: 1000; }
    #sponsorship-levels .level:hover .button, #sponsorship-levels .level:hover form .add {
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }
    @media only screen and (max-width: 1440px) {
      #sponsorship-levels .level {
        width: calc(50% - 11px); }
        #sponsorship-levels .level .top {
          height: 225px;
          padding-bottom: 0; }
        #sponsorship-levels .level:nth-child(3n) {
          margin-right: 20px; }
        #sponsorship-levels .level:nth-child(even) {
          margin-right: 0; } }
    @media only screen and (max-width: 700px) {
      #sponsorship-levels .level {
        width: 100%;
        margin-right: 0; }
        #sponsorship-levels .level .top {
          height: auto;
          padding: 1.5em 0 3em 0; }
          #sponsorship-levels .level .top .price {
            font-size: 2.75em; }
          #sponsorship-levels .level .top .outer, #sponsorship-levels .level .top .inner, #sponsorship-levels .level .top .wrap {
            position: relative;
            top: auto;
            left: auto;
            width: 100%;
            height: auto; }
        #sponsorship-levels .level .bottom {
          padding: 2em 0 1em 0; } }

/* --- Sponsorship Cards Viewer --- */
#sponsorship-content {
  margin-bottom: 4em; }

#sponsorship-cards-nav, #sponsorship-cards-nav-mobile {
  position: fixed;
  z-index: 0;
  top: 100%;
  left: 0;
  width: 100vw;
  height: 100%;
  background: transparent url(../images/card-nav-shadow.png) repeat-x bottom left;
  transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out; }
  #sponsorship-cards-nav.open, #sponsorship-cards-nav-mobile.open {
    top: 0; }
  #sponsorship-cards-nav a, #sponsorship-cards-nav-mobile a {
    position: absolute;
    top: 250px;
    left: 50%;
    width: 50px;
    height: 50px;
    line-height: 48px;
    color: #FFFFFF;
    text-align: center;
    text-decoration: none;
    background: #A6192E;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    #sponsorship-cards-nav a span, #sponsorship-cards-nav-mobile a span {
      font-size: .75em; }
    #sponsorship-cards-nav a#sponsorship-cards-previous, #sponsorship-cards-nav-mobile a#sponsorship-cards-previous {
      line-height: 46px;
      transform: translate(-325px, 0);
      perspective: 1000px;
      -moz-transform: translate(-325px, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(-325px, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(-325px, 0);
      -o-perspective: 1000;
      -ms-transform: translate(-325px, 0);
      -ms-perspective: 1000; }
      #sponsorship-cards-nav a#sponsorship-cards-previous span, #sponsorship-cards-nav-mobile a#sponsorship-cards-previous span {
        display: inline-block;
        transform: rotate(180deg);
        perspective: 1000px;
        -moz-transform: rotate(180deg);
        -moz-perspective: 1000;
        -webkit-transform: rotate(180deg);
        -webkit-perspective: 1000;
        -o-transform: rotate(180deg);
        -o-perspective: 1000;
        -ms-transform: rotate(180deg);
        -ms-perspective: 1000; }
      #sponsorship-cards-nav a#sponsorship-cards-previous:hover, #sponsorship-cards-nav-mobile a#sponsorship-cards-previous:hover {
        transform: translate(-330px, 0);
        perspective: 1000px;
        -moz-transform: translate(-330px, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(-330px, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(-330px, 0);
        -o-perspective: 1000;
        -ms-transform: translate(-330px, 0);
        -ms-perspective: 1000; }
    #sponsorship-cards-nav a#sponsorship-cards-next, #sponsorship-cards-nav-mobile a#sponsorship-cards-next {
      transform: translate(275px, 0);
      perspective: 1000px;
      -moz-transform: translate(275px, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(275px, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(275px, 0);
      -o-perspective: 1000;
      -ms-transform: translate(275px, 0);
      -ms-perspective: 1000; }
      #sponsorship-cards-nav a#sponsorship-cards-next:hover, #sponsorship-cards-nav-mobile a#sponsorship-cards-next:hover {
        transform: translate(280px, 0);
        perspective: 1000px;
        -moz-transform: translate(280px, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(280px, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(280px, 0);
        -o-perspective: 1000;
        -ms-transform: translate(280px, 0);
        -ms-perspective: 1000; }
  #sponsorship-cards-nav ul, #sponsorship-cards-nav-mobile ul {
    position: absolute;
    bottom: 40px;
    left: 50%;
    display: inline-block;
    margin: 0;
    padding: 0;
    font-size: 18px;
    text-align: center;
    list-style-type: none;
    transform: translate(-50%, 0);
    perspective: 1000px;
    -moz-transform: translate(-50%, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(-50%, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(-50%, 0);
    -o-perspective: 1000;
    -ms-transform: translate(-50%, 0);
    -ms-perspective: 1000; }
    #sponsorship-cards-nav ul li, #sponsorship-cards-nav-mobile ul li {
      display: inline-block;
      width: 10px;
      height: 10px;
      margin: 0;
      background: #A6192E;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
      #sponsorship-cards-nav ul li.active, #sponsorship-cards-nav-mobile ul li.active {
        background: #26384E; }
  @media only screen and (max-width: 910px) {
    #sponsorship-cards-nav, #sponsorship-cards-nav-mobile {
      display: none; } }

#sponsorship-cards-nav-mobile {
  display: none; }
  @media only screen and (max-width: 910px) {
    #sponsorship-cards-nav-mobile {
      top: auto;
      bottom: -140px;
      z-index: 12;
      display: block;
      height: 140px;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #sponsorship-cards-nav-mobile a {
        top: auto;
        bottom: 27px; }
        #sponsorship-cards-nav-mobile a#sponsorship-cards-previous-mobile {
          left: 17px;
          transform: translate(0, 0);
          perspective: 1000px;
          -moz-transform: translate(0, 0);
          -moz-perspective: 1000;
          -webkit-transform: translate(0, 0);
          -webkit-perspective: 1000;
          -o-transform: translate(0, 0);
          -o-perspective: 1000;
          -ms-transform: translate(0, 0);
          -ms-perspective: 1000;
          transform: rotate(180deg);
          perspective: 1000px;
          -moz-transform: rotate(180deg);
          -moz-perspective: 1000;
          -webkit-transform: rotate(180deg);
          -webkit-perspective: 1000;
          -o-transform: rotate(180deg);
          -o-perspective: 1000;
          -ms-transform: rotate(180deg);
          -ms-perspective: 1000; }
          #sponsorship-cards-nav-mobile a#sponsorship-cards-previous-mobile:hover {
            transform: translate(0, 0);
            perspective: 1000px;
            -moz-transform: translate(0, 0);
            -moz-perspective: 1000;
            -webkit-transform: translate(0, 0);
            -webkit-perspective: 1000;
            -o-transform: translate(0, 0);
            -o-perspective: 1000;
            -ms-transform: translate(0, 0);
            -ms-perspective: 1000; }
        #sponsorship-cards-nav-mobile a#sponsorship-cards-next-mobile {
          left: auto;
          right: 17px;
          transform: translate(0, 0);
          perspective: 1000px;
          -moz-transform: translate(0, 0);
          -moz-perspective: 1000;
          -webkit-transform: translate(0, 0);
          -webkit-perspective: 1000;
          -o-transform: translate(0, 0);
          -o-perspective: 1000;
          -ms-transform: translate(0, 0);
          -ms-perspective: 1000; }
          #sponsorship-cards-nav-mobile a#sponsorship-cards-next-mobile:hover {
            transform: translate(0, 0);
            perspective: 1000px;
            -moz-transform: translate(0, 0);
            -moz-perspective: 1000;
            -webkit-transform: translate(0, 0);
            -webkit-perspective: 1000;
            -o-transform: translate(0, 0);
            -o-perspective: 1000;
            -ms-transform: translate(0, 0);
            -ms-perspective: 1000; }
      #sponsorship-cards-nav-mobile.open {
        top: auto;
        bottom: 0; } }

.overlay-card {
  position: absolute;
  top: 50px;
  left: 100%;
  width: 500px;
  margin-bottom: 100px;
  overflow: hidden;
  box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
  transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  transform: translate(0, 0);
  perspective: 1000px;
  -moz-transform: translate(0, 0);
  -moz-perspective: 1000;
  -webkit-transform: translate(0, 0);
  -webkit-perspective: 1000;
  -o-transform: translate(0, 0);
  -o-perspective: 1000;
  -ms-transform: translate(0, 0);
  -ms-perspective: 1000; }
  @media only screen and (max-width: 910px) {
    .overlay-card {
      top: 25px;
      width: calc(100% - 40px); } }
  @media only screen and (max-width: 525px) {
    .overlay-card {
      top: 5px;
      margin-bottom: 150px; } }
  .overlay-card.active {
    z-index: 1;
    left: 50%;
    transform: translate(-50%, 0);
    perspective: 1000px;
    -moz-transform: translate(-50%, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(-50%, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(-50%, 0);
    -o-perspective: 1000;
    -ms-transform: translate(-50%, 0);
    -ms-perspective: 1000; }
  .overlay-card.previous, .overlay-card.next {
    z-index: 3;
    top: 105px;
    cursor: pointer; }
    @media only screen and (max-width: 910px) {
      .overlay-card.previous, .overlay-card.next {
        top: 25px; } }
    .overlay-card.previous .top, .overlay-card.next .top {
      padding-bottom: 2em; }
    .overlay-card.previous .bottom, .overlay-card.next .bottom {
      padding-top: 1.5em; }
      .overlay-card.previous .bottom .buttons, .overlay-card.next .bottom .buttons {
        overflow: hidden;
        filter: alpha(opacity=0);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -moz-opacity: 0;
        -khtml-opacity: 0;
        opacity: 0; }
    .overlay-card.previous nav, .overlay-card.next nav {
      top: calc(100% - 86px); }
    .overlay-card.previous .icon-close, .overlay-card.next .icon-close {
      filter: alpha(opacity=0);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -moz-opacity: 0;
      -khtml-opacity: 0;
      opacity: 0; }
  .overlay-card.previous {
    left: 0;
    transform: translate(-50%, 0);
    perspective: 1000px;
    -moz-transform: translate(-50%, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(-50%, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(-50%, 0);
    -o-perspective: 1000;
    -ms-transform: translate(-50%, 0);
    -ms-perspective: 1000; }
    .overlay-card.previous.hidden {
      transform: translate(-100%, 0);
      perspective: 1000px;
      -moz-transform: translate(-100%, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(-100%, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(-100%, 0);
      -o-perspective: 1000;
      -ms-transform: translate(-100%, 0);
      -ms-perspective: 1000; }
    .overlay-card.previous:hover {
      transform: translate(0, 0);
      perspective: 1000px;
      -moz-transform: translate(0, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(0, 0);
      -o-perspective: 1000;
      -ms-transform: translate(0, 0);
      -ms-perspective: 1000; }
    @media only screen and (max-width: 1440px) {
      .overlay-card.previous {
        transform: translate(-80%, 0);
        perspective: 1000px;
        -moz-transform: translate(-80%, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(-80%, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(-80%, 0);
        -o-perspective: 1000;
        -ms-transform: translate(-80%, 0);
        -ms-perspective: 1000; } }
    @media only screen and (max-width: 1125px) {
      .overlay-card.previous {
        transform: translate(-90%, 0);
        perspective: 1000px;
        -moz-transform: translate(-90%, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(-90%, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(-90%, 0);
        -o-perspective: 1000;
        -ms-transform: translate(-90%, 0);
        -ms-perspective: 1000; } }
    @media only screen and (max-width: 910px) {
      .overlay-card.previous {
        transform: translate(calc(-100% + 15px), 0);
        perspective: 1000px;
        -moz-transform: translate(calc(-100% + 15px), 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(calc(-100% + 15px), 0);
        -webkit-perspective: 1000;
        -o-transform: translate(calc(-100% + 15px), 0);
        -o-perspective: 1000;
        -ms-transform: translate(calc(-100% + 15px), 0);
        -ms-perspective: 1000; }
        .overlay-card.previous:hover {
          transform: translate(calc(-100% + 15px), 0);
          perspective: 1000px;
          -moz-transform: translate(calc(-100% + 15px), 0);
          -moz-perspective: 1000;
          -webkit-transform: translate(calc(-100% + 15px), 0);
          -webkit-perspective: 1000;
          -o-transform: translate(calc(-100% + 15px), 0);
          -o-perspective: 1000;
          -ms-transform: translate(calc(-100% + 15px), 0);
          -ms-perspective: 1000; } }
  .overlay-card.next {
    left: 100%;
    transform: translate(-50%, 0);
    perspective: 1000px;
    -moz-transform: translate(-50%, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(-50%, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(-50%, 0);
    -o-perspective: 1000;
    -ms-transform: translate(-50%, 0);
    -ms-perspective: 1000; }
    .overlay-card.next.hidden {
      transform: translate(100%, 0);
      perspective: 1000px;
      -moz-transform: translate(100%, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(100%, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(100%, 0);
      -o-perspective: 1000;
      -ms-transform: translate(100%, 0);
      -ms-perspective: 1000; }
    .overlay-card.next:hover {
      transform: translate(-100%, 0);
      perspective: 1000px;
      -moz-transform: translate(-100%, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(-100%, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(-100%, 0);
      -o-perspective: 1000;
      -ms-transform: translate(-100%, 0);
      -ms-perspective: 1000; }
    @media only screen and (max-width: 1440px) {
      .overlay-card.next {
        transform: translate(-20%, 0);
        perspective: 1000px;
        -moz-transform: translate(-20%, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(-20%, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(-20%, 0);
        -o-perspective: 1000;
        -ms-transform: translate(-20%, 0);
        -ms-perspective: 1000; } }
    @media only screen and (max-width: 1125px) {
      .overlay-card.next {
        transform: translate(-10%, 0);
        perspective: 1000px;
        -moz-transform: translate(-10%, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(-10%, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(-10%, 0);
        -o-perspective: 1000;
        -ms-transform: translate(-10%, 0);
        -ms-perspective: 1000; } }
    @media only screen and (max-width: 910px) {
      .overlay-card.next {
        transform: translate(-15px, 0);
        perspective: 1000px;
        -moz-transform: translate(-15px, 0);
        -moz-perspective: 1000;
        -webkit-transform: translate(-15px, 0);
        -webkit-perspective: 1000;
        -o-transform: translate(-15px, 0);
        -o-perspective: 1000;
        -ms-transform: translate(-15px, 0);
        -ms-perspective: 1000; }
        .overlay-card.next:hover {
          transform: translate(-15px, 0);
          perspective: 1000px;
          -moz-transform: translate(-15px, 0);
          -moz-perspective: 1000;
          -webkit-transform: translate(-15px, 0);
          -webkit-perspective: 1000;
          -o-transform: translate(-15px, 0);
          -o-perspective: 1000;
          -ms-transform: translate(-15px, 0);
          -ms-perspective: 1000; } }
  .overlay-card .icon-close {
    position: absolute;
    z-index: 3;
    top: 1.5em;
    right: 1.5em;
    font-size: .8em;
    color: #FFF;
    cursor: pointer;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out; }
    .overlay-card .icon-close:hover {
      text-decoration: underline; }
  .overlay-card .wrap {
    position: relative;
    z-index: 2;
    background: #FFF;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out; }
  .overlay-card .top {
    padding: 2.5em 3em 3.5em 3em;
    text-align: center;
    color: #FFF;
    background: #26384E;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out; }
    @media only screen and (max-width: 910px) {
      .overlay-card .top {
        padding: 2.5em 2em 3.5em 2em; } }
    .overlay-card .top .title {
      margin-bottom: 0.5em;
      font-family: franklin-gothic-atf, sans-serif;
      font-size: 0.6875em;
      font-weight: 500;
      color: #A6192E;
      letter-spacing: 0.1em;
      line-height: 2.2em;
      text-transform: uppercase;
      margin-bottom: .5em;
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
    .overlay-card .top .price {
      margin-bottom: 0.5em;
      font-weight: normal;
      color: #1B2532;
      font-family: 'Archivo Narrow', sans-serif;
      font-size: 3em;
      font-weight: 700;
      letter-spacing: -0.01em;
      line-height: 1.15em;
      margin-bottom: .1em;
      line-height: 1;
      color: #FFFFFF;
      font-family: franklin-gothic-atf, sans-serif;
      font-weight: 700;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
  .overlay-card .bottom {
    position: relative;
    padding: 5em 3.5em;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out; }
    @media only screen and (max-width: 910px) {
      .overlay-card .bottom {
        padding: 3.5em 2em; } }
    .overlay-card .bottom .buttons {
      position: absolute;
      top: -24px;
      left: 0;
      width: 100%;
      padding: 0 3.5em;
      transition: all 0.4s ease-in-out;
      -moz-transition: all 0.4s ease-in-out;
      -webkit-transition: all 0.4s ease-in-out;
      -o-transition: all 0.4s ease-in-out;
      -ms-transition: all 0.4s ease-in-out;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      @media only screen and (max-width: 910px) {
        .overlay-card .bottom .buttons {
          padding: 0 2em; } }
    .overlay-card .bottom button, .overlay-card .bottom .level-filled {
      width: 100%;
      margin-bottom: 10px;
      color: #26384E;
      text-align: center;
      background: #A6192E;
      transition: all 0.4s ease-in-out;
      -moz-transition: all 0.4s ease-in-out;
      -webkit-transition: all 0.4s ease-in-out;
      -o-transition: all 0.4s ease-in-out;
      -ms-transition: all 0.4s ease-in-out; }
      .overlay-card .bottom button:hover:after, .overlay-card .bottom .level-filled:hover:after {
        background-color: #A6192E !important; }
    .overlay-card .bottom .level-filled {
      cursor: not-allowed !important; }
      .overlay-card .bottom .level-filled:after {
        background-color: #F9F9F9 !important; }
      .overlay-card .bottom .level-filled span {
        color: #26384E !important; }
        .overlay-card .bottom .level-filled span:after {
          display: none; }
      .overlay-card .bottom .level-filled:hover:after {
        background-color: #F9F9F9 !important; }
    .overlay-card .bottom .benefits {
      margin-top: 1em; }
      .overlay-card .bottom .benefits label {
        display: block;
        margin-bottom: 2em;
        padding-bottom: .5em;
        font-size: .6em;
        font-weight: bold;
        color: #26384E;
        letter-spacing: 1.1px;
        text-transform: uppercase;
        border-bottom: 1px solid #D9DCE0; }
      .overlay-card .bottom .benefits ul.check {
        padding: 0;
        list-style-type: none; }
        .overlay-card .bottom .benefits ul.check li {
          margin-bottom: 1em;
          padding-left: 1.75em;
          font-size: .75em;
          line-height: 1.5;
          background: transparent url(../images/bullet-check.svg) no-repeat 0 0.25em;
          background-size: 1em 1em; }
    .overlay-card .bottom .sponsorship-cards-tabs ul {
      position: absolute;
      bottom: 30px;
      left: 50%;
      display: inline-block;
      margin: 0;
      padding: 0;
      font-size: 18px;
      text-align: center;
      list-style-type: none;
      transform: translate(-50%, 0);
      perspective: 1000px;
      -moz-transform: translate(-50%, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(-50%, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(-50%, 0);
      -o-perspective: 1000;
      -ms-transform: translate(-50%, 0);
      -ms-perspective: 1000; }
      .overlay-card .bottom .sponsorship-cards-tabs ul li {
        display: inline-block;
        width: 10px;
        height: 10px;
        margin: 0;
        background: #D9DCE0;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        -o-border-radius: 50%;
        -ms-border-radius: 50%;
        -moz-background-clip: padding-box;
        -webkit-background-clip: padding-box;
        -o-background-clip: padding-box;
        -ms-background-clip: padding-box; }
        .overlay-card .bottom .sponsorship-cards-tabs ul li.active {
          background: #26384E; }

#page-header.map {
  background: #FFFFFF;
  padding-top: 2em;
  border-bottom: none; }
  #page-header.map h1 {
    margin-bottom: 0; }
  #page-header.map #map-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
    #page-header.map #map-filters #trail {
      width: 100%; }
    #page-header.map #map-filters .span.search {
      position: relative;
      width: 25%;
      margin-left: auto;
      margin-right: 20px; }
      @media only screen and (max-width: 910px) {
        #page-header.map #map-filters .span.search {
          order: 3;
          width: calc(80% - 20px);
          margin-top: 2rem;
          margin-left: 0; } }
      @media only screen and (max-width: 700px) {
        #page-header.map #map-filters .span.search {
          width: calc(75% - 20px); } }
      @media only screen and (max-width: 525px) {
        #page-header.map #map-filters .span.search {
          width: 100%;
          margin-right: 0; } }
      #page-header.map #map-filters .span.search .icon-search, #page-header.map #map-filters .span.search #page-search .field-wrap:before, #page-search #page-header.map #map-filters .span.search .field-wrap:before {
        position: absolute;
        top: 50%;
        left: 15px;
        z-index: 2;
        color: #A6192E;
        transform: translate(0, -50%);
        perspective: 1000px;
        -moz-transform: translate(0, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(0, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(0, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(0, -50%);
        -ms-perspective: 1000; }
      #page-header.map #map-filters .span.search input {
        margin-bottom: 0 !important;
        padding-left: 45px; }
    @media only screen and (max-width: 910px) {
      #page-header.map #map-filters button, #page-header.map #map-filters .overlay-card .bottom .level-filled, .overlay-card .bottom #page-header.map #map-filters .level-filled {
        order: 4;
        width: 20%;
        margin-top: 2rem;
        padding: 0; } }
    @media only screen and (max-width: 700px) {
      #page-header.map #map-filters button, #page-header.map #map-filters .overlay-card .bottom .level-filled, .overlay-card .bottom #page-header.map #map-filters .level-filled {
        width: 25%; } }
    @media only screen and (max-width: 525px) {
      #page-header.map #map-filters button, #page-header.map #map-filters .overlay-card .bottom .level-filled, .overlay-card .bottom #page-header.map #map-filters .level-filled {
        width: 100%;
        margin-top: 20px; } }

#mobile-schools-list {
  display: none; }
  @media only screen and (max-width: 910px) {
    #mobile-schools-list {
      display: block; } }
  #mobile-schools-list .school {
    padding: 5vw;
    background-color: #F9F9F9;
    border-top: 1px solid #D9DCE0; }
    @media only screen and (max-width: 525px) {
      #mobile-schools-list .school {
        padding: 25px; } }
    #mobile-schools-list .school .top {
      position: relative;
      padding-right: 4rem; }
      #mobile-schools-list .school .top p.title {
        margin-bottom: 0.5em;
        font-weight: normal;
        color: #1B2532;
        margin-bottom: 1rem;
        line-height: 1.3;
        font-size: 1.4rem;
        font-weight: 500; }
      #mobile-schools-list .school .top p:not(.title) {
        margin-bottom: 0.5em;
        font-family: franklin-gothic-atf, sans-serif;
        font-size: 0.6875em;
        font-weight: 500;
        color: #A6192E;
        letter-spacing: 0.1em;
        line-height: 2.2em;
        text-transform: uppercase;
        margin-bottom: 0;
        color: #1B2532;
        line-height: 1.5; }
      #mobile-schools-list .school .top .expand {
        position: absolute;
        top: 0;
        right: 0;
        width: 2rem;
        height: 2rem;
        background-color: #26384E;
        border-radius: 1rem;
        cursor: pointer; }
        #mobile-schools-list .school .top .expand:before, #mobile-schools-list .school .top .expand:after {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          background-color: #F9F9F9;
          content: ''; }
        #mobile-schools-list .school .top .expand:before {
          width: 50%;
          height: 2px; }
        #mobile-schools-list .school .top .expand:after {
          width: 2px;
          height: 50%; }
        #mobile-schools-list .school .top .expand:hover {
          background-color: #A6192E; }
    #mobile-schools-list .school .details {
      display: none;
      justify-content: space-between;
      align-items: flex-start;
      gap: 1rem;
      margin-top: 1rem; }
      #mobile-schools-list .school .details img {
        max-width: 20%; }
      #mobile-schools-list .school .details a {
        display: block;
        text-decoration: none;
        font-weight: 500;
        line-height: 1.5;
        margin: 0; }
        #mobile-schools-list .school .details a.website {
          display: flex;
          align-items: center;
          gap: .25rem;
          color: #A6192E;
          margin-top: 1rem; }
    #mobile-schools-list .school.open .top .expand {
      background-color: #A6192E; }
      #mobile-schools-list .school.open .top .expand:after {
        height: 0; }
    #mobile-schools-list .school.open .details {
      display: flex; }

#map-area {
  position: relative;
  height: calc(100vh - 140px);
  min-height: 800px; }
  @media only screen and (max-width: 910px) {
    #map-area {
      display: none; } }
  @media only screen and (max-width: 525px) {
    #map-area {
      height: 140vw; } }
  #map-area #schools-map {
    position: relative;
    width: calc(100% - 350px);
    height: 100%;
    margin-right: 350px; }
    @media only screen and (max-width: 910px) {
      #map-area #schools-map {
        width: 100%;
        margin-right: 0; } }
  #map-area #map-sidebar {
    position: absolute;
    overflow-y: scroll;
    top: 0;
    right: 0;
    width: 350px;
    height: 100%;
    background: #FFFFFF; }
    @media only screen and (max-width: 1125px) {
      #map-area #map-sidebar {
        font-size: .889em; } }
    @media only screen and (max-width: 910px) {
      #map-area #map-sidebar {
        display: none; } }
    #map-area #map-sidebar .school {
      position: relative;
      padding: 1.5em;
      border-bottom: 1px solid #D9DCE0;
      cursor: pointer;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #map-area #map-sidebar .school .num {
        position: absolute;
        top: 1.5em;
        left: 1.5em;
        width: 38px;
        height: 38px;
        line-height: 38px;
        text-align: center;
        background-color: #F9F9F9;
        font-family: franklin-gothic-atf, sans-serif;
        font-weight: 700;
        font-size: .778em;
        border-radius: 100%;
        -moz-border-radius: 100%;
        -webkit-border-radius: 100%;
        -o-border-radius: 100%;
        -ms-border-radius: 100%;
        -moz-background-clip: padding-box;
        -webkit-background-clip: padding-box;
        -o-background-clip: padding-box;
        -ms-background-clip: padding-box;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
      #map-area #map-sidebar .school .content {
        margin-top: 2px;
        margin-left: calc(1em + 38px); }
        #map-area #map-sidebar .school .content .sub-header img {
          margin-right: 5px;
          vertical-align: middle; }
        #map-area #map-sidebar .school .content .sub-header.category-1 {
          color: #8CCDD3 !important; }
        #map-area #map-sidebar .school .content .sub-header.category-2 {
          color: #A6192E !important; }
          #map-area #map-sidebar .school .content .sub-header.category-2 span {
            color: #FFFFFF !important; }
        #map-area #map-sidebar .school .content p {
          transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -webkit-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          -ms-transition: all 0.2s ease-in-out; }
        #map-area #map-sidebar .school .content .title {
          margin-bottom: 1em;
          line-height: 1.3;
          font-weight: 500; }
        #map-area #map-sidebar .school .content .details {
          margin-bottom: 0.5em;
          font-family: franklin-gothic-atf, sans-serif;
          font-size: 0.6875em;
          font-weight: 500;
          color: #A6192E;
          letter-spacing: 0.1em;
          line-height: 2.2em;
          text-transform: uppercase;
          margin-bottom: 0;
          color: #1B2532;
          line-height: 1.5; }
      #map-area #map-sidebar .school:hover, #map-area #map-sidebar .school.active {
        background: #A6192E; }
        #map-area #map-sidebar .school:hover p, #map-area #map-sidebar .school:hover p.details, #map-area #map-sidebar .school.active p, #map-area #map-sidebar .school.active p.details {
          color: #FFFFFF !important;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased; }
        #map-area #map-sidebar .school:hover .num, #map-area #map-sidebar .school.active .num {
          background: #FFFFFF;
          color: #26384E; }
      #map-area #map-sidebar .school:last-child {
        border-bottom: none; }
  #map-area .mapboxgl-ctrl-group:not(:empty) {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    -o-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    -ms-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    background: transparent; }
  #map-area .mapboxgl-control-container .mapboxgl-ctrl-bottom-right {
    display: none; }
  #map-area .mapboxgl-control-container button, #map-area .mapboxgl-control-container .overlay-card .bottom .level-filled, .overlay-card .bottom #map-area .mapboxgl-control-container .level-filled {
    height: 30px;
    margin-bottom: 0;
    margin-left: 10px;
    padding: 0;
    line-height: 1;
    border: none;
    background: #F9F9F9;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    -moz-background-clip: padding-box;
    -webkit-background-clip: padding-box;
    -o-background-clip: padding-box;
    -ms-background-clip: padding-box; }
    #map-area .mapboxgl-control-container button:after, #map-area .mapboxgl-control-container .overlay-card .bottom .level-filled:after, .overlay-card .bottom #map-area .mapboxgl-control-container .level-filled:after {
      display: none; }
  #map-area .mapboxgl-popup-tip, #map-area .mapboxgl-popup-close-button {
    display: none; }
  #map-area .mapboxgl-popup {
    position: relative;
    top: -25px;
    z-index: 8;
    width: 440px;
    font-size: 18px;
    font-family: franklin-gothic-atf, sans-serif;
    background: #FFF;
    box-shadow: 0 12px 22px 0 rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0 12px 22px 0 rgba(0, 0, 0, 0.25);
    -webkit-box-shadow: 0 12px 22px 0 rgba(0, 0, 0, 0.25);
    -o-box-shadow: 0 12px 22px 0 rgba(0, 0, 0, 0.25);
    -ms-box-shadow: 0 12px 22px 0 rgba(0, 0, 0, 0.25);
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    /*
		&:after {
			position: absolute;
			z-index: 9;
			top: 100%;
			left: 50%;
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 10px 10px 0 10px;
			border-color: get_color(white) transparent transparent transparent;
			content: '';
			@include translate(-50%, 0);
			
			@include bp('mobile') { display: none; }
		}
		*/ }
    @media only screen and (max-width: 1125px) {
      #map-area .mapboxgl-popup {
        font-size: 1.2em; } }
    @media only screen and (max-width: 910px) {
      #map-area .mapboxgl-popup {
        max-width: 80vw !important; } }
    #map-area .mapboxgl-popup .mapboxgl-popup-content {
      display: flex;
      padding: 1.5em;
      box-shadow: none !important;
      border-radius: 8px;
      -moz-border-radius: 8px;
      -webkit-border-radius: 8px;
      -o-border-radius: 8px;
      -ms-border-radius: 8px;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
    #map-area .mapboxgl-popup .image {
      flex-basis: 85px;
      margin-right: 1.5em; }
      #map-area .mapboxgl-popup .image img {
        width: 85px; }
    #map-area .mapboxgl-popup .title {
      margin-bottom: .5em;
      line-height: 1.5;
      color: #1B2532; }
    #map-area .mapboxgl-popup .details {
      margin-bottom: 1em;
      font-size: .889em; }
      #map-area .mapboxgl-popup .details a {
        outline: none !important; }
      #map-area .mapboxgl-popup .details :last-child {
        margin-bottom: 0; }
    #map-area .mapboxgl-popup .sub-header {
      margin-bottom: 1.25em;
      color: #1B2532;
      line-height: 1.5; }
    #map-area .mapboxgl-popup .site-link {
      text-decoration: none;
      color: #A6192E;
      font-weight: 500; }
      #map-area .mapboxgl-popup .site-link em {
        font-style: normal; }
      #map-area .mapboxgl-popup .site-link:hover em {
        text-decoration: underline; }

#page-header.news {
  padding-top: 2em;
  border-bottom: none; }
  @media only screen and (max-width: 910px) {
    #page-header.news .span16, #page-header.news .span24 {
      display: flex;
      flex-wrap: wrap; } }
  @media only screen and (max-width: 1125px) {
    #page-header.news .span16, #page-header.news .span24 {
      width: calc(100% - 20px); } }
  @media only screen and (max-width: 1440px) {
    #page-header.news .span16 h1, #page-header.news .span24 h1 {
      font-size: 5vw; } }
  @media only screen and (max-width: 1125px) {
    #page-header.news .span16 h1, #page-header.news .span24 h1 {
      line-height: 1.2; } }
  @media only screen and (max-width: 910px) {
    #page-header.news .span16 h1, #page-header.news .span24 h1 {
      font-size: 6vw; } }
  @media only screen and (max-width: 700px) {
    #page-header.news .span16 h1, #page-header.news .span24 h1 {
      font-size: 7vw; } }
  @media only screen and (max-width: 525px) {
    #page-header.news .span16 h1, #page-header.news .span24 h1 {
      font-size: 2em; } }
  #page-header.news #page-search {
    margin-bottom: 0; }
    @media only screen and (max-width: 910px) {
      #page-header.news #page-search {
        order: 3;
        margin-top: 2rem; } }
    @media only screen and (max-width: 910px) {
      #page-header.news #page-search .span6 {
        width: calc(50% - 20px); } }
    @media only screen and (max-width: 910px) {
      #page-header.news #page-search .span8 {
        width: calc(75% - 20px); } }
    @media only screen and (max-width: 910px) {
      #page-header.news #page-search .span4 {
        width: calc(25% - 20px); } }
    @media only screen and (max-width: 525px) {
      #page-header.news #page-search .span4 {
        margin-top: 20px; } }

/* --- News Grid --- */
#news-grid {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap; }
  #news-grid .news-item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: calc(25% - (20px * 3) / 4);
    margin-right: 20px;
    margin-bottom: 20px;
    padding-bottom: 1.5rem;
    text-decoration: none;
    background: #F9F9F9;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 1125px) {
      #news-grid .news-item {
        width: calc((100% / 3) - (20px * 2) / 3); }
        #news-grid .news-item:nth-of-type(3n) {
          margin-right: 0; } }
    @media only screen and (max-width: 910px) {
      #news-grid .news-item {
        width: calc(50% - (20px / 2)); }
        #news-grid .news-item:nth-of-type(3n) {
          margin-right: 20px; }
        #news-grid .news-item:nth-of-type(even) {
          margin-right: 0; } }
    @media only screen and (max-width: 525px) {
      #news-grid .news-item {
        width: 100%;
        margin-right: 0; } }
    #news-grid .news-item:nth-of-type(4n) {
      margin-right: 0; }
      @media only screen and (max-width: 1125px) {
        #news-grid .news-item:nth-of-type(4n) {
          margin-right: 20px; } }
      @media only screen and (max-width: 910px) {
        #news-grid .news-item:nth-of-type(4n) {
          margin-right: 0; } }
    #news-grid .news-item:last-of-type {
      margin-right: 0; }
    #news-grid .news-item .image {
      overflow: hidden; }
      #news-grid .news-item .image img {
        display: block;
        width: 100%; }
    #news-grid .news-item p {
      padding: 0 1.5rem;
      line-height: 1.45; }
      #news-grid .news-item p.sub-header {
        margin-top: 1.5rem; }
      #news-grid .news-item p.title {
        margin-bottom: .5em;
        font-weight: 500; }
        #news-grid .news-item p.title.push {
          margin-bottom: 1.5rem; }
      #news-grid .news-item p.body {
        line-height: 2; }
      #news-grid .news-item p.date {
        margin-top: auto;
        margin-bottom: 0;
        padding-top: 1.5rem;
        border-top: 1px solid #D9DCE0;
        font-size: .778em; }
    #news-grid .news-item:hover {
      transform: translate(0, -5px);
      perspective: 1000px;
      -moz-transform: translate(0, -5px);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -5px);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -5px);
      -o-perspective: 1000;
      -ms-transform: translate(0, -5px);
      -ms-perspective: 1000;
      box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -o-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -ms-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1); }

/* --- Featured News Entry --- */
#news-featured {
  display: block;
  text-decoration: none;
  margin-bottom: 5vw;
  padding-bottom: 5vw;
  border-bottom: 1px solid #D9DCE0; }
  @media only screen and (max-width: 910px) {
    #news-featured {
      padding: 0;
      padding-bottom: 5vw; } }
  @media only screen and (max-width: 910px) {
    #news-featured .span11, #news-featured .span12 {
      width: calc(100% - 20px);
      margin-left: 20px !important;
      padding: 0 !important; } }
  @media only screen and (max-width: 525px) {
    #news-featured .span11, #news-featured .span12 {
      margin-left: 0 !important; } }
  #news-featured .title {
    margin-bottom: 0.5em;
    font-weight: normal;
    color: #1B2532;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.2em; }
  @media only screen and (max-width: 1440px) {
    #news-featured .body {
      font-size: .9em; } }
  @media only screen and (max-width: 910px) {
    #news-featured .body {
      font-size: 1em; } }
  #news-featured .date {
    margin-bottom: 1em;
    font-size: .778em; }
  #news-featured .image {
    overflow: hidden; }
  #news-featured img {
    display: block;
    width: 100%;
    max-width: 100%;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 910px) {
      #news-featured img {
        margin-top: 1em; } }
  #news-featured:hover .action {
    color: #A6192E !important; }
    #news-featured:hover .action span {
      margin-right: 1em; }
  #news-featured:hover .image img {
    transform: scale(1.03);
    perspective: 1000px;
    -moz-transform: scale(1.03);
    -moz-perspective: 1000;
    -webkit-transform: scale(1.03);
    -webkit-perspective: 1000;
    -o-transform: scale(1.03);
    -o-perspective: 1000;
    -ms-transform: scale(1.03);
    -ms-perspective: 1000; }

/* --- Detail Page --- */
.news-detail h1 {
  font-family: 'Archivo Narrow', sans-serif;
  font-size: 3em;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.15em; }
  @media only screen and (max-width: 1125px) {
    .news-detail h1 {
      font-size: 4.3vw; } }
  @media only screen and (max-width: 910px) {
    .news-detail h1 {
      font-size: 2.3em; } }

.news-detail .date {
  font-size: .778em; }

.news-detail img {
  width: 100%; }
  .news-detail img.cover {
    width: auto !important;
    margin-bottom: 1.5em; }

.news-detail .image-wrap {
  margin-bottom: 1.5em; }
  .news-detail .image-wrap img {
    max-width: 100%; }
  .news-detail .image-wrap .caption {
    margin-bottom: 3.5em;
    padding-bottom: 1em;
    border-bottom: 1px solid #D9DCE0; }

.news-detail .back-to {
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 1.5em;
  text-decoration: none; }
  @media only screen and (max-width: 910px) {
    .news-detail .back-to {
      margin-bottom: 1em;
      font-size: 1em !important; } }
  .news-detail .back-to span {
    float: none !important;
    display: inline-block;
    margin-bottom: 0;
    color: #1B2532;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    .news-detail .back-to span.icon-arrow-right-stroke-long {
      margin-right: .5em;
      font-size: .8em;
      transform: scaleX(-1);
      perspective: 1000px;
      -moz-transform: scaleX(-1);
      -moz-perspective: 1000;
      -webkit-transform: scaleX(-1);
      -webkit-perspective: 1000;
      -o-transform: scaleX(-1);
      -o-perspective: 1000;
      -ms-transform: scaleX(-1);
      -ms-perspective: 1000;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
  .news-detail .back-to:hover span.icon-arrow-right-stroke-long {
    margin-right: .8em; }

@media only screen and (max-width: 910px) {
  aside.news-detail {
    display: none !important; } }

/* --- Donate --- */
#donate-page {
  position: relative;
  white-space: nowrap; }
  #donate-page .lucy-wrapper, #donate-page #layout-7030 {
    width: 100%;
    padding: 0; }

#donate-left, #donate-right {
  position: relative;
  display: inline-block;
  width: 50vw;
  font-size: 18px;
  vertical-align: top;
  white-space: normal;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  body.alert #donate-left, body.alert #donate-right {
    height: calc(100vh - 140px); }
    @media only screen and (max-width: 910px) {
      body.alert #donate-left, body.alert #donate-right {
        height: calc(100vh - 80px); } }
  @media only screen and (max-width: 1125px) {
    #donate-left, #donate-right {
      width: 100vw !important;
      padding: 0 !important; }
      #donate-left#donate-right, #donate-right#donate-right {
        position: relative;
        top: auto;
        left: auto;
        height: auto;
        background-image: none !important; }
        #donate-left#donate-right:before, #donate-right#donate-right:before {
          display: none; } }

#donate-left {
  width: 50vw; }
  #donate-left .inner {
    padding: 4vw 5vw;
    background: #FFF;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    @media only screen and (max-width: 1125px) {
      #donate-left .inner {
        padding: 7vw; } }
  #donate-left #donate-intro {
    margin-bottom: 4em; }
  #donate-left .note {
    display: none;
    margin-top: -54px;
    margin-bottom: 54px;
    font-size: .8em;
    font-style: italic; }
    #donate-left .note #frequency-amount-wrap {
      display: none; }
    @media only screen and (max-width: 1125px) {
      #donate-left .note {
        margin-top: -27px;
        margin-bottom: 27px; } }
    @media only screen and (max-width: 525px) {
      #donate-left .note {
        margin-top: -36px;
        margin-bottom: 36px; } }
  #donate-left #donate-amount, #donate-left #donate-frequency {
    margin-bottom: 3em; }
    @media only screen and (max-width: 1125px) {
      #donate-left #donate-amount, #donate-left #donate-frequency {
        margin-bottom: 1.5em; } }
    #donate-left #donate-amount .option, #donate-left #donate-frequency .option {
      display: inline-block;
      width: calc(33.333333% - 13.33333px - 3px);
      margin: 0 20px 20px 0;
      padding: 1em 0;
      text-align: center;
      font-size: 1.375em;
      line-height: 1.25;
      color: #A6192E;
      text-decoration: none;
      border: 1px solid #D9DCE0;
      cursor: pointer;
      border-radius: 4px;
      -moz-border-radius: 4px;
      -webkit-border-radius: 4px;
      -o-border-radius: 4px;
      -ms-border-radius: 4px;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      #donate-left #donate-amount .option:nth-child(3n), #donate-left #donate-frequency .option:nth-child(3n) {
        margin-right: 0; }
      #donate-left #donate-amount .option:hover, #donate-left #donate-frequency .option:hover {
        border-color: #A6192E; }
      #donate-left #donate-amount .option.selected, #donate-left #donate-frequency .option.selected {
        color: #FFF;
        border-color: #A6192E;
        background: #A6192E; }
      #donate-left #donate-amount .option:focus, #donate-left #donate-frequency .option:focus {
        outline: #A6192E; }
  #donate-left #other-amount {
    display: none; }
  #donate-left #donate-frequency {
    margin-bottom: 3em; }
  #donate-left #donate-honor {
    margin-bottom: 3em; }
    #donate-left #donate-honor #donate-honor-top {
      padding: 1.5em 0;
      border-top: 1px solid #D9DCE0;
      border-bottom: 1px solid #D9DCE0; }
    #donate-left #donate-honor #donate-honor-bottom {
      display: none;
      padding: 1.5em 0;
      border-bottom: 1px solid #D9DCE0; }
      #donate-left #donate-honor #donate-honor-bottom .row {
        margin-top: 1em; }
    #donate-left #donate-honor label {
      display: inline-block;
      margin: 0 0 0 .15em; }
      @media only screen and (max-width: 525px) {
        #donate-left #donate-honor label {
          width: 90%;
          vertical-align: top; } }
    #donate-left #donate-honor input[type=radio], #donate-left #donate-honor input[type=checkbox] {
      position: relative;
      top: 5px;
      vertical-align: top; }
  #donate-left #personal-info, #donate-left #notification-info, #donate-left #payment-info {
    margin-top: 3em; }
    #donate-left #personal-info h3, #donate-left #notification-info h3, #donate-left #payment-info h3 {
      margin-bottom: .5em; }
    @media only screen and (max-width: 1125px) {
      #donate-left #personal-info, #donate-left #notification-info, #donate-left #payment-info {
        margin-top: 1em; } }
  #donate-left #notification-info, #donate-left #honor-fields {
    display: none; }
  #donate-left #donate-processing-fees {
    display: none; }

#donate-right {
  position: fixed;
  top: 140px;
  left: 50vw;
  height: calc(100vh - 140px);
  background-position: center;
  background-size: 100% auto;
  background-size: cover; }
  #donate-right p {
    position: absolute;
    right: -1rem;
    bottom: 2rem;
    margin-bottom: 0;
    font-size: 11em;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: 500;
    line-height: .9;
    text-align: right;
    color: #FFF;
    stroke-width: 2px !important;
    -moz-text-stroke-color: #FFF !important;
    -moz-text-fill-color: transparent !important;
    -moz-text-stroke-width: 2px !important;
    -webkit-text-stroke-color: #FFF !important;
    -webkit-text-fill-color: transparent !important;
    -webkit-text-stroke-width: 2px !important;
    -o-text-stroke-color: #FFF !important;
    -o-text-fill-color: transparent !important;
    -o-text-stroke-width: 2px !important;
    -ms-text-stroke-color: #FFF !important;
    -ms-text-fill-color: transparent !important;
    -ms-text-stroke-width: 2px !important; }
    @media only screen and (max-width: 525px) {
      #donate-right p {
        stroke-width: 1px;
        -moz-text-stroke-width: 1px !important;
        -webkit-text-stroke-width: 1px !important;
        -o-text-stroke-width: 1px !important;
        -ms-text-stroke-width: 1px !important; } }
    @media only screen and (max-width: 1440px) {
      #donate-right p {
        font-size: 12vw; } }
  #donate-right img {
    display: none;
    width: 100%; }
    @media only screen and (max-width: 1125px) {
      #donate-right img {
        display: block; } }
  #donate-right.unlock {
    position: absolute;
    bottom: 0;
    top: auto;
    left: 50vw; }
  #donate-right .left-inner {
    position: absolute;
    bottom: 5vw;
    left: 5vw;
    width: 40vw;
    color: #FFF; }
    #donate-right .left-inner .title {
      margin-bottom: .25em;
      font-size: 3.5em;
      font-weight: bold;
      line-height: 1; }
    #donate-right .left-inner p:last-child {
      margin-bottom: 0;
      font-size: .9em; }
    @media only screen and (max-width: 1125px) {
      #donate-right .left-inner {
        position: relative;
        bottom: auto;
        left: auto;
        width: 100%;
        padding: 7vw;
        background: transparent;
        background-attachment: fixed;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        #donate-right .left-inner .title {
          font-size: 2.25em; }
        #donate-right .left-inner p:last-child {
          display: none; } }

/* --- News Listing --- */
#story-listing {
  margin-top: 4em;
  border-top: 1px solid #D9DCE0; }
  #story-listing .story {
    padding: 3em 0;
    border-bottom: 1px solid #D9DCE0; }
    #story-listing .story .title {
      margin-bottom: 0.5em;
      font-weight: normal;
      color: #1B2532;
      font-family: 'Archivo Narrow', sans-serif;
      font-size: 2em;
      font-weight: 700;
      line-height: 1.2em; }
      #story-listing .story .title a, #story-listing .story .title a:active, #story-listing .story .title a:visited {
        color: #1B2532;
        text-decoration: none; }
        #story-listing .story .title a:hover, #story-listing .story .title a:active:hover, #story-listing .story .title a:visited:hover {
          text-decoration: underline; }
    #story-listing .story img {
      width: 100%; }
    #story-listing .story .span16 p {
      padding-right: 2em; }
    #story-listing .story :last-child {
      margin-bottom: 0; }

.story-detail .image-wrap img {
  max-width: 100%; }

.story-detail .image-wrap .caption {
  margin-bottom: 3.5em;
  padding-bottom: 1em;
  border-bottom: 1px solid #D9DCE0; }

/* --- News Listing --- */
#story-category {
  padding-bottom: 3em; }

#story-listing {
  border-top: 1px solid #D9DCE0; }
  #story-listing .story {
    display: block;
    padding: 3em 0;
    border-bottom: 1px solid #D9DCE0; }
    @media only screen and (max-width: 910px) {
      #story-listing .story {
        padding: 2em 0; } }
    #story-listing .story:last-child {
      border-bottom: none; }
    #story-listing .story h4, #story-listing .story #lucy-checkout-fields h2, #lucy-checkout-fields #story-listing .story h2 {
      margin-bottom: .25em;
      font-weight: 500; }
    #story-listing .story .image {
      overflow: hidden; }
      #story-listing .story .image img {
        display: block;
        width: 100%;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
    #story-listing .story .span16 p {
      padding-right: 2em; }
    #story-listing .story :last-child {
      margin-bottom: 0; }
    #story-listing .story:hover .image img {
      transform: scale(1.03);
      perspective: 1000px;
      -moz-transform: scale(1.03);
      -moz-perspective: 1000;
      -webkit-transform: scale(1.03);
      -webkit-perspective: 1000;
      -o-transform: scale(1.03);
      -o-perspective: 1000;
      -ms-transform: scale(1.03);
      -ms-perspective: 1000; }
    #story-listing .story:hover .button:after, #story-listing .story:hover #sponsorship-levels .level form .add:after, #sponsorship-levels .level form #story-listing .story:hover .add:after {
      background-color: #26384E; }

.story-detail .image-wrap {
  margin-bottom: 1.5em; }
  .story-detail .image-wrap img {
    max-width: 100%; }
  .story-detail .image-wrap .caption {
    margin-bottom: 3.5em;
    padding-bottom: 1em;
    border-bottom: 1px solid #D9DCE0; }

@media only screen and (max-width: 1125px) {
  .story-detail .on-page-callout .content {
    margin-bottom: 2rem !important; } }

@media only screen and (max-width: 910px) {
  .story-detail .on-page-callout .content {
    margin-bottom: 0 !important; } }

@media only screen and (max-width: 810px) {
  .story-detail .on-page-callout .content {
    margin-bottom: 2rem !important; } }

@media only screen and (max-width: 910px) {
  aside.story-detail {
    display: none !important; } }

.facts-wrap .facts {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  .facts-wrap .facts .fact {
    position: relative;
    width: calc((100% / 3) - (4em * 2 / 3));
    margin-bottom: 2em;
    margin-right: 4em;
    padding-top: 1em;
    font-size: 1em;
    line-height: 1.7;
    font-weight: 500;
    transform: translate(0, 20px);
    perspective: 1000px;
    -moz-transform: translate(0, 20px);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, 20px);
    -webkit-perspective: 1000;
    -o-transform: translate(0, 20px);
    -o-perspective: 1000;
    -ms-transform: translate(0, 20px);
    -ms-perspective: 1000;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    .facts-wrap .facts .fact.show {
      transform: translate(0, 0);
      perspective: 1000px;
      -moz-transform: translate(0, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(0, 0);
      -o-perspective: 1000;
      -ms-transform: translate(0, 0);
      -ms-perspective: 1000;
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }
    .facts-wrap .facts .fact .number {
      margin-bottom: 1rem !important;
      font-family: 'Archivo Narrow', sans-serif;
      font-weight: 700;
      font-size: 4.4em;
      line-height: 1;
      color: #A6192E; }
    .facts-wrap .facts .fact:nth-child(3n) {
      margin-right: 0; }
    .facts-wrap .facts .fact p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 1125px) {
    .facts-wrap .facts .fact {
      width: calc(50% - (2em * 1 / 2)) !important; }
      .facts-wrap .facts .fact:nth-child(odd) {
        margin-right: 2em !important; }
      .facts-wrap .facts .fact:nth-child(even) {
        margin-right: 0 !important; } }
  @media only screen and (max-width: 525px) {
    .facts-wrap .facts .fact {
      font-size: .776em; } }

#testimonials blockquote {
  margin-bottom: 3rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid #D9DCE0; }
  #testimonials blockquote .sub-header {
    margin-top: 1.5rem;
    font-size: .5em; }

* {
  margin: 0;
  padding: 0;
  border: 0;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }

:root {
  color-scheme: light !important; }

body {
  background: #F9F9F9; }

body.front, #lucy-page-template-inner {
  font-family: franklin-gothic-atf, sans-serif;
  font-size: 18px;
  color: #1B2532;
  letter-spacing: 0.0016em;
  line-height: 2.1;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  body.front.no-header, #lucy-page-template-inner.no-header {
    padding-top: 141px; }
    body.front.no-header header .bg, #lucy-page-template-inner.no-header header .bg {
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }
    @media only screen and (max-width: 1440px) {
      body.front.no-header, #lucy-page-template-inner.no-header {
        padding-top: 138px; } }
    @media only screen and (max-width: 1125px) {
      body.front.no-header, #lucy-page-template-inner.no-header {
        padding-top: 137px; } }
    @media only screen and (max-width: 1125px) {
      body.front.no-header, #lucy-page-template-inner.no-header {
        padding-top: 130px; } }
    @media only screen and (max-width: 525px) {
      body.front.no-header, #lucy-page-template-inner.no-header {
        padding-top: 80px; } }
  body.front.fixed, #lucy-page-template-inner.fixed {
    padding-top: 140px; }
    @media only screen and (max-width: 910px) {
      body.front.fixed, #lucy-page-template-inner.fixed {
        padding-top: 80px; } }
  body.front.alert, body.front.search, #lucy-page-template-inner.alert, #lucy-page-template-inner.search {
    padding-top: 60px; }
    body.front.alert header, body.front.search header, #lucy-page-template-inner.alert header, #lucy-page-template-inner.search header {
      top: 60px; }
    body.front.alert #shelf, body.front.search #shelf, #lucy-page-template-inner.alert #shelf, #lucy-page-template-inner.search #shelf {
      top: 200px;
      height: calc(100vh - 140px - 60px); }
    body.front.alert #mobile-shelf, body.front.search #mobile-shelf, #lucy-page-template-inner.alert #mobile-shelf, #lucy-page-template-inner.search #mobile-shelf {
      top: 140px;
      height: calc(100vh - 80px - 60px); }
    body.front.alert.fixed, body.front.search.fixed, #lucy-page-template-inner.alert.fixed, #lucy-page-template-inner.search.fixed {
      padding-top: 200px; }
      @media only screen and (max-width: 910px) {
        body.front.alert.fixed, body.front.search.fixed, #lucy-page-template-inner.alert.fixed, #lucy-page-template-inner.search.fixed {
          padding-top: 140px; } }
    body.front.alert.no-header, body.front.search.no-header, #lucy-page-template-inner.alert.no-header, #lucy-page-template-inner.search.no-header {
      padding-top: 194px; }
      @media only screen and (max-width: 1440px) {
        body.front.alert.no-header, body.front.search.no-header, #lucy-page-template-inner.alert.no-header, #lucy-page-template-inner.search.no-header {
          padding-top: 198px; } }
      @media only screen and (max-width: 1125px) {
        body.front.alert.no-header, body.front.search.no-header, #lucy-page-template-inner.alert.no-header, #lucy-page-template-inner.search.no-header {
          padding-top: 197px; } }
      @media only screen and (max-width: 910px) {
        body.front.alert.no-header, body.front.search.no-header, #lucy-page-template-inner.alert.no-header, #lucy-page-template-inner.search.no-header {
          padding-top: 190px; } }
      @media only screen and (max-width: 525px) {
        body.front.alert.no-header, body.front.search.no-header, #lucy-page-template-inner.alert.no-header, #lucy-page-template-inner.search.no-header {
          padding-top: 140px; } }

#site {
  width: 100%;
  background: #FFFFFF;
  overflow-x: hidden; }

.lucy-wrapper, #layout-7030 {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0 5vw;
  font-family: franklin-gothic-atf, sans-serif;
  font-size: 18px;
  color: #26384E;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }
  @media only screen and (max-width: 1125px) {
    .lucy-wrapper, #layout-7030 {
      padding: 0 5vw; } }
  @media only screen and (max-width: 525px) {
    .lucy-wrapper, #layout-7030 {
      padding: 0 25px; } }

.lucy-container .lucy-wrapper, .lucy-container #layout-7030 {
  padding: 0; }

.header-gradient {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent url(../images/header-gradient-top.png) repeat-x top left; }
  .header-gradient:before, .header-gradient:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: ''; }
    @media only screen and (max-width: 1125px) {
      .header-gradient:before, .header-gradient:after {
        filter: alpha(opacity=50);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
        -moz-opacity: 0.5;
        -khtml-opacity: 0.5;
        opacity: 0.5; } }
    @media only screen and (max-width: 910px) {
      .header-gradient:before, .header-gradient:after {
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1; } }
  .header-gradient:before {
    background: transparent url(../images/header-gradient-left.png) repeat-y top left; }
    @media only screen and (max-width: 1440px) {
      .header-gradient:before {
        filter: alpha(opacity=70);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
        -moz-opacity: 0.7;
        -khtml-opacity: 0.7;
        opacity: 0.7; } }
    @media only screen and (max-width: 910px) {
      .header-gradient:before {
        height: 100px;
        background-size: contain;
        background: transparent url(../images/mobile-header-gradient.png) repeat-x top left;
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1; } }
  .header-gradient:after {
    background: transparent url(../images/header-gradient-bottom.png) repeat-x bottom left; }
    @media only screen and (max-width: 910px) {
      .header-gradient:after {
        top: auto;
        bottom: 0;
        height: 210px;
        background-size: contain;
        background: transparent url(../images/mobile-page-header-gradient.png) repeat-x bottom left; } }

header {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 140px;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }
  @media only screen and (max-width: 910px) {
    header {
      height: 80px; } }
  header.flip #logo-mark {
    fill: #A6192E !important; }
  header.flip #logo-line, header.flip #logo-text {
    fill: #26384E !important; }
  header.flip nav a {
    color: #26384E !important; }
  header .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #F9F9F9;
    border-bottom: 1px solid #D9DCE0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0; }
  header .lucy-wrapper, header #layout-7030 {
    position: relative;
    z-index: 1;
    display: flex;
    height: 100%;
    align-items: center; }
    header .lucy-wrapper #menu-button, header #layout-7030 #menu-button {
      position: relative;
      width: 4.125vw;
      height: 4.125vw;
      margin-right: 1.875vw;
      background: #FFFFFF;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box;
      box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -o-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      -ms-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
      transition: background-color 0.2s ease-in-out;
      -moz-transition: background-color 0.2s ease-in-out;
      -webkit-transition: background-color 0.2s ease-in-out;
      -o-transition: background-color 0.2s ease-in-out;
      -ms-transition: background-color 0.2s ease-in-out; }
      @media only screen and (max-width: 1440px) {
        header .lucy-wrapper #menu-button, header #layout-7030 #menu-button {
          width: 4.75vw;
          height: 4.75vw; } }
      @media only screen and (max-width: 1125px) {
        header .lucy-wrapper #menu-button, header #layout-7030 #menu-button {
          width: 50px;
          height: 50px; } }
      @media only screen and (max-width: 910px) {
        header .lucy-wrapper #menu-button, header #layout-7030 #menu-button {
          order: 3;
          margin-right: 0;
          margin-left: 15px; } }
      header .lucy-wrapper #menu-button [class*='line'], header #layout-7030 #menu-button [class*='line'] {
        position: absolute;
        left: 1.375vw;
        height: 3px;
        background: #26384E;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
        @media only screen and (max-width: 1440px) {
          header .lucy-wrapper #menu-button [class*='line'], header #layout-7030 #menu-button [class*='line'] {
            left: 1.5vw; } }
        @media only screen and (max-width: 1125px) {
          header .lucy-wrapper #menu-button [class*='line'], header #layout-7030 #menu-button [class*='line'] {
            left: 18px;
            height: 2px; } }
      header .lucy-wrapper #menu-button .line1, header #layout-7030 #menu-button .line1 {
        top: calc(50% - 7px);
        width: 1.375vw; }
        @media only screen and (max-width: 1440px) {
          header .lucy-wrapper #menu-button .line1, header #layout-7030 #menu-button .line1 {
            width: 1.759vw; } }
        @media only screen and (max-width: 1125px) {
          header .lucy-wrapper #menu-button .line1, header #layout-7030 #menu-button .line1 {
            top: calc(50% - 5px);
            width: 15px; } }
      header .lucy-wrapper #menu-button .line2, header #layout-7030 #menu-button .line2 {
        top: 50%;
        width: 1.125vw; }
        @media only screen and (max-width: 1440px) {
          header .lucy-wrapper #menu-button .line2, header #layout-7030 #menu-button .line2 {
            width: 1.429vw; } }
        @media only screen and (max-width: 1125px) {
          header .lucy-wrapper #menu-button .line2, header #layout-7030 #menu-button .line2 {
            width: 11px; } }
      header .lucy-wrapper #menu-button .line3, header #layout-7030 #menu-button .line3 {
        top: calc(50% + 7px);
        width: .75vw; }
        @media only screen and (max-width: 1440px) {
          header .lucy-wrapper #menu-button .line3, header #layout-7030 #menu-button .line3 {
            width: 1vw; } }
        @media only screen and (max-width: 1125px) {
          header .lucy-wrapper #menu-button .line3, header #layout-7030 #menu-button .line3 {
            top: calc(50% + 5px);
            width: 7px; } }
      header .lucy-wrapper #menu-button:hover, header #layout-7030 #menu-button:hover {
        background-color: #A6192E; }
        header .lucy-wrapper #menu-button:hover [class*='line'], header #layout-7030 #menu-button:hover [class*='line'] {
          width: 1.375vw;
          background: #FFFFFF; }
          @media only screen and (max-width: 1440px) {
            header .lucy-wrapper #menu-button:hover [class*='line'], header #layout-7030 #menu-button:hover [class*='line'] {
              width: 1.759vw; } }
          @media only screen and (max-width: 1125px) {
            header .lucy-wrapper #menu-button:hover [class*='line'], header #layout-7030 #menu-button:hover [class*='line'] {
              width: 15px; } }
      header .lucy-wrapper #menu-button.open, header #layout-7030 #menu-button.open {
        background-color: #A6192E; }
        header .lucy-wrapper #menu-button.open [class*='line'], header #layout-7030 #menu-button.open [class*='line'] {
          background: #FFFFFF; }
        header .lucy-wrapper #menu-button.open .line1, header #layout-7030 #menu-button.open .line1 {
          top: 50%;
          transform: rotate(-45deg);
          perspective: 1000px;
          -moz-transform: rotate(-45deg);
          -moz-perspective: 1000;
          -webkit-transform: rotate(-45deg);
          -webkit-perspective: 1000;
          -o-transform: rotate(-45deg);
          -o-perspective: 1000;
          -ms-transform: rotate(-45deg);
          -ms-perspective: 1000; }
        header .lucy-wrapper #menu-button.open .line2, header #layout-7030 #menu-button.open .line2 {
          filter: alpha(opacity=0);
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -moz-opacity: 0;
          -khtml-opacity: 0;
          opacity: 0; }
        header .lucy-wrapper #menu-button.open .line3, header #layout-7030 #menu-button.open .line3 {
          top: 50%;
          width: 1.375vw;
          transform: rotate(45deg);
          perspective: 1000px;
          -moz-transform: rotate(45deg);
          -moz-perspective: 1000;
          -webkit-transform: rotate(45deg);
          -webkit-perspective: 1000;
          -o-transform: rotate(45deg);
          -o-perspective: 1000;
          -ms-transform: rotate(45deg);
          -ms-perspective: 1000; }
          @media only screen and (max-width: 1440px) {
            header .lucy-wrapper #menu-button.open .line3, header #layout-7030 #menu-button.open .line3 {
              width: 1.759vw; } }
          @media only screen and (max-width: 1125px) {
            header .lucy-wrapper #menu-button.open .line3, header #layout-7030 #menu-button.open .line3 {
              width: 15px; } }
    header .lucy-wrapper #logo, header #layout-7030 #logo {
      line-height: 0; }
      @media only screen and (max-width: 910px) {
        header .lucy-wrapper #logo svg, header #layout-7030 #logo svg {
          width: 240px !important;
          height: 50px !important; } }
      @media only screen and (max-width: 450px) {
        header .lucy-wrapper #logo svg, header #layout-7030 #logo svg {
          width: 225px !important;
          height: 50px !important; } }
    header .lucy-wrapper nav, header #layout-7030 nav {
      margin-left: auto; }
      header .lucy-wrapper nav ul, header #layout-7030 nav ul {
        margin: 0;
        padding: 0;
        list-style-type: none; }
        header .lucy-wrapper nav ul li, header #layout-7030 nav ul li {
          display: inline-block;
          margin-left: 1.5em;
          font-size: 1em;
          font-weight: 500; }
          @media only screen and (max-width: 910px) {
            header .lucy-wrapper nav ul li, header #layout-7030 nav ul li {
              display: none; } }
          @media only screen and (max-width: 450px) {
            header .lucy-wrapper nav ul li, header #layout-7030 nav ul li {
              margin-left: 1em; } }
          header .lucy-wrapper nav ul li a, header #layout-7030 nav ul li a, header .lucy-wrapper nav ul li a:active, header #layout-7030 nav ul li a:active, header .lucy-wrapper nav ul li a:visited, header #layout-7030 nav ul li a:visited {
            display: block;
            position: relative;
            color: #FFFFFF;
            text-decoration: none;
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out; }
            header .lucy-wrapper nav ul li a:after, header #layout-7030 nav ul li a:after, header .lucy-wrapper nav ul li a:active:after, header #layout-7030 nav ul li a:active:after, header .lucy-wrapper nav ul li a:visited:after, header #layout-7030 nav ul li a:visited:after {
              position: absolute;
              bottom: 0;
              left: 0;
              width: 0;
              height: 3px;
              background-color: #A6192E;
              content: '';
              transition: width 0.2s ease-in-out;
              -moz-transition: width 0.2s ease-in-out;
              -webkit-transition: width 0.2s ease-in-out;
              -o-transition: width 0.2s ease-in-out;
              -ms-transition: width 0.2s ease-in-out; }
            header .lucy-wrapper nav ul li a.active, header #layout-7030 nav ul li a.active, header .lucy-wrapper nav ul li a:hover, header #layout-7030 nav ul li a:hover, header .lucy-wrapper nav ul li a:focus, header #layout-7030 nav ul li a:focus, header .lucy-wrapper nav ul li a:active.active, header #layout-7030 nav ul li a:active.active, header .lucy-wrapper nav ul li a:active:hover, header #layout-7030 nav ul li a:active:hover, header .lucy-wrapper nav ul li a:active:focus, header #layout-7030 nav ul li a:active:focus, header .lucy-wrapper nav ul li a:visited.active, header #layout-7030 nav ul li a:visited.active, header .lucy-wrapper nav ul li a:visited:hover, header #layout-7030 nav ul li a:visited:hover, header .lucy-wrapper nav ul li a:visited:focus, header #layout-7030 nav ul li a:visited:focus {
              outline: none; }
              header .lucy-wrapper nav ul li a.active:after, header #layout-7030 nav ul li a.active:after, header .lucy-wrapper nav ul li a:hover:after, header #layout-7030 nav ul li a:hover:after, header .lucy-wrapper nav ul li a:focus:after, header #layout-7030 nav ul li a:focus:after, header .lucy-wrapper nav ul li a:active.active:after, header #layout-7030 nav ul li a:active.active:after, header .lucy-wrapper nav ul li a:active:hover:after, header #layout-7030 nav ul li a:active:hover:after, header .lucy-wrapper nav ul li a:active:focus:after, header #layout-7030 nav ul li a:active:focus:after, header .lucy-wrapper nav ul li a:visited.active:after, header #layout-7030 nav ul li a:visited.active:after, header .lucy-wrapper nav ul li a:visited:hover:after, header #layout-7030 nav ul li a:visited:hover:after, header .lucy-wrapper nav ul li a:visited:focus:after, header #layout-7030 nav ul li a:visited:focus:after {
                width: 100%; }
          header .lucy-wrapper nav ul li:first-child, header #layout-7030 nav ul li:first-child {
            margin-left: 0; }
          @media only screen and (max-width: 910px) {
            header .lucy-wrapper nav ul li.search, header #layout-7030 nav ul li.search, header .lucy-wrapper nav ul li.cart, header #layout-7030 nav ul li.cart {
              display: inline-block;
              transform: translate(0, 3px);
              perspective: 1000px;
              -moz-transform: translate(0, 3px);
              -moz-perspective: 1000;
              -webkit-transform: translate(0, 3px);
              -webkit-perspective: 1000;
              -o-transform: translate(0, 3px);
              -o-perspective: 1000;
              -ms-transform: translate(0, 3px);
              -ms-perspective: 1000; } }
          header .lucy-wrapper nav ul li.search a, header #layout-7030 nav ul li.search a, header .lucy-wrapper nav ul li.search a:active, header #layout-7030 nav ul li.search a:active, header .lucy-wrapper nav ul li.search a:visited, header #layout-7030 nav ul li.search a:visited, header .lucy-wrapper nav ul li.cart a, header #layout-7030 nav ul li.cart a, header .lucy-wrapper nav ul li.cart a:active, header #layout-7030 nav ul li.cart a:active, header .lucy-wrapper nav ul li.cart a:visited, header #layout-7030 nav ul li.cart a:visited {
            transform: scale(1);
            perspective: 1000px;
            -moz-transform: scale(1);
            -moz-perspective: 1000;
            -webkit-transform: scale(1);
            -webkit-perspective: 1000;
            -o-transform: scale(1);
            -o-perspective: 1000;
            -ms-transform: scale(1);
            -ms-perspective: 1000; }
            header .lucy-wrapper nav ul li.search a:after, header #layout-7030 nav ul li.search a:after, header .lucy-wrapper nav ul li.search a:active:after, header #layout-7030 nav ul li.search a:active:after, header .lucy-wrapper nav ul li.search a:visited:after, header #layout-7030 nav ul li.search a:visited:after, header .lucy-wrapper nav ul li.cart a:after, header #layout-7030 nav ul li.cart a:after, header .lucy-wrapper nav ul li.cart a:active:after, header #layout-7030 nav ul li.cart a:active:after, header .lucy-wrapper nav ul li.cart a:visited:after, header #layout-7030 nav ul li.cart a:visited:after {
              display: none !important; }
            header .lucy-wrapper nav ul li.search a.active, header #layout-7030 nav ul li.search a.active, header .lucy-wrapper nav ul li.search a:hover, header #layout-7030 nav ul li.search a:hover, header .lucy-wrapper nav ul li.search a:focus, header #layout-7030 nav ul li.search a:focus, header .lucy-wrapper nav ul li.search a:active.active, header #layout-7030 nav ul li.search a:active.active, header .lucy-wrapper nav ul li.search a:active:hover, header #layout-7030 nav ul li.search a:active:hover, header .lucy-wrapper nav ul li.search a:active:focus, header #layout-7030 nav ul li.search a:active:focus, header .lucy-wrapper nav ul li.search a:visited.active, header #layout-7030 nav ul li.search a:visited.active, header .lucy-wrapper nav ul li.search a:visited:hover, header #layout-7030 nav ul li.search a:visited:hover, header .lucy-wrapper nav ul li.search a:visited:focus, header #layout-7030 nav ul li.search a:visited:focus, header .lucy-wrapper nav ul li.cart a.active, header #layout-7030 nav ul li.cart a.active, header .lucy-wrapper nav ul li.cart a:hover, header #layout-7030 nav ul li.cart a:hover, header .lucy-wrapper nav ul li.cart a:focus, header #layout-7030 nav ul li.cart a:focus, header .lucy-wrapper nav ul li.cart a:active.active, header #layout-7030 nav ul li.cart a:active.active, header .lucy-wrapper nav ul li.cart a:active:hover, header #layout-7030 nav ul li.cart a:active:hover, header .lucy-wrapper nav ul li.cart a:active:focus, header #layout-7030 nav ul li.cart a:active:focus, header .lucy-wrapper nav ul li.cart a:visited.active, header #layout-7030 nav ul li.cart a:visited.active, header .lucy-wrapper nav ul li.cart a:visited:hover, header #layout-7030 nav ul li.cart a:visited:hover, header .lucy-wrapper nav ul li.cart a:visited:focus, header #layout-7030 nav ul li.cart a:visited:focus {
              color: #A6192E !important;
              transform: scale(1.2);
              perspective: 1000px;
              -moz-transform: scale(1.2);
              -moz-perspective: 1000;
              -webkit-transform: scale(1.2);
              -webkit-perspective: 1000;
              -o-transform: scale(1.2);
              -o-perspective: 1000;
              -ms-transform: scale(1.2);
              -ms-perspective: 1000; }
          header .lucy-wrapper nav ul li.cart a.active, header #layout-7030 nav ul li.cart a.active, header .lucy-wrapper nav ul li.cart a:hover, header #layout-7030 nav ul li.cart a:hover, header .lucy-wrapper nav ul li.cart a:focus, header #layout-7030 nav ul li.cart a:focus, header .lucy-wrapper nav ul li.cart a:active.active, header #layout-7030 nav ul li.cart a:active.active, header .lucy-wrapper nav ul li.cart a:active:hover, header #layout-7030 nav ul li.cart a:active:hover, header .lucy-wrapper nav ul li.cart a:active:focus, header #layout-7030 nav ul li.cart a:active:focus, header .lucy-wrapper nav ul li.cart a:visited.active, header #layout-7030 nav ul li.cart a:visited.active, header .lucy-wrapper nav ul li.cart a:visited:hover, header #layout-7030 nav ul li.cart a:visited:hover, header .lucy-wrapper nav ul li.cart a:visited:focus, header #layout-7030 nav ul li.cart a:visited:focus {
            transform: scale(1.15);
            perspective: 1000px;
            -moz-transform: scale(1.15);
            -moz-perspective: 1000;
            -webkit-transform: scale(1.15);
            -webkit-perspective: 1000;
            -o-transform: scale(1.15);
            -o-perspective: 1000;
            -ms-transform: scale(1.15);
            -ms-perspective: 1000; }
          header .lucy-wrapper nav ul li.cart span, header #layout-7030 nav ul li.cart span {
            position: relative; }
            header .lucy-wrapper nav ul li.cart span:after, header #layout-7030 nav ul li.cart span:after {
              position: absolute;
              top: -3px;
              right: -3px;
              width: 8px;
              height: 8px;
              border: 1px solid #FFFFFF;
              background: #A6192E;
              content: '';
              border-radius: 100%;
              -moz-border-radius: 100%;
              -webkit-border-radius: 100%;
              -o-border-radius: 100%;
              -ms-border-radius: 100%;
              -moz-background-clip: padding-box;
              -webkit-background-clip: padding-box;
              -o-background-clip: padding-box;
              -ms-background-clip: padding-box; }

/* --- Shelf --- */
#shelf {
  position: fixed;
  z-index: 11;
  top: 140px;
  width: 100vw;
  height: calc(100vh - 140px);
  background: #FFFFFF;
  overflow: scroll;
  transform: translate(-100%, 0);
  perspective: 1000px;
  -moz-transform: translate(-100%, 0);
  -moz-perspective: 1000;
  -webkit-transform: translate(-100%, 0);
  -webkit-perspective: 1000;
  -o-transform: translate(-100%, 0);
  -o-perspective: 1000;
  -ms-transform: translate(-100%, 0);
  -ms-perspective: 1000;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  @media only screen and (max-width: 910px) {
    #shelf {
      display: none; } }
  #shelf .primary {
    position: relative;
    z-index: 1;
    width: 35%;
    padding: calc(5vw - .75em) 5vw calc(5vw / 2) 5vw;
    background: #FFFFFF;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #shelf .primary ul {
      width: 100%;
      margin: 0 0 1em 0;
      padding: 0;
      list-style-type: none; }
      #shelf .primary ul:first-child {
        font-size: 2.1em;
        font-family: 'Archivo Narrow', sans-serif;
        font-weight: 600;
        line-height: 1;
        letter-spacing: -.01em; }
        @media only screen and (max-width: 1125px) {
          #shelf .primary ul:first-child {
            font-size: 3.7vw; } }
        #shelf .primary ul:first-child li {
          position: relative;
          border-bottom: 1px solid rgba(27, 37, 50, 0.5); }
          #shelf .primary ul:first-child li:after {
            position: absolute;
            bottom: -1px;
            left: 0;
            width: 0;
            height: 3px;
            background-color: #A6192E;
            content: '';
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out; }
          #shelf .primary ul:first-child li a, #shelf .primary ul:first-child li a:active, #shelf .primary ul:first-child li a:visited {
            position: relative;
            display: block;
            padding: .75em 0;
            text-decoration: none; }
            #shelf .primary ul:first-child li a span, #shelf .primary ul:first-child li a:active span, #shelf .primary ul:first-child li a:visited span {
              position: relative;
              display: block;
              height: 100%;
              font-weight: 700; }
              #shelf .primary ul:first-child li a span:before, #shelf .primary ul:first-child li a:active span:before, #shelf .primary ul:first-child li a:visited span:before {
                position: absolute;
                top: calc(50% - 6px);
                right: -3px;
                width: .4em;
                height: 3px;
                background: #26384E;
                content: '';
                transform: rotate(45deg);
                perspective: 1000px;
                -moz-transform: rotate(45deg);
                -moz-perspective: 1000;
                -webkit-transform: rotate(45deg);
                -webkit-perspective: 1000;
                -o-transform: rotate(45deg);
                -o-perspective: 1000;
                -ms-transform: rotate(45deg);
                -ms-perspective: 1000;
                transition: all 0.2s ease-in-out;
                -moz-transition: all 0.2s ease-in-out;
                -webkit-transition: all 0.2s ease-in-out;
                -o-transition: all 0.2s ease-in-out;
                -ms-transition: all 0.2s ease-in-out;
                border-top-right-radius: 50%;
                -moz-border-top-right-radius: 50%;
                -webkit-border-top-right-radius: 50%;
                -o-border-top-right-radius: 50%;
                -ms-border-top-right-radius: 50%;
                -moz-background-clip: "padding-box";
                -webkit-background-clip: "padding-box";
                -o-background-clip: "padding-box";
                -ms-background-clip: "padding-box"; }
              #shelf .primary ul:first-child li a span:after, #shelf .primary ul:first-child li a:active span:after, #shelf .primary ul:first-child li a:visited span:after {
                position: absolute;
                top: calc(50% + 4px);
                right: -3px;
                width: .4em;
                height: 3px;
                background: #26384E;
                content: '';
                transform: rotate(-45deg);
                perspective: 1000px;
                -moz-transform: rotate(-45deg);
                -moz-perspective: 1000;
                -webkit-transform: rotate(-45deg);
                -webkit-perspective: 1000;
                -o-transform: rotate(-45deg);
                -o-perspective: 1000;
                -ms-transform: rotate(-45deg);
                -ms-perspective: 1000;
                transition: all 0.2s ease-in-out;
                -moz-transition: all 0.2s ease-in-out;
                -webkit-transition: all 0.2s ease-in-out;
                -o-transition: all 0.2s ease-in-out;
                -ms-transition: all 0.2s ease-in-out;
                border-bottom-right-radius: 50%;
                -moz-border-bottom-right-radius: 50%;
                -webkit-border-bottom-right-radius: 50%;
                -o-border-bottom-right-radius: 50%;
                -ms-border-bottom-right-radius: 50%;
                -moz-background-clip: "padding-box";
                -webkit-background-clip: "padding-box";
                -o-background-clip: "padding-box";
                -ms-background-clip: "padding-box"; }
            #shelf .primary ul:first-child li a:after, #shelf .primary ul:first-child li a:active:after, #shelf .primary ul:first-child li a:visited:after {
              position: absolute;
              top: calc(50% - 1px);
              right: 0;
              width: .8em;
              height: 3px;
              background: #26384E;
              content: '';
              border-radius: 1px;
              -moz-border-radius: 1px;
              -webkit-border-radius: 1px;
              -o-border-radius: 1px;
              -ms-border-radius: 1px;
              -moz-background-clip: padding-box;
              -webkit-background-clip: padding-box;
              -o-background-clip: padding-box;
              -ms-background-clip: padding-box; }
            #shelf .primary ul:first-child li a.open:after, #shelf .primary ul:first-child li a:active.open:after, #shelf .primary ul:first-child li a:visited.open:after {
              background: #A6192E; }
            #shelf .primary ul:first-child li a.open span:before, #shelf .primary ul:first-child li a:active.open span:before, #shelf .primary ul:first-child li a:visited.open span:before {
              right: calc(.8em - 12px);
              background: #A6192E;
              transform: rotate(135deg);
              perspective: 1000px;
              -moz-transform: rotate(135deg);
              -moz-perspective: 1000;
              -webkit-transform: rotate(135deg);
              -webkit-perspective: 1000;
              -o-transform: rotate(135deg);
              -o-perspective: 1000;
              -ms-transform: rotate(135deg);
              -ms-perspective: 1000;
              border-bottom-right-radius: 50%;
              -moz-border-bottom-right-radius: 50%;
              -webkit-border-bottom-right-radius: 50%;
              -o-border-bottom-right-radius: 50%;
              -ms-border-bottom-right-radius: 50%;
              -moz-background-clip: "padding-box";
              -webkit-background-clip: "padding-box";
              -o-background-clip: "padding-box";
              -ms-background-clip: "padding-box";
              border-top-right-radius: 0;
              -moz-border-top-right-radius: 0;
              -webkit-border-top-right-radius: 0;
              -o-border-top-right-radius: 0;
              -ms-border-top-right-radius: 0;
              -moz-background-clip: "padding-box";
              -webkit-background-clip: "padding-box";
              -o-background-clip: "padding-box";
              -ms-background-clip: "padding-box"; }
            #shelf .primary ul:first-child li a.open span:after, #shelf .primary ul:first-child li a:active.open span:after, #shelf .primary ul:first-child li a:visited.open span:after {
              right: calc(.8em - 12px);
              background: #A6192E;
              transform: rotate(-135deg);
              perspective: 1000px;
              -moz-transform: rotate(-135deg);
              -moz-perspective: 1000;
              -webkit-transform: rotate(-135deg);
              -webkit-perspective: 1000;
              -o-transform: rotate(-135deg);
              -o-perspective: 1000;
              -ms-transform: rotate(-135deg);
              -ms-perspective: 1000;
              border-top-right-radius: 50%;
              -moz-border-top-right-radius: 50%;
              -webkit-border-top-right-radius: 50%;
              -o-border-top-right-radius: 50%;
              -ms-border-top-right-radius: 50%;
              -moz-background-clip: "padding-box";
              -webkit-background-clip: "padding-box";
              -o-background-clip: "padding-box";
              -ms-background-clip: "padding-box";
              border-bottom-right-radius: 0;
              -moz-border-bottom-right-radius: 0;
              -webkit-border-bottom-right-radius: 0;
              -o-border-bottom-right-radius: 0;
              -ms-border-bottom-right-radius: 0;
              -moz-background-clip: "padding-box";
              -webkit-background-clip: "padding-box";
              -o-background-clip: "padding-box";
              -ms-background-clip: "padding-box"; }
          #shelf .primary ul:first-child li:hover:after, #shelf .primary ul:first-child li:focus:after {
            width: 100%; }
          #shelf .primary ul:first-child li:last-child {
            border-bottom: none; }
    #shelf .primary p {
      display: flex; }
      @media only screen and (max-width: 1125px) {
        #shelf .primary p {
          display: block; } }
      #shelf .primary p a, #shelf .primary p a:active, #shelf .primary p a:visited {
        flex: 0 0 calc(50% - .35em);
        margin-right: .7em;
        padding: 0;
        background: #A6192E; }
        @media only screen and (max-width: 1440px) {
          #shelf .primary p a, #shelf .primary p a:active, #shelf .primary p a:visited {
            font-size: .889em; } }
        @media only screen and (max-width: 1125px) {
          #shelf .primary p a, #shelf .primary p a:active, #shelf .primary p a:visited {
            display: block;
            width: 100%;
            margin-right: 0;
            margin-bottom: 10px;
            font-size: 1em; } }
        #shelf .primary p a:last-child, #shelf .primary p a:active:last-child, #shelf .primary p a:visited:last-child {
          margin-right: 0; }
    #shelf .primary ul:last-child {
      line-height: 3; }
      #shelf .primary ul:last-child a, #shelf .primary ul:last-child a:active, #shelf .primary ul:last-child a:visited {
        position: relative;
        text-decoration: none;
        font-weight: 500; }
        #shelf .primary ul:last-child a:before, #shelf .primary ul:last-child a:active:before, #shelf .primary ul:last-child a:visited:before {
          position: absolute;
          bottom: -8px;
          left: 0;
          width: 0;
          height: 2px;
          content: '';
          background-color: #A6192E;
          transition: width 0.2s ease-in-out;
          -moz-transition: width 0.2s ease-in-out;
          -webkit-transition: width 0.2s ease-in-out;
          -o-transition: width 0.2s ease-in-out;
          -ms-transition: width 0.2s ease-in-out; }
        #shelf .primary ul:last-child a:hover:before, #shelf .primary ul:last-child a:focus:before, #shelf .primary ul:last-child a:active:hover:before, #shelf .primary ul:last-child a:active:focus:before, #shelf .primary ul:last-child a:visited:hover:before, #shelf .primary ul:last-child a:visited:focus:before {
          width: 100%; }
  #shelf .secondary {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 35%;
    width: 30%;
    height: 100%;
    padding: 5vw 5vw 0 5vw;
    background: #26384E;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    transform: translate(-101%, 0);
    perspective: 1000px;
    -moz-transform: translate(-101%, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(-101%, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(-101%, 0);
    -o-perspective: 1000;
    -ms-transform: translate(-101%, 0);
    -ms-perspective: 1000;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 1440px) {
      #shelf .secondary {
        width: 35%; } }
    @media only screen and (max-width: 1125px) {
      #shelf .secondary {
        width: 40%; } }
    #shelf .secondary p {
      color: #FFFFFF;
      font-weight: 500; }
    #shelf .secondary ul {
      margin: 0;
      padding: 0;
      list-style-type: none; }
      #shelf .secondary ul li {
        margin-bottom: 1.5em; }
      #shelf .secondary ul a, #shelf .secondary ul a:active, #shelf .secondary ul a:visited {
        position: relative;
        display: block;
        line-height: 1.5;
        color: #FFFFFF;
        text-decoration: none;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
        #shelf .secondary ul a:after, #shelf .secondary ul a:active:after, #shelf .secondary ul a:visited:after {
          position: absolute;
          bottom: -4px;
          left: 0;
          width: 0;
          height: 2px;
          background-color: #FFFFFF;
          content: '';
          transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -webkit-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          -ms-transition: all 0.2s ease-in-out; }
        #shelf .secondary ul a:hover:after, #shelf .secondary ul a:active:hover:after, #shelf .secondary ul a:visited:hover:after {
          width: 100%; }
      #shelf .secondary ul li:last-child a:after {
        display: none; }
    #shelf .secondary.open {
      transform: translate(0, 0);
      perspective: 1000px;
      -moz-transform: translate(0, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(0, 0);
      -o-perspective: 1000;
      -ms-transform: translate(0, 0);
      -ms-perspective: 1000; }
  #shelf #newsletter-subscribe {
    padding: 3em 0 5em 0;
    background: #A6192E; }
    #shelf #newsletter-subscribe h2 {
      margin-bottom: 0;
      line-height: 1;
      font-size: 11em;
      font-family: 'Archivo Narrow', sans-serif;
      text-transform: lowercase;
      color: #FFFFFF;
      stroke-width: 2px !important;
      -moz-text-stroke-color: #FFFFFF !important;
      -moz-text-fill-color: transparent !important;
      -moz-text-stroke-width: 2px !important;
      -webkit-text-stroke-color: #FFFFFF !important;
      -webkit-text-fill-color: transparent !important;
      -webkit-text-stroke-width: 2px !important;
      -o-text-stroke-color: #FFFFFF !important;
      -o-text-fill-color: transparent !important;
      -o-text-stroke-width: 2px !important;
      -ms-text-stroke-color: #FFFFFF !important;
      -ms-text-fill-color: transparent !important;
      -ms-text-stroke-width: 2px !important; }
      @media only screen and (max-width: 525px) {
        #shelf #newsletter-subscribe h2 {
          stroke-width: 1px;
          -moz-text-stroke-width: 1px !important;
          -webkit-text-stroke-width: 1px !important;
          -o-text-stroke-width: 1px !important;
          -ms-text-stroke-width: 1px !important; } }
      @media only screen and (max-width: 1125px) {
        #shelf #newsletter-subscribe h2 {
          font-size: 15vw; } }
    #shelf #newsletter-subscribe p {
      margin-bottom: .5em;
      color: #FFFFFF;
      font-size: 1.25em; }
      @media only screen and (max-width: 1125px) {
        #shelf #newsletter-subscribe p {
          font-size: 2vw; } }
    #shelf #newsletter-subscribe form {
      display: flex;
      margin-bottom: 1em; }
      #shelf #newsletter-subscribe form .span {
        margin-right: .5em; }
      #shelf #newsletter-subscribe form input {
        width: 10em !important; }
        #shelf #newsletter-subscribe form input#newsletter-email {
          width: 40em !important; }
          @media only screen and (max-width: 1125px) {
            #shelf #newsletter-subscribe form input#newsletter-email {
              width: 60vw !important; } }
      #shelf #newsletter-subscribe form label.show {
        filter: alpha(opacity=0);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -moz-opacity: 0;
        -khtml-opacity: 0;
        opacity: 0; }
      #shelf #newsletter-subscribe form button:hover:after, #shelf #newsletter-subscribe form .overlay-card .bottom .level-filled:hover:after, .overlay-card .bottom #shelf #newsletter-subscribe form .level-filled:hover:after {
        background-color: #26384E; }
  #shelf.open {
    transform: translate(0, 0);
    perspective: 1000px;
    -moz-transform: translate(0, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(0, 0);
    -o-perspective: 1000;
    -ms-transform: translate(0, 0);
    -ms-perspective: 1000; }
  #shelf nav {
    position: relative;
    background: transparent url(../images/shelf-image.jpg) no-repeat top right;
    background-size: auto 100%; }
    @media only screen and (max-width: 1440px) {
      #shelf nav {
        background-position: 150px;
        background-size: cover; } }
    @media only screen and (max-width: 1125px) {
      #shelf nav {
        background-position: left center; } }

#mobile-shelf {
  display: none;
  position: fixed;
  z-index: 11;
  top: 80px;
  width: 100vw;
  height: calc(100vh - 80px);
  background: #FFFFFF;
  overflow: scroll;
  transform: translate(-100%, 0);
  perspective: 1000px;
  -moz-transform: translate(-100%, 0);
  -moz-perspective: 1000;
  -webkit-transform: translate(-100%, 0);
  -webkit-perspective: 1000;
  -o-transform: translate(-100%, 0);
  -o-perspective: 1000;
  -ms-transform: translate(-100%, 0);
  -ms-perspective: 1000;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  @media only screen and (max-width: 910px) {
    #mobile-shelf {
      display: block; } }
  #mobile-shelf.open {
    transform: translate(0, 0);
    perspective: 1000px;
    -moz-transform: translate(0, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(0, 0);
    -o-perspective: 1000;
    -ms-transform: translate(0, 0);
    -ms-perspective: 1000; }
  #mobile-shelf ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
    #mobile-shelf ul.primary li.main {
      position: relative;
      padding: 2rem 5vw;
      border-bottom: 1px solid #D9DCE0; }
      #mobile-shelf ul.primary li.main span {
        cursor: pointer; }
        #mobile-shelf ul.primary li.main span.text {
          position: relative;
          font-family: 'Archivo Narrow', sans-serif;
          font-size: 2.3em;
          font-weight: 700;
          line-height: 1; }
          #mobile-shelf ul.primary li.main span.text:after {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 0;
            height: 3px;
            background: #A6192E;
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out; }
        #mobile-shelf ul.primary li.main span.icon {
          position: absolute;
          top: 25px;
          right: 5vw; }
          #mobile-shelf ul.primary li.main span.icon:before {
            position: absolute;
            top: 32px;
            right: 1px;
            width: 3px;
            height: 13px;
            background: #26384E;
            content: '';
            transform: rotate(45deg);
            perspective: 1000px;
            -moz-transform: rotate(45deg);
            -moz-perspective: 1000;
            -webkit-transform: rotate(45deg);
            -webkit-perspective: 1000;
            -o-transform: rotate(45deg);
            -o-perspective: 1000;
            -ms-transform: rotate(45deg);
            -ms-perspective: 1000;
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out;
            border-bottom-right-radius: 50%;
            -moz-border-bottom-right-radius: 50%;
            -webkit-border-bottom-right-radius: 50%;
            -o-border-bottom-right-radius: 50%;
            -ms-border-bottom-right-radius: 50%;
            -moz-background-clip: "padding-box";
            -webkit-background-clip: "padding-box";
            -o-background-clip: "padding-box";
            -ms-background-clip: "padding-box"; }
          #mobile-shelf ul.primary li.main span.icon:after {
            position: absolute;
            top: 32px;
            right: 9px;
            width: 3px;
            height: 13px;
            background: #26384E;
            content: '';
            transform: rotate(-45deg);
            perspective: 1000px;
            -moz-transform: rotate(-45deg);
            -moz-perspective: 1000;
            -webkit-transform: rotate(-45deg);
            -webkit-perspective: 1000;
            -o-transform: rotate(-45deg);
            -o-perspective: 1000;
            -ms-transform: rotate(-45deg);
            -ms-perspective: 1000;
            transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -webkit-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out;
            border-bottom-left-radius: 50%;
            -moz-border-bottom-left-radius: 50%;
            -webkit-border-bottom-left-radius: 50%;
            -o-border-bottom-left-radius: 50%;
            -ms-border-bottom-left-radius: 50%;
            -moz-background-clip: "padding-box";
            -webkit-background-clip: "padding-box";
            -o-background-clip: "padding-box";
            -ms-background-clip: "padding-box"; }
      #mobile-shelf ul.primary li.main:after {
        position: absolute;
        top: calc(2rem + 10px);
        right: calc(5vw + 5px);
        width: 3px;
        height: 25px;
        background: #26384E;
        content: '';
        border-radius: 1px;
        -moz-border-radius: 1px;
        -webkit-border-radius: 1px;
        -o-border-radius: 1px;
        -ms-border-radius: 1px;
        -moz-background-clip: padding-box;
        -webkit-background-clip: padding-box;
        -o-background-clip: padding-box;
        -ms-background-clip: padding-box;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
      #mobile-shelf ul.primary li.main ul {
        display: none;
        padding-top: 1em; }
        #mobile-shelf ul.primary li.main ul li a, #mobile-shelf ul.primary li.main ul li a:active, #mobile-shelf ul.primary li.main ul li a:visited {
          text-decoration: none; }
          #mobile-shelf ul.primary li.main ul li a:hover, #mobile-shelf ul.primary li.main ul li a:focus, #mobile-shelf ul.primary li.main ul li a:active:hover, #mobile-shelf ul.primary li.main ul li a:active:focus, #mobile-shelf ul.primary li.main ul li a:visited:hover, #mobile-shelf ul.primary li.main ul li a:visited:focus {
            text-decoration: underline; }
      #mobile-shelf ul.primary li.main:hover .text:after {
        width: 100%; }
      #mobile-shelf ul.primary li.main.open:after {
        background: #A6192E; }
      #mobile-shelf ul.primary li.main.open .icon:before {
        top: 14px;
        background: #A6192E;
        transform: rotate(135deg);
        perspective: 1000px;
        -moz-transform: rotate(135deg);
        -moz-perspective: 1000;
        -webkit-transform: rotate(135deg);
        -webkit-perspective: 1000;
        -o-transform: rotate(135deg);
        -o-perspective: 1000;
        -ms-transform: rotate(135deg);
        -ms-perspective: 1000;
        border-bottom-left-radius: 50%;
        -moz-border-bottom-left-radius: 50%;
        -webkit-border-bottom-left-radius: 50%;
        -o-border-bottom-left-radius: 50%;
        -ms-border-bottom-left-radius: 50%;
        -moz-background-clip: "padding-box";
        -webkit-background-clip: "padding-box";
        -o-background-clip: "padding-box";
        -ms-background-clip: "padding-box";
        border-bottom-right-radius: 0;
        -moz-border-bottom-right-radius: 0;
        -webkit-border-bottom-right-radius: 0;
        -o-border-bottom-right-radius: 0;
        -ms-border-bottom-right-radius: 0;
        -moz-background-clip: "padding-box";
        -webkit-background-clip: "padding-box";
        -o-background-clip: "padding-box";
        -ms-background-clip: "padding-box"; }
      #mobile-shelf ul.primary li.main.open .icon:after {
        top: 14px;
        background: #A6192E;
        transform: rotate(-135deg);
        perspective: 1000px;
        -moz-transform: rotate(-135deg);
        -moz-perspective: 1000;
        -webkit-transform: rotate(-135deg);
        -webkit-perspective: 1000;
        -o-transform: rotate(-135deg);
        -o-perspective: 1000;
        -ms-transform: rotate(-135deg);
        -ms-perspective: 1000;
        border-bottom-right-radius: 50%;
        -moz-border-bottom-right-radius: 50%;
        -webkit-border-bottom-right-radius: 50%;
        -o-border-bottom-right-radius: 50%;
        -ms-border-bottom-right-radius: 50%;
        -moz-background-clip: "padding-box";
        -webkit-background-clip: "padding-box";
        -o-background-clip: "padding-box";
        -ms-background-clip: "padding-box";
        border-bottom-left-radius: 0;
        -moz-border-bottom-left-radius: 0;
        -webkit-border-bottom-left-radius: 0;
        -o-border-bottom-left-radius: 0;
        -ms-border-bottom-left-radius: 0;
        -moz-background-clip: "padding-box";
        -webkit-background-clip: "padding-box";
        -o-background-clip: "padding-box";
        -ms-background-clip: "padding-box"; }
    #mobile-shelf ul.secondary {
      margin-bottom: 2rem;
      padding: 0 5vw; }
      #mobile-shelf ul.secondary li {
        margin-bottom: 1em; }
        #mobile-shelf ul.secondary li a, #mobile-shelf ul.secondary li a:active, #mobile-shelf ul.secondary li a:visited {
          text-decoration: none;
          font-weight: 500; }
          #mobile-shelf ul.secondary li a:hover, #mobile-shelf ul.secondary li a:focus, #mobile-shelf ul.secondary li a:active:hover, #mobile-shelf ul.secondary li a:active:focus, #mobile-shelf ul.secondary li a:visited:hover, #mobile-shelf ul.secondary li a:visited:focus {
            text-decoration: underline; }
  #mobile-shelf .buttons {
    overflow: hidden;
    padding: 2rem 5vw;
    margin-bottom: 0; }
    #mobile-shelf .buttons .button, #mobile-shelf .buttons #sponsorship-levels .level form .add, #sponsorship-levels .level form #mobile-shelf .buttons .add {
      float: left;
      padding: 0;
      width: calc(50% - 5px);
      text-align: center;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      #mobile-shelf .buttons .button:first-child, #mobile-shelf .buttons #sponsorship-levels .level form .add:first-child, #sponsorship-levels .level form #mobile-shelf .buttons .add:first-child {
        margin-right: 10px; }
  #mobile-shelf #newsletter-subscribe-mobile {
    padding: 2em 0;
    background: #A6192E; }
    #mobile-shelf #newsletter-subscribe-mobile h2 {
      margin-bottom: .25em;
      line-height: 1;
      font-size: 4.3em;
      font-family: 'Archivo Narrow', sans-serif;
      text-transform: lowercase;
      color: #FFFFFF;
      stroke-width: 1px !important;
      -moz-text-stroke-color: #FFFFFF !important;
      -moz-text-fill-color: transparent !important;
      -moz-text-stroke-width: 1px !important;
      -webkit-text-stroke-color: #FFFFFF !important;
      -webkit-text-fill-color: transparent !important;
      -webkit-text-stroke-width: 1px !important;
      -o-text-stroke-color: #FFFFFF !important;
      -o-text-fill-color: transparent !important;
      -o-text-stroke-width: 1px !important;
      -ms-text-stroke-color: #FFFFFF !important;
      -ms-text-fill-color: transparent !important;
      -ms-text-stroke-width: 1px !important; }
      @media only screen and (max-width: 525px) {
        #mobile-shelf #newsletter-subscribe-mobile h2 {
          stroke-width: 0.5px;
          -moz-text-stroke-width: 0.5px !important;
          -webkit-text-stroke-width: 0.5px !important;
          -o-text-stroke-width: 0.5px !important;
          -ms-text-stroke-width: 0.5px !important; } }
    #mobile-shelf #newsletter-subscribe-mobile p {
      color: #FFFFFF;
      line-height: 1.5; }
    #mobile-shelf #newsletter-subscribe-mobile form {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 1em; }
      #mobile-shelf #newsletter-subscribe-mobile form .span {
        width: calc(50% - .25em);
        margin-left: .5em;
        margin-bottom: .5em; }
        #mobile-shelf #newsletter-subscribe-mobile form .span:first-of-type {
          margin-left: 0; }
        #mobile-shelf #newsletter-subscribe-mobile form .span:last-of-type {
          width: 100%;
          margin-left: 0; }
      #mobile-shelf #newsletter-subscribe-mobile form input {
        width: 100% !important;
        margin-bottom: 0 !important; }
      #mobile-shelf #newsletter-subscribe-mobile form label.show {
        filter: alpha(opacity=0);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -moz-opacity: 0;
        -khtml-opacity: 0;
        opacity: 0; }
      #mobile-shelf #newsletter-subscribe-mobile form button, #mobile-shelf #newsletter-subscribe-mobile form .overlay-card .bottom .level-filled, .overlay-card .bottom #mobile-shelf #newsletter-subscribe-mobile form .level-filled {
        width: 100%;
        margin-top: 1em; }
        #mobile-shelf #newsletter-subscribe-mobile form button .icon-arrow-right-stroke-long, #mobile-shelf #newsletter-subscribe-mobile form .overlay-card .bottom .level-filled .icon-arrow-right-stroke-long, .overlay-card .bottom #mobile-shelf #newsletter-subscribe-mobile form .level-filled .icon-arrow-right-stroke-long {
          display: none; }
        #mobile-shelf #newsletter-subscribe-mobile form button:hover:after, #mobile-shelf #newsletter-subscribe-mobile form .overlay-card .bottom .level-filled:hover:after, .overlay-card .bottom #mobile-shelf #newsletter-subscribe-mobile form .level-filled:hover:after {
          background-color: #26384E; }
  #mobile-shelf .contact {
    padding: 0 5vw 2em 5vw;
    background: #A6192E; }
    #mobile-shelf .contact p {
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      #mobile-shelf .contact p.mission {
        padding-top: 2rem;
        font-size: 1.1em;
        font-weight: 500;
        border-top: 1px solid #FFFFFF; }
      #mobile-shelf .contact p.address {
        margin-bottom: 1.25em;
        font-family: 'Archivo Narrow', sans-serif;
        font-size: 1.889em;
        font-weight: 700;
        line-height: 1.3; }
        #mobile-shelf .contact p.address a, #mobile-shelf .contact p.address a:active, #mobile-shelf .contact p.address a:visited {
          text-decoration: none;
          color: #FFFFFF;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased; }
          #mobile-shelf .contact p.address a:hover, #mobile-shelf .contact p.address a:focus, #mobile-shelf .contact p.address a:active:hover, #mobile-shelf .contact p.address a:active:focus, #mobile-shelf .contact p.address a:visited:hover, #mobile-shelf .contact p.address a:visited:focus {
            text-decoration: underline; }

/* --- Site Alerts --- */
#alert {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background: #A6192E;
  text-decoration: none;
  overflow: hidden;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out; }
  #alert .lucy-wrapper, #alert #layout-7030 {
    display: flex;
    height: 60px;
    justify-content: flex-start;
    align-items: center; }
    @media only screen and (max-width: 910px) {
      #alert .lucy-wrapper, #alert #layout-7030 {
        flex-wrap: wrap;
        align-items: flex-start; } }
  #alert p {
    display: inline-block;
    margin: 0;
    font-size: .889em;
    color: #FFFFFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased; }
    @media only screen and (max-width: 910px) {
      #alert p {
        display: block;
        width: 100%;
        line-height: 1.3;
        font-size: 2vw; } }
    @media only screen and (max-width: 700px) {
      #alert p {
        font-size: 2.5vw; } }
    #alert p.title {
      font-size: 1em;
      font-weight: 500; }
      @media only screen and (max-width: 910px) {
        #alert p.title {
          margin-top: auto; } }
      @media only screen and (max-width: 525px) {
        #alert p.title {
          font-size: .889em; } }
  #alert span.icon-arrow-right-stroke-long {
    margin-left: .5em;
    color: #FFFFFF;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 910px) {
      #alert span.icon-arrow-right-stroke-long {
        display: none; } }
  #alert svg {
    margin: 0 .5em; }
    @media only screen and (max-width: 910px) {
      #alert svg {
        display: none; } }
  #alert .icon-close {
    position: absolute;
    top: 50%;
    right: 1.5em;
    font-size: .8em;
    color: #FFFFFF;
    cursor: pointer;
    -moz-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
    @media only screen and (max-width: 910px) {
      #alert .icon-close {
        right: 15px; } }
    #alert .icon-close:hover {
      text-decoration: underline; }
  #alert.hide {
    top: -60px; }
  #alert:hover span {
    margin-left: 1em; }

/* --- Search Form --- */
#search-form {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 12;
  width: 100%;
  height: 60px;
  background: #FFFFFF;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  transform: translate(0, -100%);
  perspective: 1000px;
  -moz-transform: translate(0, -100%);
  -moz-perspective: 1000;
  -webkit-transform: translate(0, -100%);
  -webkit-perspective: 1000;
  -o-transform: translate(0, -100%);
  -o-perspective: 1000;
  -ms-transform: translate(0, -100%);
  -ms-perspective: 1000; }
  @media print {
    #search-form {
      display: none; } }
  #search-form.open {
    transform: translate(0, 0);
    perspective: 1000px;
    -moz-transform: translate(0, 0);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, 0);
    -webkit-perspective: 1000;
    -o-transform: translate(0, 0);
    -o-perspective: 1000;
    -ms-transform: translate(0, 0);
    -ms-perspective: 1000; }
  #search-form .lucy-wrapper, #search-form #layout-7030 {
    height: 60px; }
  #search-form label {
    position: absolute;
    top: -3px;
    left: calc(5vw + 32px);
    font-size: .7em; }
  #search-form span.icon-search, #search-form #page-search span.field-wrap:before, #page-search #search-form span.field-wrap:before {
    position: absolute;
    top: 50%;
    left: 5vw;
    color: #A6192E;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
  #search-form span.icon-close {
    position: absolute;
    top: 50%;
    right: 1.5em;
    font-size: .8em;
    cursor: pointer;
    color: #26384E;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
    @media only screen and (max-width: 910px) {
      #search-form span.icon-close {
        right: 15px; } }
    #search-form span.icon-close:hover {
      text-decoration: underline; }
  #search-form input {
    width: calc(100% - 150px);
    margin-bottom: 0;
    padding: 0;
    padding-left: 32px;
    line-height: 60px;
    font-size: 1em;
    font-family: franklin-gothic-atf, sans-serif;
    border: none;
    outline: none; }
  #search-form button, #search-form .overlay-card .bottom .level-filled, .overlay-card .bottom #search-form .level-filled {
    position: absolute;
    top: 50%;
    right: 5vw;
    height: 60px;
    line-height: 60px;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
    @media only screen and (max-width: 910px) {
      #search-form button, #search-form .overlay-card .bottom .level-filled, .overlay-card .bottom #search-form .level-filled {
        right: calc(25px + 1.5em); } }
    @media only screen and (max-width: 525px) {
      #search-form button, #search-form .overlay-card .bottom .level-filled, .overlay-card .bottom #search-form .level-filled {
        padding: 0 2em;
        font-size: .889em; } }

/* --- Mobile Menu --- */
#mobile-menu {
  position: fixed;
  z-index: 4;
  display: none;
  top: 100px;
  width: 100%;
  height: calc(100vh - 80px);
  overflow: scroll;
  background: #FFF; }
  #mobile-menu #search-form-mobile {
    width: 100%;
    background: #F9F9F9; }
    #mobile-menu #search-form-mobile input {
      width: 100%;
      padding: 25px;
      background: #F1F1F1;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
  #mobile-menu .inner {
    padding: 25px; }
    #mobile-menu .inner ul {
      margin: 0 0 1em 0 !important;
      padding: 0 !important;
      list-style-type: none; }
    #mobile-menu .inner .primary {
      font-size: 1.25em;
      font-weight: bold; }
      #mobile-menu .inner .primary a, #mobile-menu .inner .primary a:active, #mobile-menu .inner .primary a:visited, #mobile-menu .inner .primary a:hover {
        color: #26384E;
        text-decoration: none; }
      #mobile-menu .inner .primary a.button, #mobile-menu .inner .primary #sponsorship-levels .level form a.add, #sponsorship-levels .level form #mobile-menu .inner .primary a.add, #mobile-menu .inner .primary a.button:active, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:active, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:active, #mobile-menu .inner .primary a.button:visited, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:visited, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:visited, #mobile-menu .inner .primary a.button:hover, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:hover, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:hover {
        display: block;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        text-align: center;
        font-size: .5em;
        color: #FFF; }
        #mobile-menu .inner .primary a.button:hover, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:hover, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:hover, #mobile-menu .inner .primary a.button:active:hover, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:active:hover, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:active:hover, #mobile-menu .inner .primary a.button:visited:hover, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:visited:hover, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:visited:hover, #mobile-menu .inner .primary a.button:hover:hover, #mobile-menu .inner .primary #sponsorship-levels .level form a.add:hover:hover, #sponsorship-levels .level form #mobile-menu .inner .primary a.add:hover:hover {
          color: #FFF;
          background: #8CCDD3; }
    #mobile-menu .inner .secondary a, #mobile-menu .inner .secondary a:active, #mobile-menu .inner .secondary a:visited, #mobile-menu .inner .secondary a:hover {
      color: #26384E;
      text-decoration: none; }
  @media only screen and (max-width: 525px) {
    #mobile-menu {
      top: 80px; } }

/* --- Add to Cart Popup --- */
#cart-add-popup {
  position: fixed;
  z-index: 10;
  width: 300px;
  padding: 2em;
  background: #FFF;
  text-align: left;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  filter: alpha(opacity=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box; }
  #cart-add-popup label {
    display: block;
    margin-bottom: .25em;
    font-weight: bold;
    font-size: .75em; }
  #cart-add-popup p {
    margin-bottom: 0;
    font-size: .8em;
    line-height: 1.5;
    text-transform: none; }
    #cart-add-popup p.title {
      margin-bottom: 0;
      padding-top: 1em;
      border-top: 1px solid #D9DCE0;
      font-weight: 500; }
    #cart-add-popup p.subtitle {
      margin-bottom: 1em;
      padding-bottom: 1em;
      border-bottom: 1px solid #D9DCE0; }
    #cart-add-popup p.subtotal {
      margin-bottom: 1.5em;
      font-weight: bold;
      font-size: .9em; }
  #cart-add-popup .button, #cart-add-popup #sponsorship-levels .level form .add, #sponsorship-levels .level form #cart-add-popup .add {
    display: inline-block;
    width: 100%; }

/* --- Page Structure --- */
#page-header {
  overflow: hidden;
  position: relative;
  padding: calc(2em + 140px) 0 2em 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #F9F9F9; }
  @media only screen and (max-width: 910px) {
    #page-header {
      padding: calc(2em + 80px) 0 2em 0; } }
  #page-header .bg {
    display: none !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    @media only screen and (max-width: 910px) {
      #page-header .bg {
        display: none !important; } }
  #page-header .header-gradient {
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0; }
  #page-header h1 {
    font-size: 5vw;
    margin-bottom: .25em; }
    @media only screen and (max-width: 1440px) {
      #page-header h1 {
        font-size: 6vw; } }
    @media only screen and (max-width: 1125px) {
      #page-header h1 {
        font-size: 7vw; } }
    @media only screen and (max-width: 910px) {
      #page-header h1 {
        order: 1;
        margin-bottom: .5em;
        font-size: 9vw;
        line-height: 1; } }
    @media only screen and (max-width: 525px) {
      #page-header h1 {
        font-size: 12vw; } }
  @media only screen and (max-width: 910px) {
    #page-header #trail {
      order: 2; } }
  @media only screen and (max-width: 910px) {
    #page-header .lucy-wrapper, #page-header #layout-7030 {
      display: flex;
      flex-direction: column; } }
  #page-header.has-image {
    padding: calc(10vw + 140px) 0 15vw 0; }
    @media only screen and (max-width: 910px) {
      #page-header.has-image {
        padding: calc(45vw + 80px) 0 2em 0; } }
    @media only screen and (max-width: 525px) {
      #page-header.has-image {
        padding: calc(40vw + 80px) 0 2em 0; } }
    #page-header.has-image .bg {
      display: block !important; }
      #page-header.has-image .bg.tablet-only {
        display: none !important; }
      @media only screen and (max-width: 910px) {
        #page-header.has-image .bg {
          display: none !important; }
          #page-header.has-image .bg.tablet-only {
            display: block !important; } }
    #page-header.has-image .lucy-wrapper, #page-header.has-image #layout-7030 {
      position: relative;
      z-index: 1;
      text-align: center; }
      @media only screen and (max-width: 910px) {
        #page-header.has-image .lucy-wrapper, #page-header.has-image #layout-7030 {
          text-align: left; } }
    #page-header.has-image .header-gradient {
      filter: alpha(opacity=75);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
      -moz-opacity: 0.75;
      -khtml-opacity: 0.75;
      opacity: 0.75; }
      @media only screen and (max-width: 910px) {
        #page-header.has-image .header-gradient {
          filter: alpha(opacity=100);
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          -moz-opacity: 1;
          -khtml-opacity: 1;
          opacity: 1; } }
    #page-header.has-image h1 {
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    #page-header.has-image p {
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
      #page-header.has-image p:last-child {
        margin-bottom: 0; }
    #page-header.has-image #trail {
      text-align: center; }
      @media only screen and (max-width: 910px) {
        #page-header.has-image #trail {
          text-align: left; } }
      #page-header.has-image #trail a, #page-header.has-image #trail a:active, #page-header.has-image #trail a:visited, #page-header.has-image #trail span {
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
      #page-header.has-image #trail li:after {
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }

#trail ul {
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
  list-style-type: none;
  color: #FFF; }
  @media only screen and (max-width: 910px) {
    #trail ul {
      line-height: 1.3; } }
  #trail ul li {
    position: relative;
    display: inline-block;
    line-height: 1; }
    #trail ul li a, #trail ul li a:active, #trail ul li a:visited, #trail ul li span {
      color: #A6192E;
      font-size: .6em;
      font-weight: 500;
      text-decoration: none;
      text-transform: uppercase;
      letter-spacing: .2em; }
      @media only screen and (max-width: 910px) {
        #trail ul li a, #trail ul li a:active, #trail ul li a:visited, #trail ul li span {
          font-size: .556em; } }
      #trail ul li a:hover, #trail ul li a:active:hover, #trail ul li a:visited:hover, #trail ul li span:hover {
        text-decoration: underline; }
    #trail ul li span:hover {
      text-decoration: none; }
    #trail ul li:after {
      display: inline-block;
      margin: 0 .6em 0 .4em;
      content: '/';
      font-size: .7em;
      color: #A6192E; }
      @media only screen and (max-width: 910px) {
        #trail ul li:after {
          font-size: .6em; } }
    #trail ul li:last-child:after {
      display: none; }

#page-nav {
  position: relative;
  z-index: 2;
  border-bottom: 1px solid #D9DCE0;
  overflow: hidden; }
  #page-nav ul.main {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0;
    list-style-type: none;
    white-space: nowrap; }
    #page-nav ul.main li {
      position: relative;
      display: inline-block;
      margin-right: 54px; }
      #page-nav ul.main li a, #page-nav ul.main li a:active, #page-nav ul.main li a:visited {
        position: relative;
        display: inline-block;
        padding: 2em 0;
        font-size: 18px;
        font-weight: bold;
        text-decoration: none; }
        #page-nav ul.main li a.active, #page-nav ul.main li a:active.active, #page-nav ul.main li a:visited.active {
          color: #8CCDD3; }
        #page-nav ul.main li a:hover, #page-nav ul.main li a:active:hover, #page-nav ul.main li a:visited:hover {
          color: #8CCDD3; }
      #page-nav ul.main li.sub:after {
        position: absolute;
        top: 50%;
        right: 14.4px;
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        font-size: 8px;
        text-transform: none;
        color: #8CCDD3;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: "\e93e" !important;
        transform: translate(0, -50%);
        perspective: 1000px;
        -moz-transform: translate(0, -50%);
        -moz-perspective: 1000;
        -webkit-transform: translate(0, -50%);
        -webkit-perspective: 1000;
        -o-transform: translate(0, -50%);
        -o-perspective: 1000;
        -ms-transform: translate(0, -50%);
        -ms-perspective: 1000; }
      #page-nav ul.main li#nav-more {
        display: none; }
        #page-nav ul.main li#nav-more.hidden {
          visibility: hidden; }
      #page-nav ul.main li ul {
        position: absolute;
        top: 100%;
        left: 0;
        display: none;
        width: auto;
        height: auto;
        margin: 0 !important;
        padding: 18px 36px;
        background: #FFF;
        white-space: nowrap;
        box-shadow: 0 10px 10px 0 rgba(51, 51, 51, 0.1);
        -moz-box-shadow: 0 10px 10px 0 rgba(51, 51, 51, 0.1);
        -webkit-box-shadow: 0 10px 10px 0 rgba(51, 51, 51, 0.1);
        -o-box-shadow: 0 10px 10px 0 rgba(51, 51, 51, 0.1);
        -ms-box-shadow: 0 10px 10px 0 rgba(51, 51, 51, 0.1); }
        #page-nav ul.main li ul li {
          display: block;
          margin-bottom: 9px; }
          #page-nav ul.main li ul li a, #page-nav ul.main li ul li a:active, #page-nav ul.main li ul li a:visited {
            padding: 0 !important;
            line-height: 1.3;
            font-size: 16.2px;
            color: #26384E !important; }
            #page-nav ul.main li ul li a:hover, #page-nav ul.main li ul li a:active:hover, #page-nav ul.main li ul li a:visited:hover {
              color: #8CCDD3 !important; }
            #page-nav ul.main li ul li a:after, #page-nav ul.main li ul li a:active:after, #page-nav ul.main li ul li a:visited:after {
              display: none !important; }
          #page-nav ul.main li ul li ul, #page-nav ul.main li ul li:after {
            display: none; }
      #page-nav ul.main li:hover {
        color: #8CCDD3 !important; }
        #page-nav ul.main li:hover a, #page-nav ul.main li:hover a:active, #page-nav ul.main li:hover a:visited {
          color: #8CCDD3; }
        #page-nav ul.main li:hover ul {
          display: block; }

#layout-7030 {
  font-size: 0; }
  @media only screen and (max-width: 910px) {
    #layout-7030 {
      padding: 0; } }
  #layout-7030.no-sidebar #content-7030 {
    width: 100%;
    margin-left: 0; }
  #layout-7030 #content-full {
    position: relative;
    z-index: 1;
    padding: 5vw 0;
    font-size: 18px; }
    @media only screen and (max-width: 910px) {
      #layout-7030 #content-full {
        padding: 5vw;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; } }
  #layout-7030 #content-7030 {
    position: relative;
    z-index: 1;
    display: inline-block;
    width: 70%;
    margin-left: 30%;
    padding: 5vw 0;
    font-size: 18px;
    vertical-align: top; }
    @media only screen and (max-width: 910px) {
      #layout-7030 #content-7030 {
        margin-left: 0;
        padding: 5vw;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; } }
    #layout-7030 #content-7030 .lucy-wrapper, #layout-7030 #content-7030 #layout-7030 {
      width: 100% !important;
      padding: 0 !important; }
    #layout-7030 #content-7030 p a, #layout-7030 #content-7030 ul li a, #layout-7030 #content-7030 a:not(.button) {
      color: #A6192E; }
  #layout-7030 aside {
    position: absolute;
    z-index: 2;
    display: inline-block;
    width: 20%;
    margin-right: 5%;
    padding: 5vw 0;
    font-size: 18px;
    vertical-align: top;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    @media only screen and (max-width: 910px) {
      #layout-7030 aside {
        margin: 0;
        padding: 0;
        border-bottom: 1px solid #D9DCE0; } }
    #layout-7030 aside .lucy-wrapper, #layout-7030 aside #layout-7030 {
      width: 100%;
      margin: 0 !important;
      padding: 0 !important; }
    @media only screen and (max-width: 910px) {
      #layout-7030 aside .back-to {
        display: none;
        margin: 10px 0;
        padding: 0 5vw;
        font-size: 1em !important;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        #layout-7030 aside .back-to.tablet-only {
          display: block !important; } }
    @media only screen and (max-width: 525px) {
      #layout-7030 aside .back-to {
        padding: 0 25px; } }
    #layout-7030 aside #mobile-nav-toggle {
      display: none;
      position: relative;
      padding: 15px 5vw;
      color: #1B2532;
      font-size: 1rem;
      cursor: pointer;
      background: #FFFFFF url(../images/dropdown-arrow.png) no-repeat calc(100% - 5vw) 50%;
      background-size: 12px 16px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
      @media only screen and (max-width: 910px) {
        #layout-7030 aside #mobile-nav-toggle {
          display: block; } }
      @media only screen and (max-width: 525px) {
        #layout-7030 aside #mobile-nav-toggle {
          padding: 15px 25px;
          background: #FFFFFF url(../images/dropdown-arrow.png) no-repeat calc(100% - 25px) 50%;
          background-size: 12px 16px; } }
    @media only screen and (max-width: 910px) {
      #layout-7030 aside #vertical-nav-content {
        position: relative;
        top: 100%;
        display: none;
        width: 100%;
        max-height: 75vh;
        border-top: none;
        background: #FFF;
        overflow: auto;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        #layout-7030 aside #vertical-nav-content .subtitle {
          display: none; }
        #layout-7030 aside #vertical-nav-content ul {
          padding: 0 5vw 1em 5vw;
          border-top: none; }
          #layout-7030 aside #vertical-nav-content ul li {
            margin-bottom: 0;
            border-bottom: none; } }
    @media only screen and (max-width: 525px) {
      #layout-7030 aside #vertical-nav-content ul {
        padding: 0 25px 1em 25px; } }
    #layout-7030 aside ul {
      padding: 0;
      list-style-type: none; }
      #layout-7030 aside ul li {
        display: block; }
        #layout-7030 aside ul li a, #layout-7030 aside ul li a:active, #layout-7030 aside ul li a:visited {
          display: block;
          padding: 1em 0 calc(1em - 2px) 0;
          font-size: .899em;
          color: #375170;
          text-decoration: none; }
          @media only screen and (max-width: 1125px) {
            #layout-7030 aside ul li a, #layout-7030 aside ul li a:active, #layout-7030 aside ul li a:visited {
              font-size: .778em; } }
          @media only screen and (max-width: 910px) {
            #layout-7030 aside ul li a, #layout-7030 aside ul li a:active, #layout-7030 aside ul li a:visited {
              font-size: .889em; } }
          #layout-7030 aside ul li a span, #layout-7030 aside ul li a:active span, #layout-7030 aside ul li a:visited span {
            display: inline-block;
            position: relative; }
            #layout-7030 aside ul li a span:after, #layout-7030 aside ul li a:active span:after, #layout-7030 aside ul li a:visited span:after {
              position: absolute;
              bottom: -4px;
              left: 0;
              width: 0;
              height: 2px;
              background-color: #A6192E;
              content: '';
              transition: all 0.2s ease-in-out;
              -moz-transition: all 0.2s ease-in-out;
              -webkit-transition: all 0.2s ease-in-out;
              -o-transition: all 0.2s ease-in-out;
              -ms-transition: all 0.2s ease-in-out; }
          #layout-7030 aside ul li a.active, #layout-7030 aside ul li a:hover, #layout-7030 aside ul li a:active.active, #layout-7030 aside ul li a:active:hover, #layout-7030 aside ul li a:visited.active, #layout-7030 aside ul li a:visited:hover {
            color: #26384E; }
            #layout-7030 aside ul li a.active span:after, #layout-7030 aside ul li a:hover span:after, #layout-7030 aside ul li a:active.active span:after, #layout-7030 aside ul li a:active:hover span:after, #layout-7030 aside ul li a:visited.active span:after, #layout-7030 aside ul li a:visited:hover span:after {
              width: 100%; }
          #layout-7030 aside ul li a.active, #layout-7030 aside ul li a:active.active, #layout-7030 aside ul li a:visited.active {
            font-weight: 500; }
        #layout-7030 aside ul li:last-child {
          margin-bottom: 0; }
    #layout-7030 aside #sidebar-callout {
      position: relative;
      display: block;
      margin-top: 3em;
      padding: 2em 2em 6em 2em;
      text-decoration: none;
      background: #A6192E; }
      @media only screen and (max-width: 1440px) {
        #layout-7030 aside #sidebar-callout {
          padding: 2vw 2vw 6em 2vw; } }
      @media only screen and (max-width: 910px) {
        #layout-7030 aside #sidebar-callout {
          display: none; } }
      #layout-7030 aside #sidebar-callout h3, #layout-7030 aside #sidebar-callout p {
        color: #FFFFFF; }
      #layout-7030 aside #sidebar-callout h3 {
        margin-bottom: .25em; }
        @media only screen and (max-width: 1440px) {
          #layout-7030 aside #sidebar-callout h3 {
            font-size: 2.5vw; } }
      #layout-7030 aside #sidebar-callout p {
        margin-bottom: 0;
        font-size: .75em; }
        @media only screen and (max-width: 1125px) {
          #layout-7030 aside #sidebar-callout p {
            font-size: .667em; } }
      #layout-7030 aside #sidebar-callout svg {
        position: absolute;
        bottom: -25px;
        left: 2em; }
        @media only screen and (max-width: 1440px) {
          #layout-7030 aside #sidebar-callout svg {
            left: 2vw; } }
        #layout-7030 aside #sidebar-callout svg g {
          fill: transparent;
          transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -webkit-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          -ms-transition: all 0.2s ease-in-out; }
      #layout-7030 aside #sidebar-callout:hover {
        background: #A6192E; }
        #layout-7030 aside #sidebar-callout:hover g {
          fill: #FFFFFF; }
  @media only screen and (max-width: 910px) {
    #layout-7030 aside, #layout-7030 #content-7030 {
      width: 100%; }
    #layout-7030 aside {
      margin-right: 0; }
      #layout-7030 aside ul:last-child {
        margin-bottom: 0; } }

/* --- Testimonial --- */
#footer-testimonial {
  padding: 12em 0 5em 0;
  text-align: center;
  background: #FFFFFF url(../images/quotation.png) no-repeat center 6em;
  background-size: 60px auto; }
  @media only screen and (max-width: 910px) {
    #footer-testimonial {
      padding: 6em 0 3em 0;
      background: #FFFFFF url(../images/quotation.png) no-repeat center 3em;
      background-size: 40px auto; } }
  #footer-testimonial p:first-child {
    margin-bottom: 1em;
    padding: 0 2em;
    font-size: 1.6em;
    line-height: 2; }
    @media only screen and (max-width: 1125px) {
      #footer-testimonial p:first-child {
        font-size: 2vw; } }
    @media only screen and (max-width: 910px) {
      #footer-testimonial p:first-child {
        padding: 0;
        font-size: 3.5vw; } }
    @media only screen and (max-width: 525px) {
      #footer-testimonial p:first-child {
        font-size: 4vw; } }
  #footer-testimonial .author span:first-child {
    font-size: .9em;
    line-height: 1.625;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 500;
    color: #A6192E; }
    @media only screen and (max-width: 1125px) {
      #footer-testimonial .author span:first-child {
        font-size: 1.3vw; } }
    @media only screen and (max-width: 910px) {
      #footer-testimonial .author span:first-child {
        font-size: .7em; } }
  #footer-testimonial .author span:last-child {
    font-size: .8em; }
    @media only screen and (max-width: 1125px) {
      #footer-testimonial .author span:last-child {
        font-size: 1.3vw; } }
    @media only screen and (max-width: 910px) {
      #footer-testimonial .author span:last-child {
        font-size: .7em; } }

/* --- Social --- */
#footer-social {
  padding: 5em 0;
  background: #26384E; }
  @media only screen and (max-width: 910px) {
    #footer-social {
      padding: 3em 0; } }
  @media only screen and (max-width: 700px) {
    #footer-social {
      padding: 2em 0; } }
  #footer-social .header-wrap {
    display: flex;
    margin-bottom: 1.5em;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 910px) {
      #footer-social .header-wrap {
        display: block;
        text-align: center; } }
    #footer-social .header-wrap .sub-header {
      color: #8CCDD3; }
    #footer-social .header-wrap h2 {
      margin-bottom: 0;
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      @media only screen and (max-width: 1440px) {
        #footer-social .header-wrap h2 {
          font-size: 3.5em; } }
      @media only screen and (max-width: 1125px) {
        #footer-social .header-wrap h2 {
          font-size: 5vw; } }
      @media only screen and (max-width: 910px) {
        #footer-social .header-wrap h2 {
          font-size: 7vw; } }
      @media only screen and (max-width: 525px) {
        #footer-social .header-wrap h2 {
          font-size: 7.5vw; } }
    #footer-social .header-wrap .action {
      font-weight: 500;
      text-decoration: none; }
      @media only screen and (max-width: 910px) {
        #footer-social .header-wrap .action {
          display: none; } }
      #footer-social .header-wrap .action span {
        display: inline-block;
        margin-right: .5em;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
      #footer-social .header-wrap .action:hover span {
        margin-right: 1em; }
    #footer-social .header-wrap a, #footer-social .header-wrap a:active, #footer-social .header-wrap a:visited {
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
  #footer-social .content {
    display: grid;
    width: 100%;
    color: #FFFFFF;
    grid-template-columns: 50% 20px 1fr 20px 1fr 20px 1fr;
    grid-template-rows: auto 20px auto;
    grid-template-areas: "twitter . instagram1 . instagram2 . instagram3" "twitter . . . . . ." "twitter . instagram4 . instagram5 . instagram6"; }
    @media only screen and (max-width: 1125px) {
      #footer-social .content {
        grid-template-columns: 50% 20px 1fr 20px 1fr;
        grid-template-rows: auto 20px auto;
        grid-template-areas: "twitter . instagram1 . instagram2" "twitter . . . ." "twitter . instagram3 . instagram4"; } }
    @media only screen and (max-width: 910px) {
      #footer-social .content {
        display: block; } }
    #footer-social .content .twitter {
      display: block;
      position: relative;
      grid-area: twitter;
      padding: 2em 2em 5em 2em;
      background: #1A283A;
      text-decoration: none; }
      @media only screen and (max-width: 910px) {
        #footer-social .content .twitter {
          margin-bottom: 20px; } }
      #footer-social .content .twitter p {
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
        #footer-social .content .twitter p a {
          text-decoration: none;
          color: #FFF;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased; }
        #footer-social .content .twitter p.body {
          font-size: .889em;
          line-height: 2.3; }
          @media only screen and (max-width: 1125px) {
            #footer-social .content .twitter p.body {
              font-size: 1.5vw; } }
          @media only screen and (max-width: 910px) {
            #footer-social .content .twitter p.body {
              font-size: .889em; } }
          #footer-social .content .twitter p.body a {
            color: #8CCDD3; }
            #footer-social .content .twitter p.body a:hover {
              text-decoration: underline; }
      #footer-social .content .twitter .bottom {
        position: absolute;
        display: flex;
        justify-content: space-between;
        align-items: center;
        bottom: 2em;
        left: 2em;
        width: calc(100% - 4em);
        padding-top: 1.5em;
        border-top: 1px solid rgba(217, 220, 224, 0.35); }
        #footer-social .content .twitter .bottom .date {
          margin-bottom: 0;
          line-height: 1em;
          font-size: .8125em;
          overflow: hidden; }
          #footer-social .content .twitter .bottom .date a, #footer-social .content .twitter .bottom .date a:active, #footer-social .content .twitter .bottom .date a:visited {
            color: #FFFFFF;
            -moz-font-smoothing: antialiased;
            -webkit-font-smoothing: antialiased;
            -o-font-smoothing: antialiased;
            -ms-font-smoothing: antialiased; }
        #footer-social .content .twitter .bottom a {
          text-decoration: none !important; }
        #footer-social .content .twitter .bottom [class*='icon'] {
          color: #FFFFFF;
          font-size: 1.3em;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased;
          transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -webkit-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          -ms-transition: all 0.2s ease-in-out; }
          #footer-social .content .twitter .bottom [class*='icon']:hover {
            color: #8CCDD3; }
    #footer-social .content .instagram {
      position: relative;
      display: block;
      padding-bottom: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
      @media only screen and (max-width: 910px) {
        #footer-social .content .instagram {
          display: none; } }
      #footer-social .content .instagram:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(166, 25, 46, 0.5);
        content: '';
        filter: alpha(opacity=0);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -moz-opacity: 0;
        -khtml-opacity: 0;
        opacity: 0;
        transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -webkit-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        -ms-transition: all 0.2s ease-in-out; }
      #footer-social .content .instagram:after {
        position: absolute;
        bottom: 1em;
        right: 1em;
        content: "\e970" !important;
        color: #FFFFFF; }
      #footer-social .content .instagram:hover:before {
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1; }
    #footer-social .content :nth-child(2) {
      order: 1;
      grid-area: instagram1; }
    #footer-social .content :nth-child(3) {
      order: 2;
      grid-area: instagram2; }
    #footer-social .content :nth-child(4) {
      order: 3;
      grid-area: instagram3; }
    #footer-social .content :nth-child(5) {
      order: 4;
      grid-area: instagram4; }
    #footer-social .content :nth-child(6) {
      order: 5;
      grid-area: instagram5; }
    #footer-social .content :nth-child(7) {
      order: 6;
      grid-area: instagram6; }
  #footer-social .mobile-insta {
    overflow: hidden; }
  #footer-social .instagram.tablet-only {
    position: relative;
    float: left;
    width: calc(50% - (20px / 2));
    margin-right: 20px;
    margin-bottom: 20px;
    padding-bottom: 45vw;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    #footer-social .instagram.tablet-only:nth-of-type(even) {
      margin-right: 0; }
    #footer-social .instagram.tablet-only:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(166, 25, 46, 0.5);
      content: '';
      filter: alpha(opacity=0);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -moz-opacity: 0;
      -khtml-opacity: 0;
      opacity: 0;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    #footer-social .instagram.tablet-only:after {
      position: absolute;
      bottom: 1em;
      right: 1em;
      content: "\e970" !important;
      color: #FFFFFF; }
    #footer-social .instagram.tablet-only:hover:before {
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }

/* --- Footer Callouts --- */
#footer-callouts {
  padding-bottom: 5em;
  background: #FFFFFF; }
  @media only screen and (max-width: 910px) {
    #footer-callouts {
      padding-bottom: 3em; } }
  @media only screen and (max-width: 700px) {
    #footer-callouts {
      padding-bottom: 0;
      background: #F9F9F9; } }
  #footer-callouts .lucy-wrapper, #footer-callouts #layout-7030 {
    display: flex; }
    @media only screen and (max-width: 700px) {
      #footer-callouts .lucy-wrapper, #footer-callouts #layout-7030 {
        display: block;
        padding: 0; } }
  #footer-callouts a, #footer-callouts a:active, #footer-callouts a:visited {
    flex: 0 0 calc(33.333% - (5em / 3));
    margin-right: 2.5em;
    text-decoration: none;
    background: #F9F9F9; }
    @media only screen and (max-width: 700px) {
      #footer-callouts a, #footer-callouts a:active, #footer-callouts a:visited {
        display: block;
        width: 100%;
        margin-right: 0;
        padding: 2em 5vw;
        border-top: 1px solid #D9DCE0;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        #footer-callouts a :last-child, #footer-callouts a:active :last-child, #footer-callouts a:visited :last-child {
          margin-bottom: 0 !important; } }
    @media only screen and (max-width: 525px) {
      #footer-callouts a, #footer-callouts a:active, #footer-callouts a:visited {
        padding: 1.5em 25px; } }
    #footer-callouts a:last-child, #footer-callouts a:active:last-child, #footer-callouts a:visited:last-child {
      margin-right: 0; }
    #footer-callouts a .image, #footer-callouts a:active .image, #footer-callouts a:visited .image {
      overflow: hidden; }
      #footer-callouts a .image img, #footer-callouts a:active .image img, #footer-callouts a:visited .image img {
        display: block;
        width: 100%;
        transition: transform 0.2s ease-in-out;
        -moz-transition: transform 0.2s ease-in-out;
        -webkit-transition: transform 0.2s ease-in-out;
        -o-transition: transform 0.2s ease-in-out;
        -ms-transition: transform 0.2s ease-in-out; }
    #footer-callouts a svg, #footer-callouts a path, #footer-callouts a:active svg, #footer-callouts a:active path, #footer-callouts a:visited svg, #footer-callouts a:visited path {
      fill: transparent;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
    #footer-callouts a p, #footer-callouts a:active p, #footer-callouts a:visited p {
      padding: 0 2rem;
      text-align: center; }
      #footer-callouts a p.title, #footer-callouts a:active p.title, #footer-callouts a:visited p.title {
        margin-bottom: .5em;
        padding-top: 1.5rem;
        line-height: 1.45;
        font-weight: 500;
        font-size: 1.5em; }
        @media only screen and (max-width: 1125px) {
          #footer-callouts a p.title, #footer-callouts a:active p.title, #footer-callouts a:visited p.title {
            font-size: 1.3em; } }
        @media only screen and (max-width: 910px) {
          #footer-callouts a p.title, #footer-callouts a:active p.title, #footer-callouts a:visited p.title {
            font-size: 2.3vw; } }
        @media only screen and (max-width: 700px) {
          #footer-callouts a p.title, #footer-callouts a:active p.title, #footer-callouts a:visited p.title {
            font-size: 1.3em; } }
      #footer-callouts a p.body, #footer-callouts a:active p.body, #footer-callouts a:visited p.body {
        padding: 0 3rem;
        font-size: .8em;
        line-height: 1.875; }
        @media only screen and (max-width: 1125px) {
          #footer-callouts a p.body, #footer-callouts a:active p.body, #footer-callouts a:visited p.body {
            padding: 0 1.5vw; } }
        @media only screen and (max-width: 910px) {
          #footer-callouts a p.body, #footer-callouts a:active p.body, #footer-callouts a:visited p.body {
            font-size: .7em; } }
        @media only screen and (max-width: 700px) {
          #footer-callouts a p.body, #footer-callouts a:active p.body, #footer-callouts a:visited p.body {
            font-size: .889em; } }
      #footer-callouts a p:last-child, #footer-callouts a:active p:last-child, #footer-callouts a:visited p:last-child {
        margin-bottom: 1em; }
    #footer-callouts a .actions, #footer-callouts a:active .actions, #footer-callouts a:visited .actions {
      padding: 2rem;
      line-height: 1;
      border-top: 1px solid #D9DCE0; }
    #footer-callouts a:hover .image img, #footer-callouts a:active:hover .image img, #footer-callouts a:visited:hover .image img {
      transform: scale(1.03);
      perspective: 1000px;
      -moz-transform: scale(1.03);
      -moz-perspective: 1000;
      -webkit-transform: scale(1.03);
      -webkit-perspective: 1000;
      -o-transform: scale(1.03);
      -o-perspective: 1000;
      -ms-transform: scale(1.03);
      -ms-perspective: 1000; }
    #footer-callouts a:hover svg, #footer-callouts a:hover path, #footer-callouts a:active:hover svg, #footer-callouts a:active:hover path, #footer-callouts a:visited:hover svg, #footer-callouts a:visited:hover path {
      fill: #A6192E; }

/* --- Support Callout --- */
#footer-support-callout {
  padding: 6em 0;
  background: #8CCDD3;
  -moz-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased; }
  @media only screen and (max-width: 1125px) {
    #footer-support-callout {
      padding: 5em 0; } }
  @media only screen and (max-width: 910px) {
    #footer-support-callout {
      padding: 4em 0; } }
  @media only screen and (max-width: 525px) {
    #footer-support-callout {
      padding: 3em 0; } }
  #footer-support-callout h2, #footer-support-callout p, #footer-support-callout p.subtitle {
    color: #FFF; }
  #footer-support-callout h2 {
    margin-bottom: 0; }
  #footer-support-callout .span14 p {
    position: absolute;
    top: 50%;
    left: 1em;
    width: calc(100% - 1em);
    margin: 0;
    padding-right: 1em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    transform: translate(0, -50%);
    perspective: 1000px;
    -moz-transform: translate(0, -50%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -50%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -50%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -50%);
    -ms-perspective: 1000; }
  #footer-support-callout .button, #footer-support-callout #sponsorship-levels .level form .add, #sponsorship-levels .level form #footer-support-callout .add {
    display: block;
    width: 100%;
    margin-top: .5em;
    padding-left: 0;
    padding-right: 0;
    text-align: center;
    color: #8CCDD3;
    background-color: #FFF; }
    #footer-support-callout .button:hover, #footer-support-callout #sponsorship-levels .level form .add:hover, #sponsorship-levels .level form #footer-support-callout .add:hover {
      color: #FFF;
      background: #8CCDD3; }
  #footer-support-callout .border-right {
    border-color: rgba(255, 255, 255, 0.25); }
  @media only screen and (max-width: 1125px) {
    #footer-support-callout .border-right {
      border: none; }
    #footer-support-callout h2 {
      font-size: 2.5em; } }
  @media only screen and (max-width: 910px) {
    #footer-support-callout [class*='span'] {
      width: 100% !important; }
    #footer-support-callout h2 {
      margin-bottom: .5em; }
    #footer-support-callout .span14 p {
      position: relative;
      top: auto;
      left: auto;
      margin: 0 0 1em 0;
      transform: translate(0, 0);
      perspective: 1000px;
      -moz-transform: translate(0, 0);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, 0);
      -webkit-perspective: 1000;
      -o-transform: translate(0, 0);
      -o-perspective: 1000;
      -ms-transform: translate(0, 0);
      -ms-perspective: 1000; } }

/* --- Footer --- */
footer {
  padding: 5em 0 0 0;
  background: #A6192E; }
  @media only screen and (max-width: 910px) {
    footer {
      padding: 3em 0 0 0; } }
  @media only screen and (max-width: 700px) {
    footer {
      padding: 2em 0 0 0; } }
  footer.in-cart {
    padding-top: 0; }
    @media only screen and (max-width: 910px) {
      footer.in-cart {
        text-align: center; }
        footer.in-cart .copyright p {
          margin-bottom: 0;
          padding: 20px 0; } }
  footer #quick-nav {
    display: none;
    overflow: visible;
    width: 100%;
    margin-bottom: 3em; }
    @media only screen and (max-width: 910px) {
      footer #quick-nav {
        display: block; } }
    @media only screen and (max-width: 525px) {
      footer #quick-nav {
        margin-bottom: 2em; } }
    footer #quick-nav .span {
      float: none; }
    footer #quick-nav .span, footer #quick-nav select {
      width: 100%;
      margin-bottom: 0 !important; }
    footer #quick-nav select {
      height: 60px;
      background-color: #F9F9F9;
      border: none;
      font-family: 'Archivo Narrow', sans-serif;
      border-radius: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      -o-border-radius: 0;
      -ms-border-radius: 0;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
  footer .links {
    display: flex;
    margin-bottom: 4em;
    padding-bottom: 4em;
    justify-content: space-between;
    border-bottom: 1px solid #FFFFFF; }
    @media only screen and (max-width: 910px) {
      footer .links {
        display: none; } }
    footer .links ul {
      width: calc((100% / 6) - (3vw * 5) / 6);
      margin-left: 3vw;
      margin-bottom: 0;
      padding: 0;
      list-style-type: none;
      color: #FFFFFF; }
      footer .links ul:first-of-type {
        margin-left: 0; }
      footer .links ul li {
        margin-bottom: 1em;
        line-height: 1.5; }
        @media only screen and (max-width: 1440px) {
          footer .links ul li {
            font-size: 1.3vw; } }
        footer .links ul li:first-child, footer .links ul li.feature {
          font-weight: 700;
          font-size: 1em; }
          @media only screen and (max-width: 1440px) {
            footer .links ul li:first-child, footer .links ul li.feature {
              font-size: 1.5vw; } }
        footer .links ul li:last-of-type {
          margin-bottom: 0; }
        footer .links ul li a, footer .links ul li a:active, footer .links ul li a:visited {
          text-decoration: none;
          color: #FFFFFF;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased; }
          footer .links ul li a:hover, footer .links ul li a:active:hover, footer .links ul li a:visited:hover {
            text-decoration: underline; }
  footer .contact {
    display: flex;
    padding-bottom: 10em;
    justify-content: space-between;
    border-bottom: 1px solid #FFFFFF; }
    @media only screen and (max-width: 1125px) {
      footer .contact {
        padding-bottom: 5em; } }
    @media only screen and (max-width: 910px) {
      footer .contact {
        flex-wrap: wrap;
        padding-bottom: 2em;
        border-bottom: none; } }
    footer .contact .address {
      margin-bottom: 0;
      font-size: 4em;
      font-family: 'Archivo Narrow', sans-serif;
      font-weight: 700;
      line-height: 1.2;
      white-space: nowrap;
      color: #FFFFFF;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased; }
      @media only screen and (max-width: 1440px) {
        footer .contact .address {
          font-size: 5vw; } }
      @media only screen and (max-width: 910px) {
        footer .contact .address {
          order: 2;
          font-size: 7vw; } }
      @media only screen and (max-width: 525px) {
        footer .contact .address {
          font-size: 1.8em; } }
      footer .contact .address a, footer .contact .address a:active, footer .contact .address a:visited {
        text-decoration: none;
        color: #FFFFFF;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
        footer .contact .address a:hover, footer .contact .address a:active:hover, footer .contact .address a:visited:hover {
          text-decoration: underline; }
    footer .contact div {
      width: 35%; }
      @media only screen and (max-width: 910px) {
        footer .contact div {
          width: 100%;
          order: 1; }
          footer .contact div ul.social-icons {
            display: none; } }
      footer .contact div p {
        color: #FFFFFF;
        font-size: 1.35em;
        font-weight: 500;
        line-height: 2;
        -moz-font-smoothing: antialiased;
        -webkit-font-smoothing: antialiased;
        -o-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased; }
        @media only screen and (max-width: 1440px) {
          footer .contact div p {
            font-size: 1.5vw; } }
        @media only screen and (max-width: 910px) {
          footer .contact div p {
            font-size: 3vw;
            font-weight: 400; } }
        @media only screen and (max-width: 525px) {
          footer .contact div p {
            font-size: 1em; } }
    footer .contact .social-icons.tablet-only {
      width: 100%;
      order: 3;
      margin-top: 2em !important; }
      @media only screen and (max-width: 910px) {
        footer .contact .social-icons.tablet-only {
          display: flex !important; } }
  footer .copyright {
    display: flex;
    padding: 3em 0;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 910px) {
      footer .copyright {
        flex-wrap: wrap;
        width: calc(100% + 10vw);
        margin-left: -5vw;
        padding: 0;
        background: #FFFFFF; } }
    @media only screen and (max-width: 525px) {
      footer .copyright {
        width: calc(100% + 50px);
        margin-left: -25px; } }
    footer .copyright a.form-bug {
      text-decoration: none;
      border-bottom: 2px solid transparent;
      -moz-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-font-smoothing: antialiased;
      -ms-font-smoothing: antialiased;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      footer .copyright a.form-bug:hover {
        border-color: #FFFFFF; }
      footer .copyright a.form-bug svg {
        width: 400px;
        height: 1.5rem; }
        footer .copyright a.form-bug svg path {
          fill: #FFF; }
      @media only screen and (max-width: 910px) {
        footer .copyright a.form-bug {
          width: 100%;
          margin-top: 10px;
          order: 2;
          text-align: center; }
          footer .copyright a.form-bug svg {
            width: 90%; }
            footer .copyright a.form-bug svg path {
              fill: #1B2532; } }
    footer .copyright p {
      margin-bottom: 0;
      color: #FFFFFF;
      font-weight: 500; }
      @media only screen and (max-width: 910px) {
        footer .copyright p {
          width: 100%;
          padding: 0 5vw 2em 5vw;
          background: #A6192E;
          color: #FFFFFF;
          -moz-font-smoothing: antialiased;
          -webkit-font-smoothing: antialiased;
          -o-font-smoothing: antialiased;
          -ms-font-smoothing: antialiased;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          -webkit-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box; } }
      @media only screen and (max-width: 525px) {
        footer .copyright p {
          padding: 0 25px 2em 25px; } }
      footer .copyright p a, footer .copyright p a:active, footer .copyright p a:visited {
        display: inline-block;
        text-decoration: none;
        color: #FFFFFF; }
        footer .copyright p a:after, footer .copyright p a:active:after, footer .copyright p a:visited:after {
          display: inline-block;
          margin: 0 .5em;
          content: ' / '; }
        footer .copyright p a:hover, footer .copyright p a:active:hover, footer .copyright p a:visited:hover {
          text-decoration: underline; }
      footer .copyright p span {
        font-weight: normal; }

/* --- Page Overlay System --- */
#page-overlay {
  position: fixed;
  z-index: 11;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.9); }

#page-overlay-content, #sponsorship-cards-content {
  position: fixed;
  z-index: 12;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  transform: translate(0, 20%);
  perspective: 1000px;
  -moz-transform: translate(0, 20%);
  -moz-perspective: 1000;
  -webkit-transform: translate(0, 20%);
  -webkit-perspective: 1000;
  -o-transform: translate(0, 20%);
  -o-perspective: 1000;
  -ms-transform: translate(0, 20%);
  -ms-perspective: 1000;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out; }
  #page-overlay-content.open, .open#sponsorship-cards-content {
    transform: translate(0, -100%);
    perspective: 1000px;
    -moz-transform: translate(0, -100%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -100%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -100%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -100%);
    -ms-perspective: 1000; }
  #page-overlay-content.leave, .leave#sponsorship-cards-content {
    transform: translate(0, -200%);
    perspective: 1000px;
    -moz-transform: translate(0, -200%);
    -moz-perspective: 1000;
    -webkit-transform: translate(0, -200%);
    -webkit-perspective: 1000;
    -o-transform: translate(0, -200%);
    -o-perspective: 1000;
    -ms-transform: translate(0, -200%);
    -ms-perspective: 1000; }

/* --- Email Signup --- */
#signup-form {
  position: fixed;
  bottom: -1000px;
  right: 2em;
  z-index: 10;
  width: 390px;
  padding: 2em;
  background: #FFFFFF;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.08);
  -moz-box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.08);
  -webkit-box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.08);
  -o-box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.08);
  -ms-box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.08); }
  @media only screen and (max-width: 525px) {
    #signup-form {
      left: 15px;
      width: auto;
      padding: 25px; } }
  #signup-form.show {
    bottom: 0; }
  #signup-form .success {
    padding-bottom: 11em;
    font-size: 1.5em; }
  #signup-form .fields {
    overflow: visible; }
  #signup-form .half, #signup-form .full {
    position: relative;
    margin-bottom: 20px; }
  #signup-form .half {
    float: left;
    position: relative;
    width: calc(50% - 10px);
    margin-right: 20px;
    padding-right: 0; }
  #signup-form .half.last {
    margin-right: 0; }
  #signup-form input {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 1em .75em;
    font-size: 18px;
    font-family: franklin-gothic-atf, sans-serif;
    border: 1px solid #D9DCE0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    #signup-form input:focus {
      border-color: #26384E;
      outline: none;
      -moz-outline: none;
      -webkit-outline: none; }
  #signup-form label {
    position: absolute;
    z-index: 1;
    top: .6em;
    left: .45em;
    display: block;
    margin-bottom: 0;
    padding: 0 .3em;
    color: #26384E;
    cursor: text;
    background: #FFFFFF;
    transition: all 0.1s ease-in-out;
    -moz-transition: all 0.1s ease-in-out;
    -webkit-transition: all 0.1s ease-in-out;
    -o-transition: all 0.1s ease-in-out;
    -ms-transition: all 0.1s ease-in-out;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0; }
    #signup-form label.show {
      top: 0px;
      z-index: 3;
      font-size: .6em;
      transform: translate(0, -50%);
      perspective: 1000px;
      -moz-transform: translate(0, -50%);
      -moz-perspective: 1000;
      -webkit-transform: translate(0, -50%);
      -webkit-perspective: 1000;
      -o-transform: translate(0, -50%);
      -o-perspective: 1000;
      -ms-transform: translate(0, -50%);
      -ms-perspective: 1000;
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }
    #signup-form label.error {
      color: #ED6A5A !important; }
    #signup-form label.fixed {
      position: relative;
      top: auto;
      left: auto;
      padding: 0;
      font-size: 16.2px;
      filter: alpha(opacity=100);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1; }
  #signup-form h4, #signup-form #lucy-checkout-fields h2, #lucy-checkout-fields #signup-form h2 {
    margin-bottom: .25em;
    font-size: 2em;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: 700; }
  #signup-form p {
    margin-bottom: 1em;
    font-size: .889em; }
  #signup-form button, #signup-form .overlay-card .bottom .level-filled, .overlay-card .bottom #signup-form .level-filled {
    width: 100%;
    margin-bottom: .5em;
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    #signup-form button:hover, #signup-form .overlay-card .bottom .level-filled:hover, .overlay-card .bottom #signup-form .level-filled:hover {
      background-color: #A6192E !important; }
  #signup-form .icon-close {
    position: absolute;
    top: 20px;
    right: 15px;
    font-size: .6em;
    color: #1B2532;
    cursor: pointer; }
    #signup-form .icon-close:hover {
      text-decoration: underline; }
  #signup-form #signup-dismiss {
    margin-bottom: 0;
    cursor: pointer;
    text-decoration: none;
    text-align: center; }
    #signup-form #signup-dismiss a {
      text-decoration: none;
      color: #1B2532;
      border-bottom: 2px solid #A6192E;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #signup-form #signup-dismiss a:hover {
        border-color: transparent; }
